OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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.password; | 5 package org.chromium.chrome.browser.preferences.password; |
6 | 6 |
7 import android.content.Intent; | 7 import android.content.Intent; |
8 import android.net.Uri; | 8 import android.net.Uri; |
9 import android.os.Bundle; | 9 import android.os.Bundle; |
10 import android.preference.Preference; | 10 import android.preference.Preference; |
11 import android.preference.Preference.OnPreferenceChangeListener; | 11 import android.preference.Preference.OnPreferenceChangeListener; |
12 import android.preference.PreferenceCategory; | 12 import android.preference.PreferenceCategory; |
13 import android.preference.PreferenceFragment; | 13 import android.preference.PreferenceFragment; |
14 import android.preference.PreferenceScreen; | 14 import android.preference.PreferenceScreen; |
15 import android.text.SpannableString; | 15 import android.text.SpannableString; |
16 import android.text.style.ForegroundColorSpan; | 16 import android.text.style.ForegroundColorSpan; |
17 | 17 |
18 import org.chromium.base.ApiCompatibilityUtils; | 18 import org.chromium.base.ApiCompatibilityUtils; |
19 import org.chromium.base.VisibleForTesting; | |
20 import org.chromium.chrome.R; | 19 import org.chromium.chrome.R; |
21 import org.chromium.chrome.browser.ChromeFeatureList; | |
22 import org.chromium.chrome.browser.PasswordUIView; | 20 import org.chromium.chrome.browser.PasswordUIView; |
23 import org.chromium.chrome.browser.PasswordUIView.PasswordListObserver; | 21 import org.chromium.chrome.browser.PasswordUIView.PasswordListObserver; |
24 import org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreference; | 22 import org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreference; |
25 import org.chromium.chrome.browser.preferences.ChromeBasePreference; | 23 import org.chromium.chrome.browser.preferences.ChromeBasePreference; |
26 import org.chromium.chrome.browser.preferences.ChromeSwitchPreference; | 24 import org.chromium.chrome.browser.preferences.ChromeSwitchPreference; |
27 import org.chromium.chrome.browser.preferences.ManagedPreferenceDelegate; | 25 import org.chromium.chrome.browser.preferences.ManagedPreferenceDelegate; |
28 import org.chromium.chrome.browser.preferences.PrefServiceBridge; | 26 import org.chromium.chrome.browser.preferences.PrefServiceBridge; |
29 import org.chromium.chrome.browser.preferences.Preferences; | 27 import org.chromium.chrome.browser.preferences.Preferences; |
30 import org.chromium.chrome.browser.preferences.PreferencesLauncher; | 28 import org.chromium.chrome.browser.preferences.PreferencesLauncher; |
31 import org.chromium.chrome.browser.preferences.TextMessagePreference; | 29 import org.chromium.chrome.browser.preferences.TextMessagePreference; |
(...skipping 10 matching lines...) Expand all Loading... |
42 // Keys for name/password dictionaries. | 40 // Keys for name/password dictionaries. |
43 public static final String PASSWORD_LIST_URL = "url"; | 41 public static final String PASSWORD_LIST_URL = "url"; |
44 public static final String PASSWORD_LIST_NAME = "name"; | 42 public static final String PASSWORD_LIST_NAME = "name"; |
45 | 43 |
46 // Used to pass the password id into a new activity. | 44 // Used to pass the password id into a new activity. |
47 public static final String PASSWORD_LIST_ID = "id"; | 45 public static final String PASSWORD_LIST_ID = "id"; |
48 | 46 |
49 public static final String PREF_SAVE_PASSWORDS_SWITCH = "save_passwords_swit
ch"; | 47 public static final String PREF_SAVE_PASSWORDS_SWITCH = "save_passwords_swit
ch"; |
50 public static final String PREF_AUTOSIGNIN_SWITCH = "autosignin_switch"; | 48 public static final String PREF_AUTOSIGNIN_SWITCH = "autosignin_switch"; |
51 | 49 |
52 @VisibleForTesting | |
53 public static final String CREDENTIAL_MANAGER_API = "CredentialManagementAPI
"; | |
54 | |
55 private static final String PREF_CATEGORY_SAVED_PASSWORDS = "saved_passwords
"; | 50 private static final String PREF_CATEGORY_SAVED_PASSWORDS = "saved_passwords
"; |
56 private static final String PREF_CATEGORY_EXCEPTIONS = "exceptions"; | 51 private static final String PREF_CATEGORY_EXCEPTIONS = "exceptions"; |
57 private static final String PREF_MANAGE_ACCOUNT_LINK = "manage_account_link"
; | 52 private static final String PREF_MANAGE_ACCOUNT_LINK = "manage_account_link"
; |
58 private static final String PREF_CATEGORY_SAVED_PASSWORDS_NO_TEXT = "saved_p
asswords_no_text"; | 53 private static final String PREF_CATEGORY_SAVED_PASSWORDS_NO_TEXT = "saved_p
asswords_no_text"; |
59 | 54 |
60 private static final int ORDER_SWITCH = 0; | 55 private static final int ORDER_SWITCH = 0; |
61 private static final int ORDER_AUTO_SIGNIN_CHECKBOX = 1; | 56 private static final int ORDER_AUTO_SIGNIN_CHECKBOX = 1; |
62 private static final int ORDER_MANAGE_ACCOUNT_LINK = 2; | 57 private static final int ORDER_MANAGE_ACCOUNT_LINK = 2; |
63 private static final int ORDER_SAVED_PASSWORDS = 3; | 58 private static final int ORDER_SAVED_PASSWORDS = 3; |
64 private static final int ORDER_EXCEPTIONS = 4; | 59 private static final int ORDER_EXCEPTIONS = 4; |
(...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
240 | 235 |
241 // Note: setting the switch state before the preference is added to the
screen results in | 236 // Note: setting the switch state before the preference is added to the
screen results in |
242 // some odd behavior where the switch state doesn't always match the int
ernal enabled state | 237 // some odd behavior where the switch state doesn't always match the int
ernal enabled state |
243 // (e.g. the switch will say "On" when save passwords is really turned o
ff), so | 238 // (e.g. the switch will say "On" when save passwords is really turned o
ff), so |
244 // .setChecked() should be called after .addPreference() | 239 // .setChecked() should be called after .addPreference() |
245 mSavePasswordsSwitch.setChecked( | 240 mSavePasswordsSwitch.setChecked( |
246 PrefServiceBridge.getInstance().isRememberPasswordsEnabled()); | 241 PrefServiceBridge.getInstance().isRememberPasswordsEnabled()); |
247 } | 242 } |
248 | 243 |
249 private void createAutoSignInCheckbox() { | 244 private void createAutoSignInCheckbox() { |
250 if (!ChromeFeatureList.isEnabled(CREDENTIAL_MANAGER_API)) { | |
251 return; | |
252 } | |
253 mAutoSignInSwitch = new ChromeBaseCheckBoxPreference(getActivity(), null
); | 245 mAutoSignInSwitch = new ChromeBaseCheckBoxPreference(getActivity(), null
); |
254 mAutoSignInSwitch.setKey(PREF_AUTOSIGNIN_SWITCH); | 246 mAutoSignInSwitch.setKey(PREF_AUTOSIGNIN_SWITCH); |
255 mAutoSignInSwitch.setTitle(R.string.passwords_auto_signin_title); | 247 mAutoSignInSwitch.setTitle(R.string.passwords_auto_signin_title); |
256 mAutoSignInSwitch.setOrder(ORDER_AUTO_SIGNIN_CHECKBOX); | 248 mAutoSignInSwitch.setOrder(ORDER_AUTO_SIGNIN_CHECKBOX); |
257 mAutoSignInSwitch.setSummary(R.string.passwords_auto_signin_description)
; | 249 mAutoSignInSwitch.setSummary(R.string.passwords_auto_signin_description)
; |
258 mAutoSignInSwitch.setOnPreferenceChangeListener(new OnPreferenceChangeLi
stener() { | 250 mAutoSignInSwitch.setOnPreferenceChangeListener(new OnPreferenceChangeLi
stener() { |
259 @Override | 251 @Override |
260 public boolean onPreferenceChange(Preference preference, Object newV
alue) { | 252 public boolean onPreferenceChange(Preference preference, Object newV
alue) { |
261 PrefServiceBridge.getInstance().setPasswordManagerAutoSigninEnab
led( | 253 PrefServiceBridge.getInstance().setPasswordManagerAutoSigninEnab
led( |
262 (boolean) newValue); | 254 (boolean) newValue); |
(...skipping 22 matching lines...) Expand all Loading... |
285 mLinkPref = new ChromeBasePreference(getActivity()); | 277 mLinkPref = new ChromeBasePreference(getActivity()); |
286 mLinkPref.setKey(PREF_MANAGE_ACCOUNT_LINK); | 278 mLinkPref.setKey(PREF_MANAGE_ACCOUNT_LINK); |
287 mLinkPref.setTitle(title); | 279 mLinkPref.setTitle(title); |
288 mLinkPref.setOnPreferenceClickListener(this); | 280 mLinkPref.setOnPreferenceClickListener(this); |
289 mLinkPref.setOrder(ORDER_MANAGE_ACCOUNT_LINK); | 281 mLinkPref.setOrder(ORDER_MANAGE_ACCOUNT_LINK); |
290 } | 282 } |
291 getPreferenceScreen().addPreference(mLinkPref); | 283 getPreferenceScreen().addPreference(mLinkPref); |
292 } | 284 } |
293 } | 285 } |
294 } | 286 } |
OLD | NEW |