xwayland/xwm: introduce wlr_xwayland_surface_try_from_wlr_surface()

This new function replaces wlr_surface_is_xwayland_surface() and
wlr_xwayland_surface_from_wlr_surface().
This commit is contained in:
Kirill Primak 2022-12-05 21:13:19 +03:00 committed by Simon Zeni
parent 21f8388b58
commit fbf5982e38
2 changed files with 7 additions and 16 deletions

View file

@ -101,14 +101,12 @@ struct pending_startup_id {
static const struct wlr_addon_interface surface_addon_impl;
bool wlr_surface_is_xwayland_surface(struct wlr_surface *surface) {
return wlr_addon_find(&surface->addons, NULL, &surface_addon_impl) != NULL;
}
struct wlr_xwayland_surface *wlr_xwayland_surface_from_wlr_surface(
struct wlr_xwayland_surface *wlr_xwayland_surface_try_from_wlr_surface(
struct wlr_surface *surface) {
struct wlr_addon *addon = wlr_addon_find(&surface->addons, NULL, &surface_addon_impl);
assert(addon != NULL);
if (addon == NULL) {
return NULL;
}
struct wlr_xwayland_surface *xsurface = wl_container_of(addon, xsurface, surface_addon);
return xsurface;
}