diff options
4 files changed, 28 insertions, 7 deletions
diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardAbsKeyInputView.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardAbsKeyInputView.java index db36bcc95bc2..f6305894574c 100644 --- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardAbsKeyInputView.java +++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardAbsKeyInputView.java @@ -88,6 +88,7 @@ public abstract class KeyguardAbsKeyInputView extends LinearLayout } protected abstract int getPasswordTextViewId(); + protected abstract int getWrongPasswordStringId(); protected abstract void resetState(); @Override @@ -144,7 +145,7 @@ public abstract class KeyguardAbsKeyInputView extends LinearLayout long deadline = mLockPatternUtils.setLockoutAttemptDeadline(); handleAttemptLockout(deadline); } - mSecurityMessageDisplay.setMessage(R.string.kg_wrong_pin, true); + mSecurityMessageDisplay.setMessage(getWrongPasswordStringId(), true); } mPasswordEntry.setText(""); } @@ -164,6 +165,7 @@ public abstract class KeyguardAbsKeyInputView extends LinearLayout @Override public void onFinish() { + mSecurityMessageDisplay.setMessage("", false); resetState(); } }.start(); diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardPINView.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardPINView.java index b7d9990e98e0..cea3fb09cc82 100644 --- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardPINView.java +++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardPINView.java @@ -65,7 +65,9 @@ public class KeyguardPINView extends KeyguardAbsKeyInputView @Override public void onClick(View v) { doHapticKeyClick(); - verifyPasswordAndUnlock(); + if (mPasswordEntry.isEnabled()) { + verifyPasswordAndUnlock(); + } } }); ok.setOnHoverListener(new NumPadKey.LiftToActivateListener(getContext())); @@ -78,16 +80,22 @@ public class KeyguardPINView extends KeyguardAbsKeyInputView pinDelete.setVisibility(View.VISIBLE); pinDelete.setOnClickListener(new OnClickListener() { public void onClick(View v) { - CharSequence str = mPasswordEntry.getText(); - if (str.length() > 0) { - mPasswordEntry.setText(str.subSequence(0, str.length()-1)); + // check for time-based lockouts + if (mPasswordEntry.isEnabled()) { + CharSequence str = mPasswordEntry.getText(); + if (str.length() > 0) { + mPasswordEntry.setText(str.subSequence(0, str.length()-1)); + } } doHapticKeyClick(); } }); pinDelete.setOnLongClickListener(new View.OnLongClickListener() { public boolean onLongClick(View v) { - mPasswordEntry.setText(""); + // check for time-based lockouts + if (mPasswordEntry.isEnabled()) { + mPasswordEntry.setText(""); + } doHapticKeyClick(); return true; } @@ -104,4 +112,9 @@ public class KeyguardPINView extends KeyguardAbsKeyInputView @Override public void showUsabilityHint() { } + + @Override + public int getWrongPasswordStringId() { + return R.string.kg_wrong_pin; + } } diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardPasswordView.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardPasswordView.java index 64bbdd38ae43..23ea2e9c1c90 100644 --- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardPasswordView.java +++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardPasswordView.java @@ -195,4 +195,9 @@ public class KeyguardPasswordView extends KeyguardAbsKeyInputView @Override public void showUsabilityHint() { } + + @Override + public int getWrongPasswordStringId() { + return R.string.kg_wrong_password; + } } diff --git a/policy/src/com/android/internal/policy/impl/keyguard/NumPadKey.java b/policy/src/com/android/internal/policy/impl/keyguard/NumPadKey.java index ca36007a2ef5..7f51a84458bb 100644 --- a/policy/src/com/android/internal/policy/impl/keyguard/NumPadKey.java +++ b/policy/src/com/android/internal/policy/impl/keyguard/NumPadKey.java @@ -51,7 +51,8 @@ public class NumPadKey extends Button { } } } - if (mTextView != null) { + // check for time-based lockouts + if (mTextView != null && mTextView.isEnabled()) { mTextView.append(String.valueOf(mDigit)); } doHapticKeyClick(); |