Merge "Fix bug where lockout timeout is shown for SIM in keyguard" into klp-dev
diff --git a/packages/Keyguard/src/com/android/keyguard/KeyguardAbsKeyInputView.java b/packages/Keyguard/src/com/android/keyguard/KeyguardAbsKeyInputView.java
index fb2eeda..461fd77 100644
--- a/packages/Keyguard/src/com/android/keyguard/KeyguardAbsKeyInputView.java
+++ b/packages/Keyguard/src/com/android/keyguard/KeyguardAbsKeyInputView.java
@@ -82,13 +82,18 @@
 
         // if the user is currently locked out, enforce it.
         long deadline = mLockPatternUtils.getLockoutAttemptDeadline();
-        if (deadline != 0) {
+        if (shouldLockout(deadline)) {
             handleAttemptLockout(deadline);
         } else {
             resetState();
         }
     }
 
+    // Allow subclasses to override this behavior
+    protected boolean shouldLockout(long deadline) {
+        return deadline != 0;
+    }
+
     protected abstract int getPasswordTextViewId();
     protected abstract void resetState();
 
diff --git a/packages/Keyguard/src/com/android/keyguard/KeyguardSimPinView.java b/packages/Keyguard/src/com/android/keyguard/KeyguardSimPinView.java
index 865a7c4..5059407 100644
--- a/packages/Keyguard/src/com/android/keyguard/KeyguardSimPinView.java
+++ b/packages/Keyguard/src/com/android/keyguard/KeyguardSimPinView.java
@@ -56,6 +56,12 @@
     }
 
     @Override
+    protected boolean shouldLockout(long deadline) {
+        // SIM PIN doesn't have a timed lockout
+        return false;
+    }
+
+    @Override
     protected int getPasswordTextViewId() {
         return R.id.pinEntry;
     }
@@ -169,7 +175,7 @@
     @Override
     protected void verifyPasswordAndUnlock() {
         String entry = mPasswordEntry.getText().toString();
-        
+
         if (entry.length() < 4) {
             // otherwise, display a message to the user, and don't submit.
             mSecurityMessageDisplay.setMessage(R.string.kg_invalid_sim_pin_hint, true);
diff --git a/packages/Keyguard/src/com/android/keyguard/KeyguardSimPukView.java b/packages/Keyguard/src/com/android/keyguard/KeyguardSimPukView.java
index 7424fab..2ae4cc7 100644
--- a/packages/Keyguard/src/com/android/keyguard/KeyguardSimPukView.java
+++ b/packages/Keyguard/src/com/android/keyguard/KeyguardSimPukView.java
@@ -107,6 +107,12 @@
     }
 
     @Override
+    protected boolean shouldLockout(long deadline) {
+        // SIM PUK doesn't have a timed lockout
+        return false;
+    }
+
+    @Override
     protected int getPasswordTextViewId() {
         return R.id.pinEntry;
     }