Don't start face auth when device is going to sleep

Fixes an issue where KeyguardUpdateMonitor would be notified that
Keyguard is no longer going away before it was notified that the device
was going to sleep. This caused Keyguard to begin listening for face
authentication when the device was going to sleep.

Test: Manual

Fixes: 189475610
Change-Id: Ia73a6cb921828c43eb2b80b5c4686697b75aca5d
This commit is contained in:
Curtis Belmonte
2021-07-01 12:35:53 -07:00
parent 8fd5255fc4
commit 5d2658c610

View File

@@ -975,12 +975,6 @@ public class KeyguardViewMediator extends SystemUI implements Dumpable,
mPowerGestureIntercepted = false;
mGoingToSleep = true;
// Reset keyguard going away state so we can start listening for fingerprint. We
// explicitly DO NOT want to call
// mKeyguardViewControllerLazy.get().setKeyguardGoingAwayState(false)
// here, since that will mess with the device lock state.
mUpdateMonitor.dispatchKeyguardGoingAway(false);
// Lock immediately based on setting if secure (user has a pin/pattern/password).
// This also "locks" the device when not secure to provide easy access to the
// camera while preventing unwanted input.
@@ -1018,7 +1012,15 @@ public class KeyguardViewMediator extends SystemUI implements Dumpable,
playSounds(true);
}
}
mUpdateMonitor.dispatchStartedGoingToSleep(offReason);
// Reset keyguard going away state so we can start listening for fingerprint. We
// explicitly DO NOT want to call
// mKeyguardViewControllerLazy.get().setKeyguardGoingAwayState(false)
// here, since that will mess with the device lock state.
mUpdateMonitor.dispatchKeyguardGoingAway(false);
notifyStartedGoingToSleep();
}