actually move unmanaged clients in configurex11()
only calling wlr_xwayland_surface_configure() may be not enough because we also need to move the scene node in order to make effective the configure
This commit is contained in:
		
							
								
								
									
										7
									
								
								dwl.c
									
									
									
									
									
								
							
							
						
						
									
										7
									
								
								dwl.c
									
									
									
									
									
								
							| @@ -3084,14 +3084,13 @@ configurex11(struct wl_listener *listener, void *data) | ||||
| { | ||||
| 	Client *c = wl_container_of(listener, c, configure); | ||||
| 	struct wlr_xwayland_surface_configure_event *event = data; | ||||
| 	/* This also handles "unmanaged" clients (because we do not assign | ||||
| 	 * them a monitor) */ | ||||
| 	if (!c->mon) { | ||||
| 	if (!client_surface(c) || !client_surface(c)->mapped) { | ||||
| 		wlr_xwayland_surface_configure(c->surface.xwayland, | ||||
| 				event->x, event->y, event->width, event->height); | ||||
| 		return; | ||||
| 	} | ||||
| 	if ((c->isfloating && c != grabc) || !c->mon->lt[c->mon->sellt]->arrange) | ||||
| 	if ((c->isfloating && c != grabc) | ||||
| 			|| client_is_unmanaged(c) || !c->mon->lt[c->mon->sellt]->arrange) | ||||
| 		resize(c, (struct wlr_box){.x = event->x, .y = event->y, | ||||
| 				.width = event->width + c->bw * 2, .height = event->height + c->bw * 2}, 0); | ||||
| 	else | ||||
|   | ||||
		Reference in New Issue
	
	Block a user