diff options
-rw-r--r-- | src/com/android/settings/SecuritySettings.java | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/com/android/settings/SecuritySettings.java b/src/com/android/settings/SecuritySettings.java index 80300e0..5a4d26b 100644 --- a/src/com/android/settings/SecuritySettings.java +++ b/src/com/android/settings/SecuritySettings.java @@ -231,6 +231,8 @@ public class SecuritySettings extends PreferenceActivity { mShowPassword.setChecked(Settings.System.getInt(getContentResolver(), Settings.System.TEXT_SHOW_PASSWORD, 1) != 0); + + mCstorHelper.resume(); } @Override @@ -362,7 +364,7 @@ public class SecuritySettings extends PreferenceActivity { private View mView; private int mDialogId; - private boolean mRetry = false; + private boolean mRetry; private CheckBoxPreference mAccessCheckBox; private Preference mResetButton; @@ -383,6 +385,11 @@ public class SecuritySettings extends PreferenceActivity { } } + void resume() { + if (mExternalIntent != null) return; + updatePreferences(mKeyStore.test()); + } + private void updatePreferences(int state) { mAccessCheckBox.setEnabled(state != KeyStore.UNINITIALIZED); mAccessCheckBox.setChecked(state == KeyStore.NO_ERROR); @@ -428,6 +435,7 @@ public class SecuritySettings extends PreferenceActivity { private void showCstorDialog(int dialogId) { mDialogId = dialogId; + mRetry = false; showDialog(dialogId); } @@ -455,6 +463,7 @@ public class SecuritySettings extends PreferenceActivity { showCstorDialog(mDialogId); } else { removeDialog(mDialogId); + updatePreferences(mState); // may revert checkbox if (mExternalIntent != null) { finish(); |