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

Commit b750abc8 authored by Selim Cinek's avatar Selim Cinek
Browse files

Fixed an issue where icons could be stuck overlapping

The value of controlScreenOffAnimation could sometimes return
false, and in that case we never reset the translation.

Fixes: 136117476
Test: atest SystemUiTests
Change-Id: Iea80c2fe6e982a299b8c2b10ae5d4983b60bef1c
parent acf1151d
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -572,6 +572,9 @@ public class NotificationIconAreaController implements DarkReceiver,
                    .setInterpolator(Interpolators.LINEAR)
                    .setDuration(AOD_ICONS_APPEAR_DURATION)
                    .start();
        } else {
            mAodIcons.setAlpha(1.0f);
            mAodIcons.setTranslationY(0);
        }
    }

+12 −1
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;

import android.testing.AndroidTestingRunner;
@@ -56,6 +57,8 @@ public class NotificationIconAreaControllerTest extends SysuiTestCase {
    @Mock
    NotificationMediaManager mNotificationMediaManager;
    @Mock
    NotificationIconContainer mNotificationIconContainer;
    @Mock
    DozeParameters mDozeParameters;
    @Mock
    NotificationShadeWindowView mNotificationShadeWindowView;
@@ -67,7 +70,7 @@ public class NotificationIconAreaControllerTest extends SysuiTestCase {

        when(mStatusBar.getNotificationShadeWindowView()).thenReturn(mNotificationShadeWindowView);
        when(mNotificationShadeWindowView.findViewById(anyInt())).thenReturn(
                        mock(NotificationIconContainer.class));
                mNotificationIconContainer);

        mController = new NotificationIconAreaController(mContext, mStatusBar,
                mStatusBarStateController, mWakeUpCoordinator, mKeyguardBypassController,
@@ -87,4 +90,12 @@ public class NotificationIconAreaControllerTest extends SysuiTestCase {

        assertTrue(mController.shouldShouldLowPriorityIcons());
    }

    @Test
    public void testAppearResetsTranslation() {
        when(mDozeParameters.shouldControlScreenOff()).thenReturn(false);
        mController.appearAodIcons();
        verify(mNotificationIconContainer).setTranslationY(0);
        verify(mNotificationIconContainer).setAlpha(1.0f);
    }
}