applied anydot's urgency hint patch, thanks!
							parent
							
								
									d5893f55be
								
							
						
					
					
						commit
						9aa4a9043d
					
				
							
								
								
									
										27
									
								
								dwm.c
								
								
								
								
							
							
						
						
									
										27
									
								
								dwm.c
								
								
								
								
							|  | @ -139,6 +139,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 configure(Client *c); | ||||
| static void configurenotify(XEvent *e); | ||||
| static void configurerequest(XEvent *e); | ||||
|  | @ -374,6 +375,23 @@ cleanup(void) { | |||
| 	XSetInputFocus(dpy, PointerRoot, RevertToPointerRoot, CurrentTime); | ||||
| } | ||||
| 
 | ||||
| void | ||||
| clearurgent(void) { | ||||
| 	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); | ||||
| 		} | ||||
| } | ||||
| 
 | ||||
| void | ||||
| configure(Client *c) { | ||||
| 	XConfigureEvent ce; | ||||
|  | @ -1496,6 +1514,7 @@ toggleview(const Arg *arg) { | |||
| 
 | ||||
| 	if(mask) { | ||||
| 		tagset[seltags] = mask; | ||||
| 		clearurgent(); | ||||
| 		arrange(); | ||||
| 	} | ||||
| } | ||||
|  | @ -1626,10 +1645,13 @@ updatewmhints(Client *c) { | |||
| 	XWMHints *wmh; | ||||
| 
 | ||||
| 	if((wmh = XGetWMHints(dpy, c->win))) { | ||||
| 		if(c == sel) | ||||
| 			sel->isurgent = False; | ||||
| 		if(ISVISIBLE(c) && wmh->flags & XUrgencyHint) { | ||||
| 			wmh->flags &= ~XUrgencyHint; | ||||
| 			XSetWMHints(dpy, c->win, wmh); | ||||
| 		} | ||||
| 		else | ||||
| 			c->isurgent = (wmh->flags & XUrgencyHint) ? True : False; | ||||
| 
 | ||||
| 		XFree(wmh); | ||||
| 	} | ||||
| } | ||||
|  | @ -1641,6 +1663,7 @@ view(const Arg *arg) { | |||
| 	seltags ^= 1; /* toggle sel tagset */ | ||||
| 	if(arg && (arg->ui & TAGMASK)) | ||||
| 		tagset[seltags] = arg->i & TAGMASK; | ||||
| 	clearurgent(); | ||||
| 	arrange(); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue