From 4f8102d4f2ef6057b5a8328d7eb7858f1ec4a2c8 Mon Sep 17 00:00:00 2001 From: Xiyuan Xia Date: Thu, 21 May 2015 11:12:19 -0700 Subject: [PATCH] No auto soft keyboard when fp is in use Bug:20861013 Change-Id: Ia788e4c5dbabef374d08c7cb063ef2c07bbdb078 --- .../android/settings/ConfirmLockPassword.java | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/com/android/settings/ConfirmLockPassword.java b/src/com/android/settings/ConfirmLockPassword.java index 8ae28243dd0..a4f658d0af6 100644 --- a/src/com/android/settings/ConfirmLockPassword.java +++ b/src/com/android/settings/ConfirmLockPassword.java @@ -88,6 +88,7 @@ public class ConfirmLockPassword extends ConfirmDeviceCredentialBaseActivity { private CountDownTimer mCountdownTimer; private boolean mIsAlpha; private InputMethodManager mImm; + private boolean mUsingFingerprint = false; // required constructor for fragments public ConfirmLockPasswordFragment() { @@ -203,10 +204,21 @@ public class ConfirmLockPassword extends ConfirmDeviceCredentialBaseActivity { getActivity().finish(); } + @Override + public void onFingerprintIconVisibilityChanged(boolean visible) { + mUsingFingerprint = visible; + } + private void resetState() { mPasswordEntry.setEnabled(true); mPasswordEntryInputDisabler.setInputEnabled(true); - mImm.showSoftInput(mPasswordEntry, InputMethodManager.SHOW_IMPLICIT); + if (shouldAutoShowSoftKeyboard()) { + mImm.showSoftInput(mPasswordEntry, InputMethodManager.SHOW_IMPLICIT); + } + } + + private boolean shouldAutoShowSoftKeyboard() { + return mPasswordEntry.isEnabled() && !mUsingFingerprint; } public void onWindowFocusChanged(boolean hasFocus) { @@ -217,7 +229,7 @@ public class ConfirmLockPassword extends ConfirmDeviceCredentialBaseActivity { mPasswordEntry.post(new Runnable() { @Override public void run() { - if (mPasswordEntry.isEnabled()) { + if (shouldAutoShowSoftKeyboard()) { resetState(); return; }