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

Commit 0f63fa26 authored by Beverly's avatar Beverly Committed by Beverly Tai
Browse files

Ensure end action is called if keyguard animation is cancelled

Else, the dozing state may be inaccurate which will
cause aod-buggyness

Test: manual, builds and transition to AOD still works
Bug: 202630143
Change-Id: I57af55792db76552d3f991204b185a9472abea58
parent e5a6127d
Loading
Loading
Loading
Loading
+14 −12
Original line number Diff line number Diff line
@@ -145,14 +145,15 @@ class UnlockedScreenOffAnimationController @Inject constructor(
                .setDuration(duration.toLong())
                .setInterpolator(Interpolators.FAST_OUT_SLOW_IN)
                .alpha(1f)
                .withEndAction {
                .setListener(object : AnimatorListenerAdapter() {
                    override fun onAnimationEnd(animation: Animator?) {
                        aodUiAnimationPlaying = false

                        // Lock the keyguard if it was waiting for the screen off animation to end.
                        keyguardViewMediatorLazy.get().maybeHandlePendingLock()

                    // Tell the StatusBar to become keyguard for real - we waited on that since it
                    // is slow and would have caused the animation to jank.
                        // Tell the StatusBar to become keyguard for real - we waited on that since
                        // it is slow and would have caused the animation to jank.
                        statusBar.updateIsKeyguard()

                        // Run the callback given to us by the KeyguardVisibilityHelper.
@@ -161,6 +162,7 @@ class UnlockedScreenOffAnimationController @Inject constructor(
                        // Done going to sleep, reset this flag.
                        decidedToAnimateGoingToSleep = null
                    }
                })
                .start()
    }