Bugfix: Remove windows from the save set when unmapping.

fixes #1617
This commit is contained in:
Michael Stapelberg 2015-04-06 15:40:12 +02:00
parent 40b9048102
commit eb04a64067
1 changed files with 7 additions and 0 deletions

View File

@ -253,6 +253,13 @@ bool tree_close(Con *con, kill_window_t kill_window, bool dont_kill_parent, bool
cookie = xcb_change_property(conn, XCB_PROP_MODE_REPLACE, cookie = xcb_change_property(conn, XCB_PROP_MODE_REPLACE,
con->window->id, A_WM_STATE, A_WM_STATE, 32, 2, data); con->window->id, A_WM_STATE, A_WM_STATE, 32, 2, data);
/* Remove the window from the save set. All windows in the save set
* will be mapped when i3 closes its connection (e.g. when
* restarting). This is not what we want, since some apps keep
* unmapped windows around and dont expect them to suddenly be
* mapped. See http://bugs.i3wm.org/1617 */
xcb_change_save_set(conn, XCB_SET_MODE_DELETE, con->window->id);
/* Ignore X11 errors for the ReparentWindow request. /* Ignore X11 errors for the ReparentWindow request.
* X11 Errors are returned when the window was already destroyed */ * X11 Errors are returned when the window was already destroyed */
add_ignore_event(cookie.sequence, 0); add_ignore_event(cookie.sequence, 0);