tabbed

tab interface for application supporting Xembed
git clone git://git.suckless.org/tabbed
Log | Files | Refs | README | LICENSE

commit 82374bcf6d35f6b05412382b8e51e1202ce4379b
parent 405d9cdf3aa998b48c87fe995125877673712a74
Author: Mikhail Pchelin <misha@freebsd.org>
Date:   Tue, 21 Jan 2025 20:28:42 +0300

focus(): clear XUrgencyHint from the container window

Diffstat:
Mtabbed.c | 12++++++++++++
1 file changed, 12 insertions(+), 0 deletions(-)

diff --git a/tabbed.c b/tabbed.c @@ -447,6 +447,7 @@ focus(int c) char buf[BUFSIZ] = "tabbed-"VERSION" ::"; size_t i, n; XWMHints* wmh; + XWMHints* win_wmh; /* If c, sel and clients are -1, raise tabbed-win itself */ if (nclients == 0) { @@ -480,6 +481,17 @@ focus(int c) XSetWMHints(dpy, clients[c]->win, wmh); clients[c]->urgent = False; XFree(wmh); + + /* + * gnome-shell will not stop notifying us about urgency, + * if we clear only the client hint and don't clear the + * hint from the main container window + */ + if ((win_wmh = XGetWMHints(dpy, win))) { + win_wmh->flags &= ~XUrgencyHint; + XSetWMHints(dpy, win, win_wmh); + XFree(win_wmh); + } } drawbar();