Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(434)

Side by Side Diff: chrome/android/java_staging/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkSigninActivity.java

Issue 1141283003: Upstream oodles of Chrome for Android code into Chromium. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: final patch? Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 package org.chromium.chrome.browser.enhancedbookmarks;
6
7 import android.os.Bundle;
8
9 import org.chromium.base.ObserverList;
10 import org.chromium.base.metrics.RecordUserAction;
11 import org.chromium.chrome.browser.ntp.RecentTabsPromoView;
12 import org.chromium.chrome.browser.ntp.RecentTabsPromoView.SyncPromoModel;
13 import org.chromium.chrome.browser.ntp.RecentTabsPromoView.UserActionListener;
14 import org.chromium.chrome.browser.signin.SigninManager;
15 import org.chromium.chrome.browser.signin.SigninManager.SignInStateObserver;
16 import org.chromium.chrome.browser.sync.SyncController;
17 import org.chromium.sync.AndroidSyncSettings;
18 import org.chromium.sync.AndroidSyncSettings.AndroidSyncSettingsObserver;
19 import org.chromium.sync.signin.ChromeSigninController;
20
21 /**
22 * Sign in promotion activity that is triggered from enhanced bookmark UI.
23 */
24 public class EnhancedBookmarkSigninActivity extends EnhancedBookmarkActivityBase implements
25 AndroidSyncSettingsObserver, SignInStateObserver, SyncPromoModel, UserAc tionListener {
26 private SigninManager mSignInManager;
27 private final ObserverList<AndroidSyncSettingsObserver> mObservers =
28 new ObserverList<AndroidSyncSettingsObserver>();
29
30 @Override
31 public void onCreate(Bundle savedInstanceState) {
32 super.onCreate(savedInstanceState);
33 if (savedInstanceState == null) {
34 RecordUserAction.record("Stars_SignInPromoActivity_Launched");
35 }
36
37 setContentView(new RecentTabsPromoView(this, this, this));
38
39 AndroidSyncSettings.registerObserver(this, this);
40
41 mSignInManager = SigninManager.get(this);
42 mSignInManager.addSignInStateObserver(this);
43
44 // This signin activity shouldn't be created if user is signed in alread y, but for just in
45 // case it was signed in just before onCreate somehow.
46 if (isSignedIn()) finish();
47 }
48
49 @Override
50 public void onDestroy() {
51 super.onDestroy();
52 AndroidSyncSettings.unregisterObserver(this, this);
53
54 mSignInManager.removeSignInStateObserver(this);
55 mSignInManager = null;
56 }
57
58 // AndroidSyncSettingsObserver
59
60 @Override
61 public void androidSyncSettingsChanged() {
62 for (AndroidSyncSettingsObserver observer : mObservers) {
63 observer.androidSyncSettingsChanged();
64 }
65 }
66
67 // SignInStateObserver
68
69 @Override
70 public void onSignedIn() {
71 androidSyncSettingsChanged();
72 finish();
73 }
74
75 @Override
76 public void onSignedOut() {
77 assert false : "onSignedOut() called on signin activity.";
78 }
79
80 // SyncPromoModel
81
82 @Override
83 public boolean isSyncEnabled() {
84 return AndroidSyncSettings.isSyncEnabled(this);
85 }
86
87 @Override
88 public boolean isSignedIn() {
89 return ChromeSigninController.get(this).isSignedIn();
90 }
91
92 @Override
93 public void enableSync() {
94 SyncController.get(this).start();
95 }
96
97 @Override
98 public void registerForSyncUpdates(AndroidSyncSettingsObserver changeListene r) {
99 mObservers.addObserver(changeListener);
100 }
101
102 @Override
103 public void unregisterForSyncUpdates(AndroidSyncSettingsObserver changeListe ner) {
104 mObservers.removeObserver(changeListener);
105 }
106
107 // UserActionListener
108
109 @Override
110 public void onAccountSelectionConfirmed() {
111 RecordUserAction.record("Stars_SignInPromoActivity_SignedIn");
112 }
113
114 @Override
115 public void onNewAccount() {
116 RecordUserAction.record("Stars_SignInPromoActivity_NewAccount");
117 }
118 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698