Bugfix: The last commit also needs to be applied to some other pieces of code (Thanks ffMeta)

This commit is contained in:
Michael Stapelberg 2010-03-30 08:12:06 +02:00
parent 6016b6333f
commit 6a7b0f9277
1 changed files with 8 additions and 1 deletions

View File

@ -636,6 +636,9 @@ int handle_windowname_change(void *data, xcb_connection_t *conn, uint8_t state,
if (client->dock) if (client->dock)
return 1; return 1;
if (!workspace_is_visible(client->workspace))
return 1;
int mode = container_mode(client->container, true); int mode = container_mode(client->container, true);
if (mode == MODE_STACK || mode == MODE_TABBED) if (mode == MODE_STACK || mode == MODE_TABBED)
render_container(conn, client->container); render_container(conn, client->container);
@ -702,6 +705,9 @@ int handle_windowname_change_legacy(void *data, xcb_connection_t *conn, uint8_t
if (client->dock) if (client->dock)
return 1; return 1;
if (!workspace_is_visible(client->workspace))
return 1;
if (client->container != NULL && if (client->container != NULL &&
(client->container->mode == MODE_STACK || (client->container->mode == MODE_STACK ||
client->container->mode == MODE_TABBED)) client->container->mode == MODE_TABBED))
@ -1001,7 +1007,6 @@ int handle_hints(void *data, xcb_connection_t *conn, uint8_t state, xcb_window_t
LOG("Urgency flag changed to %d\n", client->urgent); LOG("Urgency flag changed to %d\n", client->urgent);
workspace_update_urgent_flag(client->workspace); workspace_update_urgent_flag(client->workspace);
redecorate_window(conn, client);
/* If the workspace this client is on is not visible, we need to redraw /* If the workspace this client is on is not visible, we need to redraw
* the workspace bar */ * the workspace bar */
@ -1009,6 +1014,8 @@ int handle_hints(void *data, xcb_connection_t *conn, uint8_t state, xcb_window_t
Output *output = client->workspace->output; Output *output = client->workspace->output;
render_workspace(conn, output, output->current_workspace); render_workspace(conn, output, output->current_workspace);
xcb_flush(conn); xcb_flush(conn);
} else {
redecorate_window(conn, client);
} }
return 1; return 1;