Call StatusBar#finishKeyguardFadingAway after the fling animation.
This isn't currently isn't being called with the new keyguard unlock animation if bypassing the keyguard due to biometric unlock. This results in ScrimController#expansionAffectsAlpha remaining false after an unlock, which in turn results in a transparent shade scrim even when unlocked+expanded. Filed b/186873982 to track a permanent fix (for a safer fix-forward, I am checking if the new unlock animation is running before calling #finishKeyguardFadingAway, but that's likely not necessary). Bug: 186760125 Test: manual Change-Id: I79a70034a02af45d69dc0e80554141c65f6b5ed8
This commit is contained in:
@@ -591,6 +591,8 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb
|
||||
|
||||
if (mStatusBar.isInLaunchTransition()
|
||||
|| mKeyguardStateController.isFlingingToDismissKeyguard()) {
|
||||
final boolean wasFlingingToDismissKeyguard =
|
||||
mKeyguardStateController.isFlingingToDismissKeyguard();
|
||||
mStatusBar.fadeKeyguardAfterLaunchTransition(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
@@ -604,6 +606,11 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb
|
||||
public void run() {
|
||||
mStatusBar.hideKeyguard();
|
||||
mNotificationShadeWindowController.setKeyguardFadingAway(false);
|
||||
|
||||
if (wasFlingingToDismissKeyguard) {
|
||||
mStatusBar.finishKeyguardFadingAway();
|
||||
}
|
||||
|
||||
mViewMediatorCallback.keyguardGone();
|
||||
executeAfterKeyguardGoneAction();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user