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

Commit cf15d4c6 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Do not animate padlock when fp" into rvc-d1-dev am: 3457f405

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

Change-Id: I59af5a7444697f8a9656b8c28e613197372fde17
parents 1818db33 3457f405
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -152,6 +152,7 @@ public class BiometricUnlockController extends KeyguardUpdateMonitorCallback imp
    private final Context mContext;
    private final int mWakeUpDelay;
    private int mMode;
    private BiometricSourceType mBiometricType;
    private KeyguardViewController mKeyguardViewController;
    private DozeScrimController mDozeScrimController;
    private KeyguardViewMediator mKeyguardViewMediator;
@@ -340,6 +341,7 @@ public class BiometricUnlockController extends KeyguardUpdateMonitorCallback imp
            Trace.endSection();
            return;
        }
        mBiometricType = biometricSourceType;
        mMetricsLogger.write(new LogMaker(MetricsEvent.BIOMETRIC_AUTH)
                .setType(MetricsEvent.TYPE_SUCCESS).setSubtype(toSubtype(biometricSourceType)));
        Optional.ofNullable(BiometricUiEvent.SUCCESS_EVENT_BY_SOURCE_TYPE.get(biometricSourceType))
@@ -615,6 +617,7 @@ public class BiometricUnlockController extends KeyguardUpdateMonitorCallback imp

    private void resetMode() {
        mMode = MODE_NONE;
        mBiometricType = null;
        mNotificationShadeWindowController.setForceDozeBrightness(false);
        if (mStatusBar.getNavigationBarView() != null) {
            mStatusBar.getNavigationBarView().setWakeAndUnlocking(false);
@@ -680,8 +683,8 @@ public class BiometricUnlockController extends KeyguardUpdateMonitorCallback imp
    /**
     * Successful authentication with fingerprint, face, or iris when the lockscreen fades away
     */
    public boolean isUnlockFading() {
        return mMode == MODE_UNLOCK_FADING;
    public BiometricSourceType getBiometricType() {
        return mBiometricType;
    }

    /**
+13 −4
Original line number Diff line number Diff line
@@ -83,6 +83,7 @@ public class LockscreenLockIconController {
    private boolean mWakeAndUnlockRunning;
    private boolean mShowingLaunchAffordance;
    private boolean mBouncerShowingScrimmed;
    private boolean mFingerprintUnlock;
    private int mStatusBarState = StatusBarState.SHADE;
    private LockIcon mLockIcon;

@@ -389,14 +390,19 @@ public class LockscreenLockIconController {
    /**
     * We need to hide the lock whenever there's a fingerprint unlock, otherwise you'll see the
     * icon on top of the black front scrim.
     * We also want to halt padlock the animation when we're in face bypass mode or dismissing the
     * keyguard with fingerprint.
     * @param wakeAndUnlock are we wake and unlocking
     * @param isUnlock are we currently unlocking
     */
    public void onBiometricAuthModeChanged(boolean wakeAndUnlock, boolean isUnlock) {
    public void onBiometricAuthModeChanged(boolean wakeAndUnlock, boolean isUnlock,
            BiometricSourceType type) {
        if (wakeAndUnlock) {
            mWakeAndUnlockRunning = true;
        }
        if (isUnlock && mKeyguardBypassController.getBypassEnabled() && canBlockUpdates()) {
        mFingerprintUnlock = type == BiometricSourceType.FINGERPRINT;
        if (isUnlock && (mFingerprintUnlock || mKeyguardBypassController.getBypassEnabled())
                && canBlockUpdates()) {
            // We don't want the icon to change while we are unlocking
            mBlockUpdates = true;
        }
@@ -513,10 +519,13 @@ public class LockscreenLockIconController {
                && (!mStatusBarStateController.isPulsing() || mDocked);
        boolean invisible = onAodNotPulsingOrDocked || mWakeAndUnlockRunning
                || mShowingLaunchAffordance;
        if (mKeyguardBypassController.getBypassEnabled() && !mBouncerShowingScrimmed) {
        boolean fingerprintOrBypass = mFingerprintUnlock
                || mKeyguardBypassController.getBypassEnabled();
        if (fingerprintOrBypass && !mBouncerShowingScrimmed) {
            if ((mHeadsUpManagerPhone.isHeadsUpGoingAway()
                    || mHeadsUpManagerPhone.hasPinnedHeadsUp()
                    || mStatusBarState == StatusBarState.KEYGUARD)
                    || mStatusBarState == StatusBarState.KEYGUARD
                    || mStatusBarState == StatusBarState.SHADE)
                    && !mNotificationWakeUpCoordinator.getNotificationsFullyHidden()) {
                invisible = true;
            }
+2 −1
Original line number Diff line number Diff line
@@ -3981,7 +3981,8 @@ public class StatusBar extends SystemUI implements DemoMode,
        updateScrimController();
        mLockscreenLockIconController.onBiometricAuthModeChanged(
                mBiometricUnlockController.isWakeAndUnlock(),
                mBiometricUnlockController.isBiometricUnlock());
                mBiometricUnlockController.isBiometricUnlock(),
                mBiometricUnlockController.getBiometricType());
    }

    @VisibleForTesting
+4 −0
Original line number Diff line number Diff line
@@ -136,6 +136,8 @@ public class BiometricsUnlockControllerTest extends SysuiTestCase {
                anyFloat());
        assertThat(mBiometricUnlockController.getMode())
                .isEqualTo(BiometricUnlockController.MODE_SHOW_BOUNCER);
        assertThat(mBiometricUnlockController.getBiometricType())
                .isEqualTo(BiometricSourceType.FINGERPRINT);
    }

    @Test
@@ -268,6 +270,8 @@ public class BiometricsUnlockControllerTest extends SysuiTestCase {
        verify(mStatusBarKeyguardViewManager).notifyKeyguardAuthenticated(eq(false));
        assertThat(mBiometricUnlockController.getMode())
                .isEqualTo(BiometricUnlockController.MODE_DISMISS_BOUNCER);
        assertThat(mBiometricUnlockController.getBiometricType())
                .isEqualTo(BiometricSourceType.FACE);
    }

    @Test