Revert^2 "Fix SHOW_IMPLICIT and SHOW_EXPLICIT handling"
cf811952 Re-submitting original CL as the issue has been fixed by setting the correct (SHOW_EXPLICIT) flag for the InputMethodStressTest suite. Original CL: Fix SHOW_IMPLICIT and SHOW_EXPLICIT handling This fixes a bug introduced in the refactor from [1], where SHOW_IMPLICIT and SHOW_EXPLICIT requests would not be handled correctly, as they represent the same underlying bit flag value. IntDefs were added to help understand which set of flags to use based on call site. Requests originating from InputMethodManager (and a few from InputMethodService) must utilise InputMethodManager flags (i.e SHOW_IMPLICIT). When reaching the ImeVisibilityStateComputer, these are translated to InputMethodService flags (i.e. SHOW_EXPLICIT). Additonally, this documents and tests that `ImeVisibilityStateComputer` keeps the strongest state set until a hide request (i.e. an implicit show request just after a forced / explicit show request, without any hide requests in between, will still have the forced / explicit state set). [1]: Id1115ceb951e4bb0361a32b824d966cc70b7d132 Bug: 289188559 Test: atest DefaultImeVisibilityApplierTest DefaultImeVisibilityTest ImeVisibilityStateComputerTest com.android.inputmethodservice.InputMethodServiceTest Change-Id: I2117053c5a45253b9537f903a1ac6b3c8bef69af
Loading
Please register or sign in to comment