]> git.sur5r.net Git - i3/i3/commitdiff
Don’t overwrite existing windows with placeholder windows
authorMichael Stapelberg <michael@stapelberg.de>
Fri, 18 Apr 2014 18:36:56 +0000 (20:36 +0200)
committerMichael Stapelberg <michael@stapelberg.de>
Fri, 18 Apr 2014 18:36:56 +0000 (20:36 +0200)
This could happen when you appended a layout on a workspace where there
are already other windows.

src/restore_layout.c

index cdf15517e10a68e65b97680caa34f31b6796ddb2..b68e26798677fe8f6b4917e2ed9002bb061ae4ab 100644 (file)
@@ -181,7 +181,8 @@ static void update_placeholder_contents(placeholder_state *state) {
 }
 
 static void open_placeholder_window(Con *con) {
-    if (con_is_leaf(con)) {
+    if (con_is_leaf(con) &&
+        (con->window == NULL || con->window->id == XCB_NONE)) {
         xcb_window_t placeholder = create_window(
                 restore_conn,
                 con->rect,