From d62c5e970836fc0277792462b9e69b8b9488282a Mon Sep 17 00:00:00 2001 From: Kevin Chyn Date: Wed, 8 Dec 2021 08:42:13 -0800 Subject: [PATCH] BP reason is always higher priority than Settings Fixes: 209193668 Test: share wifi, no longer two icons Change-Id: I89cf6e1dd3889333ac5812fe9759d1b25367d818 --- .../server/biometrics/sensors/AuthenticationClient.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/services/core/java/com/android/server/biometrics/sensors/AuthenticationClient.java b/services/core/java/com/android/server/biometrics/sensors/AuthenticationClient.java index 7341e744dea3a..358263df916b3 100644 --- a/services/core/java/com/android/server/biometrics/sensors/AuthenticationClient.java +++ b/services/core/java/com/android/server/biometrics/sensors/AuthenticationClient.java @@ -503,10 +503,14 @@ public abstract class AuthenticationClient extends AcquisitionClient protected int getShowOverlayReason() { if (isKeyguard()) { return BiometricOverlayConstants.REASON_AUTH_KEYGUARD; - } else if (isSettings()) { - return BiometricOverlayConstants.REASON_AUTH_SETTINGS; } else if (isBiometricPrompt()) { + // BP reason always takes precedent over settings, since callers from within + // settings can always invoke BP. return BiometricOverlayConstants.REASON_AUTH_BP; + } else if (isSettings()) { + // This is pretty much only for FingerprintManager#authenticate usage from + // FingerprintSettings. + return BiometricOverlayConstants.REASON_AUTH_SETTINGS; } else { return BiometricOverlayConstants.REASON_AUTH_OTHER; }