mirror of
https://github.com/brl/mutter.git
synced 2025-06-13 16:59:30 +00:00
wayland: Rework how surface destruction works
To prevent the MetaSurfaceActor from being destroyed, we normally unparent it before we unmanage the window. However, this doesn't work for XWayland windows, which we unmanage when we get UnmapNotify or DestroyNotify, not when we get the wl_surface_destroy. To solve this, add an early hook in meta_window_unmanage that unparents the surface actor if we have one. At the same time, clean up the destruction code to remove old comments and assumptions about how wl_shell behaves.
This commit is contained in:
@ -118,6 +118,9 @@ MetaWaylandSurface *meta_wayland_surface_create (MetaWaylandCompositor *composit
|
||||
struct wl_client *client,
|
||||
guint32 id,
|
||||
guint32 version);
|
||||
|
||||
void meta_wayland_surface_window_unmanaged (MetaWaylandSurface *surface);
|
||||
|
||||
void meta_wayland_surface_configure_notify (MetaWaylandSurface *surface,
|
||||
int width,
|
||||
int height);
|
||||
|
Reference in New Issue
Block a user