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

Commit 94616273 authored by Josh Tsuji's avatar Josh Tsuji
Browse files

Don't hide AOD icons if we're not in KEYGUARD but will be shortly due to the screen off animation.

Fixes: 191977381
Test: do screen off, check out the sweet icons immediately instead of 1 second later
Change-Id: Ib1dc18db82f9b87142f19a8f63ef7d1a223122c7
parent bdd8ff3f
Loading
Loading
Loading
Loading
+10 −2
Original line number Diff line number Diff line
@@ -71,6 +71,7 @@ public class NotificationIconAreaController implements
    private final DozeParameters mDozeParameters;
    private final Optional<Bubbles> mBubblesOptional;
    private final StatusBarWindowController mStatusBarWindowController;
    private final UnlockedScreenOffAnimationController mUnlockedScreenOffAnimationController;

    private int mIconSize;
    private int mIconHPadding;
@@ -119,7 +120,8 @@ public class NotificationIconAreaController implements
            Optional<Bubbles> bubblesOptional,
            DemoModeController demoModeController,
            DarkIconDispatcher darkIconDispatcher,
            StatusBarWindowController statusBarWindowController) {
            StatusBarWindowController statusBarWindowController,
            UnlockedScreenOffAnimationController unlockedScreenOffAnimationController) {
        mContrastColorUtil = ContrastColorUtil.getInstance(context);
        mContext = context;
        mStatusBarStateController = statusBarStateController;
@@ -133,6 +135,7 @@ public class NotificationIconAreaController implements
        mDemoModeController = demoModeController;
        mDemoModeController.addCallback(this);
        mStatusBarWindowController = statusBarWindowController;
        mUnlockedScreenOffAnimationController = unlockedScreenOffAnimationController;
        notificationListener.addNotificationSettingsListener(mSettingsListener);

        initializeNotificationAreaViews(context);
@@ -673,7 +676,12 @@ public class NotificationIconAreaController implements
        }
        boolean visible = mBypassController.getBypassEnabled()
                || mWakeUpCoordinator.getNotificationsFullyHidden();
        if (mStatusBarStateController.getState() != StatusBarState.KEYGUARD) {

        // Hide the AOD icons if we're not in the KEYGUARD state unless the screen off animation is
        // playing, in which case we want them to be visible since we're animating in the AOD UI and
        // will be switching to KEYGUARD shortly.
        if (mStatusBarStateController.getState() != StatusBarState.KEYGUARD
                && !mUnlockedScreenOffAnimationController.isScreenOffAnimationPlaying()) {
            visible = false;
        }
        if (visible && mWakeUpCoordinator.isPulseExpanding()) {
+4 −1
Original line number Diff line number Diff line
@@ -66,6 +66,8 @@ public class NotificationIconAreaControllerTest extends SysuiTestCase {
    DarkIconDispatcher mDarkIconDispatcher;
    @Mock
    StatusBarWindowController mStatusBarWindowController;
    @Mock
    UnlockedScreenOffAnimationController mUnlockedScreenOffAnimationController;
    private NotificationIconAreaController mController;
    @Mock
    private Bubbles mBubbles;
@@ -87,7 +89,8 @@ public class NotificationIconAreaControllerTest extends SysuiTestCase {
                Optional.of(mBubbles),
                mDemoModeController,
                mDarkIconDispatcher,
                mStatusBarWindowController);
                mStatusBarWindowController,
                mUnlockedScreenOffAnimationController);
    }

    @Test