Loading packages/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitor.java +13 −1 Original line number Diff line number Diff line Loading @@ -238,6 +238,8 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener { private boolean mIsDreaming; private final DevicePolicyManager mDevicePolicyManager; private boolean mLogoutEnabled; // If the user long pressed the lock icon, disabling face auth for the current session. private boolean mLockIconPressed; /** * Short delay before restarting biometric authentication after a successful try Loading Loading @@ -1384,6 +1386,7 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener { } private void handleScreenTurnedOff() { mLockIconPressed = false; mHardwareFingerprintUnavailableRetryCount = 0; mHardwareFaceUnavailableRetryCount = 0; final int count = mCallbacks.size(); Loading Loading @@ -1625,10 +1628,19 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener { // instance of KeyguardUpdateMonitor for each user but KeyguardUpdateMonitor is user-aware. return (mBouncer || mAuthInterruptActive || awakeKeyguard || shouldListenForFaceAssistant()) && !mSwitchingUser && !getUserCanSkipBouncer(user) && !isFaceDisabled(user) && !mKeyguardGoingAway && mFaceSettingEnabledForUser && !mKeyguardGoingAway && mFaceSettingEnabledForUser && !mLockIconPressed && mUserManager.isUserUnlocked(user) && mIsPrimaryUser; } /** * Whenever the lock icon is long pressed, disabling trust agents. * This means that we cannot auth passively (face) until the user presses power. */ public void onLockIconPressed() { mLockIconPressed = true; mUserFaceAuthenticated.put(getCurrentUser(), false); updateFaceListeningState(); } private void startListeningForFingerprint() { if (mFingerprintRunningState == BIOMETRIC_STATE_CANCELLING) { Loading packages/SystemUI/src/com/android/systemui/statusbar/KeyguardIndicationController.java +1 −0 Original line number Diff line number Diff line Loading @@ -189,6 +189,7 @@ public class KeyguardIndicationController implements StateListener, mLockscreenGestureLogger.write(MetricsProto.MetricsEvent.ACTION_LS_LOCK, 0 /* lengthDp - N/A */, 0 /* velocityDp - N/A */); showTransientIndication(R.string.keyguard_indication_trust_disabled); mKeyguardUpdateMonitor.onLockIconPressed(); mLockPatternUtils.requireCredentialEntry(KeyguardUpdateMonitor.getCurrentUser()); return true; Loading packages/SystemUI/tests/src/com/android/systemui/statusbar/KeyguardIndicationControllerTest.java +1 −0 Original line number Diff line number Diff line Loading @@ -261,6 +261,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { longClickCaptor.getValue().onLongClick(mLockIcon); verify(mLockPatternUtils).requireCredentialEntry(anyInt()); verify(mKeyguardUpdateMonitor).onLockIconPressed(); } @Test Loading Loading
packages/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitor.java +13 −1 Original line number Diff line number Diff line Loading @@ -238,6 +238,8 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener { private boolean mIsDreaming; private final DevicePolicyManager mDevicePolicyManager; private boolean mLogoutEnabled; // If the user long pressed the lock icon, disabling face auth for the current session. private boolean mLockIconPressed; /** * Short delay before restarting biometric authentication after a successful try Loading Loading @@ -1384,6 +1386,7 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener { } private void handleScreenTurnedOff() { mLockIconPressed = false; mHardwareFingerprintUnavailableRetryCount = 0; mHardwareFaceUnavailableRetryCount = 0; final int count = mCallbacks.size(); Loading Loading @@ -1625,10 +1628,19 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener { // instance of KeyguardUpdateMonitor for each user but KeyguardUpdateMonitor is user-aware. return (mBouncer || mAuthInterruptActive || awakeKeyguard || shouldListenForFaceAssistant()) && !mSwitchingUser && !getUserCanSkipBouncer(user) && !isFaceDisabled(user) && !mKeyguardGoingAway && mFaceSettingEnabledForUser && !mKeyguardGoingAway && mFaceSettingEnabledForUser && !mLockIconPressed && mUserManager.isUserUnlocked(user) && mIsPrimaryUser; } /** * Whenever the lock icon is long pressed, disabling trust agents. * This means that we cannot auth passively (face) until the user presses power. */ public void onLockIconPressed() { mLockIconPressed = true; mUserFaceAuthenticated.put(getCurrentUser(), false); updateFaceListeningState(); } private void startListeningForFingerprint() { if (mFingerprintRunningState == BIOMETRIC_STATE_CANCELLING) { Loading
packages/SystemUI/src/com/android/systemui/statusbar/KeyguardIndicationController.java +1 −0 Original line number Diff line number Diff line Loading @@ -189,6 +189,7 @@ public class KeyguardIndicationController implements StateListener, mLockscreenGestureLogger.write(MetricsProto.MetricsEvent.ACTION_LS_LOCK, 0 /* lengthDp - N/A */, 0 /* velocityDp - N/A */); showTransientIndication(R.string.keyguard_indication_trust_disabled); mKeyguardUpdateMonitor.onLockIconPressed(); mLockPatternUtils.requireCredentialEntry(KeyguardUpdateMonitor.getCurrentUser()); return true; Loading
packages/SystemUI/tests/src/com/android/systemui/statusbar/KeyguardIndicationControllerTest.java +1 −0 Original line number Diff line number Diff line Loading @@ -261,6 +261,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { longClickCaptor.getValue().onLongClick(mLockIcon); verify(mLockPatternUtils).requireCredentialEntry(anyInt()); verify(mKeyguardUpdateMonitor).onLockIconPressed(); } @Test Loading