FocusResolver: Persist focus requests
When WM provides a focus request, the request is handled or kept in a pending state until the window becomes visible. The request is dropped in all other cases such as the window handle does not have the focusable flag set. This might lead to cases where a focus request is dropped as a result of state mismatch or synchronization issues between wm and sf. This fix makes the focus request persistent and better aligns with the previous model where the focus bit was set as part of the window handle. This means a request will be handled as long as the window is focusable or replaced by another request. If the window toggles its focusability, it will lose and gain focus. Test: atest inputflinger_tests Test: go/wm-smoke Test: atest atest FlickerTests Bug: 176451870 Change-Id: I790a4b69c15f595109118d49167cf9a450e67ec9
Loading
Please register or sign in to comment