Revert "Do not refetch pin length"
This reverts commit 15a27cdeaf.
Reason for revert: (b/289033300) and (b/288959895)
Change-Id: Ic5e34557df120b89120fe5a4dad398b2651da61e
This commit is contained in:
committed by
Android (Google) Code Review
parent
15a27cdeaf
commit
e63272fc55
@@ -43,15 +43,6 @@ public class KeyguardPinViewController
|
||||
private long mPinLength;
|
||||
|
||||
private boolean mDisabledAutoConfirmation;
|
||||
/**
|
||||
* Responsible for identifying if PIN hinting is to be enabled or not
|
||||
*/
|
||||
private boolean mIsPinHinting;
|
||||
|
||||
/**
|
||||
* Responsible for identifying if auto confirm is enabled or not in Settings
|
||||
*/
|
||||
private boolean mIsAutoPinConfirmEnabledInSettings;
|
||||
|
||||
protected KeyguardPinViewController(KeyguardPINView view,
|
||||
KeyguardUpdateMonitor keyguardUpdateMonitor,
|
||||
@@ -72,9 +63,6 @@ public class KeyguardPinViewController
|
||||
mFeatureFlags = featureFlags;
|
||||
mBackspaceKey = view.findViewById(R.id.delete_button);
|
||||
mPinLength = mLockPatternUtils.getPinLength(KeyguardUpdateMonitor.getCurrentUser());
|
||||
mIsPinHinting = mPinLength == DEFAULT_PIN_LENGTH;
|
||||
mIsAutoPinConfirmEnabledInSettings = mLockPatternUtils.isAutoPinConfirmEnabled(
|
||||
KeyguardUpdateMonitor.getCurrentUser());
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -94,7 +82,7 @@ public class KeyguardPinViewController
|
||||
|
||||
protected void onUserInput() {
|
||||
super.onUserInput();
|
||||
if (mIsAutoPinConfirmEnabledInSettings) {
|
||||
if (isAutoPinConfirmEnabledInSettings()) {
|
||||
updateAutoConfirmationState();
|
||||
if (mPasswordEntry.getText().length() == mPinLength
|
||||
&& mOkButton.getVisibility() == View.INVISIBLE) {
|
||||
@@ -142,7 +130,7 @@ public class KeyguardPinViewController
|
||||
* Updates the visibility of the OK button for auto confirm feature
|
||||
*/
|
||||
private void updateOKButtonVisibility() {
|
||||
if (mIsPinHinting && !mDisabledAutoConfirmation) {
|
||||
if (isAutoPinConfirmEnabledInSettings() && !mDisabledAutoConfirmation) {
|
||||
mOkButton.setVisibility(View.INVISIBLE);
|
||||
} else {
|
||||
mOkButton.setVisibility(View.VISIBLE);
|
||||
@@ -154,9 +142,10 @@ public class KeyguardPinViewController
|
||||
* Visibility changes are only for auto confirmation configuration.
|
||||
*/
|
||||
private void updateBackSpaceVisibility() {
|
||||
boolean isAutoConfirmation = isAutoPinConfirmEnabledInSettings();
|
||||
mBackspaceKey.setTransparentMode(/* isTransparentMode= */
|
||||
mIsAutoPinConfirmEnabledInSettings && !mDisabledAutoConfirmation);
|
||||
if (mIsAutoPinConfirmEnabledInSettings) {
|
||||
isAutoConfirmation && !mDisabledAutoConfirmation);
|
||||
if (isAutoConfirmation) {
|
||||
if (mPasswordEntry.getText().length() > 0
|
||||
|| mDisabledAutoConfirmation) {
|
||||
mBackspaceKey.setVisibility(View.VISIBLE);
|
||||
@@ -166,8 +155,24 @@ public class KeyguardPinViewController
|
||||
}
|
||||
}
|
||||
/** Updates whether to use pin hinting or not. */
|
||||
private void updatePinHinting() {
|
||||
mPasswordEntry.setIsPinHinting(mIsAutoPinConfirmEnabledInSettings && mIsPinHinting
|
||||
void updatePinHinting() {
|
||||
mPasswordEntry.setIsPinHinting(isAutoPinConfirmEnabledInSettings() && isPinHinting()
|
||||
&& !mDisabledAutoConfirmation);
|
||||
}
|
||||
|
||||
/**
|
||||
* Responsible for identifying if PIN hinting is to be enabled or not
|
||||
*/
|
||||
private boolean isPinHinting() {
|
||||
return mLockPatternUtils.getPinLength(KeyguardUpdateMonitor.getCurrentUser())
|
||||
== DEFAULT_PIN_LENGTH;
|
||||
}
|
||||
|
||||
/**
|
||||
* Responsible for identifying if auto confirm is enabled or not in Settings
|
||||
*/
|
||||
private boolean isAutoPinConfirmEnabledInSettings() {
|
||||
//Checks if user has enabled the auto confirm in Settings
|
||||
return mLockPatternUtils.isAutoPinConfirmEnabled(KeyguardUpdateMonitor.getCurrentUser());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -97,7 +97,21 @@ class KeyguardPinViewControllerTest : SysuiTestCase() {
|
||||
`when`(keyguardPinView.findViewById<NumPadButton>(R.id.delete_button))
|
||||
.thenReturn(deleteButton)
|
||||
`when`(keyguardPinView.findViewById<View>(R.id.key_enter)).thenReturn(enterButton)
|
||||
constructViewController()
|
||||
pinViewController =
|
||||
KeyguardPinViewController(
|
||||
keyguardPinView,
|
||||
keyguardUpdateMonitor,
|
||||
securityMode,
|
||||
lockPatternUtils,
|
||||
mKeyguardSecurityCallback,
|
||||
keyguardMessageAreaControllerFactory,
|
||||
mLatencyTracker,
|
||||
liftToActivateListener,
|
||||
mEmergencyButtonController,
|
||||
falsingCollector,
|
||||
postureController,
|
||||
featureFlags
|
||||
)
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -121,10 +135,8 @@ class KeyguardPinViewControllerTest : SysuiTestCase() {
|
||||
`when`(lockPatternUtils.isAutoPinConfirmEnabled(anyInt())).thenReturn(true)
|
||||
`when`(lockPatternUtils.getCurrentFailedPasswordAttempts(anyInt())).thenReturn(3)
|
||||
`when`(passwordTextView.text).thenReturn("")
|
||||
constructViewController()
|
||||
|
||||
pinViewController.startAppearAnimation()
|
||||
|
||||
verify(deleteButton).visibility = View.INVISIBLE
|
||||
verify(enterButton).visibility = View.INVISIBLE
|
||||
verify(passwordTextView).setUsePinShapes(true)
|
||||
@@ -138,10 +150,8 @@ class KeyguardPinViewControllerTest : SysuiTestCase() {
|
||||
`when`(lockPatternUtils.isAutoPinConfirmEnabled(anyInt())).thenReturn(true)
|
||||
`when`(lockPatternUtils.getCurrentFailedPasswordAttempts(anyInt())).thenReturn(6)
|
||||
`when`(passwordTextView.text).thenReturn("")
|
||||
constructViewController()
|
||||
|
||||
pinViewController.startAppearAnimation()
|
||||
|
||||
verify(deleteButton).visibility = View.VISIBLE
|
||||
verify(enterButton).visibility = View.VISIBLE
|
||||
verify(passwordTextView).setUsePinShapes(true)
|
||||
@@ -153,22 +163,4 @@ class KeyguardPinViewControllerTest : SysuiTestCase() {
|
||||
pinViewController.handleAttemptLockout(0)
|
||||
verify(lockPatternUtils).getCurrentFailedPasswordAttempts(anyInt())
|
||||
}
|
||||
|
||||
fun constructViewController() {
|
||||
pinViewController =
|
||||
KeyguardPinViewController(
|
||||
keyguardPinView,
|
||||
keyguardUpdateMonitor,
|
||||
securityMode,
|
||||
lockPatternUtils,
|
||||
mKeyguardSecurityCallback,
|
||||
keyguardMessageAreaControllerFactory,
|
||||
mLatencyTracker,
|
||||
liftToActivateListener,
|
||||
mEmergencyButtonController,
|
||||
falsingCollector,
|
||||
postureController,
|
||||
featureFlags
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user