summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPavel Grafov <pgrafov@google.com>2017-10-17 17:35:30 +0000
committerandroid-build-merger <android-build-merger@google.com>2017-10-17 17:35:30 +0000
commit24ff765731b2fda6c8ea7ea3f2648849402f4e4d (patch)
tree01a06470b64df7c1a884a350a3131a793eb61a59
parent9b117ef69046061c9e03a37b40c888165e2acf8e (diff)
parent51f15da8e6ed8c6c982be4f62fb32523f7b03334 (diff)
downloadpackages_apps_Settings-24ff765731b2fda6c8ea7ea3f2648849402f4e4d.tar.gz
packages_apps_Settings-24ff765731b2fda6c8ea7ea3f2648849402f4e4d.tar.bz2
packages_apps_Settings-24ff765731b2fda6c8ea7ea3f2648849402f4e4d.zip
Preserve old password when handling SET_NEW_PASSWORD. am: 40e187b364
am: 51f15da8e6 Change-Id: I9b46697d14579ab8aedfffcdfd14ddc02cad5cf0
-rw-r--r--src/com/android/settings/password/ChooseLockGeneric.java19
-rw-r--r--src/com/android/settings/password/ChooseLockPassword.java2
-rw-r--r--src/com/android/settings/password/ChooseLockPattern.java2
3 files changed, 19 insertions, 4 deletions
diff --git a/src/com/android/settings/password/ChooseLockGeneric.java b/src/com/android/settings/password/ChooseLockGeneric.java
index 5126727bbe..a694603fd9 100644
--- a/src/com/android/settings/password/ChooseLockGeneric.java
+++ b/src/com/android/settings/password/ChooseLockGeneric.java
@@ -179,6 +179,8 @@ public class ChooseLockGeneric extends SettingsActivity {
.getBooleanExtra(CONFIRM_CREDENTIALS, true);
if (getActivity() instanceof ChooseLockGeneric.InternalActivity) {
mPasswordConfirmed = !confirmCredentials;
+ mUserPassword = getActivity().getIntent().getStringExtra(
+ ChooseLockSettingsHelper.EXTRA_KEY_PASSWORD);
}
mHideDrawer = getActivity().getIntent().getBooleanExtra(EXTRA_HIDE_DRAWER, false);
@@ -198,6 +200,10 @@ public class ChooseLockGeneric extends SettingsActivity {
mEncryptionRequestQuality = savedInstanceState.getInt(ENCRYPT_REQUESTED_QUALITY);
mEncryptionRequestDisabled = savedInstanceState.getBoolean(
ENCRYPT_REQUESTED_DISABLED);
+ if (mUserPassword == null) {
+ mUserPassword = savedInstanceState.getString(
+ ChooseLockSettingsHelper.EXTRA_KEY_PASSWORD);
+ }
}
// a) If this is started from other user, use that user id.
@@ -268,6 +274,10 @@ public class ChooseLockGeneric extends SettingsActivity {
// Forward the target user id to ChooseLockGeneric.
chooseLockGenericIntent.putExtra(Intent.EXTRA_USER_ID, mUserId);
chooseLockGenericIntent.putExtra(CONFIRM_CREDENTIALS, !mPasswordConfirmed);
+ if (mUserPassword != null) {
+ chooseLockGenericIntent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_PASSWORD,
+ mUserPassword);
+ }
startActivityForResult(chooseLockGenericIntent, SKIP_FINGERPRINT_REQUEST);
return true;
} else {
@@ -393,6 +403,9 @@ public class ChooseLockGeneric extends SettingsActivity {
outState.putBoolean(WAITING_FOR_CONFIRMATION, mWaitingForConfirmation);
outState.putInt(ENCRYPT_REQUESTED_QUALITY, mEncryptionRequestQuality);
outState.putBoolean(ENCRYPT_REQUESTED_DISABLED, mEncryptionRequestDisabled);
+ if (mUserPassword != null) {
+ outState.putString(ChooseLockSettingsHelper.EXTRA_KEY_PASSWORD, mUserPassword);
+ }
}
private void updatePreferencesOrFinish(boolean isRecreatingActivity) {
@@ -580,7 +593,8 @@ public class ChooseLockGeneric extends SettingsActivity {
.setUserId(mUserId);
if (mHasChallenge) {
builder.setChallenge(mChallenge);
- } else {
+ }
+ if (mUserPassword != null) {
builder.setPassword(mUserPassword);
}
return builder.build();
@@ -593,7 +607,8 @@ public class ChooseLockGeneric extends SettingsActivity {
.setUserId(mUserId);
if (mHasChallenge) {
builder.setChallenge(mChallenge);
- } else {
+ }
+ if (mUserPassword != null) {
builder.setPattern(mUserPassword);
}
return builder.build();
diff --git a/src/com/android/settings/password/ChooseLockPassword.java b/src/com/android/settings/password/ChooseLockPassword.java
index d89095691a..9f5192d044 100644
--- a/src/com/android/settings/password/ChooseLockPassword.java
+++ b/src/com/android/settings/password/ChooseLockPassword.java
@@ -105,6 +105,7 @@ public class ChooseLockPassword extends SettingsActivity {
mIntent = new Intent(context, ChooseLockPassword.class);
mIntent.putExtra(ChooseLockGeneric.CONFIRM_CREDENTIALS, false);
mIntent.putExtra(EncryptionInterstitial.EXTRA_REQUIRE_PASSWORD, false);
+ mIntent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_HAS_CHALLENGE, false);
}
public IntentBuilder setPasswordQuality(int quality) {
@@ -130,7 +131,6 @@ public class ChooseLockPassword extends SettingsActivity {
}
public IntentBuilder setPassword(String password) {
- mIntent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_HAS_CHALLENGE, false);
mIntent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_PASSWORD, password);
return this;
}
diff --git a/src/com/android/settings/password/ChooseLockPattern.java b/src/com/android/settings/password/ChooseLockPattern.java
index e4698ba267..7cd9db8dba 100644
--- a/src/com/android/settings/password/ChooseLockPattern.java
+++ b/src/com/android/settings/password/ChooseLockPattern.java
@@ -95,6 +95,7 @@ public class ChooseLockPattern extends SettingsActivity {
mIntent = new Intent(context, ChooseLockPattern.class);
mIntent.putExtra(EncryptionInterstitial.EXTRA_REQUIRE_PASSWORD, false);
mIntent.putExtra(ChooseLockGeneric.CONFIRM_CREDENTIALS, false);
+ mIntent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_HAS_CHALLENGE, false);
}
public IntentBuilder setUserId(int userId) {
@@ -109,7 +110,6 @@ public class ChooseLockPattern extends SettingsActivity {
}
public IntentBuilder setPattern(String pattern) {
- mIntent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_HAS_CHALLENGE, false);
mIntent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_PASSWORD, pattern);
return this;
}