diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java index 7867147165962..4c5c23cd3b2fd 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java @@ -667,7 +667,9 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb private void setDozing(boolean dozing) { if (mDozing != dozing) { mDozing = dozing; - reset(true /* hideBouncerWhenShowing */); + if (dozing || mBouncer.needsFullscreenBouncer() || mOccluded) { + reset(dozing /* hideBouncerWhenShowing */); + } updateStates(); if (!dozing) { diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManagerTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManagerTest.java index a4453f854ce5a..e790d85763d03 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManagerTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManagerTest.java @@ -26,7 +26,6 @@ import static org.mockito.Mockito.clearInvocations; 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; @@ -506,21 +505,4 @@ public class StatusBarKeyguardViewManagerTest extends SysuiTestCase { mBouncerExpansionCallback.onVisibilityChanged(false); verify(mCentralSurfaces).setBouncerShowingOverDream(false); } - - @Test - public void testSetDozing_Dozing() { - clearInvocations(mBouncer); - mStatusBarKeyguardViewManager.onDozingChanged(true); - // Once when shown and once with dozing changed. - verify(mBouncer, times(1)).hide(false); - } - - @Test - public void testSetDozing_notDozing() { - mStatusBarKeyguardViewManager.onDozingChanged(true); - clearInvocations(mBouncer); - mStatusBarKeyguardViewManager.onDozingChanged(false); - // Once when shown and twice with dozing changed. - verify(mBouncer, times(1)).hide(false); - } }