aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sway/tree/view.c10
1 files 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);
}
}