Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8244ad44 authored by Beverly Tai's avatar Beverly Tai Committed by Automerger Merge Worker
Browse files

Merge "Recommend using fp for auth" into sc-dev am: 28e62c2d

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15156786

Change-Id: Ibde1c58649005fd09be0dbaaab88b2e18516b21e
parents 043db98b 28e62c2d
Loading
Loading
Loading
Loading
+15 −8
Original line number Diff line number Diff line
@@ -882,7 +882,10 @@ public class KeyguardIndicationController implements KeyguardStateController.Cal
                return;
            }

            if (biometricSourceType == BiometricSourceType.FACE && shouldSuppressFaceMsg()) {
            if (biometricSourceType == BiometricSourceType.FACE
                    && shouldSuppressFaceMsgAndShowTryFingerprintMsg()) {
                // suggest trying fingerprint
                showTransientIndication(R.string.keyguard_try_fingerprint);
                return;
            }

@@ -909,6 +912,12 @@ public class KeyguardIndicationController implements KeyguardStateController.Cal
            if (shouldSuppressBiometricError(msgId, biometricSourceType, mKeyguardUpdateMonitor)) {
                return;
            }
            if (biometricSourceType == BiometricSourceType.FACE
                    && shouldSuppressFaceMsgAndShowTryFingerprintMsg()) {
                // suggest trying fingerprint
                showTransientIndication(R.string.keyguard_try_fingerprint);
                return;
            }
            if (msgId == FaceManager.FACE_ERROR_TIMEOUT) {
                // The face timeout message is not very actionable, let's ask the user to
                // manually retry.
@@ -954,18 +963,16 @@ public class KeyguardIndicationController implements KeyguardStateController.Cal
                    || msgId == FingerprintManager.FINGERPRINT_ERROR_USER_CANCELED);
        }

        private boolean shouldSuppressFaceMsg() {
        private boolean shouldSuppressFaceMsgAndShowTryFingerprintMsg() {
            // For dual biometric, don't show face auth messages unless face auth was explicitly
            // requested by the user.
            return mKeyguardUpdateMonitor.isUdfpsEnrolled()
                && mKeyguardUpdateMonitor.isFingerprintDetectionRunning()
                && !mKeyguardUpdateMonitor.isFaceAuthUserRequested();
            return mKeyguardUpdateMonitor.isFingerprintDetectionRunning()
                && !mKeyguardUpdateMonitor.isFaceAuthUserRequested()
                && mKeyguardUpdateMonitor.isUnlockingWithBiometricAllowed(
                    true /* isStrongBiometric */);
        }

        private boolean shouldSuppressFaceError(int msgId, KeyguardUpdateMonitor updateMonitor) {
            if (shouldSuppressFaceMsg()) {
                return true;
            }
            // Only checking if unlocking with Biometric is allowed (no matter strong or non-strong
            // as long as primary auth, i.e. PIN/pattern/password, is not required), so it's ok to
            // pass true for isStrongBiometric to isUnlockingWithBiometricAllowed() to bypass the