Merge "Avoid overlap when fading notifications in" into sc-dev am: c50e8c3afe

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14804231

Change-Id: I0c96b14f8a1dab748e1c1a8bf9d9ac9804bbdc67
This commit is contained in:
Lucas Dupin
2021-06-03 07:31:34 +00:00
committed by Automerger Merge Worker
2 changed files with 9 additions and 7 deletions

View File

@@ -99,8 +99,10 @@ public class Interpolators {
* @param forNotification If we want the alpha of the notification shade or the scrim. * @param forNotification If we want the alpha of the notification shade or the scrim.
*/ */
public static float getNotificationScrimAlpha(float fraction, boolean forNotification) { public static float getNotificationScrimAlpha(float fraction, boolean forNotification) {
if (!forNotification) { if (forNotification) {
fraction = MathUtils.saturate(1.7f * fraction); fraction = MathUtils.constrainedMap(0f, 1f, 0.3f, 1f, fraction);
} else {
fraction = MathUtils.constrainedMap(0f, 1f, 0f, 0.5f, fraction);
} }
fraction = fraction * 1.2f - 0.2f; fraction = fraction * 1.2f - 0.2f;
if (fraction <= 0) { if (fraction <= 0) {

View File

@@ -587,7 +587,7 @@ public class ScrimControllerTest extends SysuiTestCase {
)); ));
// Back scrim should be visible after start dragging // Back scrim should be visible after start dragging
mScrimController.setPanelExpansion(0.5f); mScrimController.setPanelExpansion(0.3f);
assertScrimAlpha(Map.of( assertScrimAlpha(Map.of(
mScrimInFront, TRANSPARENT, mScrimInFront, TRANSPARENT,
mNotificationsScrim, SEMI_TRANSPARENT, mNotificationsScrim, SEMI_TRANSPARENT,
@@ -1049,7 +1049,7 @@ public class ScrimControllerTest extends SysuiTestCase {
@Test @Test
public void testScrimsVisible_whenShadeVisible() { public void testScrimsVisible_whenShadeVisible() {
mScrimController.transitionTo(ScrimState.UNLOCKED); mScrimController.transitionTo(ScrimState.UNLOCKED);
mScrimController.setPanelExpansion(0.5f); mScrimController.setPanelExpansion(0.3f);
// notifications scrim alpha change require calling setQsPosition // notifications scrim alpha change require calling setQsPosition
mScrimController.setQsPosition(0, 300); mScrimController.setQsPosition(0, 300);
finishAnimationsImmediately(); finishAnimationsImmediately();
@@ -1064,7 +1064,7 @@ public class ScrimControllerTest extends SysuiTestCase {
public void testScrimsVisible_whenShadeVisible_clippingQs() { public void testScrimsVisible_whenShadeVisible_clippingQs() {
mScrimController.setClipsQsScrim(true); mScrimController.setClipsQsScrim(true);
mScrimController.transitionTo(ScrimState.UNLOCKED); mScrimController.transitionTo(ScrimState.UNLOCKED);
mScrimController.setPanelExpansion(0.5f); mScrimController.setPanelExpansion(0.3f);
// notifications scrim alpha change require calling setQsPosition // notifications scrim alpha change require calling setQsPosition
mScrimController.setQsPosition(0.5f, 300); mScrimController.setQsPosition(0.5f, 300);
finishAnimationsImmediately(); finishAnimationsImmediately();
@@ -1114,7 +1114,7 @@ public class ScrimControllerTest extends SysuiTestCase {
mScrimController.transitionTo(ScrimState.SHADE_LOCKED); mScrimController.transitionTo(ScrimState.SHADE_LOCKED);
assertAlphaAfterExpansion(mNotificationsScrim, /* alpha */ 0.8f, /* expansion */ 0.8f); assertAlphaAfterExpansion(mNotificationsScrim, /* alpha */ 0.8f, /* expansion */ 0.8f);
assertAlphaAfterExpansion(mNotificationsScrim, /* alpha */ 0.2f, /* expansion */ 0.2f); assertAlphaAfterExpansion(mNotificationsScrim, /* alpha */ 0.47f, /* expansion */ 0.2f);
} }
@Test @Test
@@ -1122,7 +1122,7 @@ public class ScrimControllerTest extends SysuiTestCase {
mScrimController.transitionTo(ScrimState.KEYGUARD); mScrimController.transitionTo(ScrimState.KEYGUARD);
assertAlphaAfterExpansion(mNotificationsScrim, /* alpha */ 0.2f, /* expansion */ 0.4f); assertAlphaAfterExpansion(mNotificationsScrim, /* alpha */ 0.2f, /* expansion */ 0.4f);
assertAlphaAfterExpansion(mNotificationsScrim, /* alpha */ 0.8f, /* expansion */ 0.2f); assertAlphaAfterExpansion(mNotificationsScrim, /* alpha */ 0.52f, /* expansion */ 0.2f);
} }
@Test @Test