diff options
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/keyguard/KeyguardUnlockAnimationController.kt | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardUnlockAnimationController.kt b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardUnlockAnimationController.kt index 1a158c89dee7..29a7fe7d061a 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardUnlockAnimationController.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardUnlockAnimationController.kt @@ -668,8 +668,24 @@ class KeyguardUnlockAnimationController @Inject constructor( lockscreenSmartspace?.visibility = View.INVISIBLE } - // Start an animation for the wallpaper, which will finish keyguard exit when it completes. - fadeInWallpaper() + // As soon as the shade has animated out of the way, start the canned unlock animation, + // which will finish keyguard exit when it completes. The in-window animations in the + // Launcher window will end on their own. + handler.postDelayed({ + if (keyguardViewMediator.get().isShowingAndNotOccluded && + !keyguardStateController.isKeyguardGoingAway) { + Log.e(TAG, "Finish keyguard exit animation delayed Runnable ran, but we are " + + "showing and not going away.") + return@postDelayed + } + + if (wallpaperTargets != null) { + fadeInWallpaper() + } else { + keyguardViewMediator.get().exitKeyguardAndFinishSurfaceBehindRemoteAnimation( + false /* cancelled */) + } + }, CANNED_UNLOCK_START_DELAY) } /** |