summaryrefslogtreecommitdiff
path: root/client.h
diff options
context:
space:
mode:
Diffstat (limited to 'client.h')
-rw-r--r--client.h19
1 files changed, 7 insertions, 12 deletions
diff --git a/client.h b/client.h
index 5a45edc..5fe31b1 100644
--- a/client.h
+++ b/client.h
@@ -69,32 +69,29 @@ toplevel_from_wlr_surface(struct wlr_surface *s, Client **pc, LayerSurface **pl)
root_surface = wlr_surface_get_root_surface(s);
#ifdef XWAYLAND
- if (wlr_surface_is_xwayland_surface(root_surface)
- && (xsurface = wlr_xwayland_surface_from_wlr_surface(root_surface))) {
+ if ((xsurface = wlr_xwayland_surface_try_from_wlr_surface(root_surface))) {
c = xsurface->data;
type = c->type;
goto end;
}
#endif
- if (wlr_surface_is_layer_surface(root_surface)
- && (layer_surface = wlr_layer_surface_v1_from_wlr_surface(root_surface))) {
+ if ((layer_surface = wlr_layer_surface_v1_try_from_wlr_surface(root_surface))) {
l = layer_surface->data;
type = LayerShell;
goto end;
}
- if (wlr_surface_is_xdg_surface(root_surface)
- && (xdg_surface = wlr_xdg_surface_from_wlr_surface(root_surface))) {
+ if ((xdg_surface = wlr_xdg_surface_try_from_wlr_surface(root_surface))) {
while (1) {
switch (xdg_surface->role) {
case WLR_XDG_SURFACE_ROLE_POPUP:
if (!xdg_surface->popup->parent)
return -1;
- else if (!wlr_surface_is_xdg_surface(xdg_surface->popup->parent))
+ else if (!wlr_xdg_surface_try_from_wlr_surface(xdg_surface->popup->parent))
return toplevel_from_wlr_surface(xdg_surface->popup->parent, pc, pl);
- xdg_surface = wlr_xdg_surface_from_wlr_surface(xdg_surface->popup->parent);
+ xdg_surface = wlr_xdg_surface_try_from_wlr_surface(xdg_surface->popup->parent);
break;
case WLR_XDG_SURFACE_ROLE_TOPLEVEL:
c = xdg_surface->data;
@@ -121,14 +118,12 @@ client_activate_surface(struct wlr_surface *s, int activated)
struct wlr_xdg_surface *surface;
#ifdef XWAYLAND
struct wlr_xwayland_surface *xsurface;
- if (wlr_surface_is_xwayland_surface(s)
- && (xsurface = wlr_xwayland_surface_from_wlr_surface(s))) {
+ if ((xsurface = wlr_xwayland_surface_try_from_wlr_surface(s))) {
wlr_xwayland_surface_activate(xsurface, activated);
return;
}
#endif
- if (wlr_surface_is_xdg_surface(s)
- && (surface = wlr_xdg_surface_from_wlr_surface(s))
+ if ((surface = wlr_xdg_surface_try_from_wlr_surface(s))
&& surface->role == WLR_XDG_SURFACE_ROLE_TOPLEVEL)
wlr_xdg_toplevel_set_activated(surface->toplevel, activated);
}