summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java3
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/NotificationPanelViewTest.java18
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();
}