From 0d1231a6d156e6b658c631e9a2f70d43e2c2977b Mon Sep 17 00:00:00 2001 From: Simon Ser Date: Tue, 1 Jun 2021 12:24:12 +0200 Subject: Iterate over subsurfaces below the parent surface Update for the breaking change in [1]. [1]: https://github.com/swaywm/wlroots/pull/2948 (cherry picked from commit 3162766eef14be71789478b0984bc2c1802832b2) --- sway/tree/view.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/sway/tree/view.c b/sway/tree/view.c index c762fa22..124b4621 100644 --- a/sway/tree/view.c +++ b/sway/tree/view.c @@ -1031,7 +1031,10 @@ static void view_child_handle_surface_destroy(struct wl_listener *listener, static void view_init_subsurfaces(struct sway_view *view, struct wlr_surface *surface) { struct wlr_subsurface *subsurface; - wl_list_for_each(subsurface, &surface->subsurfaces, parent_link) { + wl_list_for_each(subsurface, &surface->subsurfaces_below, parent_link) { + view_subsurface_create(view, subsurface); + } + wl_list_for_each(subsurface, &surface->subsurfaces_above, parent_link) { view_subsurface_create(view, subsurface); } } @@ -1039,7 +1042,10 @@ static void view_init_subsurfaces(struct sway_view *view, static void view_child_init_subsurfaces(struct sway_view_child *view_child, struct wlr_surface *surface) { struct wlr_subsurface *subsurface; - wl_list_for_each(subsurface, &surface->subsurfaces, parent_link) { + wl_list_for_each(subsurface, &surface->subsurfaces_below, parent_link) { + view_child_subsurface_create(view_child, subsurface); + } + wl_list_for_each(subsurface, &surface->subsurfaces_above, parent_link) { view_child_subsurface_create(view_child, subsurface); } } -- cgit v1.2.3-54-g00ecf