diff options
author | lumark <lumark@google.com> | 2019-01-10 15:29:11 +0800 |
---|---|---|
committer | lumark <lumark@google.com> | 2019-01-11 14:17:32 +0800 |
commit | d62bfd20d0df5540f10d40bd950ba6172c5f6f34 (patch) | |
tree | 689e58c39cbc4c3f553038f6df4e71dd87edfb93 /packages/SystemUI/src/com/android/keyguard/KeyguardAbsKeyInputView.java | |
parent | 3f215a1dea6dba3e3714a8c0ce5caa0214db8078 (diff) |
Fix IME window pops up when unlock keyguard with fingerprint
When in KeyguardPasswordView, hide IME window manually with pressing
back key to back Keyguard view, and then unlock screen with fingerprint
will find IME window pop up suddently.
The reason is when KeyguardBouncer#hide will have a call path to pause
KeyguardPasswordView & reset the state, but in resetState() will call
IMM#showSoftInput even the password entry is invisible.
Make sure to not call IMM#showSoftInput when KeyguardPasswordView is
in pausing stage or password entry is invisible case to prevent
IME pops up in unexpected way.
Bug: 112811602
Test: manual as the issue description
Change-Id: I3c43d09d4206c48f1afcd8dad79e7978337f1b7d
Diffstat (limited to 'packages/SystemUI/src/com/android/keyguard/KeyguardAbsKeyInputView.java')
-rw-r--r-- | packages/SystemUI/src/com/android/keyguard/KeyguardAbsKeyInputView.java | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardAbsKeyInputView.java b/packages/SystemUI/src/com/android/keyguard/KeyguardAbsKeyInputView.java index 41e9ebaac4f6..a055950a5522 100644 --- a/packages/SystemUI/src/com/android/keyguard/KeyguardAbsKeyInputView.java +++ b/packages/SystemUI/src/com/android/keyguard/KeyguardAbsKeyInputView.java @@ -46,6 +46,7 @@ public abstract class KeyguardAbsKeyInputView extends LinearLayout protected View mEcaView; protected boolean mEnableHaptics; private boolean mDismissing; + protected boolean mResumed; private CountDownTimer mCountdownTimer = null; // To avoid accidental lockout due to events while the device in in the pocket, ignore @@ -263,6 +264,8 @@ public abstract class KeyguardAbsKeyInputView extends LinearLayout @Override public void onPause() { + mResumed = false; + if (mCountdownTimer != null) { mCountdownTimer.cancel(); mCountdownTimer = null; @@ -276,6 +279,7 @@ public abstract class KeyguardAbsKeyInputView extends LinearLayout @Override public void onResume(int reason) { + mResumed = true; } @Override |