Fix ShowImeOnAppStartWhenLaunchingAppFromQuickSwitchTest flaky
As CL[1] that ImeVisibilityStateComputer leverages onImeInputTargetVisibilityChanged callback to check whether the current IME input target has been covered and became invisible by non-IME focusable layering target. If so then ImeVisibilityStateComputer will hide the IME to address the IME persists on top of layering target but the input target was invisible case. But there is an edge case that the starting window could possible shown and cover the IME input target befor it drawn during animating (e.g. quick-switching app tasks by recents animation) then leads to IME may hidden by CL[1]'s case. Luckly the above scenario has caught by ShowImeOnAppStartWhenLaunchingAppFromQuickSwitchTest, to fix this flaky case, add the windowType in onImeTargetOverlayVisibilityChanged to give more context for ImeVisibilityStateComputer and ignore the starting window case, since it since it's ok to cover the IME input target window in temporary without affecting the IME visibility. [1]: Ia71b975898efb19439c3a1b1a9a2bdcf21b78650 Fix: 278698977 Test: atest FlickerTest:ShowImeOnAppStartWhenLaunchingAppFromQuickSwitchTest --rerun-until-failure 10 Test: atest ImeVisibilityStateComputerTest Change-Id: I3a950423f73f0a97432589d0a90ac8fd1c84f05e
Loading
Please register or sign in to comment