diff options
| author | 2025-02-19 17:27:17 +0100 | |
|---|---|---|
| committer | 2025-02-28 02:24:05 +0100 | |
| commit | 5cab36915b915257535e711eca5b282bd9e185ae (patch) | |
| tree | 91a421dcc5b003c39669b92ccb3d1aadfeeceec6 /libs/androidfw/StringPool.cpp | |
| parent | fc2d083585668c9b8f6c689cda1143c932802ecd (diff) | |
Remove IME_VISIBLE_IMPERCEPTIBLE
This was originally added in [1] to provide an early signal to taskbar
that the IME is going to be shown. However, this bypasses all the checks
from NavBarHelper.isImeVisible related to keyguard. Moreover, depending
of the timing between getting IME_VISIBLE and updating the perceptible
value, this could lead to the issue from b/158079255, where the taskbar
considers the IME visible too early.
The perceptible state is based on the IME insets being at least
partially animated in, and at least partially opaque. This can only be
updated during the IME show/hide animation.
The IME_VISIBLE flag is set when calling
InputMethodService.showSoftInput and reset when calling hideSoftInput.
For the show flow, this is always before starting the animation. For the
hide flow, this used to be before starting the animation, but with the
insets refactor from [2], this is now after calling the animation.
This simplifies the code by reverting it to the state from [3]. However,
it does mean that the taskbar will be hidden slightly later, after the
IME becomes perceptible, but it will be shown faster, after the IME
becomes not perceptible.
[1]: I39c15578ed3e5b729f4645ad76988b113f0b57a6
[2]: I8e3a74ee579f085cb582040fdba725e7a63d6b85
[3]: I4dc9d6513d0559156f7da39244f3fc5ebc952ed4
Flag: EXEMPT bugfix
Test: show IME with pinned taskbar, switch across apps that previously
had the IME open, show and hide the IME and observe taskbar updates
Bug: 390251355
Change-Id: Ib5a22d493d2c04e3644f3d268a3fbc073b0ebf22
Diffstat (limited to 'libs/androidfw/StringPool.cpp')
0 files changed, 0 insertions, 0 deletions