bugfix of transient handling
This commit is contained in:
		
							parent
							
								
									e9c49ddd7a
								
							
						
					
					
						commit
						df9fd28f9a
					
				
							
								
								
									
										16
									
								
								client.c
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								client.c
									
									
									
									
									
								
							| @ -240,24 +240,24 @@ manage(Window w, XWindowAttributes *wa) { | |||||||
| 			c->y = way; | 			c->y = way; | ||||||
| 	} | 	} | ||||||
| 	updatesizehints(c); | 	updatesizehints(c); | ||||||
| 	XSelectInput(dpy, c->win, | 	XSelectInput(dpy, w, | ||||||
| 		StructureNotifyMask | PropertyChangeMask | EnterWindowMask); | 		StructureNotifyMask | PropertyChangeMask | EnterWindowMask); | ||||||
| 	XGetTransientForHint(dpy, c->win, &trans); | 	XGetTransientForHint(dpy, w, &trans); | ||||||
| 	grabbuttons(c, False); | 	grabbuttons(c, False); | ||||||
| 	wc.border_width = c->border; | 	wc.border_width = c->border; | ||||||
| 	XConfigureWindow(dpy, c->win, CWBorderWidth, &wc); | 	XConfigureWindow(dpy, w, CWBorderWidth, &wc); | ||||||
| 	XSetWindowBorder(dpy, c->win, dc.norm[ColBorder]); | 	XSetWindowBorder(dpy, w, dc.norm[ColBorder]); | ||||||
| 	configure(c); /* propagates border_width, if size doesn't change */ | 	configure(c); /* propagates border_width, if size doesn't change */ | ||||||
| 	updatetitle(c); | 	updatetitle(c); | ||||||
| 	for(t = clients; t && t->win != c->win; t = t->next); | 	for(t = clients; t && t->win != trans; t = t->next); | ||||||
| 	settags(c, t); | 	settags(c, t); | ||||||
| 	if(!c->isfloat) | 	if(!c->isfloat) | ||||||
| 		c->isfloat = (t != 0) || c->isfixed; | 		c->isfloat = (t != NULL) || c->isfixed; | ||||||
| 	attach(c); | 	attach(c); | ||||||
| 	attachstack(c); | 	attachstack(c); | ||||||
| 	c->isbanned = True; | 	c->isbanned = True; | ||||||
| 	XMoveWindow(dpy, c->win, c->x + 2 * sw, c->y); | 	XMoveWindow(dpy, w, c->x + 2 * sw, c->y); | ||||||
| 	XMapWindow(dpy, c->win); | 	XMapWindow(dpy, w); | ||||||
| 	setclientstate(c, NormalState); | 	setclientstate(c, NormalState); | ||||||
| 	if(isvisible(c)) | 	if(isvisible(c)) | ||||||
| 		focus(c); | 		focus(c); | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Anselm R. Garbe
						Anselm R. Garbe