Merge "Fix issue where scrim would be transparent" into sc-qpr1-dev am: 48647682a0

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

Change-Id: I561df3f5a26ba3945d223bac3e9407810d3343d1
This commit is contained in:
Lucas Dupin
2021-09-29 21:54:10 +00:00
committed by Automerger Merge Worker
3 changed files with 35 additions and 2 deletions

View File

@@ -1230,6 +1230,8 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, Dump
pw.println(mDefaultScrimAlpha);
pw.print(" mExpansionFraction=");
pw.println(mPanelExpansion);
pw.print(" mExpansionAffectsAlpha=");
pw.println(mExpansionAffectsAlpha);
pw.print(" mState.getMaxLightRevealScrimAlpha=");
pw.println(mState.getMaxLightRevealScrimAlpha());

View File

@@ -3782,8 +3782,11 @@ public class StatusBar extends SystemUI implements
|| mKeyguardStateController.isKeyguardFadingAway();
// Do not animate the scrim expansion when triggered by the fingerprint sensor.
mScrimController.setExpansionAffectsAlpha(
!mBiometricUnlockController.isBiometricUnlock());
boolean onKeyguardOrHidingIt = mKeyguardStateController.isShowing()
|| mKeyguardStateController.isKeyguardFadingAway()
|| mKeyguardStateController.isKeyguardGoingAway();
mScrimController.setExpansionAffectsAlpha(!(mBiometricUnlockController.isBiometricUnlock()
&& onKeyguardOrHidingIt));
boolean launchingAffordanceWithPreview =
mNotificationPanelViewController.isLaunchingAffordanceWithPreview();

View File

@@ -799,6 +799,34 @@ public class StatusBarTest extends SysuiTestCase {
verify(mScrimController).transitionTo(eq(ScrimState.UNLOCKED), any());
}
@Test
public void testSetExpansionAffectsAlpha_onlyWhenHidingKeyguard() {
mStatusBar.updateScrimController();
verify(mScrimController).setExpansionAffectsAlpha(eq(true));
clearInvocations(mScrimController);
when(mBiometricUnlockController.isBiometricUnlock()).thenReturn(true);
mStatusBar.updateScrimController();
verify(mScrimController).setExpansionAffectsAlpha(eq(true));
clearInvocations(mScrimController);
when(mKeyguardStateController.isShowing()).thenReturn(true);
mStatusBar.updateScrimController();
verify(mScrimController).setExpansionAffectsAlpha(eq(false));
clearInvocations(mScrimController);
reset(mKeyguardStateController);
when(mKeyguardStateController.isKeyguardFadingAway()).thenReturn(true);
mStatusBar.updateScrimController();
verify(mScrimController).setExpansionAffectsAlpha(eq(false));
clearInvocations(mScrimController);
reset(mKeyguardStateController);
when(mKeyguardStateController.isKeyguardGoingAway()).thenReturn(true);
mStatusBar.updateScrimController();
verify(mScrimController).setExpansionAffectsAlpha(eq(false));
}
@Test
public void testTransitionLaunch_noPreview_doesntGoUnlocked() {
mStatusBar.setBarStateForTest(StatusBarState.KEYGUARD);