From e530bf765696c776df7c54534f8d8baa9d7c68b0 Mon Sep 17 00:00:00 2001 From: rob Date: Sat, 30 May 2026 10:31:27 -0300 Subject: [PATCH] Fix feature highlight wiped by scene re-render Selecting a feature drew the cyan overlay, but the concurrent scene re-render (render_scene -> plotter.clear) wiped it, leaving only the yellow selected board. _on_changed now re-applies the feature overlay after render_scene, so the cyan highlight (and red edit preview) persist. Co-Authored-By: Claude Opus 4.8 (1M context) --- src/woodshop/gui/main_window.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/woodshop/gui/main_window.py b/src/woodshop/gui/main_window.py index dbceadd..bf579fd 100644 --- a/src/woodshop/gui/main_window.py +++ b/src/woodshop/gui/main_window.py @@ -126,6 +126,8 @@ class MainWindow(QMainWindow): def _on_changed(self): scene = self.controller.scene self.viewport.render_scene(scene, self.controller.selected) + # render_scene clears all actors — re-apply the feature overlay on top. + self.viewport.set_preview(self.controller.preview, self.controller.preview_kind) bf = sum(board_feet(p.stock, p.length_in) for p in scene.parts) sel = self.controller.selected sel_txt = (f"{len(sel)} selected" if len(sel) > 1