Merge "Update bouncer visibility on altAuthBouncer changes" into tm-dev am: 5778a88d45
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17776443 Change-Id: Iebb3c566976eb4375930ab01d63ea0c27de9b826 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -21,7 +21,6 @@ import static com.android.systemui.statusbar.StatusBarState.KEYGUARD;
|
|||||||
import android.animation.ValueAnimator;
|
import android.animation.ValueAnimator;
|
||||||
import android.annotation.NonNull;
|
import android.annotation.NonNull;
|
||||||
import android.content.res.Configuration;
|
import android.content.res.Configuration;
|
||||||
import android.util.Log;
|
|
||||||
import android.util.MathUtils;
|
import android.util.MathUtils;
|
||||||
import android.view.MotionEvent;
|
import android.view.MotionEvent;
|
||||||
|
|
||||||
@@ -83,7 +82,7 @@ public class UdfpsKeyguardViewController extends UdfpsAnimationViewController<Ud
|
|||||||
* {@link KeyguardBouncer#EXPANSION_HIDDEN} (1f)
|
* {@link KeyguardBouncer#EXPANSION_HIDDEN} (1f)
|
||||||
*/
|
*/
|
||||||
private float mInputBouncerHiddenAmount;
|
private float mInputBouncerHiddenAmount;
|
||||||
private boolean mIsBouncerVisible;
|
private boolean mIsGenericBouncerShowing; // whether UDFPS bouncer or input bouncer is visible
|
||||||
|
|
||||||
protected UdfpsKeyguardViewController(
|
protected UdfpsKeyguardViewController(
|
||||||
@NonNull UdfpsKeyguardView view,
|
@NonNull UdfpsKeyguardView view,
|
||||||
@@ -151,8 +150,7 @@ public class UdfpsKeyguardViewController extends UdfpsAnimationViewController<Ud
|
|||||||
mKeyguardStateController.addCallback(mKeyguardStateControllerCallback);
|
mKeyguardStateController.addCallback(mKeyguardStateControllerCallback);
|
||||||
mStatusBarState = getStatusBarStateController().getState();
|
mStatusBarState = getStatusBarStateController().getState();
|
||||||
mQsExpanded = mKeyguardViewManager.isQsExpanded();
|
mQsExpanded = mKeyguardViewManager.isQsExpanded();
|
||||||
mInputBouncerHiddenAmount = KeyguardBouncer.EXPANSION_HIDDEN;
|
updateGenericBouncerVisibility();
|
||||||
mIsBouncerVisible = mKeyguardViewManager.bouncerIsOrWillBeShowing();
|
|
||||||
mConfigurationController.addCallback(mConfigurationListener);
|
mConfigurationController.addCallback(mConfigurationListener);
|
||||||
getPanelExpansionStateManager().addExpansionListener(mPanelExpansionListener);
|
getPanelExpansionStateManager().addExpansionListener(mPanelExpansionListener);
|
||||||
updateAlpha();
|
updateAlpha();
|
||||||
@@ -187,7 +185,7 @@ public class UdfpsKeyguardViewController extends UdfpsAnimationViewController<Ud
|
|||||||
pw.println("mFaceDetectRunning=" + mFaceDetectRunning);
|
pw.println("mFaceDetectRunning=" + mFaceDetectRunning);
|
||||||
pw.println("mStatusBarState=" + StatusBarState.toString(mStatusBarState));
|
pw.println("mStatusBarState=" + StatusBarState.toString(mStatusBarState));
|
||||||
pw.println("mQsExpanded=" + mQsExpanded);
|
pw.println("mQsExpanded=" + mQsExpanded);
|
||||||
pw.println("mIsBouncerVisible=" + mIsBouncerVisible);
|
pw.println("mIsGenericBouncerShowing=" + mIsGenericBouncerShowing);
|
||||||
pw.println("mInputBouncerHiddenAmount=" + mInputBouncerHiddenAmount);
|
pw.println("mInputBouncerHiddenAmount=" + mInputBouncerHiddenAmount);
|
||||||
pw.println("mPanelExpansionFraction=" + mPanelExpansionFraction);
|
pw.println("mPanelExpansionFraction=" + mPanelExpansionFraction);
|
||||||
pw.println("unpausedAlpha=" + mView.getUnpausedAlpha());
|
pw.println("unpausedAlpha=" + mView.getUnpausedAlpha());
|
||||||
@@ -225,6 +223,8 @@ public class UdfpsKeyguardViewController extends UdfpsAnimationViewController<Ud
|
|||||||
} else {
|
} else {
|
||||||
mKeyguardUpdateMonitor.requestFaceAuthOnOccludingApp(false);
|
mKeyguardUpdateMonitor.requestFaceAuthOnOccludingApp(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
updateGenericBouncerVisibility();
|
||||||
updateAlpha();
|
updateAlpha();
|
||||||
updatePauseAuth();
|
updatePauseAuth();
|
||||||
return true;
|
return true;
|
||||||
@@ -241,7 +241,7 @@ public class UdfpsKeyguardViewController extends UdfpsAnimationViewController<Ud
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (mUdfpsRequested && !getNotificationShadeVisible()
|
if (mUdfpsRequested && !getNotificationShadeVisible()
|
||||||
&& (!mIsBouncerVisible
|
&& (!mIsGenericBouncerShowing
|
||||||
|| mInputBouncerHiddenAmount != KeyguardBouncer.EXPANSION_VISIBLE)
|
|| mInputBouncerHiddenAmount != KeyguardBouncer.EXPANSION_VISIBLE)
|
||||||
&& mKeyguardStateController.isShowing()) {
|
&& mKeyguardStateController.isShowing()) {
|
||||||
return false;
|
return false;
|
||||||
@@ -267,13 +267,8 @@ public class UdfpsKeyguardViewController extends UdfpsAnimationViewController<Ud
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mInputBouncerHiddenAmount < .5f || mIsBouncerVisible) {
|
if (mInputBouncerHiddenAmount < .5f) {
|
||||||
if (!getStatusBarStateController().isDozing()) {
|
|
||||||
return true;
|
return true;
|
||||||
} else {
|
|
||||||
Log.e(TAG, "Bouncer state claims visible on doze hiddenAmount="
|
|
||||||
+ mInputBouncerHiddenAmount + " bouncerVisible=" + mIsBouncerVisible);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
@@ -351,6 +346,21 @@ public class UdfpsKeyguardViewController extends UdfpsAnimationViewController<Ud
|
|||||||
mView.setUnpausedAlpha(alpha);
|
mView.setUnpausedAlpha(alpha);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Updates mIsGenericBouncerShowing (whether any bouncer is showing) and updates the
|
||||||
|
* mInputBouncerHiddenAmount to reflect whether the input bouncer is fully showing or not.
|
||||||
|
*/
|
||||||
|
private void updateGenericBouncerVisibility() {
|
||||||
|
mIsGenericBouncerShowing = mKeyguardViewManager.isBouncerShowing(); // includes altBouncer
|
||||||
|
final boolean altBouncerShowing = mKeyguardViewManager.isShowingAlternateAuth();
|
||||||
|
if (altBouncerShowing || !mKeyguardViewManager.bouncerIsOrWillBeShowing()) {
|
||||||
|
mInputBouncerHiddenAmount = 1f;
|
||||||
|
} else if (mIsGenericBouncerShowing) {
|
||||||
|
// input bouncer is fully showing
|
||||||
|
mInputBouncerHiddenAmount = 0f;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private final StatusBarStateController.StateListener mStateListener =
|
private final StatusBarStateController.StateListener mStateListener =
|
||||||
new StatusBarStateController.StateListener() {
|
new StatusBarStateController.StateListener() {
|
||||||
@Override
|
@Override
|
||||||
@@ -434,14 +444,13 @@ public class UdfpsKeyguardViewController extends UdfpsAnimationViewController<Ud
|
|||||||
updatePauseAuth();
|
updatePauseAuth();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Only called on primary auth bouncer changes, not on whether the UDFPS bouncer
|
||||||
|
* visibility changes.
|
||||||
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void onBouncerVisibilityChanged() {
|
public void onBouncerVisibilityChanged() {
|
||||||
mIsBouncerVisible = mKeyguardViewManager.isBouncerShowing();
|
updateGenericBouncerVisibility();
|
||||||
if (!mIsBouncerVisible) {
|
|
||||||
mInputBouncerHiddenAmount = 1f;
|
|
||||||
} else if (mKeyguardViewManager.isBouncerShowing()) {
|
|
||||||
mInputBouncerHiddenAmount = 0f;
|
|
||||||
}
|
|
||||||
updateAlpha();
|
updateAlpha();
|
||||||
updatePauseAuth();
|
updatePauseAuth();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1270,6 +1270,8 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb
|
|||||||
pw.println(" mAfterKeyguardGoneAction: " + mAfterKeyguardGoneAction);
|
pw.println(" mAfterKeyguardGoneAction: " + mAfterKeyguardGoneAction);
|
||||||
pw.println(" mAfterKeyguardGoneRunnables: " + mAfterKeyguardGoneRunnables);
|
pw.println(" mAfterKeyguardGoneRunnables: " + mAfterKeyguardGoneRunnables);
|
||||||
pw.println(" mPendingWakeupAction: " + mPendingWakeupAction);
|
pw.println(" mPendingWakeupAction: " + mPendingWakeupAction);
|
||||||
|
pw.println(" isBouncerShowing(): " + isBouncerShowing());
|
||||||
|
pw.println(" bouncerIsOrWillBeShowing(): " + bouncerIsOrWillBeShowing());
|
||||||
|
|
||||||
if (mBouncer != null) {
|
if (mBouncer != null) {
|
||||||
mBouncer.dump(pw);
|
mBouncer.dump(pw);
|
||||||
|
|||||||
@@ -205,6 +205,7 @@ public class UdfpsKeyguardViewControllerTest extends SysuiTestCase {
|
|||||||
|
|
||||||
captureAltAuthInterceptor();
|
captureAltAuthInterceptor();
|
||||||
when(mStatusBarKeyguardViewManager.isBouncerShowing()).thenReturn(true);
|
when(mStatusBarKeyguardViewManager.isBouncerShowing()).thenReturn(true);
|
||||||
|
when(mStatusBarKeyguardViewManager.bouncerIsOrWillBeShowing()).thenReturn(true);
|
||||||
mAltAuthInterceptor.onBouncerVisibilityChanged();
|
mAltAuthInterceptor.onBouncerVisibilityChanged();
|
||||||
|
|
||||||
assertTrue(mController.shouldPauseAuth());
|
assertTrue(mController.shouldPauseAuth());
|
||||||
|
|||||||
Reference in New Issue
Block a user