Skip to content

Commit 33dc321

Browse files
committed
Fixed optimized blur not being marked as dirty when no wallpaper is visible
1 parent d0ebafe commit 33dc321

File tree

1 file changed

+9
-8
lines changed

1 file changed

+9
-8
lines changed

src/comp/output.c

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -603,19 +603,14 @@ void comp_output_update_sizes(struct comp_output *output) {
603603
wlr_scene_node_set_position(&output->object.scene_tree->node,
604604
output->geometry.x, output->geometry.y);
605605

606-
// Also marks the blur as dirty
607-
wlr_scene_optimized_blur_set_size(output->layers.optimized_blur_node,
608-
output->geometry.width,
609-
output->geometry.height);
610-
611606
comp_output_arrange_layers(output);
612607
comp_output_arrange_output(output);
613608

614609
// TODO: Update toplevel positions/tiling/sizes Only enable for actual
615610
// outputs
616-
// printf("GEO: %i %i %ix%i\n", output->geometry.width,
617-
// output->geometry.height, output->geometry.x,
618-
// output->geometry.y);
611+
612+
// Also marks the blur as dirty
613+
wlr_scene_optimized_blur_mark_dirty(output->layers.optimized_blur_node);
619614
}
620615

621616
void comp_output_move_workspace_to(struct comp_output *dest_output,
@@ -777,6 +772,12 @@ void comp_output_arrange_output(struct comp_output *output) {
777772
wlr_scene_node_set_enabled(&output->layers.shell_top->node,
778773
!is_fullscreen && !is_locked);
779774
wlr_scene_node_set_enabled(&output->layers.shell_overlay->node, !is_locked);
775+
776+
int output_width, output_height;
777+
wlr_output_effective_resolution(output->wlr_output, &output_width,
778+
&output_height);
779+
wlr_scene_optimized_blur_set_size(output->layers.optimized_blur_node,
780+
output_width, output_height);
780781
}
781782

782783
static void arrange_layer_surfaces(struct comp_output *output,

0 commit comments

Comments
 (0)