[DO NOT MERGE] DisplayImeController: fix out-of-sync IME visibility
This change is based on CL[1] in rvc-qpr-dev code base. Note: This cherry-picked change isn't completely same as master one, it add a method "getImeRequestedVisibility" in InsetsControlTarget since "getRequestedVisibility" didn't exist in rvc-qpr currently. Fixes an issue where the DisplayImeController would disagree with the InputMethodManagerService about the visibility of the IME. Currently, the Insets component is supposed to execute the visibility as dictated by IMMS; however, when the DisplayImeController became the control target, previously it would just apply the IME visibility that was last requested of it - regardless of the changes to it that may have happened while it was not the control target. Eventually, IME visibility should be driven by the requested IME inset visibility of the focused window, instead of the separate dispatch we have now from IMMS. [1]:I1f140af6bcccbcbe6efb2fde9a789ac4c7bd127f Bug: 167780081 Test: atest ImeInsetsSourceProviderTest Change-Id: I3962f3aa26d9325d7d8a4611f13a637d46337fef
Loading
Please register or sign in to comment