summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/com/android/settings/SecuritySettings.java11
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();