summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Matt Pietal <mpietal@google.com> 2024-01-26 19:30:16 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2024-01-26 19:30:16 +0000
commit0b7e5b5d2c3e375a1456fc6430d852bc9b9d7430 (patch)
treeec99c35b9b70c6f12e7987fdc7f6469ae03d4060
parent11444ba0092055fbb7f55f022ace617a826476ca (diff)
parent38d0f0dbf1d1e6d33306ada356b6d833c443794d (diff)
Merge "Update keyguard clipping" into main
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java7
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java21
2 files changed, 27 insertions, 1 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java
index aabe4a0d66f9..3f20eaf45260 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java
@@ -763,10 +763,15 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, Dump
// see: b/186644628
mNotificationsScrim.setDrawableBounds(left - 1, top, right + 1, bottom);
mScrimBehind.setBottomEdgePosition((int) top);
+ } else {
+ mNotificationsScrim.setDrawableBounds(left, top, right, bottom);
+ }
+
+ // Only clip if the notif scrim is visible
+ if (mNotificationsAlpha > 0f) {
mKeyguardInteractor.setTopClippingBounds((int) top);
} else {
mKeyguardInteractor.setTopClippingBounds(null);
- mNotificationsScrim.setDrawableBounds(left, top, right, bottom);
}
}
diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java
index b3a47d77a307..423cc8478dda 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java
@@ -31,6 +31,7 @@ import static org.mockito.ArgumentMatchers.anyFloat;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.ArgumentMatchers.anyLong;
import static org.mockito.ArgumentMatchers.anyString;
+import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.never;
@@ -1683,6 +1684,26 @@ public class ScrimControllerTest extends SysuiTestCase {
}
@Test
+ public void notificationBoundsTopGetsPassedToKeyguard() {
+ mScrimController.transitionTo(SHADE_LOCKED);
+ mScrimController.setQsPosition(1f, 0);
+ finishAnimationsImmediately();
+
+ mScrimController.setNotificationsBounds(0f, 100f, 0f, 0f);
+ verify(mKeyguardInteractor).setTopClippingBounds(eq(100));
+ }
+
+ @Test
+ public void notificationBoundsTopDoesNotGetPassedToKeyguardWhenNotifScrimIsNotVisible() {
+ mScrimController.setKeyguardOccluded(true);
+ mScrimController.transitionTo(ScrimState.KEYGUARD);
+ finishAnimationsImmediately();
+
+ mScrimController.setNotificationsBounds(0f, 100f, 0f, 0f);
+ verify(mKeyguardInteractor).setTopClippingBounds(eq(null));
+ }
+
+ @Test
public void transitionToDreaming() {
mScrimController.setRawPanelExpansionFraction(0f);
mScrimController.setBouncerHiddenFraction(KeyguardBouncerConstants.EXPANSION_HIDDEN);