diff --git a/src/wayland/meta-wayland-xdg-foreign.c b/src/wayland/meta-wayland-xdg-foreign.c index a04b2bfa79bfffa4e26a0ce8cfc26ee8034269db..49ada7ada1d9ae6a12d8b8795eb2e82676866940 100644 --- a/src/wayland/meta-wayland-xdg-foreign.c +++ b/src/wayland/meta-wayland-xdg-foreign.c @@ -252,10 +252,8 @@ is_valid_child (MetaWaylandSurface *surface) if (!surface->role) return FALSE; - if (!META_IS_WAYLAND_XDG_SURFACE (surface->role)) - return FALSE; - - if (!META_IS_WAYLAND_ZXDG_SURFACE_V6 (surface->role)) + if (!META_IS_WAYLAND_XDG_TOPLEVEL (surface->role) && + !META_IS_WAYLAND_ZXDG_TOPLEVEL_V6 (surface->role)) return FALSE; if (!surface->window) @@ -384,7 +382,7 @@ xdg_importer_import (struct wl_client *client, (!META_IS_WAYLAND_XDG_SURFACE (exported->surface->role) && !META_IS_WAYLAND_ZXDG_SURFACE_V6 (exported->surface->role))) { - zxdg_imported_v1_send_destroyed (resource); + zxdg_imported_v1_send_destroyed (xdg_imported_resource); return; }