core: process window updates before recheck_focus
recheck_focus rejects focus of unmapped windows, so we have to make sure pending maps of windows are processed before we call recheck_focus. Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com>
This commit is contained in:
parent
3e17f11d6d
commit
a0bb392d8c
|
@ -1333,6 +1333,9 @@ static void handle_pending_updates(EV_P_ struct session *ps) {
|
|||
// Call fill_win on new windows
|
||||
handle_new_windows(ps);
|
||||
|
||||
// Process window updates
|
||||
refresh_windows(ps);
|
||||
|
||||
{
|
||||
auto r = xcb_get_input_focus_reply(ps->c, xcb_get_input_focus(ps->c), NULL);
|
||||
if (!ps->active_win || (r && r->focus != ps->active_win->base.id)) {
|
||||
|
@ -1341,9 +1344,6 @@ static void handle_pending_updates(EV_P_ struct session *ps) {
|
|||
free(r);
|
||||
}
|
||||
|
||||
// Process window updates
|
||||
refresh_windows(ps);
|
||||
|
||||
// Refresh pixmaps and shadows
|
||||
refresh_stale_images(ps);
|
||||
|
||||
|
|
Loading…
Reference in New Issue