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

Commit a74ddcdf authored by Josh Tsuji's avatar Josh Tsuji Committed by Automerger Merge Worker
Browse files

Merge "Fix issue where notifications remained hidden on lock screen after two...

Merge "Fix issue where notifications remained hidden on lock screen after two quick power presses." into sc-dev am: bc35078c

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14505583

Change-Id: I5121025a7e9b57244005444217917cb6ec7ba948
parents 9d06f574 bc35078c
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -393,6 +393,11 @@ class NotificationWakeUpCoordinator @Inject constructor(
    override fun onDozingChanged(isDozing: Boolean) {
        if (isDozing) {
            setNotificationsVisible(visible = false, animate = false, increaseSpeed = false)
        } else {
            // We only unset the flag once we fully went asleep. If the user interrupts the
            // animation in the middle, we have to abort the animation as well to make sure
            // the notifications are visible again.
            animatingScreenOff = false
        }
    }

+7 −1
Original line number Diff line number Diff line
@@ -3615,10 +3615,16 @@ public class StatusBar extends SystemUI implements DemoMode,

        boolean visibleNotOccluded = mStatusBarKeyguardViewManager.isShowing()
                && !mStatusBarKeyguardViewManager.isOccluded();
        // If we're dozing and we'll be animating the screen off, the keyguard isn't currently
        // visible but will be shortly for the animation, so we should proceed as if it's visible.
        boolean visibleNotOccludedOrWillBe =
                visibleNotOccluded || (mDozing && mDozeParameters.shouldControlUnlockedScreenOff());

        boolean wakeAndUnlock = mBiometricUnlockController.getMode()
                == BiometricUnlockController.MODE_WAKE_AND_UNLOCK;
        boolean animate = (!mDozing && mDozeServiceHost.shouldAnimateWakeup() && !wakeAndUnlock)
                || (mDozing && mDozeServiceHost.shouldAnimateScreenOff() && visibleNotOccluded);
                || (mDozing && mDozeServiceHost.shouldAnimateScreenOff()
                && visibleNotOccludedOrWillBe);

        mNotificationPanelViewController.setDozing(mDozing, animate, mWakeUpTouchLocation);
        updateQsExpansionEnabled();