Check for UDFPS finger down for face auth device entry
Previously any successful face-auth triggered from touching the udfps area would result in the user entering the device. Instead, check that the finger is down on success to proceed to device entry. Test: atest SystemUITests Fixes: 233213741 Bug: 195161518 Change-Id: Ie7a2fb034cfb811022771b16494d2bea71058459
This commit is contained in:
@@ -1571,9 +1571,6 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
|
||||
public void onUdfpsPointerDown(int sensorId) {
|
||||
Log.d(TAG, "onUdfpsPointerDown, sensorId: " + sensorId);
|
||||
requestFaceAuth(true);
|
||||
if (isFaceDetectionRunning()) {
|
||||
mKeyguardBypassController.setUserHasDeviceEntryIntent(true);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -1606,9 +1603,6 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
|
||||
"faceFailure-" + reason);
|
||||
|
||||
handleFaceAuthFailed();
|
||||
if (mKeyguardBypassController != null) {
|
||||
mKeyguardBypassController.setUserHasDeviceEntryIntent(false);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -1616,10 +1610,6 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
|
||||
Trace.beginSection("KeyguardUpdateMonitor#onAuthenticationSucceeded");
|
||||
handleFaceAuthenticated(result.getUserId(), result.isStrongBiometric());
|
||||
Trace.endSection();
|
||||
|
||||
if (mKeyguardBypassController != null) {
|
||||
mKeyguardBypassController.setUserHasDeviceEntryIntent(false);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -1630,9 +1620,6 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
|
||||
@Override
|
||||
public void onAuthenticationError(int errMsgId, CharSequence errString) {
|
||||
handleFaceError(errMsgId, errString.toString());
|
||||
if (mKeyguardBypassController != null) {
|
||||
mKeyguardBypassController.setUserHasDeviceEntryIntent(false);
|
||||
}
|
||||
|
||||
if (mActiveUnlockConfig.shouldRequestActiveUnlockOnFaceError(errMsgId)) {
|
||||
requestActiveUnlock(
|
||||
@@ -2315,10 +2302,6 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
|
||||
updateFaceListeningState(BIOMETRIC_ACTION_START);
|
||||
}
|
||||
|
||||
public boolean isFaceAuthUserRequested() {
|
||||
return mIsFaceAuthUserRequested;
|
||||
}
|
||||
|
||||
/**
|
||||
* In case face auth is running, cancel it.
|
||||
*/
|
||||
@@ -3179,11 +3162,6 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
|
||||
mSecureCameraLaunched = false;
|
||||
}
|
||||
|
||||
if (mKeyguardBypassController != null) {
|
||||
// LS visibility has changed, so reset deviceEntryIntent
|
||||
mKeyguardBypassController.setUserHasDeviceEntryIntent(false);
|
||||
}
|
||||
|
||||
for (int i = 0; i < mCallbacks.size(); i++) {
|
||||
KeyguardUpdateMonitorCallback cb = mCallbacks.get(i).get();
|
||||
if (cb != null) {
|
||||
|
||||
@@ -579,7 +579,7 @@ public class BiometricUnlockController extends KeyguardUpdateMonitorCallback imp
|
||||
mUpdateMonitor.isUnlockingWithBiometricAllowed(isStrongBiometric);
|
||||
boolean deviceDreaming = mUpdateMonitor.isDreaming();
|
||||
boolean bypass = mKeyguardBypassController.getBypassEnabled()
|
||||
|| mKeyguardBypassController.getUserHasDeviceEntryIntent();
|
||||
|| mAuthController.isUdfpsFingerDown();
|
||||
if (!mUpdateMonitor.isDeviceInteractive()) {
|
||||
if (!mKeyguardViewController.isShowing()) {
|
||||
return bypass ? MODE_WAKE_AND_UNLOCK : MODE_ONLY_WAKE;
|
||||
|
||||
@@ -43,7 +43,6 @@ open class KeyguardBypassController : Dumpable, StackScrollAlgorithm.BypassContr
|
||||
private var hasFaceFeature: Boolean
|
||||
private var pendingUnlock: PendingUnlock? = null
|
||||
private val listeners = mutableListOf<OnBypassStateChangedListener>()
|
||||
var userHasDeviceEntryIntent: Boolean = false // ie: attempted udfps auth
|
||||
|
||||
private val faceAuthEnabledChangedCallback = object : KeyguardStateController.Callback {
|
||||
override fun onFaceAuthEnabledChanged() = notifyListeners()
|
||||
@@ -217,7 +216,6 @@ open class KeyguardBypassController : Dumpable, StackScrollAlgorithm.BypassContr
|
||||
pw.println(" launchingAffordance: $launchingAffordance")
|
||||
pw.println(" qSExpanded: $qSExpanded")
|
||||
pw.println(" hasFaceFeature: $hasFaceFeature")
|
||||
pw.println(" userHasDeviceEntryIntent: $userHasDeviceEntryIntent")
|
||||
}
|
||||
|
||||
/** Registers a listener for bypass state changes. */
|
||||
|
||||
Reference in New Issue
Block a user