From ab6f11f47f8842c8c0baccf9a171ffee5a09e490 Mon Sep 17 00:00:00 2001 From: "edgar.huang" Date: Thu, 31 Aug 2017 11:22:25 +0800 Subject: [PATCH 1/2] Settings is crashed high probability when doing follow steps Enter into the fingerprint list screen and delete and identification of operation at the same time, when the item of the fingerprint verification was deleted, highlighting the item to be deleted, just so NullPointerException occurred. Test: manual - enrolling a fingerprint and do above steps. --- src/com/android/settings/fingerprint/FingerprintSettings.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/com/android/settings/fingerprint/FingerprintSettings.java b/src/com/android/settings/fingerprint/FingerprintSettings.java index 64ce9019262..607d28cdd72 100644 --- a/src/com/android/settings/fingerprint/FingerprintSettings.java +++ b/src/com/android/settings/fingerprint/FingerprintSettings.java @@ -558,7 +558,7 @@ public class FingerprintSettings extends SubSettings { String prefName = genKey(fpId); FingerprintPreference fpref = (FingerprintPreference) findPreference(prefName); final Drawable highlight = getHighlightDrawable(); - if (highlight != null) { + if (highlight != null && fpref != null) { final View view = fpref.getView(); final int centerX = view.getWidth() / 2; final int centerY = view.getHeight() / 2; From 1262f3960002e90b31a6d21284cdede786295085 Mon Sep 17 00:00:00 2001 From: Adrian Roos Date: Tue, 5 Sep 2017 12:37:38 +0200 Subject: [PATCH 2/2] FRP: Use SUW theme for factory reset protection flow Bug: 37224506 Test: adb shell settings put global device_provisioned 0 && adb shell am start -a android.app.action.CONFIRM_FRP_CREDENTIAL com.android.settings; verify it uses correct theme Change-Id: I237d8d84840398ebfdc97bf99dce07447042b349 --- .../android/settings/password/ChooseLockSettingsHelper.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/com/android/settings/password/ChooseLockSettingsHelper.java b/src/com/android/settings/password/ChooseLockSettingsHelper.java index b5a838f0b77..806ee67ff3b 100644 --- a/src/com/android/settings/password/ChooseLockSettingsHelper.java +++ b/src/com/android/settings/password/ChooseLockSettingsHelper.java @@ -250,12 +250,13 @@ public final class ChooseLockSettingsHelper { CharSequence message, Class activityClass, boolean returnCredentials, boolean external, boolean hasChallenge, long challenge, int userId, @Nullable CharSequence alternateButton) { + final boolean frp = (userId == LockPatternUtils.USER_FRP); final Intent intent = new Intent(); intent.putExtra(ConfirmDeviceCredentialBaseFragment.TITLE_TEXT, title); intent.putExtra(ConfirmDeviceCredentialBaseFragment.HEADER_TEXT, header); intent.putExtra(ConfirmDeviceCredentialBaseFragment.DETAILS_TEXT, message); intent.putExtra(ConfirmDeviceCredentialBaseFragment.ALLOW_FP_AUTHENTICATION, external); - intent.putExtra(ConfirmDeviceCredentialBaseFragment.DARK_THEME, external); + intent.putExtra(ConfirmDeviceCredentialBaseFragment.DARK_THEME, external && !frp); intent.putExtra(ConfirmDeviceCredentialBaseFragment.SHOW_CANCEL_BUTTON, external); intent.putExtra(ConfirmDeviceCredentialBaseFragment.SHOW_WHEN_LOCKED, external); intent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_RETURN_CREDENTIALS, returnCredentials);