diff options
2 files changed, 20 insertions, 1 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java index 1feed8042c93..ecb79c9e9d4c 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java @@ -1315,7 +1315,8 @@ public class NotificationPanelViewController extends PanelViewController { boolean bypassEnabled = mKeyguardBypassController.getBypassEnabled(); final boolean hasVisibleNotifications = mNotificationStackScrollLayoutController .getVisibleNotificationCount() != 0 || mMediaDataManager.hasActiveMedia(); - if (hasVisibleNotifications && !mShouldUseSplitNotificationShade) { + if ((hasVisibleNotifications && !mShouldUseSplitNotificationShade) + || (mShouldUseSplitNotificationShade && mMediaDataManager.hasActiveMedia())) { mKeyguardStatusViewController.displayClock(SMALL); } else { mKeyguardStatusViewController.displayClock(LARGE); diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/NotificationPanelViewTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/NotificationPanelViewTest.java index a1e2cfcdfd97..16d21793fa9a 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/NotificationPanelViewTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/NotificationPanelViewTest.java @@ -785,6 +785,24 @@ public class NotificationPanelViewTest extends SysuiTestCase { verify(mKeyguardStatusViewController, never()).displayClock(SMALL); } + @Test + public void testDisplaysSmallClockOnLockscreenInSplitShadeWhenMediaIsPlaying() { + mStatusBarStateController.setState(KEYGUARD); + enableSplitShade(); + when(mMediaDataManager.hasActiveMedia()).thenReturn(true); + + // one notification + media player visible + when(mNotificationStackScrollLayoutController.getVisibleNotificationCount()).thenReturn(1); + triggerPositionClockAndNotifications(); + verify(mKeyguardStatusViewController).displayClock(SMALL); + + // only media player visible + when(mNotificationStackScrollLayoutController.getVisibleNotificationCount()).thenReturn(0); + triggerPositionClockAndNotifications(); + verify(mKeyguardStatusViewController, times(2)).displayClock(SMALL); + verify(mKeyguardStatusViewController, never()).displayClock(LARGE); + } + private void triggerPositionClockAndNotifications() { mNotificationPanelViewController.closeQs(); } |