aboutsummaryrefslogtreecommitdiffstats
path: root/sway/tree/container.c
diff options
context:
space:
mode:
Diffstat (limited to 'sway/tree/container.c')
-rw-r--r--sway/tree/container.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/sway/tree/container.c b/sway/tree/container.c
index c60c8f8f..dbe88028 100644
--- a/sway/tree/container.c
+++ b/sway/tree/container.c
@@ -387,16 +387,16 @@ struct sway_container *tiling_container_at(struct sway_node *parent,
387} 387}
388 388
389static bool surface_is_popup(struct wlr_surface *surface) { 389static bool surface_is_popup(struct wlr_surface *surface) {
390 while (!wlr_surface_is_xdg_surface(surface)) { 390 while (wlr_xdg_surface_try_from_wlr_surface(surface) == NULL) {
391 if (!wlr_surface_is_subsurface(surface)) { 391 struct wlr_subsurface *subsurface =
392 wlr_subsurface_try_from_wlr_surface(surface);
393 if (subsurface == NULL) {
392 return false; 394 return false;
393 } 395 }
394 struct wlr_subsurface *subsurface =
395 wlr_subsurface_from_wlr_surface(surface);
396 surface = subsurface->parent; 396 surface = subsurface->parent;
397 } 397 }
398 struct wlr_xdg_surface *xdg_surface = 398 struct wlr_xdg_surface *xdg_surface =
399 wlr_xdg_surface_from_wlr_surface(surface); 399 wlr_xdg_surface_try_from_wlr_surface(surface);
400 return xdg_surface->role == WLR_XDG_SURFACE_ROLE_POPUP; 400 return xdg_surface->role == WLR_XDG_SURFACE_ROLE_POPUP;
401} 401}
402 402