Loading packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java +1 −1 Original line number Original line Diff line number Diff line Loading @@ -1613,7 +1613,7 @@ public class KeyguardViewMediator implements CoreStartable, Dumpable, // TODO: Rename all screen off/on references to interactive/sleeping // TODO: Rename all screen off/on references to interactive/sleeping synchronized (this) { synchronized (this) { mDeviceInteractive = true; mDeviceInteractive = true; if (mPendingLock && !cameraGestureTriggered) { if (mPendingLock && !cameraGestureTriggered && !mWakeAndUnlocking) { doKeyguardLocked(null); doKeyguardLocked(null); } } mAnimatingScreenOff = false; mAnimatingScreenOff = false; Loading packages/SystemUI/tests/src/com/android/systemui/keyguard/KeyguardViewMediatorTest.java +39 −0 Original line number Original line Diff line number Diff line Loading @@ -167,6 +167,45 @@ public class KeyguardViewMediatorTest extends SysuiTestCase { verify(mStatusBarKeyguardViewManager, never()).setKeyguardGoingAwayState(anyBoolean()); verify(mStatusBarKeyguardViewManager, never()).setKeyguardGoingAwayState(anyBoolean()); } } @Test @TestableLooper.RunWithLooper(setAsMainLooper = true) public void testOnStartedWakingUp_whileSleeping_ifWakeAndUnlocking_doesNotShowKeyguard() { when(mLockPatternUtils.isLockScreenDisabled(anyInt())).thenReturn(false); when(mLockPatternUtils.getPowerButtonInstantlyLocks(anyInt())).thenReturn(true); mViewMediator.onSystemReady(); TestableLooper.get(this).processAllMessages(); mViewMediator.setShowingLocked(false); TestableLooper.get(this).processAllMessages(); mViewMediator.onStartedGoingToSleep(OFF_BECAUSE_OF_USER); mViewMediator.onWakeAndUnlocking(); mViewMediator.onStartedWakingUp(OFF_BECAUSE_OF_USER, false); TestableLooper.get(this).processAllMessages(); assertFalse(mViewMediator.isShowingAndNotOccluded()); verify(mKeyguardStateController, never()).notifyKeyguardState(eq(true), anyBoolean()); } @Test @TestableLooper.RunWithLooper(setAsMainLooper = true) public void testOnStartedWakingUp_whileSleeping_ifNotWakeAndUnlocking_showsKeyguard() { when(mLockPatternUtils.isLockScreenDisabled(anyInt())).thenReturn(false); when(mLockPatternUtils.getPowerButtonInstantlyLocks(anyInt())).thenReturn(true); mViewMediator.onSystemReady(); TestableLooper.get(this).processAllMessages(); mViewMediator.setShowingLocked(false); TestableLooper.get(this).processAllMessages(); mViewMediator.onStartedGoingToSleep(OFF_BECAUSE_OF_USER); mViewMediator.onStartedWakingUp(OFF_BECAUSE_OF_USER, false); TestableLooper.get(this).processAllMessages(); assertTrue(mViewMediator.isShowingAndNotOccluded()); } @Test @Test public void testRegisterDumpable() { public void testRegisterDumpable() { verify(mDumpManager).registerDumpable(KeyguardViewMediator.class.getName(), mViewMediator); verify(mDumpManager).registerDumpable(KeyguardViewMediator.class.getName(), mViewMediator); Loading Loading
packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java +1 −1 Original line number Original line Diff line number Diff line Loading @@ -1613,7 +1613,7 @@ public class KeyguardViewMediator implements CoreStartable, Dumpable, // TODO: Rename all screen off/on references to interactive/sleeping // TODO: Rename all screen off/on references to interactive/sleeping synchronized (this) { synchronized (this) { mDeviceInteractive = true; mDeviceInteractive = true; if (mPendingLock && !cameraGestureTriggered) { if (mPendingLock && !cameraGestureTriggered && !mWakeAndUnlocking) { doKeyguardLocked(null); doKeyguardLocked(null); } } mAnimatingScreenOff = false; mAnimatingScreenOff = false; Loading
packages/SystemUI/tests/src/com/android/systemui/keyguard/KeyguardViewMediatorTest.java +39 −0 Original line number Original line Diff line number Diff line Loading @@ -167,6 +167,45 @@ public class KeyguardViewMediatorTest extends SysuiTestCase { verify(mStatusBarKeyguardViewManager, never()).setKeyguardGoingAwayState(anyBoolean()); verify(mStatusBarKeyguardViewManager, never()).setKeyguardGoingAwayState(anyBoolean()); } } @Test @TestableLooper.RunWithLooper(setAsMainLooper = true) public void testOnStartedWakingUp_whileSleeping_ifWakeAndUnlocking_doesNotShowKeyguard() { when(mLockPatternUtils.isLockScreenDisabled(anyInt())).thenReturn(false); when(mLockPatternUtils.getPowerButtonInstantlyLocks(anyInt())).thenReturn(true); mViewMediator.onSystemReady(); TestableLooper.get(this).processAllMessages(); mViewMediator.setShowingLocked(false); TestableLooper.get(this).processAllMessages(); mViewMediator.onStartedGoingToSleep(OFF_BECAUSE_OF_USER); mViewMediator.onWakeAndUnlocking(); mViewMediator.onStartedWakingUp(OFF_BECAUSE_OF_USER, false); TestableLooper.get(this).processAllMessages(); assertFalse(mViewMediator.isShowingAndNotOccluded()); verify(mKeyguardStateController, never()).notifyKeyguardState(eq(true), anyBoolean()); } @Test @TestableLooper.RunWithLooper(setAsMainLooper = true) public void testOnStartedWakingUp_whileSleeping_ifNotWakeAndUnlocking_showsKeyguard() { when(mLockPatternUtils.isLockScreenDisabled(anyInt())).thenReturn(false); when(mLockPatternUtils.getPowerButtonInstantlyLocks(anyInt())).thenReturn(true); mViewMediator.onSystemReady(); TestableLooper.get(this).processAllMessages(); mViewMediator.setShowingLocked(false); TestableLooper.get(this).processAllMessages(); mViewMediator.onStartedGoingToSleep(OFF_BECAUSE_OF_USER); mViewMediator.onStartedWakingUp(OFF_BECAUSE_OF_USER, false); TestableLooper.get(this).processAllMessages(); assertTrue(mViewMediator.isShowingAndNotOccluded()); } @Test @Test public void testRegisterDumpable() { public void testRegisterDumpable() { verify(mDumpManager).registerDumpable(KeyguardViewMediator.class.getName(), mViewMediator); verify(mDumpManager).registerDumpable(KeyguardViewMediator.class.getName(), mViewMediator); Loading