Skip to content
Commit 75a4e742 authored by Ming-Shin Lu's avatar Ming-Shin Lu
Browse files

Update IME window status when KeyguardController#setKeyguardShown

As in IMMS#handleSetInteractive handles the IME icon status (e.g.
Back-key arror or IME picker icon on navigation bar) when the
interactive changed and setting IME icon as invisible when the
keyguard is not the IME client and in shown state.

However, the keyguard state is independent of the screen going
non-interactive and the transition to locked can happen much later
(e.g.the brief flow will be starting from triggering dream service
to notify KeyguardService to update keyguard shown state to WM side),
or even never depens on user settings.

Add InputMethodManagerInternal#setImeWindowState for KeyguardController
to update IME icon status directly to fix the timing issue that
in IMMS side expects to set IME icon as IME_INVISIBLE when
KeyguardManager#isKeyguardLocked is true but sometimes may
return false and still see the IME icon is visible even the
Lockscreen is shown.

Bug: 185763794
Test: manual as below steps
    0) setup PIN lock for the device
    1) launch an app (e.g. Messaging) and show IME
    2) turn-off the screen and then turn-on quickly
    3) verify if the IME icon is invisible when the keyguard shown
Change-Id: Ic12baae9fd7886d2d96a049c8067a79360088549
parent 9dea87c0
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment