sway

i3-compatible Wayland compositor
git clone https://git.awy.one/sway
Log | Files | Refs | README | LICENSE

commit 3162766eef14be71789478b0984bc2c1802832b2
parent 9755684fb0fd665a65be2a3cbabc5d502244c459
Author: Simon Ser <contact@emersion.fr>
Date:   Tue,  1 Jun 2021 12:24:12 +0200

Iterate over subsurfaces below the parent surface

Update for the breaking change in [1].

[1]: https://github.com/swaywm/wlroots/pull/2948

Diffstat:
Msway/tree/view.c | 10++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/sway/tree/view.c b/sway/tree/view.c @@ -1037,7 +1037,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); } } @@ -1045,7 +1048,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); } }