Fix wakeAndUnlock immediately after sleep.
This resulted in fragments of the shade/keyguard being visible as we unlocked, due to the screen off animation putting the shade in a half KEYGUARD half SHADE state. The existing code assumed that wake and unlock would always be from a fully settled KEYGUARD state. By simply updating the keyguard state as soon as we wakeAndUnlock, things look good. I tried to add a test in CentralSurfacesTest, but StatusBarStateController, etc. are not initialized because that test is not set up correctly. Fixes: 229047510 Fixes: 229047979 Fixes: 230528305 Test: atest SystemUITests Merged-In: I0603d2c1d467c8172764ff23be1c3879b8f2edfe Change-Id: I0603d2c1d467c8172764ff23be1c3879b8f2edfe
This commit is contained in:
@@ -4456,6 +4456,13 @@ public class CentralSurfacesImpl extends CoreStartable implements
|
|||||||
updateDozingState();
|
updateDozingState();
|
||||||
mDozeServiceHost.updateDozing();
|
mDozeServiceHost.updateDozing();
|
||||||
updateScrimController();
|
updateScrimController();
|
||||||
|
|
||||||
|
if (mBiometricUnlockController.isWakeAndUnlock()) {
|
||||||
|
// Usually doze changes are to/from lockscreen/AOD, but if we're wake and
|
||||||
|
// unlocking we should hide the keyguard ASAP if necessary.
|
||||||
|
updateIsKeyguard();
|
||||||
|
}
|
||||||
|
|
||||||
updateReportRejectedTouchVisibility();
|
updateReportRejectedTouchVisibility();
|
||||||
Trace.endSection();
|
Trace.endSection();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user