Scrim: Remove scrim flicker
Remove scrim flicker when we unlock with bouncer. Bug: 226424400 Test: Manual with device and unit test Change-Id: Id2922ae6d86d64f42126d11843844c2349e56284
This commit is contained in:
@@ -1021,6 +1021,10 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, Dump
|
||||
if (aodWallpaperTimeout || occludedKeyguard) {
|
||||
mBehindAlpha = 1;
|
||||
}
|
||||
// Prevent notification scrim flicker when transitioning away from keyguard.
|
||||
if (mKeyguardStateController.isKeyguardGoingAway()) {
|
||||
mNotificationsAlpha = 0;
|
||||
}
|
||||
setScrimAlpha(mScrimInFront, mInFrontAlpha);
|
||||
setScrimAlpha(mScrimBehind, mBehindAlpha);
|
||||
setScrimAlpha(mNotificationsScrim, mNotificationsAlpha);
|
||||
|
||||
@@ -1351,6 +1351,15 @@ public class ScrimControllerTest extends SysuiTestCase {
|
||||
));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void keyguardGoingAwayUpdateScrims() {
|
||||
when(mKeyguardStateController.isKeyguardGoingAway()).thenReturn(true);
|
||||
mScrimController.updateScrims();
|
||||
finishAnimationsImmediately();
|
||||
assertThat(mNotificationsScrim.getViewAlpha()).isEqualTo(TRANSPARENT);
|
||||
}
|
||||
|
||||
|
||||
private void assertAlphaAfterExpansion(ScrimView scrim, float expectedAlpha, float expansion) {
|
||||
mScrimController.setRawPanelExpansionFraction(expansion);
|
||||
finishAnimationsImmediately();
|
||||
|
||||
Reference in New Issue
Block a user