diff --git a/sway/desktop/output.c b/sway/desktop/output.c index ec77eaa7..55e806d9 100644 --- a/sway/desktop/output.c +++ b/sway/desktop/output.c @@ -205,7 +205,6 @@ void output_layer_for_each_toplevel_surface(struct sway_output *output, data->deco_data.blur = effects->blur; data->deco_data.corner_radius = effects->corner_radius? config->corner_radius: 0; - data->is_toplevel_surface = true; } output_surface_for_each_surface(output, wlr_layer_surface_v1->surface, diff --git a/sway/desktop/render.c b/sway/desktop/render.c index e5118402..d9e90e2e 100644 --- a/sway/desktop/render.c +++ b/sway/desktop/render.c @@ -405,6 +405,7 @@ static void render_layer_toplevel(struct sway_output *output, pixman_region32_t *damage, struct wl_list *layer_surfaces) { struct fx_render_data data = { .damage = damage, + .is_toplevel_surface = true, .deco_data = get_undecorated_decoration_data(), }; output_layer_for_each_toplevel_surface(output, layer_surfaces, @@ -415,6 +416,7 @@ static void render_layer_popups(struct sway_output *output, pixman_region32_t *damage, struct wl_list *layer_surfaces) { struct fx_render_data data = { .damage = damage, + .is_toplevel_surface = false, .deco_data = get_undecorated_decoration_data(), }; output_layer_for_each_popup_surface(output, layer_surfaces, @@ -426,6 +428,7 @@ static void render_unmanaged(struct sway_output *output, pixman_region32_t *damage, struct wl_list *unmanaged) { struct fx_render_data data = { .damage = damage, + .is_toplevel_surface = false, .deco_data = get_undecorated_decoration_data(), }; output_unmanaged_for_each_surface(output, unmanaged, @@ -437,6 +440,7 @@ static void render_drag_icons(struct sway_output *output, pixman_region32_t *damage, struct wl_list *drag_icons) { struct fx_render_data data = { .damage = damage, + .is_toplevel_surface = false, .deco_data = get_undecorated_decoration_data(), }; output_drag_icons_for_each_surface(output, drag_icons, @@ -649,6 +653,7 @@ static void render_view_toplevels(struct sway_view *view, struct sway_output *ou pixman_region32_t *damage, struct decoration_data deco_data) { struct fx_render_data data = { .damage = damage, + .is_toplevel_surface = false, .deco_data = deco_data, }; // Clip the window to its view size, ignoring CSD @@ -673,6 +678,7 @@ static void render_view_popups(struct sway_view *view, struct sway_output *outpu pixman_region32_t *damage, struct decoration_data deco_data) { struct fx_render_data data = { .damage = damage, + .is_toplevel_surface = false, .deco_data = deco_data, }; output_view_for_each_popup_surface(output, view, @@ -1830,6 +1836,7 @@ void output_render(struct sway_output *output, struct timespec *when, if (server.session_lock.lock != NULL) { struct fx_render_data data = { .damage = damage, + .is_toplevel_surface = false, .deco_data = get_undecorated_decoration_data(), };