From 3c05067c99aef285ce5803fe7a025f1841717233 Mon Sep 17 00:00:00 2001 From: Elena Torro Date: Wed, 15 Oct 2025 10:10:24 +0200 Subject: [PATCH] :wrench: Fix extrect and selrect debug interactivity --- render-wasm/src/render.rs | 10 ++++++++-- render-wasm/src/render/debug.rs | 12 +++++++----- 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/render-wasm/src/render.rs b/render-wasm/src/render.rs index 37c04900f3..213537cb9b 100644 --- a/render-wasm/src/render.rs +++ b/render-wasm/src/render.rs @@ -808,9 +808,9 @@ impl RenderState { if self.options.is_debug_visible() { let shape_selrect_bounds = self.get_shape_selrect_bounds(&shape); - let shape_extrect_bounds = self.get_shape_extrect_bounds(&shape, shapes, modifiers); - debug::render_debug_shape(self, shape_selrect_bounds, shape_extrect_bounds); + debug::render_debug_shape(self, Some(shape_selrect_bounds), None); } + if apply_to_current_surface { self.apply_drawing_to_render_canvas(Some(&shape)); } @@ -1294,6 +1294,12 @@ impl RenderState { modifiers, ); + if self.options.is_debug_visible() { + let shape_extrect_bounds = + self.get_shape_extrect_bounds(&transformed_element, tree, modifiers); + debug::render_debug_shape(self, None, Some(shape_extrect_bounds)); + } + if !is_visible { continue; } diff --git a/render-wasm/src/render/debug.rs b/render-wasm/src/render/debug.rs index 4425335854..ff142337ec 100644 --- a/render-wasm/src/render/debug.rs +++ b/render-wasm/src/render/debug.rs @@ -147,8 +147,8 @@ pub fn render_workspace_current_tile( pub fn render_debug_shape( render_state: &mut RenderState, - shape_selrect: skia::Rect, - shape_extrect: skia::Rect, + shape_selrect: Option, + shape_extrect: Option, ) { let canvas = render_state.surfaces.canvas(SurfaceId::Debug); @@ -157,11 +157,13 @@ pub fn render_debug_shape( paint.set_color(skia::Color::RED); paint.set_stroke_width(1.); - canvas.draw_rect(shape_selrect, &paint); + if let Some(rect) = shape_selrect { + canvas.draw_rect(rect, &paint); + } - if shape_extrect != shape_selrect { + if let Some(rect) = shape_extrect { paint.set_color(skia::Color::BLUE); - canvas.draw_rect(shape_extrect, &paint); + canvas.draw_rect(rect, &paint); } }