From f1a011c014bfb14946840fb9f1528e3940c9916c Mon Sep 17 00:00:00 2001 From: Michael Stapelberg Date: Fri, 5 Mar 2010 20:03:38 +0100 Subject: [PATCH] Clear urgency hints set by i3 (see HEAD~2) --- src/util.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/util.c b/src/util.c index a25a9dcf..dab3199b 100644 --- a/src/util.c +++ b/src/util.c @@ -34,6 +34,7 @@ #include "log.h" #include "ewmh.h" #include "manage.h" +#include "workspace.h" static iconv_t conversion_descriptor = 0; struct keyvalue_table_head by_parent = TAILQ_HEAD_INITIALIZER(by_parent); @@ -299,12 +300,17 @@ void set_focus(xcb_connection_t *conn, Client *client, bool set_anyways) { redecorate_window(conn, current); break; } - } SLIST_REMOVE(&(client->workspace->focus_stack), client, Client, focus_clients); SLIST_INSERT_HEAD(&(client->workspace->focus_stack), client, focus_clients); + /* Clear the urgency flag if set (necessary when i3 sets the flag, for + * example when automatically putting windows on the workspace of their + * leader) */ + client->urgent = false; + workspace_update_urgent_flag(client->workspace); + /* If we’re in stacking mode, this renders the container to update changes in the title bars and to raise the focused client */ if ((old_client != NULL) && (old_client != client) && !old_client->dock)