@@ -129,33 +129,12 @@ def _render(state: GuiState) -> None: # pragma: no cover - manual UI
129129
130130
131131def _dockspace_fullscreen () -> None :
132- # Fullscreen dockspace so any window (including ImGui demo widgets) can dock.
133- viewport = imgui .get_main_viewport ()
134- imgui .set_next_window_pos (viewport .pos )
135- imgui .set_next_window_size (viewport .size )
136- imgui .set_next_window_viewport (viewport .id_ )
137- imgui .push_style_var (imgui .StyleVar_ .window_rounding , 0.0 )
138- imgui .push_style_var (imgui .StyleVar_ .window_border_size , 0.0 )
139- imgui .push_style_var (imgui .StyleVar_ .window_padding , (0.0 , 0.0 ))
140-
141- window_flags = (
142- imgui .WindowFlags_ .no_title_bar
143- | imgui .WindowFlags_ .no_collapse
144- | imgui .WindowFlags_ .no_resize
145- | imgui .WindowFlags_ .no_move
146- | imgui .WindowFlags_ .no_bring_to_front_on_focus
147- | imgui .WindowFlags_ .no_nav_focus
148- | imgui .WindowFlags_ .no_docking
149- | imgui .WindowFlags_ .no_background
132+ # Fullscreen dockspace over the main viewport; keep central node dockable.
133+ dock_flags = imgui .DockNodeFlags_ .passthru_central_node
134+ return imgui .dock_space_over_viewport (
135+ 0 , imgui .get_main_viewport (), dock_flags , None
150136 )
151137
152- imgui .begin ("MainDockSpaceHost" , flags = window_flags )
153- imgui .pop_style_var (3 )
154- dockspace_id = imgui .get_id ("MainDockSpace" )
155- imgui .dock_space (dockspace_id , (0.0 , 0.0 ), imgui .DockNodeFlags_ .none )
156- imgui .end ()
157- return dockspace_id
158-
159138
160139def main (argv : list [str ] | None = None ) -> None :
161140 if (
0 commit comments