diff options
author | Anselm R Garbe <garbeam@gmail.com> | 2008-12-06 09:32:32 +0000 |
---|---|---|
committer | Anselm R Garbe <garbeam@gmail.com> | 2008-12-06 09:32:32 +0000 |
commit | fbce733532f90c0f6af23c0216fe47b3d40fb5c3 (patch) | |
tree | de3c900f604cb31761dc6048de37c73628b5028f | |
parent | e7572804faa9a21a57ae298c2b153ff92d8a64ff (diff) | |
download | dwm-fbce733532f90c0f6af23c0216fe47b3d40fb5c3.tar dwm-fbce733532f90c0f6af23c0216fe47b3d40fb5c3.tar.gz dwm-fbce733532f90c0f6af23c0216fe47b3d40fb5c3.tar.bz2 |
integrated yiyus clearurgent refactoring
-rw-r--r-- | dwm.c | 25 |
1 files changed, 10 insertions, 15 deletions
@@ -138,7 +138,7 @@ static void attachstack(Client *c); static void buttonpress(XEvent *e); static void checkotherwm(void); static void cleanup(void); -static void clearurgent(void); +static void clearurgent(Client *c); static void configure(Client *c); static void configurenotify(XEvent *e); static void configurerequest(XEvent *e); @@ -365,20 +365,15 @@ cleanup(void) { } void -clearurgent(void) { +clearurgent(Client *c) { XWMHints *wmh; - Client *c; - - for(c = clients; c; c = c->next) - if(ISVISIBLE(c) && c->isurgent) { - c->isurgent = False; - if (!(wmh = XGetWMHints(dpy, c->win))) - continue; - wmh->flags &= ~XUrgencyHint; - XSetWMHints(dpy, c->win, wmh); - XFree(wmh); - } + c->isurgent = False; + if(!(wmh = XGetWMHints(dpy, c->win))) + return; + wmh->flags &= ~XUrgencyHint; + XSetWMHints(dpy, c->win, wmh); + XFree(wmh); } void @@ -617,6 +612,8 @@ focus(Client *c) { XSetWindowBorder(dpy, sel->win, dc.norm[ColBorder]); } if(c) { + if(c->isurgent) + clearurgent(c); detachstack(c); attachstack(c); grabbuttons(c, True); @@ -1500,7 +1497,6 @@ toggleview(const Arg *arg) { if(mask) { tagset[seltags] = mask; - clearurgent(); arrange(); } } @@ -1673,7 +1669,6 @@ view(const Arg *arg) { seltags ^= 1; /* toggle sel tagset */ if(arg->ui & TAGMASK) tagset[seltags] = arg->ui & TAGMASK; - clearurgent(); arrange(); } |