xwayland: handle set_override_redirect events

This is needed to allow X11 applications to create surfaces as
non-override_redirect and then change them to override_redirect later

Without this gitk-menus and rofi are treated as xwayland-views with
associated server-side-decoration and forced positioning.
This commit is contained in:
Johan Malm 2022-05-03 19:44:31 +01:00 committed by Johan Malm
parent cbed8acf01
commit 81f216b6a2
3 changed files with 37 additions and 3 deletions

View file

@ -38,7 +38,7 @@ parent_view(struct server *server, struct wlr_xwayland_surface *surface)
return NULL;
}
static void
void
unmanaged_handle_map(struct wl_listener *listener, void *data)
{
struct xwayland_unmanaged *unmanaged =
@ -108,7 +108,7 @@ unmanaged_handle_destroy(struct wl_listener *listener, void *data)
free(unmanaged);
}
void
struct xwayland_unmanaged *
xwayland_unmanaged_create(struct server *server,
struct wlr_xwayland_surface *xsurface)
{
@ -126,4 +126,5 @@ xwayland_unmanaged_create(struct server *server,
unmanaged->unmap.notify = unmanaged_handle_unmap;
wl_signal_add(&xsurface->events.destroy, &unmanaged->destroy);
unmanaged->destroy.notify = unmanaged_handle_destroy;
return unmanaged;
}