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

Side by Side Diff: chrome/android/java/src/org/chromium/chrome/browser/preferences/MainPreferences.java

Issue 2092723002: Redirect users without sync passphrase to passwords.google.com (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Revert change to testUserRedirect Created 4 years, 5 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
1 // Copyright 2015 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 package org.chromium.chrome.browser.preferences; 5 package org.chromium.chrome.browser.preferences;
6 6
7 import android.content.Intent;
8 import android.net.Uri;
7 import android.os.Bundle; 9 import android.os.Bundle;
8 import android.os.Handler; 10 import android.os.Handler;
9 import android.preference.Preference; 11 import android.preference.Preference;
10 import android.preference.PreferenceFragment; 12 import android.preference.PreferenceFragment;
13 import android.text.SpannableString;
14 import android.text.style.ForegroundColorSpan;
11 15
16 import org.chromium.base.ApiCompatibilityUtils;
17 import org.chromium.base.VisibleForTesting;
12 import org.chromium.chrome.R; 18 import org.chromium.chrome.R;
19 import org.chromium.chrome.browser.ChromeFeatureList;
13 import org.chromium.chrome.browser.PasswordUIView; 20 import org.chromium.chrome.browser.PasswordUIView;
14 import org.chromium.chrome.browser.autofill.PersonalDataManager; 21 import org.chromium.chrome.browser.autofill.PersonalDataManager;
15 import org.chromium.chrome.browser.net.spdyproxy.DataReductionProxySettings; 22 import org.chromium.chrome.browser.net.spdyproxy.DataReductionProxySettings;
16 import org.chromium.chrome.browser.partnercustomizations.HomepageManager; 23 import org.chromium.chrome.browser.partnercustomizations.HomepageManager;
17 import org.chromium.chrome.browser.preferences.datareduction.DataReductionPrefer ences; 24 import org.chromium.chrome.browser.preferences.datareduction.DataReductionPrefer ences;
18 import org.chromium.chrome.browser.signin.SigninManager; 25 import org.chromium.chrome.browser.signin.SigninManager;
19 import org.chromium.chrome.browser.signin.SigninManager.SignInStateObserver; 26 import org.chromium.chrome.browser.signin.SigninManager.SignInStateObserver;
27 import org.chromium.chrome.browser.sync.ProfileSyncService;
28 import org.chromium.sync.AndroidSyncSettings;
29 import org.chromium.ui.text.SpanApplier;
20 30
21 /** 31 /**
22 * The main settings screen, shown when the user first opens Settings. 32 * The main settings screen, shown when the user first opens Settings.
23 */ 33 */
24 public class MainPreferences extends PreferenceFragment implements SignInStateOb server { 34 public class MainPreferences extends PreferenceFragment implements SignInStateOb server,
35 Preference.OnPreferenceClickListener {
25 36
26 public static final String PREF_SIGN_IN = "sign_in"; 37 public static final String PREF_SIGN_IN = "sign_in";
27 public static final String PREF_SEARCH_ENGINE = "search_engine"; 38 public static final String PREF_SEARCH_ENGINE = "search_engine";
28 public static final String PREF_DOCUMENT_MODE = "document_mode"; 39 public static final String PREF_DOCUMENT_MODE = "document_mode";
29 public static final String PREF_AUTOFILL_SETTINGS = "autofill_settings"; 40 public static final String PREF_AUTOFILL_SETTINGS = "autofill_settings";
30 public static final String PREF_SAVED_PASSWORDS = "saved_passwords"; 41 public static final String PREF_SAVED_PASSWORDS = "saved_passwords";
31 public static final String PREF_HOMEPAGE = "homepage"; 42 public static final String PREF_HOMEPAGE = "homepage";
32 public static final String PREF_DATA_REDUCTION = "data_reduction"; 43 public static final String PREF_DATA_REDUCTION = "data_reduction";
33
34 public static final String ACCOUNT_PICKER_DIALOG_TAG = "account_picker_dialo g_tag"; 44 public static final String ACCOUNT_PICKER_DIALOG_TAG = "account_picker_dialo g_tag";
35 public static final String EXTRA_SHOW_SEARCH_ENGINE_PICKER = "show_search_en gine_picker"; 45 public static final String EXTRA_SHOW_SEARCH_ENGINE_PICKER = "show_search_en gine_picker";
36 46
47 private static final String PREF_MANAGE_ACCOUNT_LINK = "manage_account_link" ;
48
49 @VisibleForTesting
50 public static final String VIEW_PASSWORDS = "ViewPasswords";
51
52 private static final int ORDER_MANAGE_ACCOUNT_LINK = 2;
Bernhard Bauer 2016/07/01 16:55:28 This is unused.
dozsa 2016/07/05 10:19:54 Done.
53
37 private SignInPreference mSignInPreference; 54 private SignInPreference mSignInPreference;
38 private ManagedPreferenceDelegate mManagedPreferenceDelegate; 55 private ManagedPreferenceDelegate mManagedPreferenceDelegate;
39 56
40 private boolean mShowSearchEnginePicker; 57 private boolean mShowSearchEnginePicker;
41 58
59 private Preference mPasswordsPref;
Bernhard Bauer 2016/07/01 16:55:28 This is also unused.
dozsa 2016/07/05 10:19:54 Done.
60
42 public MainPreferences() { 61 public MainPreferences() {
43 setHasOptionsMenu(true); 62 setHasOptionsMenu(true);
44 mManagedPreferenceDelegate = createManagedPreferenceDelegate(); 63 mManagedPreferenceDelegate = createManagedPreferenceDelegate();
45 } 64 }
46 65
47 @Override 66 @Override
48 public void onCreate(Bundle savedInstanceState) { 67 public void onCreate(Bundle savedInstanceState) {
49 super.onCreate(savedInstanceState); 68 super.onCreate(savedInstanceState);
50 69
51 if (savedInstanceState == null && getArguments() != null 70 if (savedInstanceState == null && getArguments() != null
(...skipping 18 matching lines...) Expand all
70 } 89 }
71 } 90 }
72 91
73 @Override 92 @Override
74 public void onPause() { 93 public void onPause() {
75 super.onPause(); 94 super.onPause();
76 SigninManager.get(getActivity()).removeSignInStateObserver(this); 95 SigninManager.get(getActivity()).removeSignInStateObserver(this);
77 clearSignInPref(); 96 clearSignInPref();
78 } 97 }
79 98
99 @Override
100 public boolean onPreferenceClick(Preference preference) {
101 Intent intent = new Intent(
102 Intent.ACTION_VIEW,
103 Uri.parse(PasswordUIView.getAccountDashboardURL()));
104 intent.setPackage(getActivity().getPackageName());
105 getActivity().startActivity(intent);
106 return true;
107 }
108
80 private void updatePreferences() { 109 private void updatePreferences() {
81 if (getPreferenceScreen() != null) getPreferenceScreen().removeAll(); 110 if (getPreferenceScreen() != null) getPreferenceScreen().removeAll();
82 addPreferencesFromResource(R.xml.main_preferences); 111 addPreferencesFromResource(R.xml.main_preferences);
83 112
84 ChromeBasePreference autofillPref = 113 ChromeBasePreference autofillPref =
85 (ChromeBasePreference) findPreference(PREF_AUTOFILL_SETTINGS); 114 (ChromeBasePreference) findPreference(PREF_AUTOFILL_SETTINGS);
86 setOnOffSummary(autofillPref, PersonalDataManager.isAutofillEnabled()); 115 setOnOffSummary(autofillPref, PersonalDataManager.isAutofillEnabled());
87 autofillPref.setManagedPreferenceDelegate(mManagedPreferenceDelegate); 116 autofillPref.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
88 117
89 ChromeBasePreference passwordsPref = 118 ChromeBasePreference passwordsPref =
90 (ChromeBasePreference) findPreference(PREF_SAVED_PASSWORDS); 119 (ChromeBasePreference) findPreference(PREF_SAVED_PASSWORDS);
91 if (PasswordUIView.shouldUseSmartLockBranding()) { 120
92 passwordsPref.setTitle(getResources().getString( 121 ProfileSyncService syncService = ProfileSyncService.get();
93 R.string.prefs_smart_lock_for_passwords)); 122
123 if (AndroidSyncSettings.isSyncEnabled(getActivity().getApplicationContex t())
124 && syncService.isBackendInitialized()
125 && !syncService.isUsingSecondaryPassphrase()
126 && ChromeFeatureList.isEnabled(VIEW_PASSWORDS)) {
127 ForegroundColorSpan colorSpan = new ForegroundColorSpan(
128 ApiCompatibilityUtils.getColor(getResources(), R.color.pref_ accent_color));
129 SpannableString title = SpanApplier.applySpans(
130 getString(R.string.manage_passwords_text),
131 new SpanApplier.SpanInfo("<link>", "</link>", colorSpan));
132 passwordsPref.setKey(PREF_MANAGE_ACCOUNT_LINK);
133 passwordsPref.setTitle(title);
134 passwordsPref.setOnPreferenceClickListener(this);
135 passwordsPref.setManagedPreferenceDelegate(null);
136 } else {
137 if (PasswordUIView.shouldUseSmartLockBranding()) {
138 passwordsPref.setTitle(getResources().getString(
139 R.string.prefs_smart_lock_for_passwords));
140 } else {
141 passwordsPref.setTitle(getResources().getString(
142 R.string.prefs_saved_passwords));
143 }
144 passwordsPref.setFragment(
145 "org.chromium.chrome.browser.preferences"
146 + ".password.SavePasswordsPreferences");
Bernhard Bauer 2016/07/01 16:55:28 Could you get this from the class?
dozsa 2016/07/05 10:19:54 Done.
147 setOnOffSummary(passwordsPref,
148 PrefServiceBridge.getInstance().isRememberPasswordsEnabled() );
149 passwordsPref.setManagedPreferenceDelegate(mManagedPreferenceDelegat e);
94 } 150 }
95 setOnOffSummary(passwordsPref,
96 PrefServiceBridge.getInstance().isRememberPasswordsEnabled());
97 passwordsPref.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
98 151
99 Preference homepagePref = findPreference(PREF_HOMEPAGE); 152 Preference homepagePref = findPreference(PREF_HOMEPAGE);
100 if (HomepageManager.shouldShowHomepageSetting()) { 153 if (HomepageManager.shouldShowHomepageSetting()) {
101 setOnOffSummary(homepagePref, 154 setOnOffSummary(homepagePref,
102 HomepageManager.getInstance(getActivity()).getPrefHomepageEn abled()); 155 HomepageManager.getInstance(getActivity()).getPrefHomepageEn abled());
103 } else { 156 } else {
104 getPreferenceScreen().removePreference(homepagePref); 157 getPreferenceScreen().removePreference(homepagePref);
105 } 158 }
106 159
107 ChromeBasePreference dataReduction = 160 ChromeBasePreference dataReduction =
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after
181 if (PREF_DATA_REDUCTION.equals(preference.getKey())) { 234 if (PREF_DATA_REDUCTION.equals(preference.getKey())) {
182 DataReductionProxySettings settings = DataReductionProxySett ings.getInstance(); 235 DataReductionProxySettings settings = DataReductionProxySett ings.getInstance();
183 return settings.isDataReductionProxyManaged() 236 return settings.isDataReductionProxyManaged()
184 && !settings.isDataReductionProxyEnabled(); 237 && !settings.isDataReductionProxyEnabled();
185 } 238 }
186 return super.isPreferenceClickDisabledByPolicy(preference); 239 return super.isPreferenceClickDisabledByPolicy(preference);
187 } 240 }
188 }; 241 };
189 } 242 }
190 } 243 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698