Loading packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java +1 −9 Original line number Diff line number Diff line Loading @@ -820,15 +820,7 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, Dump 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); Loading packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimState.java +4 −1 Original line number Diff line number Diff line Loading @@ -90,11 +90,14 @@ public enum ScrimState { 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; } }, Loading packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java +29 −1 Original line number Diff line number Diff line Loading @@ -1150,7 +1150,7 @@ public class ScrimControllerTest extends SysuiTestCase { } @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); Loading @@ -1176,6 +1176,34 @@ public class ScrimControllerTest extends SysuiTestCase { )); } @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 Loading Loading
packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java +1 −9 Original line number Diff line number Diff line Loading @@ -820,15 +820,7 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, Dump 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); Loading
packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimState.java +4 −1 Original line number Diff line number Diff line Loading @@ -90,11 +90,14 @@ public enum ScrimState { 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; } }, Loading
packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java +29 −1 Original line number Diff line number Diff line Loading @@ -1150,7 +1150,7 @@ public class ScrimControllerTest extends SysuiTestCase { } @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); Loading @@ -1176,6 +1176,34 @@ public class ScrimControllerTest extends SysuiTestCase { )); } @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 Loading