Fix unexpected IME visible temporary while dismissing the editor dialog
In DC#computeImeParent we defer reparenting IME surface to the target until the target has started the input to be the input target since the IME requested visibility will updated after then. However the logic didn't aware of the IME input target may null when it be removed, so IME surface will be appear on the display area if the next layering target has not yet to start the input. The lucky thing is CloseImeEditorPopupDialogTest caught this errorprone when verifying IME layer will expected gone after IME-snapshot/dialog dismissed, but actually may failed by IME layer may still visible after dismissed the dialog. Fix this defer IME reparent logic and also consolidate CloseImeEditorPopupDialogTest in FlickerTest to verify IME snpshot and IME visiblity until IME window has gone to ensure the layer tracing could record the full animation frames to verify the IME-snapshot / IME layer visiblity correctly during the animation. Fix: 231108751 Test: atest FlickerTests:CloseImeEditorPopupDialogTest --rerun-until-failure 20 Change-Id: I863231507c210739fd363746ccbc8ac9072e8094
Loading
Please register or sign in to comment