From: Michael Stapelberg Date: Tue, 23 Jun 2009 21:17:06 +0000 (+0200) Subject: Bugfix: Remove/add floating clients to workspace->floating_clients when moving to... X-Git-Tag: 3.b~26 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=0aed552bae7a468ecff2972add7100bd13189df1;p=i3%2Fi3 Bugfix: Remove/add floating clients to workspace->floating_clients when moving to other workspaces --- diff --git a/src/commands.c b/src/commands.c index 084a388e..8b088793 100644 --- a/src/commands.c +++ b/src/commands.c @@ -452,15 +452,17 @@ static void move_floating_window_to_workspace(xcb_connection_t *conn, Client *cl } } - /* Remove from focus stack */ + /* Remove from focus stack and list of floating clients */ SLIST_REMOVE(&(client->workspace->focus_stack), client, Client, focus_clients); + TAILQ_REMOVE(&(client->workspace->floating_clients), client, floating_clients); if (client->workspace->fullscreen_client == client) client->workspace->fullscreen_client = NULL; - /* Insert into destination focus stack */ + /* Insert into destination focus stack and list of floating clients */ client->workspace = t_ws; SLIST_INSERT_HEAD(&(t_ws->focus_stack), client, focus_clients); + TAILQ_INSERT_TAIL(&(t_ws->floating_clients), client, floating_clients); if (client->fullscreen) t_ws->fullscreen_client = client;