Merge "Do not show soft keyboard when locked out on keyguard UI" into mnc-dev

This commit is contained in:
Xiyuan Xia
2015-05-21 16:15:50 +00:00
committed by Android (Google) Code Review
3 changed files with 19 additions and 3 deletions

View File

@@ -110,7 +110,7 @@ public abstract class KeyguardAbsKeyInputView extends LinearLayout
protected void verifyPasswordAndUnlock() { protected void verifyPasswordAndUnlock() {
final String entry = getPasswordText(); final String entry = getPasswordText();
setPasswordEntryEnabled(false); setPasswordEntryInputEnabled(false);
if (mPendingLockCheck != null) { if (mPendingLockCheck != null) {
mPendingLockCheck.cancel(false); mPendingLockCheck.cancel(false);
} }
@@ -121,7 +121,7 @@ public abstract class KeyguardAbsKeyInputView extends LinearLayout
new LockPatternChecker.OnCheckCallback() { new LockPatternChecker.OnCheckCallback() {
@Override @Override
public void onChecked(boolean matched) { public void onChecked(boolean matched) {
setPasswordEntryEnabled(true); setPasswordEntryInputEnabled(true);
mPendingLockCheck = null; mPendingLockCheck = null;
onPasswordChecked(entry, matched); onPasswordChecked(entry, matched);
} }
@@ -152,6 +152,7 @@ public abstract class KeyguardAbsKeyInputView extends LinearLayout
protected abstract void resetPasswordText(boolean animate); protected abstract void resetPasswordText(boolean animate);
protected abstract String getPasswordText(); protected abstract String getPasswordText();
protected abstract void setPasswordEntryEnabled(boolean enabled); protected abstract void setPasswordEntryEnabled(boolean enabled);
protected abstract void setPasswordEntryInputEnabled(boolean enabled);
// Prevent user from using the PIN/Password entry until scheduled deadline. // Prevent user from using the PIN/Password entry until scheduled deadline.
protected void handleAttemptLockout(long elapsedRealtimeDeadline) { protected void handleAttemptLockout(long elapsedRealtimeDeadline) {

View File

@@ -74,7 +74,12 @@ public class KeyguardPasswordView extends KeyguardAbsKeyInputView
protected void resetState() { protected void resetState() {
mSecurityMessageDisplay.setMessage(R.string.kg_password_instructions, false); mSecurityMessageDisplay.setMessage(R.string.kg_password_instructions, false);
final boolean wasDisabled = mPasswordEntry.isEnabled();
setPasswordEntryEnabled(true); setPasswordEntryEnabled(true);
setPasswordEntryInputEnabled(true);
if (wasDisabled) {
mImm.showSoftInput(mPasswordEntry, InputMethodManager.SHOW_IMPLICIT);
}
} }
@Override @Override
@@ -95,7 +100,7 @@ public class KeyguardPasswordView extends KeyguardAbsKeyInputView
post(new Runnable() { post(new Runnable() {
@Override @Override
public void run() { public void run() {
if (isShown()) { if (isShown() && mPasswordEntry.isEnabled()) {
mPasswordEntry.requestFocus(); mPasswordEntry.requestFocus();
if (reason != KeyguardSecurityView.SCREEN_ON || mShowImeAtScreenOn) { if (reason != KeyguardSecurityView.SCREEN_ON || mShowImeAtScreenOn) {
mImm.showSoftInput(mPasswordEntry, InputMethodManager.SHOW_IMPLICIT); mImm.showSoftInput(mPasswordEntry, InputMethodManager.SHOW_IMPLICIT);
@@ -190,6 +195,11 @@ public class KeyguardPasswordView extends KeyguardAbsKeyInputView
@Override @Override
protected void setPasswordEntryEnabled(boolean enabled) { protected void setPasswordEntryEnabled(boolean enabled) {
mPasswordEntry.setEnabled(enabled);
}
@Override
protected void setPasswordEntryInputEnabled(boolean enabled) {
mPasswordEntryDisabler.setInputEnabled(enabled); mPasswordEntryDisabler.setInputEnabled(enabled);
} }

View File

@@ -71,6 +71,11 @@ public abstract class KeyguardPinBasedInputView extends KeyguardAbsKeyInputView
mPasswordEntry.setEnabled(enabled); mPasswordEntry.setEnabled(enabled);
} }
@Override
protected void setPasswordEntryInputEnabled(boolean enabled) {
mPasswordEntry.setEnabled(enabled);
}
@Override @Override
public boolean onKeyDown(int keyCode, KeyEvent event) { public boolean onKeyDown(int keyCode, KeyEvent event) {
if (KeyEvent.isConfirmKey(keyCode)) { if (KeyEvent.isConfirmKey(keyCode)) {