event: reparent: unmark client from previous frame
Don't just mark it as CLIENT_STALE. To make sure we don't later find the old frame window as the frame of the client. Fix assertion failure in ev_destroy_notify. Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com>
This commit is contained in:
parent
a11bc61f8d
commit
e341267e8a
|
@ -320,6 +320,7 @@ static inline void ev_reparent_notify(session_t *ps, xcb_reparent_notify_event_t
|
||||||
ev->window, ev->parent, ev->override_redirect);
|
ev->window, ev->parent, ev->override_redirect);
|
||||||
auto w_top = find_toplevel(ps, ev->window);
|
auto w_top = find_toplevel(ps, ev->window);
|
||||||
if (w_top) {
|
if (w_top) {
|
||||||
|
win_unmark_client(ps, w_top);
|
||||||
win_set_flags(w_top, WIN_FLAGS_CLIENT_STALE);
|
win_set_flags(w_top, WIN_FLAGS_CLIENT_STALE);
|
||||||
ps->pending_updates = true;
|
ps->pending_updates = true;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue