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

Commit f12d6c28 authored by Aaron Liu's avatar Aaron Liu Committed by Android (Google) Code Review
Browse files

Merge "[Bouncer] ensure bouncer not shown with doze state." into tm-qpr-dev

parents 6da648c8 f348307f
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -733,6 +733,11 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb
            if (dozing || mBouncer.needsFullscreenBouncer() || mOccluded) {
                reset(dozing /* hideBouncerWhenShowing */);
            }

            if (bouncerIsOrWillBeShowing()) {
                // Ensure bouncer is not shown when dozing state changes.
                hideBouncer(false);
            }
            updateStates();

            if (!dozing) {
+24 −0
Original line number Diff line number Diff line
@@ -23,9 +23,11 @@ import static org.mockito.ArgumentMatchers.anyFloat;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.clearInvocations;
import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.reset;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;

@@ -525,4 +527,26 @@ public class StatusBarKeyguardViewManagerTest extends SysuiTestCase {
        mBouncerExpansionCallback.onVisibilityChanged(false);
        verify(mCentralSurfaces).setBouncerShowingOverDream(false);
    }


    @Test
    public void testSetDozing_bouncerShowing_Dozing() {
        clearInvocations(mBouncer);
        when(mBouncer.isShowing()).thenReturn(true);
        doAnswer(invocation -> {
            when(mBouncer.isShowing()).thenReturn(false);
            return null;
        }).when(mBouncer).hide(false);
        mStatusBarKeyguardViewManager.onDozingChanged(true);
        verify(mBouncer, times(1)).hide(false);
    }

    @Test
    public void testSetDozing_bouncerShowing_notDozing() {
        mStatusBarKeyguardViewManager.onDozingChanged(true);
        when(mBouncer.isShowing()).thenReturn(true);
        clearInvocations(mBouncer);
        mStatusBarKeyguardViewManager.onDozingChanged(false);
        verify(mBouncer, times(1)).hide(false);
    }
}