win: move win_update_screen from fill_win into win_process_update_flags

fill_win only sets the pending geometry (aka the shadow geometry) of the
window, we have to wait for it to propagate to the real geometry before
we can update the screen.

Related: #554

Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com>
This commit is contained in:
Yuxuan Shui 2020-12-05 11:08:49 +00:00
parent ef9f09b68a
commit 3c38b36f04
No known key found for this signature in database
GPG Key ID: D3A4405BE6CC17F4
1 changed files with 2 additions and 2 deletions

View File

@ -471,6 +471,8 @@ void win_process_update_flags(session_t *ps, struct managed_win *w) {
// Update window geometry
w->g = w->pending_g;
win_update_screen(ps->xinerama_nscrs, ps->xinerama_scr_regs, w);
}
if (win_check_flags_all(w, WIN_FLAGS_SIZE_STALE)) {
@ -1556,8 +1558,6 @@ struct win *fill_win(session_t *ps, struct win *w) {
free(g);
win_update_screen(ps->xinerama_nscrs, ps->xinerama_scr_regs, new);
// Create Damage for window (if not Input Only)
new->damage = x_new_id(ps->c);
e = xcb_request_check(