Merge "Fix scrim animation when unlocking with fp" into pi-dev
am: 4f4d78b877
Change-Id: I71f9c9966f161afe179a24628935097174d9ca21
This commit is contained in:
@@ -399,4 +399,11 @@ public class FingerprintUnlockController extends KeyguardUpdateMonitorCallback {
|
|||||||
pw.print(" mMode="); pw.println(mMode);
|
pw.print(" mMode="); pw.println(mMode);
|
||||||
pw.print(" mWakeLock="); pw.println(mWakeLock);
|
pw.print(" mWakeLock="); pw.println(mWakeLock);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean isWakeAndUnlock() {
|
||||||
|
return mMode == MODE_UNLOCK
|
||||||
|
|| mMode == MODE_WAKE_AND_UNLOCK
|
||||||
|
|| mMode == MODE_WAKE_AND_UNLOCK_PULSING
|
||||||
|
|| mMode == MODE_WAKE_AND_UNLOCK_FROM_DREAM;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -347,7 +347,9 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, OnCo
|
|||||||
if (mExpansionFraction != fraction) {
|
if (mExpansionFraction != fraction) {
|
||||||
mExpansionFraction = fraction;
|
mExpansionFraction = fraction;
|
||||||
|
|
||||||
if (!(mState == ScrimState.UNLOCKED || mState == ScrimState.KEYGUARD)) {
|
final boolean keyguardOrUnlocked = mState == ScrimState.UNLOCKED
|
||||||
|
|| mState == ScrimState.KEYGUARD;
|
||||||
|
if (!keyguardOrUnlocked || !mExpansionAffectsAlpha) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -156,7 +156,6 @@ public enum ScrimState {
|
|||||||
mCurrentBehindTint = Color.BLACK;
|
mCurrentBehindTint = Color.BLACK;
|
||||||
mBlankScreen = true;
|
mBlankScreen = true;
|
||||||
} else {
|
} else {
|
||||||
// Scrims should still be black at the end of the transition.
|
|
||||||
mCurrentInFrontTint = Color.TRANSPARENT;
|
mCurrentInFrontTint = Color.TRANSPARENT;
|
||||||
mCurrentBehindTint = Color.TRANSPARENT;
|
mCurrentBehindTint = Color.TRANSPARENT;
|
||||||
mBlankScreen = false;
|
mBlankScreen = false;
|
||||||
|
|||||||
@@ -4659,9 +4659,8 @@ public class StatusBar extends SystemUI implements DemoMode,
|
|||||||
final boolean wakeAndUnlocking = mFingerprintUnlockController.getMode()
|
final boolean wakeAndUnlocking = mFingerprintUnlockController.getMode()
|
||||||
== FingerprintUnlockController.MODE_WAKE_AND_UNLOCK;
|
== FingerprintUnlockController.MODE_WAKE_AND_UNLOCK;
|
||||||
|
|
||||||
// Do not animate the scrim expansion when it's triggered by the fingerprint sensor.
|
// Do not animate the scrim expansion when triggered by the fingerprint sensor.
|
||||||
mScrimController.setExpansionAffectsAlpha(mFingerprintUnlockController.getMode()
|
mScrimController.setExpansionAffectsAlpha(!mFingerprintUnlockController.isWakeAndUnlock());
|
||||||
!= FingerprintUnlockController.MODE_UNLOCK);
|
|
||||||
|
|
||||||
if (mBouncerShowing) {
|
if (mBouncerShowing) {
|
||||||
// Bouncer needs the front scrim when it's on top of an activity,
|
// Bouncer needs the front scrim when it's on top of an activity,
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ import static org.mockito.ArgumentMatchers.anyLong;
|
|||||||
import static org.mockito.Mockito.mock;
|
import static org.mockito.Mockito.mock;
|
||||||
import static org.mockito.Mockito.never;
|
import static org.mockito.Mockito.never;
|
||||||
import static org.mockito.Mockito.reset;
|
import static org.mockito.Mockito.reset;
|
||||||
|
import static org.mockito.Mockito.spy;
|
||||||
import static org.mockito.Mockito.verify;
|
import static org.mockito.Mockito.verify;
|
||||||
import static org.mockito.Mockito.verifyZeroInteractions;
|
import static org.mockito.Mockito.verifyZeroInteractions;
|
||||||
import static org.mockito.Mockito.when;
|
import static org.mockito.Mockito.when;
|
||||||
@@ -73,7 +74,7 @@ public class ScrimControllerTest extends SysuiTestCase {
|
|||||||
@Before
|
@Before
|
||||||
public void setup() {
|
public void setup() {
|
||||||
mLightBarController = mock(LightBarController.class);
|
mLightBarController = mock(LightBarController.class);
|
||||||
mScrimBehind = new ScrimView(getContext());
|
mScrimBehind = spy(new ScrimView(getContext()));
|
||||||
mScrimInFront = new ScrimView(getContext());
|
mScrimInFront = new ScrimView(getContext());
|
||||||
mWakeLock = mock(WakeLock.class);
|
mWakeLock = mock(WakeLock.class);
|
||||||
mAlarmManager = mock(AlarmManager.class);
|
mAlarmManager = mock(AlarmManager.class);
|
||||||
@@ -210,8 +211,10 @@ public class ScrimControllerTest extends SysuiTestCase {
|
|||||||
mScrimController.finishAnimationsImmediately();
|
mScrimController.finishAnimationsImmediately();
|
||||||
|
|
||||||
final float scrimAlpha = mScrimBehind.getViewAlpha();
|
final float scrimAlpha = mScrimBehind.getViewAlpha();
|
||||||
|
reset(mScrimBehind);
|
||||||
mScrimController.setExpansionAffectsAlpha(false);
|
mScrimController.setExpansionAffectsAlpha(false);
|
||||||
mScrimController.setPanelExpansion(0.8f);
|
mScrimController.setPanelExpansion(0.8f);
|
||||||
|
verifyZeroInteractions(mScrimBehind);
|
||||||
Assert.assertEquals("Scrim opacity shouldn't change when setExpansionAffectsAlpha "
|
Assert.assertEquals("Scrim opacity shouldn't change when setExpansionAffectsAlpha "
|
||||||
+ "is false", scrimAlpha, mScrimBehind.getViewAlpha(), 0.01f);
|
+ "is false", scrimAlpha, mScrimBehind.getViewAlpha(), 0.01f);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user