catacombing/catacomb

Synchronize virtual keyboard removal

chrisduerr opened this issue · 1 comments

When a new layout is selected in the application overview, the windows are resized in a transaction and the view is changed. However right after the transaction is completed the focus will be updated and the virtual keyboard will close (assuming no input is focused). As a result there's unnecessary flickering.

Generally it should be more reliable to forcefully kill the virtual keyboard when opening a layout different from the current one (see #117 (comment)).

Ideally it would be checked ahead of time if the virtual keyboard will still be open or not after the new window will be focused, but that's unlikely to be easy/possible.

I've tested if clearing focus immediately on application change would fix this, instead of waiting for a redraw, but that did not work.

So this will probably require a more specialized solution, likely including some heuristics.