Merge "Udfps icon, udfps bouncer, and lockicon/button bug fixes" into sc-dev am: ac15f92859
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14667891 Change-Id: I53fb72a7755d382c00eea3b322d905f347c3c853
This commit is contained in:
@@ -2145,7 +2145,6 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
|
|||||||
&& !isEncryptedOrLockdown(getCurrentUser())
|
&& !isEncryptedOrLockdown(getCurrentUser())
|
||||||
&& !userNeedsStrongAuth()
|
&& !userNeedsStrongAuth()
|
||||||
&& userDoesNotHaveTrust);
|
&& userDoesNotHaveTrust);
|
||||||
|
|
||||||
return shouldListenKeyguardState && shouldListenUserState && shouldListenBouncerState
|
return shouldListenKeyguardState && shouldListenUserState && shouldListenBouncerState
|
||||||
&& shouldListenUdfpsState;
|
&& shouldListenUdfpsState;
|
||||||
}
|
}
|
||||||
@@ -3270,7 +3269,7 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
|
|||||||
pw.println(" disabled(DPM)=" + isFingerprintDisabled(userId));
|
pw.println(" disabled(DPM)=" + isFingerprintDisabled(userId));
|
||||||
pw.println(" possible=" + isUnlockWithFingerprintPossible(userId));
|
pw.println(" possible=" + isUnlockWithFingerprintPossible(userId));
|
||||||
pw.println(" listening: actual=" + mFingerprintRunningState
|
pw.println(" listening: actual=" + mFingerprintRunningState
|
||||||
+ " expected=" + (shouldListenForFingerprint(false) ? 1 : 0));
|
+ " expected=" + (shouldListenForFingerprint(isUdfpsEnrolled()) ? 1 : 0));
|
||||||
pw.println(" strongAuthFlags=" + Integer.toHexString(strongAuthFlags));
|
pw.println(" strongAuthFlags=" + Integer.toHexString(strongAuthFlags));
|
||||||
pw.println(" trustManaged=" + getUserTrustIsManaged(userId));
|
pw.println(" trustManaged=" + getUserTrustIsManaged(userId));
|
||||||
pw.println(" udfpsEnrolled=" + isUdfpsEnrolled());
|
pw.println(" udfpsEnrolled=" + isUdfpsEnrolled());
|
||||||
|
|||||||
@@ -40,6 +40,7 @@ import com.android.settingslib.Utils;
|
|||||||
import com.android.systemui.Dumpable;
|
import com.android.systemui.Dumpable;
|
||||||
import com.android.systemui.R;
|
import com.android.systemui.R;
|
||||||
import com.android.systemui.biometrics.AuthController;
|
import com.android.systemui.biometrics.AuthController;
|
||||||
|
import com.android.systemui.dagger.qualifiers.Main;
|
||||||
import com.android.systemui.dump.DumpManager;
|
import com.android.systemui.dump.DumpManager;
|
||||||
import com.android.systemui.plugins.FalsingManager;
|
import com.android.systemui.plugins.FalsingManager;
|
||||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||||
@@ -48,6 +49,7 @@ import com.android.systemui.statusbar.phone.dagger.StatusBarComponent;
|
|||||||
import com.android.systemui.statusbar.policy.ConfigurationController;
|
import com.android.systemui.statusbar.policy.ConfigurationController;
|
||||||
import com.android.systemui.statusbar.policy.KeyguardStateController;
|
import com.android.systemui.statusbar.policy.KeyguardStateController;
|
||||||
import com.android.systemui.util.ViewController;
|
import com.android.systemui.util.ViewController;
|
||||||
|
import com.android.systemui.util.concurrency.DelayableExecutor;
|
||||||
|
|
||||||
import java.io.FileDescriptor;
|
import java.io.FileDescriptor;
|
||||||
import java.io.PrintWriter;
|
import java.io.PrintWriter;
|
||||||
@@ -70,6 +72,7 @@ public class LockIconViewController extends ViewController<LockIconView> impleme
|
|||||||
@NonNull private final AuthController mAuthController;
|
@NonNull private final AuthController mAuthController;
|
||||||
@NonNull private final AccessibilityManager mAccessibilityManager;
|
@NonNull private final AccessibilityManager mAccessibilityManager;
|
||||||
@NonNull private final ConfigurationController mConfigurationController;
|
@NonNull private final ConfigurationController mConfigurationController;
|
||||||
|
@NonNull private final DelayableExecutor mExecutor;
|
||||||
|
|
||||||
private boolean mHasUdfpsOrFaceAuthFeatures;
|
private boolean mHasUdfpsOrFaceAuthFeatures;
|
||||||
private boolean mUdfpsEnrolled;
|
private boolean mUdfpsEnrolled;
|
||||||
@@ -90,6 +93,7 @@ public class LockIconViewController extends ViewController<LockIconView> impleme
|
|||||||
private int mStatusBarState;
|
private int mStatusBarState;
|
||||||
private boolean mIsKeyguardShowing;
|
private boolean mIsKeyguardShowing;
|
||||||
private boolean mUserUnlockedWithBiometric;
|
private boolean mUserUnlockedWithBiometric;
|
||||||
|
private Runnable mCancelDelayedUpdateVisibilityRunnable;
|
||||||
|
|
||||||
private boolean mShowButton;
|
private boolean mShowButton;
|
||||||
private boolean mShowUnlockIcon;
|
private boolean mShowUnlockIcon;
|
||||||
@@ -106,7 +110,8 @@ public class LockIconViewController extends ViewController<LockIconView> impleme
|
|||||||
@NonNull AuthController authController,
|
@NonNull AuthController authController,
|
||||||
@NonNull DumpManager dumpManager,
|
@NonNull DumpManager dumpManager,
|
||||||
@NonNull AccessibilityManager accessibilityManager,
|
@NonNull AccessibilityManager accessibilityManager,
|
||||||
@NonNull ConfigurationController configurationController
|
@NonNull ConfigurationController configurationController,
|
||||||
|
@NonNull @Main DelayableExecutor executor
|
||||||
) {
|
) {
|
||||||
super(view);
|
super(view);
|
||||||
mStatusBarStateController = statusBarStateController;
|
mStatusBarStateController = statusBarStateController;
|
||||||
@@ -117,6 +122,7 @@ public class LockIconViewController extends ViewController<LockIconView> impleme
|
|||||||
mFalsingManager = falsingManager;
|
mFalsingManager = falsingManager;
|
||||||
mAccessibilityManager = accessibilityManager;
|
mAccessibilityManager = accessibilityManager;
|
||||||
mConfigurationController = configurationController;
|
mConfigurationController = configurationController;
|
||||||
|
mExecutor = executor;
|
||||||
|
|
||||||
final Context context = view.getContext();
|
final Context context = view.getContext();
|
||||||
mButton = context.getResources().getDrawable(
|
mButton = context.getResources().getDrawable(
|
||||||
@@ -202,6 +208,11 @@ public class LockIconViewController extends ViewController<LockIconView> impleme
|
|||||||
mKeyguardStateController.removeCallback(mKeyguardStateCallback);
|
mKeyguardStateController.removeCallback(mKeyguardStateCallback);
|
||||||
mAccessibilityManager.removeTouchExplorationStateChangeListener(
|
mAccessibilityManager.removeTouchExplorationStateChangeListener(
|
||||||
mTouchExplorationStateChangeListener);
|
mTouchExplorationStateChangeListener);
|
||||||
|
|
||||||
|
if (mCancelDelayedUpdateVisibilityRunnable != null) {
|
||||||
|
mCancelDelayedUpdateVisibilityRunnable.run();
|
||||||
|
mCancelDelayedUpdateVisibilityRunnable = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public float getTop() {
|
public float getTop() {
|
||||||
@@ -213,8 +224,8 @@ public class LockIconViewController extends ViewController<LockIconView> impleme
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// pre-emptively set to false to hide view
|
// pre-emptively set to true to hide view
|
||||||
mIsKeyguardShowing = false;
|
mIsBouncerShowing = true;
|
||||||
updateVisibility();
|
updateVisibility();
|
||||||
mKeyguardViewController.showBouncer(/* scrim */ true);
|
mKeyguardViewController.showBouncer(/* scrim */ true);
|
||||||
return true;
|
return true;
|
||||||
@@ -229,6 +240,11 @@ public class LockIconViewController extends ViewController<LockIconView> impleme
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void updateVisibility() {
|
private void updateVisibility() {
|
||||||
|
if (mCancelDelayedUpdateVisibilityRunnable != null) {
|
||||||
|
mCancelDelayedUpdateVisibilityRunnable.run();
|
||||||
|
mCancelDelayedUpdateVisibilityRunnable = null;
|
||||||
|
}
|
||||||
|
|
||||||
if (!mIsKeyguardShowing || (!mUdfpsEnrolled && !mFaceAuthEnrolled)) {
|
if (!mIsKeyguardShowing || (!mUdfpsEnrolled && !mFaceAuthEnrolled)) {
|
||||||
mView.setVisibility(View.INVISIBLE);
|
mView.setVisibility(View.INVISIBLE);
|
||||||
return;
|
return;
|
||||||
@@ -318,13 +334,13 @@ public class LockIconViewController extends ViewController<LockIconView> impleme
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void dump(@NonNull FileDescriptor fd, @NonNull PrintWriter pw, @NonNull String[] args) {
|
public void dump(@NonNull FileDescriptor fd, @NonNull PrintWriter pw, @NonNull String[] args) {
|
||||||
pw.println(" mShowBouncerButton: " + mShowButton);
|
pw.println("mHasUdfpsOrFaceAuthFeatures: " + mHasUdfpsOrFaceAuthFeatures);
|
||||||
pw.println(" mShowUnlockIcon: " + mShowUnlockIcon);
|
pw.println("mUdfpsEnrolled: " + mUdfpsEnrolled);
|
||||||
pw.println(" mShowLockIcon: " + mShowLockIcon);
|
pw.println("mFaceAuthEnrolled: " + mFaceAuthEnrolled);
|
||||||
pw.println(" mHasUdfpsOrFaceAuthFeatures: " + mHasUdfpsOrFaceAuthFeatures);
|
pw.println("mIsKeyguardShowing: " + mIsKeyguardShowing);
|
||||||
pw.println(" mUdfpsEnrolled: " + mUdfpsEnrolled);
|
pw.println(" mShowBouncerButton: " + mShowButton);
|
||||||
pw.println(" mFaceAuthEnrolled: " + mFaceAuthEnrolled);
|
pw.println(" mShowUnlockIcon: " + mShowUnlockIcon);
|
||||||
pw.println(" mIsKeyguardShowing: " + mIsKeyguardShowing);
|
pw.println(" mShowLockIcon: " + mShowLockIcon);
|
||||||
pw.println(" mIsDozing: " + mIsDozing);
|
pw.println(" mIsDozing: " + mIsDozing);
|
||||||
pw.println(" mIsBouncerShowing: " + mIsBouncerShowing);
|
pw.println(" mIsBouncerShowing: " + mIsBouncerShowing);
|
||||||
pw.println(" mUserUnlockedWithBiometric: " + mUserUnlockedWithBiometric);
|
pw.println(" mUserUnlockedWithBiometric: " + mUserUnlockedWithBiometric);
|
||||||
@@ -351,6 +367,14 @@ public class LockIconViewController extends ViewController<LockIconView> impleme
|
|||||||
|
|
||||||
private final KeyguardUpdateMonitorCallback mKeyguardUpdateMonitorCallback =
|
private final KeyguardUpdateMonitorCallback mKeyguardUpdateMonitorCallback =
|
||||||
new KeyguardUpdateMonitorCallback() {
|
new KeyguardUpdateMonitorCallback() {
|
||||||
|
@Override
|
||||||
|
public void onKeyguardVisibilityChanged(boolean showing) {
|
||||||
|
// reset mIsBouncerShowing state in case it was preemptively set
|
||||||
|
// onAffordanceClick
|
||||||
|
mIsBouncerShowing = mKeyguardViewController.isBouncerShowing();
|
||||||
|
updateVisibility();
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onKeyguardBouncerChanged(boolean bouncer) {
|
public void onKeyguardBouncerChanged(boolean bouncer) {
|
||||||
mIsBouncerShowing = bouncer;
|
mIsBouncerShowing = bouncer;
|
||||||
@@ -366,7 +390,19 @@ public class LockIconViewController extends ViewController<LockIconView> impleme
|
|||||||
|
|
||||||
if (biometricSourceType == FINGERPRINT) {
|
if (biometricSourceType == FINGERPRINT) {
|
||||||
mRunningFPS = running;
|
mRunningFPS = running;
|
||||||
updateVisibility();
|
if (!mRunningFPS) {
|
||||||
|
if (mCancelDelayedUpdateVisibilityRunnable != null) {
|
||||||
|
mCancelDelayedUpdateVisibilityRunnable.run();
|
||||||
|
}
|
||||||
|
|
||||||
|
// For some devices, auth is cancelled immediately on screen off but
|
||||||
|
// before dozing state is set. We want to avoid briefly showing the
|
||||||
|
// button in this case, so we delay updating the visibility by 50ms.
|
||||||
|
mCancelDelayedUpdateVisibilityRunnable =
|
||||||
|
mExecutor.executeDelayed(() -> updateVisibility(), 50);
|
||||||
|
} else {
|
||||||
|
updateVisibility();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ public class UdfpsKeyguardViewController extends UdfpsAnimationViewController<Ud
|
|||||||
@NonNull private final KeyguardViewMediator mKeyguardViewMediator;
|
@NonNull private final KeyguardViewMediator mKeyguardViewMediator;
|
||||||
@NonNull private final UdfpsController mUdfpsController;
|
@NonNull private final UdfpsController mUdfpsController;
|
||||||
|
|
||||||
@Nullable private Runnable mCancelRunnable;
|
@Nullable private Runnable mCancelDelayedHintRunnable;
|
||||||
private boolean mShowingUdfpsBouncer;
|
private boolean mShowingUdfpsBouncer;
|
||||||
private boolean mUdfpsRequested;
|
private boolean mUdfpsRequested;
|
||||||
private boolean mQsExpanded;
|
private boolean mQsExpanded;
|
||||||
@@ -64,7 +64,6 @@ public class UdfpsKeyguardViewController extends UdfpsAnimationViewController<Ud
|
|||||||
private boolean mHintShown;
|
private boolean mHintShown;
|
||||||
private boolean mTransitioningFromHome;
|
private boolean mTransitioningFromHome;
|
||||||
private int mStatusBarState;
|
private int mStatusBarState;
|
||||||
private boolean mKeyguardIsVisible;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* hidden amount of pin/pattern/password bouncer
|
* hidden amount of pin/pattern/password bouncer
|
||||||
@@ -111,7 +110,6 @@ public class UdfpsKeyguardViewController extends UdfpsAnimationViewController<Ud
|
|||||||
mUdfpsRequested = false;
|
mUdfpsRequested = false;
|
||||||
mStatusBarState = mStatusBarStateController.getState();
|
mStatusBarState = mStatusBarStateController.getState();
|
||||||
mQsExpanded = mKeyguardViewManager.isQsExpanded();
|
mQsExpanded = mKeyguardViewManager.isQsExpanded();
|
||||||
mKeyguardIsVisible = mKeyguardUpdateMonitor.isKeyguardVisible();
|
|
||||||
mInputBouncerHiddenAmount = KeyguardBouncer.EXPANSION_HIDDEN;
|
mInputBouncerHiddenAmount = KeyguardBouncer.EXPANSION_HIDDEN;
|
||||||
updateAlpha();
|
updateAlpha();
|
||||||
updatePauseAuth();
|
updatePauseAuth();
|
||||||
@@ -131,9 +129,9 @@ public class UdfpsKeyguardViewController extends UdfpsAnimationViewController<Ud
|
|||||||
mTransitioningFromHome = false;
|
mTransitioningFromHome = false;
|
||||||
mKeyguardUpdateMonitor.requestFaceAuthOnOccludingApp(false);
|
mKeyguardUpdateMonitor.requestFaceAuthOnOccludingApp(false);
|
||||||
|
|
||||||
if (mCancelRunnable != null) {
|
if (mCancelDelayedHintRunnable != null) {
|
||||||
mCancelRunnable.run();
|
mCancelDelayedHintRunnable.run();
|
||||||
mCancelRunnable = null;
|
mCancelDelayedHintRunnable = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -145,7 +143,6 @@ public class UdfpsKeyguardViewController extends UdfpsAnimationViewController<Ud
|
|||||||
pw.println("mTransitioningFromHomeToKeyguard=" + mTransitioningFromHome);
|
pw.println("mTransitioningFromHomeToKeyguard=" + mTransitioningFromHome);
|
||||||
pw.println("mStatusBarState=" + StatusBarState.toShortString(mStatusBarState));
|
pw.println("mStatusBarState=" + StatusBarState.toShortString(mStatusBarState));
|
||||||
pw.println("mQsExpanded=" + mQsExpanded);
|
pw.println("mQsExpanded=" + mQsExpanded);
|
||||||
pw.println("mKeyguardVisible=" + mKeyguardIsVisible);
|
|
||||||
pw.println("mIsBouncerVisible=" + mIsBouncerVisible);
|
pw.println("mIsBouncerVisible=" + mIsBouncerVisible);
|
||||||
pw.println("mInputBouncerHiddenAmount=" + mInputBouncerHiddenAmount);
|
pw.println("mInputBouncerHiddenAmount=" + mInputBouncerHiddenAmount);
|
||||||
pw.println("mAlpha=" + mView.getAlpha());
|
pw.println("mAlpha=" + mView.getAlpha());
|
||||||
@@ -205,11 +202,7 @@ public class UdfpsKeyguardViewController extends UdfpsAnimationViewController<Ud
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!mKeyguardIsVisible) {
|
if (mInputBouncerHiddenAmount < .4f || mIsBouncerVisible) {
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (mInputBouncerHiddenAmount < .4f) {
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -240,9 +233,9 @@ public class UdfpsKeyguardViewController extends UdfpsAnimationViewController<Ud
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void cancelDelayedHint() {
|
private void cancelDelayedHint() {
|
||||||
if (mCancelRunnable != null) {
|
if (mCancelDelayedHintRunnable != null) {
|
||||||
mCancelRunnable.run();
|
mCancelDelayedHintRunnable.run();
|
||||||
mCancelRunnable = null;
|
mCancelDelayedHintRunnable = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -252,9 +245,9 @@ public class UdfpsKeyguardViewController extends UdfpsAnimationViewController<Ud
|
|||||||
}
|
}
|
||||||
|
|
||||||
// show udfps hint a few seconds after face auth started running
|
// show udfps hint a few seconds after face auth started running
|
||||||
if (!mFaceDetectRunning && running && !mHintShown && mCancelRunnable == null) {
|
if (!mFaceDetectRunning && running && !mHintShown && mCancelDelayedHintRunnable == null) {
|
||||||
// Face detect started running, show udfps hint after a delay
|
// Face detect started running, show udfps hint after a delay
|
||||||
mCancelRunnable = mExecutor.executeDelayed(() -> showHint(false),
|
mCancelDelayedHintRunnable = mExecutor.executeDelayed(() -> showHint(false),
|
||||||
AFTER_FACE_AUTH_HINT_DELAY);
|
AFTER_FACE_AUTH_HINT_DELAY);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -328,11 +321,6 @@ public class UdfpsKeyguardViewController extends UdfpsAnimationViewController<Ud
|
|||||||
cancelDelayedHint();
|
cancelDelayedHint();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void onKeyguardVisibilityChangedRaw(boolean showing) {
|
|
||||||
mKeyguardIsVisible = showing;
|
|
||||||
updatePauseAuth();
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
private final StatusBarKeyguardViewManager.AlternateAuthInterceptor mAlternateAuthInterceptor =
|
private final StatusBarKeyguardViewManager.AlternateAuthInterceptor mAlternateAuthInterceptor =
|
||||||
@@ -385,6 +373,9 @@ public class UdfpsKeyguardViewController extends UdfpsAnimationViewController<Ud
|
|||||||
@Override
|
@Override
|
||||||
public void onBouncerVisibilityChanged() {
|
public void onBouncerVisibilityChanged() {
|
||||||
mIsBouncerVisible = mKeyguardViewManager.bouncerIsOrWillBeShowing();
|
mIsBouncerVisible = mKeyguardViewManager.bouncerIsOrWillBeShowing();
|
||||||
|
if (!mIsBouncerVisible) {
|
||||||
|
mInputBouncerHiddenAmount = 1f;
|
||||||
|
}
|
||||||
updatePauseAuth();
|
updatePauseAuth();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -3669,7 +3669,9 @@ public class StatusBar extends SystemUI implements DemoMode,
|
|||||||
public boolean onBackPressed() {
|
public boolean onBackPressed() {
|
||||||
boolean isScrimmedBouncer = mScrimController.getState() == ScrimState.BOUNCER_SCRIMMED;
|
boolean isScrimmedBouncer = mScrimController.getState() == ScrimState.BOUNCER_SCRIMMED;
|
||||||
if (mStatusBarKeyguardViewManager.onBackPressed(isScrimmedBouncer /* hideImmediately */)) {
|
if (mStatusBarKeyguardViewManager.onBackPressed(isScrimmedBouncer /* hideImmediately */)) {
|
||||||
if (!isScrimmedBouncer) {
|
if (isScrimmedBouncer) {
|
||||||
|
mStatusBarStateController.setLeaveOpenOnKeyguardHide(false);
|
||||||
|
} else {
|
||||||
mNotificationPanelViewController.expandWithoutQs();
|
mNotificationPanelViewController.expandWithoutQs();
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
@@ -3704,9 +3706,13 @@ public class StatusBar extends SystemUI implements DemoMode,
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void showBouncerIfKeyguard() {
|
private void showBouncerIfKeyguard() {
|
||||||
if ((mState == StatusBarState.KEYGUARD || mState == StatusBarState.SHADE_LOCKED)
|
if (!mKeyguardViewMediator.isHiding()) {
|
||||||
&& !mKeyguardViewMediator.isHiding()) {
|
if (mState == StatusBarState.KEYGUARD
|
||||||
mStatusBarKeyguardViewManager.showGenericBouncer(true /* scrimmed */);
|
&& !mStatusBarKeyguardViewManager.bouncerIsOrWillBeShowing()) {
|
||||||
|
mStatusBarKeyguardViewManager.showGenericBouncer(true /* scrimmed */);
|
||||||
|
} else if (mState == StatusBarState.SHADE_LOCKED) {
|
||||||
|
mStatusBarKeyguardViewManager.showBouncer(true /* scrimmed */);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -97,7 +97,6 @@ public class UdfpsKeyguardViewControllerTest extends SysuiTestCase {
|
|||||||
when(mView.getContext()).thenReturn(mResourceContext);
|
when(mView.getContext()).thenReturn(mResourceContext);
|
||||||
when(mResourceContext.getString(anyInt())).thenReturn("test string");
|
when(mResourceContext.getString(anyInt())).thenReturn("test string");
|
||||||
when(mKeyguardViewMediator.isAnimatingScreenOff()).thenReturn(false);
|
when(mKeyguardViewMediator.isAnimatingScreenOff()).thenReturn(false);
|
||||||
when(mKeyguardUpdateMonitor.isKeyguardVisible()).thenReturn(true);
|
|
||||||
mController = new UdfpsKeyguardViewController(
|
mController = new UdfpsKeyguardViewController(
|
||||||
mView,
|
mView,
|
||||||
mStatusBarStateController,
|
mStatusBarStateController,
|
||||||
@@ -183,17 +182,6 @@ public class UdfpsKeyguardViewControllerTest extends SysuiTestCase {
|
|||||||
assertFalse(mController.shouldPauseAuth());
|
assertFalse(mController.shouldPauseAuth());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testShouldPauseAuthKeyguardNotVisible() {
|
|
||||||
mController.onViewAttached();
|
|
||||||
captureKeyguardUpdateMonitorCallback();
|
|
||||||
|
|
||||||
// WHEN keyguard isn't visible
|
|
||||||
mKeyguardUpdateMonitorCallback.onKeyguardVisibilityChangedRaw(false);
|
|
||||||
|
|
||||||
assertTrue(mController.shouldPauseAuth());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testShouldPauseAuthOnShadeLocked() {
|
public void testShouldPauseAuthOnShadeLocked() {
|
||||||
mController.onViewAttached();
|
mController.onViewAttached();
|
||||||
|
|||||||
Reference in New Issue
Block a user