Merge "Update alternate bouncer scrim values" into tm-qpr-dev
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 cf3a48c..e744c79 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java
@@ -820,15 +820,7 @@
mNotificationsAlpha = KEYGUARD_SCRIM_ALPHA;
}
} else if (mState == ScrimState.AUTH_SCRIMMED_SHADE) {
- float behindFraction = getInterpolatedFraction();
- behindFraction = (float) Math.pow(behindFraction, 0.8f);
-
- mBehindAlpha = behindFraction * mDefaultScrimAlpha;
- mNotificationsAlpha = mBehindAlpha;
- if (mClipsQsScrim) {
- mBehindAlpha = 1;
- mBehindTint = Color.BLACK;
- }
+ mNotificationsAlpha = (float) Math.pow(getInterpolatedFraction(), 0.8f);
} else if (mState == ScrimState.KEYGUARD || mState == ScrimState.SHADE_LOCKED
|| mState == ScrimState.PULSING) {
Pair<Integer, Float> result = calculateBackStateForState(mState);
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimState.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimState.java
index b447f0d..52430d3 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimState.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimState.java
@@ -90,11 +90,14 @@
AUTH_SCRIMMED_SHADE {
@Override
public void prepare(ScrimState previousState) {
- // notif & behind scrim alpha values are determined by ScrimController#applyState
+ // notif scrim alpha values are determined by ScrimController#applyState
// based on the shade expansion
mFrontTint = Color.BLACK;
mFrontAlpha = .66f;
+
+ mBehindTint = Color.BLACK;
+ mBehindAlpha = 1f;
}
},
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 a5deaa4..696775a 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
@@ -1150,7 +1150,7 @@
}
@Test
- public void testAuthScrim_notifScrimOpaque_whenShadeFullyExpanded() {
+ public void testAuthScrim_setClipQSScrimTrue_notifScrimOpaque_whenShadeFullyExpanded() {
// GIVEN device has an activity showing ('UNLOCKED' state can occur on the lock screen
// with the camera app occluding the keyguard)
mScrimController.transitionTo(ScrimState.UNLOCKED);
@@ -1176,6 +1176,34 @@
));
}
+
+ @Test
+ public void testAuthScrim_setClipQSScrimFalse_notifScrimOpaque_whenShadeFullyExpanded() {
+ // GIVEN device has an activity showing ('UNLOCKED' state can occur on the lock screen
+ // with the camera app occluding the keyguard)
+ mScrimController.transitionTo(ScrimState.UNLOCKED);
+ mScrimController.setClipsQsScrim(false);
+ mScrimController.setRawPanelExpansionFraction(1);
+ // notifications scrim alpha change require calling setQsPosition
+ mScrimController.setQsPosition(0, 300);
+ finishAnimationsImmediately();
+
+ // WHEN the user triggers the auth bouncer
+ mScrimController.transitionTo(ScrimState.AUTH_SCRIMMED_SHADE);
+ finishAnimationsImmediately();
+
+ assertEquals("Behind scrim should be opaque",
+ mScrimBehind.getViewAlpha(), 1, 0.0);
+ assertEquals("Notifications scrim should be opaque",
+ mNotificationsScrim.getViewAlpha(), 1, 0.0);
+
+ assertScrimTinted(Map.of(
+ mScrimInFront, true,
+ mScrimBehind, true,
+ mNotificationsScrim, false
+ ));
+ }
+
@Test
public void testAuthScrimKeyguard() {
// GIVEN device is on the keyguard