From d9fea603f8185b30d3409532918f3d4d8fbf24fd Mon Sep 17 00:00:00 2001 From: Elena Torro Date: Tue, 2 Jun 2026 17:11:57 +0200 Subject: [PATCH] :bug: Fix clear canvas --- render-wasm/src/render.rs | 7 +++++-- render-wasm/src/render/surfaces.rs | 14 +++++++++++--- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/render-wasm/src/render.rs b/render-wasm/src/render.rs index 057287f5e9..503e949c84 100644 --- a/render-wasm/src/render.rs +++ b/render-wasm/src/render.rs @@ -2180,8 +2180,11 @@ impl RenderState { let frame_type = self.render_shape_tree_partial(base_object, tree, timestamp, true)?; if !self.options.is_interactive_transform() { - self.surfaces - .draw_tile_atlas_to_backbuffer(&self.viewbox, &self.tile_viewbox); + self.surfaces.draw_tile_atlas_to_backbuffer( + &self.viewbox, + &self.tile_viewbox, + self.background_color, + ); } match frame_type { diff --git a/render-wasm/src/render/surfaces.rs b/render-wasm/src/render/surfaces.rs index de33abb7e0..04d6948371 100644 --- a/render-wasm/src/render/surfaces.rs +++ b/render-wasm/src/render/surfaces.rs @@ -518,10 +518,18 @@ impl Surfaces { self.tiles.clear(); } - pub fn draw_tile_atlas_to_backbuffer(&mut self, viewbox: &Viewbox, tile_viewbox: &TileViewbox) { + pub fn draw_tile_atlas_to_backbuffer( + &mut self, + viewbox: &Viewbox, + tile_viewbox: &TileViewbox, + background: skia::Color, + ) { self.tiles.update(viewbox, tile_viewbox); - self.backbuffer.canvas().draw_atlas( - &self.tile_atlas.image_snapshot(), + let atlas_image = self.tile_atlas.image_snapshot(); + let canvas = self.backbuffer.canvas(); + canvas.clear(background); + canvas.draw_atlas( + &atlas_image, &self.tiles.transforms, &self.tiles.textures, None,