diff options
author | Hung-ying Tyan <tyanh@google.com> | 2009-08-02 20:28:54 +0800 |
---|---|---|
committer | Hung-ying Tyan <tyanh@google.com> | 2009-08-02 20:28:54 +0800 |
commit | 233991a2420bd870a0f85e8e0c4c1c00eaf4b975 (patch) | |
tree | 17022477f8cbef6c58fab8d710ee3c85eb7e7e6f /src/com/android/settings/SecuritySettings.java | |
parent | 38322393a6d029349ef4ef4f80757da175029bcb (diff) | |
download | packages_apps_Settings-233991a2420bd870a0f85e8e0c4c1c00eaf4b975.zip packages_apps_Settings-233991a2420bd870a0f85e8e0c4c1c00eaf4b975.tar.gz packages_apps_Settings-233991a2420bd870a0f85e8e0c4c1c00eaf4b975.tar.bz2 |
Reduce the number of keystore connections to 1
at entering the security settings.
Diffstat (limited to 'src/com/android/settings/SecuritySettings.java')
-rw-r--r-- | src/com/android/settings/SecuritySettings.java | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/src/com/android/settings/SecuritySettings.java b/src/com/android/settings/SecuritySettings.java index 7f8cec7..d9f4952 100644 --- a/src/com/android/settings/SecuritySettings.java +++ b/src/com/android/settings/SecuritySettings.java @@ -233,10 +233,10 @@ public class SecuritySettings extends PreferenceActivity implements PreferenceCategory credStoreCat = new PreferenceCategory(this); credStoreCat.setTitle(R.string.cstor_settings_category); root.addPreference(credStoreCat); - boolean i = mCstorHelper.isCstorInitialized(); - credStoreCat.addPreference(mCstorHelper.createAccessCheckBox(i)); + int s = mCstorHelper.getCstorState(); + credStoreCat.addPreference(mCstorHelper.createAccessCheckBox(s)); credStoreCat.addPreference(mCstorHelper.createSetPasswordPreference()); - credStoreCat.addPreference(mCstorHelper.createResetPreference(i)); + credStoreCat.addPreference(mCstorHelper.createResetPreference(s)); return root; } @@ -486,6 +486,10 @@ public class SecuritySettings extends PreferenceActivity implements } } + private int getCstorState() { + return mKeystore.getState(); + } + private boolean isCstorUnlocked() { return (mKeystore.getState() == Keystore.UNLOCKED); } @@ -794,27 +798,25 @@ public class SecuritySettings extends PreferenceActivity implements mResetButton.setEnabled(enabled); } - private Preference createAccessCheckBox(boolean isInitialized) { + private Preference createAccessCheckBox(int state) { CheckBoxPreference pref = new CheckBoxPreference( SecuritySettings.this); pref.setTitle(R.string.cstor_access_title); pref.setSummary(R.string.cstor_access_summary); - if (isInitialized) pref.setChecked(isCstorUnlocked()); + pref.setEnabled(state != Keystore.UNINITIALIZED); + pref.setChecked(state == Keystore.UNLOCKED); pref.setOnPreferenceChangeListener( new Preference.OnPreferenceChangeListener() { public boolean onPreferenceChange( Preference pref, Object value) { if (((Boolean) value)) { - showCstorDialog(isCstorInitialized() - ? CSTOR_UNLOCK_DIALOG - : CSTOR_INIT_DIALOG); + showCstorDialog(CSTOR_UNLOCK_DIALOG); } else { lockCstor(); } return true; } }); - pref.setEnabled(isInitialized); mAccessCheckBox = pref; return pref; } @@ -835,7 +837,7 @@ public class SecuritySettings extends PreferenceActivity implements return pref; } - private Preference createResetPreference(boolean isInitialized) { + private Preference createResetPreference(int state) { Preference pref = new Preference(SecuritySettings.this); pref.setTitle(R.string.cstor_reset_title); pref.setSummary(R.string.cstor_reset_summary); @@ -846,7 +848,7 @@ public class SecuritySettings extends PreferenceActivity implements return true; } }); - pref.setEnabled(isInitialized); + pref.setEnabled(state != Keystore.UNINITIALIZED); mResetButton = pref; return pref; } |