Chromium Code Reviews| Index: chrome/android/java/src/org/chromium/chrome/browser/preferences/password/ManageSavedPasswordsPreferences.java |
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/password/ManageSavedPasswordsPreferences.java b/chrome/android/java/src/org/chromium/chrome/browser/preferences/password/ManageSavedPasswordsPreferences.java |
| index 5290cf36ff6aa5931a608d3a81f1a95b1b4c9d3b..f319200a9fdd26a547a9c764604105d76503ae2a 100644 |
| --- a/chrome/android/java/src/org/chromium/chrome/browser/preferences/password/ManageSavedPasswordsPreferences.java |
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/preferences/password/ManageSavedPasswordsPreferences.java |
| @@ -19,6 +19,7 @@ import android.view.View; |
| import android.view.ViewGroup; |
| import android.widget.TextView; |
| +import org.chromium.base.CommandLine; |
| import org.chromium.chrome.R; |
| import org.chromium.chrome.browser.PasswordUIView; |
| import org.chromium.chrome.browser.PasswordUIView.PasswordListObserver; |
| @@ -27,6 +28,7 @@ import org.chromium.chrome.browser.preferences.ChromeSwitchPreference; |
| import org.chromium.chrome.browser.preferences.ManagedPreferenceDelegate; |
| import org.chromium.chrome.browser.preferences.PrefServiceBridge; |
| import org.chromium.chrome.browser.preferences.Preferences; |
| +import org.chromium.content.common.ContentSwitches; |
| import org.chromium.ui.text.SpanApplier; |
| /** |
| @@ -48,6 +50,7 @@ public class ManageSavedPasswordsPreferences extends PreferenceFragment |
| public static final String PASSWORD_LIST_DELETED_ID = "deleted_id"; |
| public static final String PREF_SAVE_PASSWORDS_SWITCH = "save_passwords_switch"; |
| + public static final String PREF_AUTOSIGNIN_SWITCH = "autosignin_switch"; |
| private static final String PREF_CATEGORY_SAVED_PASSWORDS = "saved_passwords"; |
| private static final String PREF_CATEGORY_EXCEPTIONS = "exceptions"; |
| @@ -66,6 +69,7 @@ public class ManageSavedPasswordsPreferences extends PreferenceFragment |
| private boolean mNoPasswordExceptions; |
| private Preference mLinkPref; |
| private ChromeSwitchPreference mSavePasswordsSwitch; |
| + private ChromeSwitchPreference mAutoSignInSwitch; |
| @Override |
| public void onCreate(Bundle savedInstanceState) { |
| @@ -107,6 +111,8 @@ public class ManageSavedPasswordsPreferences extends PreferenceFragment |
| getPreferenceScreen().removeAll(); |
| mEmptyView.setVisibility(View.GONE); |
| createSavePasswordsSwitch(PrefServiceBridge.getInstance().isRememberPasswordsEnabled()); |
| + createAutoSignInSwitch( |
| + PrefServiceBridge.getInstance().isPasswordManagerAutoSigninEnabled()); |
| mPasswordManagerHandler.updatePasswordLists(); |
| } |
| @@ -262,6 +268,7 @@ public class ManageSavedPasswordsPreferences extends PreferenceFragment |
| return PrefServiceBridge.getInstance().isRememberPasswordsManaged(); |
| } |
| }); |
| + mSavePasswordsSwitch.setTitle(R.string.prefs_saved_passwords); |
| getPreferenceScreen().addPreference(mSavePasswordsSwitch); |
| // Note: setting the switch state before the preference is added to the screen results in |
| @@ -271,6 +278,33 @@ public class ManageSavedPasswordsPreferences extends PreferenceFragment |
| mSavePasswordsSwitch.setChecked(isEnabled); |
| } |
| + private void createAutoSignInSwitch(boolean isEnabled) { |
|
newt (away)
2015/03/11 17:41:40
This should probably be a checkbox, not a switch.
melandory
2015/03/16 15:10:27
Done.
|
| + if (!CommandLine.getInstance().hasSwitch(ContentSwitches.ENABLE_CREDENTIAL_MANAGER_API)) { |
| + return; |
| + } |
| + mAutoSignInSwitch = new ChromeSwitchPreference(getActivity(), null); |
| + mAutoSignInSwitch.setKey(PREF_AUTOSIGNIN_SWITCH); |
| + mAutoSignInSwitch.setOrder(ORDER_SWITCH); |
|
newt (away)
2015/03/11 17:41:40
Don't use the same order value. Create a new ORDER
melandory
2015/03/16 15:10:27
Done.
|
| + mAutoSignInSwitch.setSummary(R.string.passwords_auto_signin_description); |
| + mAutoSignInSwitch.setOnPreferenceChangeListener(new OnPreferenceChangeListener() { |
| + @Override |
| + public boolean onPreferenceChange(Preference preference, Object newValue) { |
| + PrefServiceBridge.getInstance().setPasswordManagerAutoSigninEnabled( |
| + (boolean) newValue); |
| + return true; |
| + } |
| + }); |
| + mAutoSignInSwitch.setTitle(R.string.passwords_auto_signin_title); |
|
newt (away)
2015/03/11 17:41:40
nit: the title is important and simple. move this
melandory
2015/03/16 15:10:27
Done.
|
| + mAutoSignInSwitch.setManagedPreferenceDelegate(new ManagedPreferenceDelegate() { |
| + @Override |
| + public boolean isPreferenceControlledByPolicy(Preference preference) { |
| + return PrefServiceBridge.getInstance().isPasswordManagerAutoSigninManaged(); |
| + } |
| + }); |
| + getPreferenceScreen().addPreference(mAutoSignInSwitch); |
| + mAutoSignInSwitch.setChecked(isEnabled); |
|
newt (away)
2015/03/11 17:41:40
I'd remove the isEnabled parameter and just call "
melandory
2015/03/16 15:10:27
On 2015/03/11 at 17:41:40, newt wrote:
> I'd remov
|
| + } |
| + |
| private void displayManageAccountLink() { |
| boolean shouldDisplayLink = PasswordUIView.shouldDisplayManageAccountLink(); |
| if (shouldDisplayLink |