Bugfix: add a sync call to i3bar to confirm reparents before exiting

Without this call, sometimes the tray icon windows are reparented into
i3’s container around the i3bar window, i.e. into the next remaining
window in the window hierarchy. Since i3 then closes that container
(since the i3bar window itself was closed), the tray window will also
get closed. In general, this weird interaction (getting reparented and
then closed) is not well received by tray icon providers :).

closes: #1296
This commit is contained in:
Michael Stapelberg 2014-07-24 10:09:53 +02:00
parent a62bb17511
commit 4699c714b3
1 changed files with 1 additions and 0 deletions

View File

@ -1290,6 +1290,7 @@ void clean_xcb(void) {
FREE(outputs); FREE(outputs);
xcb_flush(xcb_connection); xcb_flush(xcb_connection);
xcb_aux_sync(xcb_connection);
xcb_disconnect(xcb_connection); xcb_disconnect(xcb_connection);
ev_check_stop(main_loop, xcb_chk); ev_check_stop(main_loop, xcb_chk);