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

commit99217b4943d1cea0f6abed1956c1b71c231fdef3
parentce084ba4e6
authorLucas Galante <[email protected]>
date2026-06-29 21:06
Manually clear and register active choice editor popovers inside view method to trigger Wayland popup subsurface

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

diff --git a/src/main.rs b/src/main.rs
index c794043..96d7c38 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -1301,6 +1301,14 @@ impl Application for DataEditorApp {
 
         // 5. Collect all quads recursively from Backplate
         quads.extend(self.root_window.all_quads(&self.ui_context));
+
+        // 6. Popovers registration (since this app bypasses the layout engine)
+        self.ui_context.clear_popovers();
+        cce_ui::widget::popovers::clear();
+        if self.selected_choice_editor.popover_rect().is_some() {
+            self.ui_context.register_popover(&self.selected_choice_editor);
+            cce_ui::widget::popovers::register(&self.selected_choice_editor);
+        }
     }
 
     fn text_items(&self) -> &[TextItem] {