Refactor show/hide IME process
Changing the process of how the IME is shown or hidden: - Showing or hiding the IME is driven through its requested visibility (InsetsControlTarget) via InsetsController/DisplayImeController and thus sent to the server (InsetsStateController). - When hiding the IME, the requestedVisibleTypes are sent after the end of the animation. - Introduced new OnImeRequestedChangedListener that is called via WindowManagerService that is called to start the show/hide IME flow in IMMS. - When the IME becomes (un)available, its leash is (re)set. - Show/Hide requests from InputMethodManager are redirected through InsetsController. Test: atest CtsInputMethodTestCases Flag: android.view.inputmethod.Flags.refactorInsetsController Bug: 298172246 Change-Id: I8e3a74ee579f085cb582040fdba725e7a63d6b85
Loading
Please register or sign in to comment