Merge "Hide lock icon while WAKE_AND_UNLOCK is happening." into qt-dev

am: 14ca66a7c5

Change-Id: I04162c4df9c04d358fab20c3709fb5c58d2173dc
This commit is contained in:
Lucas Dupin
2019-05-13 14:45:11 -07:00
committed by android-build-merger
4 changed files with 40 additions and 2 deletions

View File

@@ -69,7 +69,7 @@
android:layout_height="match_parent"
android:importantForAccessibility="no"
sysui:ignoreRightInset="true"
/>
/>
<LinearLayout
android:id="@+id/lock_icon_container"

View File

@@ -89,6 +89,7 @@ public class LockIcon extends KeyguardAffordanceView implements OnUserInfoChange
private float mDozeAmount;
private int mIconRes;
private boolean mWasPulsingOnThisFrame;
private boolean mWakeAndUnlockRunning;
private final Runnable mDrawOffTimeout = () -> update(true /* forceUpdate */);
private final DockManager.DockEventListener mDockEventListener =
@@ -277,7 +278,8 @@ public class LockIcon extends KeyguardAffordanceView implements OnUserInfoChange
mLastBouncerVisible = mBouncerVisible;
}
boolean invisible = mDozing && (!mPulsing || mDocked);
boolean onAodNotPulsingOrDocked = mDozing && (!mPulsing || mDocked);
boolean invisible = onAodNotPulsingOrDocked || mWakeAndUnlockRunning;
setVisibility(invisible ? INVISIBLE : VISIBLE);
updateClickability();
}
@@ -450,4 +452,23 @@ public class LockIcon extends KeyguardAffordanceView implements OnUserInfoChange
public void onUnlockMethodStateChanged() {
update();
}
/**
* We need to hide the lock whenever there's a fingerprint unlock, otherwise you'll see the
* icon on top of the black front scrim.
*/
public void onBiometricAuthModeChanged(boolean wakeAndUnlock) {
if (wakeAndUnlock) {
mWakeAndUnlockRunning = true;
}
update();
}
/**
* Triggered after the unlock animation is over and the user is looking at launcher.
*/
public void onKeyguardFadedAway() {
mWakeAndUnlockRunning = false;
update();
}
}

View File

@@ -538,6 +538,7 @@ public class StatusBar extends SystemUI implements DemoMode,
}
if (mKeyguardMonitor.isKeyguardFadingAway()) {
mStatusBarKeyguardViewManager.onKeyguardFadedAway();
mStatusBarWindow.onKeyguardFadedAway();
}
}
@@ -3798,6 +3799,7 @@ public class StatusBar extends SystemUI implements DemoMode,
public void notifyBiometricAuthModeChanged() {
updateDozing();
updateScrimController();
mStatusBarWindow.onBiometricAuthModeChanged(mBiometricUnlockController.isWakeAndUnlock());
}
@VisibleForTesting

View File

@@ -265,6 +265,21 @@ public class StatusBarWindowView extends FrameLayout {
mLockIcon.setPulsing(pulsing);
}
/**
* Called when the biometric authentication mode changes.
* @param wakeAndUnlock If the type is {@link BiometricUnlockController#isWakeAndUnlock()}
*/
public void onBiometricAuthModeChanged(boolean wakeAndUnlock) {
mLockIcon.onBiometricAuthModeChanged(wakeAndUnlock);
}
/**
* Called after finished unlocking and the status bar window is already collapsed.
*/
public void onKeyguardFadedAway() {
mLockIcon.onKeyguardFadedAway();
}
public void setStatusBarView(PhoneStatusBarView statusBarView) {
mStatusBarView = statusBarView;
}