fix of XGetTransientForHint in manage()
This commit is contained in:
		
							parent
							
								
									0ffa6d1393
								
							
						
					
					
						commit
						06f7eed103
					
				
							
								
								
									
										5
									
								
								dwm.c
									
									
									
									
									
								
							
							
						
						
									
										5
									
								
								dwm.c
									
									
									
									
									
								
							| @ -865,7 +865,6 @@ killclient(const Arg *arg) { | |||||||
| void | void | ||||||
| manage(Window w, XWindowAttributes *wa) { | manage(Window w, XWindowAttributes *wa) { | ||||||
| 	Client *c, *t = NULL; | 	Client *c, *t = NULL; | ||||||
| 	Status rettrans; |  | ||||||
| 	Window trans; | 	Window trans; | ||||||
| 	XWindowChanges wc; | 	XWindowChanges wc; | ||||||
| 
 | 
 | ||||||
| @ -903,14 +902,14 @@ manage(Window w, XWindowAttributes *wa) { | |||||||
| 	XSelectInput(dpy, w, EnterWindowMask|FocusChangeMask|PropertyChangeMask|StructureNotifyMask); | 	XSelectInput(dpy, w, EnterWindowMask|FocusChangeMask|PropertyChangeMask|StructureNotifyMask); | ||||||
| 	grabbuttons(c, False); | 	grabbuttons(c, False); | ||||||
| 	updatetitle(c); | 	updatetitle(c); | ||||||
| 	if((rettrans = XGetTransientForHint(dpy, w, &trans)) == Success) | 	if(XGetTransientForHint(dpy, w, &trans)) | ||||||
| 		t = getclient(trans); | 		t = getclient(trans); | ||||||
| 	if(t) | 	if(t) | ||||||
| 		c->tags = t->tags; | 		c->tags = t->tags; | ||||||
| 	else | 	else | ||||||
| 		applyrules(c); | 		applyrules(c); | ||||||
| 	if(!c->isfloating) | 	if(!c->isfloating) | ||||||
| 		c->isfloating = (rettrans == Success) || c->isfixed; | 		c->isfloating = trans || c->isfixed; | ||||||
| 	if(c->isfloating) | 	if(c->isfloating) | ||||||
| 		XRaiseWindow(dpy, c->win); | 		XRaiseWindow(dpy, c->win); | ||||||
| 	attach(c); | 	attach(c); | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user