git.lucas.co / cce-data-editor
structured data editor
git clone https://git.lucas.co/cce-data-editor.git

commitc57e5cd01e15cf8f166fd5e42e3d886c5ed8a720
parent9f5532ce80
authorLucas Galante <[email protected]>
date2026-09-08 21:55
fix: rebuild after a Tab focus step

The geometry is cached until the next rebuild, so the moved focus ring was
not drawn; raise the flag from Application::focus_stepped.

Co-Authored-By: Claude Fable 5.1 <[email protected]>

 src/main.rs | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/main.rs b/src/main.rs
index 18abcdc..0e52601 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -2490,6 +2490,11 @@ impl Application for DataEditorApp {
         true
     }
 
+    /// The geometry is cached until the next rebuild — a moved focus ring needs one.
+    fn focus_stepped(&mut self) {
+        self.needs_rebuild = true;
+    }
+
     fn handle_key_input(&mut self, event: &KeyEvent, needs_rebuild: &mut bool) -> Option<Self::Message> {
         self.ctrl_pressed = event.ctrl;
         self.ui_context.ctrl_pressed = event.ctrl;