wl_container_of(listener, unmanaged, map);
struct wlr_xwayland_surface *xsurface = unmanaged->xwayland_surface;
+ /* Stack new surface on top */
+ wlr_xwayland_surface_restack(xsurface, NULL, XCB_STACK_MODE_ABOVE);
wl_list_insert(unmanaged->server->unmanaged_surfaces.prev,
&unmanaged->link);
wlr_xwayland_surface_activate(surface, activated);
if (activated) {
wlr_xwayland_surface_restack(surface, NULL, XCB_STACK_MODE_ABOVE);
+ /* Restack unmanaged surfaces on top */
+ struct xwayland_unmanaged *u;
+ struct wl_list *list = &view->server->unmanaged_surfaces;
+ wl_list_for_each (u, list, link) {
+ wlr_xwayland_surface_restack(u->xwayland_surface, NULL,
+ XCB_STACK_MODE_ABOVE);
+ }
}
}