Merge "Don't collapse the shade when SHOW_BOUNCER"
This commit is contained in:
committed by
Android (Google) Code Review
commit
1c22a72cc3
@@ -52,14 +52,11 @@ import com.android.systemui.biometrics.AuthController;
|
||||
import com.android.systemui.dagger.SysUISingleton;
|
||||
import com.android.systemui.dagger.qualifiers.Main;
|
||||
import com.android.systemui.dump.DumpManager;
|
||||
import com.android.systemui.keyguard.KeyguardUnlockAnimationController;
|
||||
import com.android.systemui.keyguard.KeyguardViewMediator;
|
||||
import com.android.systemui.keyguard.ScreenLifecycle;
|
||||
import com.android.systemui.keyguard.WakefulnessLifecycle;
|
||||
import com.android.systemui.log.SessionTracker;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.shade.ShadeController;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
import com.android.systemui.statusbar.NotificationMediaManager;
|
||||
import com.android.systemui.statusbar.NotificationShadeWindowController;
|
||||
import com.android.systemui.statusbar.VibratorHelper;
|
||||
@@ -153,7 +150,6 @@ public class BiometricUnlockController extends KeyguardUpdateMonitorCallback imp
|
||||
private final Handler mHandler;
|
||||
private final KeyguardBypassController mKeyguardBypassController;
|
||||
private PowerManager.WakeLock mWakeLock;
|
||||
private final com.android.systemui.shade.ShadeController mShadeController;
|
||||
private final KeyguardUpdateMonitor mUpdateMonitor;
|
||||
private final DozeParameters mDozeParameters;
|
||||
private final KeyguardStateController mKeyguardStateController;
|
||||
@@ -167,7 +163,6 @@ public class BiometricUnlockController extends KeyguardUpdateMonitorCallback imp
|
||||
private KeyguardViewMediator mKeyguardViewMediator;
|
||||
private ScrimController mScrimController;
|
||||
private PendingAuthenticated mPendingAuthenticated = null;
|
||||
private boolean mPendingShowBouncer;
|
||||
private boolean mHasScreenTurnedOnSinceAuthenticating;
|
||||
private boolean mFadedAwayAfterWakeAndUnlock;
|
||||
private BiometricModeListener mBiometricModeListener;
|
||||
@@ -259,13 +254,11 @@ public class BiometricUnlockController extends KeyguardUpdateMonitorCallback imp
|
||||
);
|
||||
}
|
||||
|
||||
private KeyguardUnlockAnimationController mKeyguardUnlockAnimationController;
|
||||
private final ScreenOffAnimationController mScreenOffAnimationController;
|
||||
|
||||
@Inject
|
||||
public BiometricUnlockController(DozeScrimController dozeScrimController,
|
||||
KeyguardViewMediator keyguardViewMediator, ScrimController scrimController,
|
||||
ShadeController shadeController,
|
||||
NotificationShadeWindowController notificationShadeWindowController,
|
||||
KeyguardStateController keyguardStateController, Handler handler,
|
||||
KeyguardUpdateMonitor keyguardUpdateMonitor,
|
||||
@@ -278,13 +271,11 @@ public class BiometricUnlockController extends KeyguardUpdateMonitorCallback imp
|
||||
ScreenLifecycle screenLifecycle,
|
||||
AuthController authController,
|
||||
StatusBarStateController statusBarStateController,
|
||||
KeyguardUnlockAnimationController keyguardUnlockAnimationController,
|
||||
SessionTracker sessionTracker,
|
||||
LatencyTracker latencyTracker,
|
||||
ScreenOffAnimationController screenOffAnimationController,
|
||||
VibratorHelper vibrator) {
|
||||
mPowerManager = powerManager;
|
||||
mShadeController = shadeController;
|
||||
mUpdateMonitor = keyguardUpdateMonitor;
|
||||
mDozeParameters = dozeParameters;
|
||||
mUpdateMonitor.registerCallback(this);
|
||||
@@ -306,7 +297,6 @@ public class BiometricUnlockController extends KeyguardUpdateMonitorCallback imp
|
||||
mMetricsLogger = metricsLogger;
|
||||
mAuthController = authController;
|
||||
mStatusBarStateController = statusBarStateController;
|
||||
mKeyguardUnlockAnimationController = keyguardUnlockAnimationController;
|
||||
mSessionTracker = sessionTracker;
|
||||
mScreenOffAnimationController = screenOffAnimationController;
|
||||
mVibratorHelper = vibrator;
|
||||
@@ -462,22 +452,13 @@ public class BiometricUnlockController extends KeyguardUpdateMonitorCallback imp
|
||||
break;
|
||||
case MODE_UNLOCK_COLLAPSING:
|
||||
Trace.beginSection("MODE_UNLOCK_COLLAPSING");
|
||||
if (!wasDeviceInteractive) {
|
||||
mPendingShowBouncer = true;
|
||||
} else {
|
||||
mPendingShowBouncer = false;
|
||||
mKeyguardViewController.notifyKeyguardAuthenticated(
|
||||
false /* strongAuth */);
|
||||
}
|
||||
mKeyguardViewController.notifyKeyguardAuthenticated(
|
||||
false /* strongAuth */);
|
||||
Trace.endSection();
|
||||
break;
|
||||
case MODE_SHOW_BOUNCER:
|
||||
Trace.beginSection("MODE_SHOW_BOUNCER");
|
||||
if (!wasDeviceInteractive) {
|
||||
mPendingShowBouncer = true;
|
||||
} else {
|
||||
showBouncer();
|
||||
}
|
||||
mKeyguardViewController.showBouncer(true);
|
||||
Trace.endSection();
|
||||
break;
|
||||
case MODE_WAKE_AND_UNLOCK_FROM_DREAM:
|
||||
@@ -515,15 +496,6 @@ public class BiometricUnlockController extends KeyguardUpdateMonitorCallback imp
|
||||
}
|
||||
}
|
||||
|
||||
private void showBouncer() {
|
||||
if (mMode == MODE_SHOW_BOUNCER) {
|
||||
mKeyguardViewController.showBouncer(true);
|
||||
}
|
||||
mShadeController.animateCollapsePanels(CommandQueue.FLAG_EXCLUDE_NONE, true /* force */,
|
||||
false /* delayed */, BIOMETRIC_COLLAPSE_SPEEDUP_FACTOR);
|
||||
mPendingShowBouncer = false;
|
||||
}
|
||||
|
||||
public boolean hasPendingAuthentication() {
|
||||
return mPendingAuthenticated != null
|
||||
&& mUpdateMonitor
|
||||
@@ -741,13 +713,6 @@ public class BiometricUnlockController extends KeyguardUpdateMonitorCallback imp
|
||||
@VisibleForTesting
|
||||
final WakefulnessLifecycle.Observer mWakefulnessObserver =
|
||||
new WakefulnessLifecycle.Observer() {
|
||||
@Override
|
||||
public void onFinishedWakingUp() {
|
||||
if (mPendingShowBouncer) {
|
||||
BiometricUnlockController.this.showBouncer();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onStartedGoingToSleep() {
|
||||
resetMode();
|
||||
|
||||
@@ -20,7 +20,6 @@ import static com.google.common.truth.Truth.assertThat;
|
||||
|
||||
import static org.mockito.ArgumentMatchers.any;
|
||||
import static org.mockito.ArgumentMatchers.anyBoolean;
|
||||
import static org.mockito.ArgumentMatchers.anyFloat;
|
||||
import static org.mockito.ArgumentMatchers.anyInt;
|
||||
import static org.mockito.ArgumentMatchers.anyLong;
|
||||
import static org.mockito.ArgumentMatchers.anyString;
|
||||
@@ -45,13 +44,11 @@ import com.android.keyguard.KeyguardUpdateMonitor;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.biometrics.AuthController;
|
||||
import com.android.systemui.dump.DumpManager;
|
||||
import com.android.systemui.keyguard.KeyguardUnlockAnimationController;
|
||||
import com.android.systemui.keyguard.KeyguardViewMediator;
|
||||
import com.android.systemui.keyguard.ScreenLifecycle;
|
||||
import com.android.systemui.keyguard.WakefulnessLifecycle;
|
||||
import com.android.systemui.log.SessionTracker;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.shade.ShadeController;
|
||||
import com.android.systemui.statusbar.NotificationMediaManager;
|
||||
import com.android.systemui.statusbar.NotificationShadeWindowController;
|
||||
import com.android.systemui.statusbar.VibratorHelper;
|
||||
@@ -90,8 +87,6 @@ public class BiometricsUnlockControllerTest extends SysuiTestCase {
|
||||
@Mock
|
||||
private BiometricUnlockController.BiometricModeListener mBiometricModeListener;
|
||||
@Mock
|
||||
private ShadeController mShadeController;
|
||||
@Mock
|
||||
private KeyguardStateController mKeyguardStateController;
|
||||
@Mock
|
||||
private Handler mHandler;
|
||||
@@ -112,8 +107,6 @@ public class BiometricsUnlockControllerTest extends SysuiTestCase {
|
||||
@Mock
|
||||
private StatusBarStateController mStatusBarStateController;
|
||||
@Mock
|
||||
private KeyguardUnlockAnimationController mKeyguardUnlockAnimationController;
|
||||
@Mock
|
||||
private SessionTracker mSessionTracker;
|
||||
@Mock
|
||||
private LatencyTracker mLatencyTracker;
|
||||
@@ -137,12 +130,12 @@ public class BiometricsUnlockControllerTest extends SysuiTestCase {
|
||||
when(mVibratorHelper.hasVibrator()).thenReturn(true);
|
||||
mDependency.injectTestDependency(NotificationMediaManager.class, mMediaManager);
|
||||
mBiometricUnlockController = new BiometricUnlockController(mDozeScrimController,
|
||||
mKeyguardViewMediator, mScrimController, mShadeController,
|
||||
mKeyguardViewMediator, mScrimController,
|
||||
mNotificationShadeWindowController, mKeyguardStateController, mHandler,
|
||||
mUpdateMonitor, res.getResources(), mKeyguardBypassController, mDozeParameters,
|
||||
mMetricsLogger, mDumpManager, mPowerManager,
|
||||
mNotificationMediaManager, mWakefulnessLifecycle, mScreenLifecycle,
|
||||
mAuthController, mStatusBarStateController, mKeyguardUnlockAnimationController,
|
||||
mAuthController, mStatusBarStateController,
|
||||
mSessionTracker, mLatencyTracker, mScreenOffAnimationController, mVibratorHelper);
|
||||
mBiometricUnlockController.setKeyguardViewController(mStatusBarKeyguardViewManager);
|
||||
mBiometricUnlockController.setBiometricModeListener(mBiometricModeListener);
|
||||
@@ -167,8 +160,6 @@ public class BiometricsUnlockControllerTest extends SysuiTestCase {
|
||||
mBiometricUnlockController.onBiometricAuthenticated(UserHandle.USER_CURRENT,
|
||||
BiometricSourceType.FINGERPRINT, false /* isStrongBiometric */);
|
||||
verify(mStatusBarKeyguardViewManager).showBouncer(anyBoolean());
|
||||
verify(mShadeController).animateCollapsePanels(anyInt(), anyBoolean(), anyBoolean(),
|
||||
anyFloat());
|
||||
assertThat(mBiometricUnlockController.getMode())
|
||||
.isEqualTo(BiometricUnlockController.MODE_SHOW_BOUNCER);
|
||||
assertThat(mBiometricUnlockController.getBiometricType())
|
||||
@@ -246,8 +237,6 @@ public class BiometricsUnlockControllerTest extends SysuiTestCase {
|
||||
mBiometricUnlockController.onBiometricAuthenticated(UserHandle.USER_CURRENT,
|
||||
BiometricSourceType.FACE, true /* isStrongBiometric */);
|
||||
|
||||
verify(mShadeController, never()).animateCollapsePanels(anyInt(), anyBoolean(),
|
||||
anyBoolean(), anyFloat());
|
||||
verify(mStatusBarKeyguardViewManager, never()).notifyKeyguardAuthenticated(anyBoolean());
|
||||
assertThat(mBiometricUnlockController.getMode())
|
||||
.isEqualTo(BiometricUnlockController.MODE_NONE);
|
||||
@@ -298,10 +287,6 @@ public class BiometricsUnlockControllerTest extends SysuiTestCase {
|
||||
mBiometricUnlockController.onBiometricAuthenticated(UserHandle.USER_CURRENT,
|
||||
BiometricSourceType.FACE, true /* isStrongBiometric */);
|
||||
|
||||
// Wake up before showing the bouncer
|
||||
verify(mStatusBarKeyguardViewManager, never()).showBouncer(anyBoolean());
|
||||
mBiometricUnlockController.mWakefulnessObserver.onFinishedWakingUp();
|
||||
|
||||
verify(mStatusBarKeyguardViewManager).showBouncer(anyBoolean());
|
||||
assertThat(mBiometricUnlockController.getMode())
|
||||
.isEqualTo(BiometricUnlockController.MODE_SHOW_BOUNCER);
|
||||
@@ -332,8 +317,6 @@ public class BiometricsUnlockControllerTest extends SysuiTestCase {
|
||||
BiometricSourceType.FACE, true /* isStrongBiometric */);
|
||||
|
||||
verify(mStatusBarKeyguardViewManager, never()).showBouncer(anyBoolean());
|
||||
verify(mShadeController, never()).animateCollapsePanels(anyInt(), anyBoolean(),
|
||||
anyBoolean(), anyFloat());
|
||||
assertThat(mBiometricUnlockController.getMode())
|
||||
.isEqualTo(BiometricUnlockController.MODE_NONE);
|
||||
}
|
||||
@@ -383,8 +366,6 @@ public class BiometricsUnlockControllerTest extends SysuiTestCase {
|
||||
mBiometricUnlockController.onBiometricAuthenticated(UserHandle.USER_CURRENT,
|
||||
BiometricSourceType.FACE, true /* isStrongBiometric */);
|
||||
|
||||
verify(mShadeController, never()).animateCollapsePanels(anyInt(), anyBoolean(),
|
||||
anyBoolean(), anyFloat());
|
||||
assertThat(mBiometricUnlockController.getMode())
|
||||
.isEqualTo(BiometricUnlockController.MODE_ONLY_WAKE);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user