Don't show RedactionInterstitial when changing password
Only show when going from an insecure to secure lock.
Bug: 18467783
Change-Id: Ia73682d45b1dcd9ad61a00abeac099a94256e3b7
diff --git a/src/com/android/settings/ChooseLockPassword.java b/src/com/android/settings/ChooseLockPassword.java
index b72d5c5..861930a 100644
--- a/src/com/android/settings/ChooseLockPassword.java
+++ b/src/com/android/settings/ChooseLockPassword.java
@@ -425,6 +425,7 @@
if (mFirstPin.equals(pin)) {
final boolean isFallback = getActivity().getIntent().getBooleanExtra(
LockPatternUtils.LOCKSCREEN_BIOMETRIC_WEAK_FALLBACK, false);
+ boolean wasSecureBefore = mLockPatternUtils.isSecure();
mLockPatternUtils.clearLock(isFallback);
final boolean required = getActivity().getIntent().getBooleanExtra(
EncryptionInterstitial.EXTRA_REQUIRE_PASSWORD, true);
@@ -433,7 +434,9 @@
getActivity().setResult(RESULT_FINISHED);
getActivity().finish();
mDone = true;
- startActivity(RedactionInterstitial.createStartIntent(getActivity()));
+ if (!wasSecureBefore) {
+ startActivity(RedactionInterstitial.createStartIntent(getActivity()));
+ }
} else {
CharSequence tmp = mPasswordEntry.getText();
if (tmp != null) {
diff --git a/src/com/android/settings/ChooseLockPattern.java b/src/com/android/settings/ChooseLockPattern.java
index 3d3ef16..2c3beef 100644
--- a/src/com/android/settings/ChooseLockPattern.java
+++ b/src/com/android/settings/ChooseLockPattern.java
@@ -540,6 +540,8 @@
final boolean isFallback = getActivity().getIntent()
.getBooleanExtra(LockPatternUtils.LOCKSCREEN_BIOMETRIC_WEAK_FALLBACK, false);
+ boolean wasSecureBefore = utils.isSecure();
+
final boolean required = getActivity().getIntent().getBooleanExtra(
EncryptionInterstitial.EXTRA_REQUIRE_PASSWORD, true);
utils.setCredentialRequiredToDecrypt(required);
@@ -553,7 +555,9 @@
getActivity().setResult(RESULT_FINISHED);
getActivity().finish();
mDone = true;
- startActivity(RedactionInterstitial.createStartIntent(getActivity()));
+ if (!wasSecureBefore) {
+ startActivity(RedactionInterstitial.createStartIntent(getActivity()));
+ }
}
}
}