From b5ad1e29e9f35260818d0b7019f3210601b7d2d9 Mon Sep 17 00:00:00 2001 From: Mick Date: Sat, 21 Mar 2026 13:17:51 -0400 Subject: [PATCH] fix: The bottom status / info bar cuts off panels (#71) Reserve status bar height when sizing the dockspace host window and initial dock builder node, so panels no longer extend behind the bottom status bar. Co-Authored-By: Claude Opus 4.6 --- src/app.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/app.cpp b/src/app.cpp index 716ada6..386c76c 100644 --- a/src/app.cpp +++ b/src/app.cpp @@ -149,12 +149,13 @@ void App::update() { } } - // Set up dockspace over the entire viewport + // Set up dockspace over the entire viewport, reserving space for the status bar + float status_bar_h = ImGui::GetFrameHeight(); { TRACE_SCOPE_CAT("App::dockspace_setup", "ui"); ImGuiViewport* viewport = ImGui::GetMainViewport(); ImGui::SetNextWindowPos(viewport->WorkPos); - ImGui::SetNextWindowSize(viewport->WorkSize); + ImGui::SetNextWindowSize(ImVec2(viewport->WorkSize.x, viewport->WorkSize.y - status_bar_h)); ImGui::SetNextWindowViewport(viewport->ID); ImGuiWindowFlags host_flags = ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoCollapse | @@ -178,7 +179,8 @@ void App::update() { ImGui::DockBuilderRemoveNode(dockspace_id); ImGui::DockBuilderAddNode(dockspace_id, ImGuiDockNodeFlags_DockSpace); - ImGui::DockBuilderSetNodeSize(dockspace_id, viewport->WorkSize); + ImGui::DockBuilderSetNodeSize(dockspace_id, + ImVec2(viewport->WorkSize.x, viewport->WorkSize.y - status_bar_h)); // Split: left panel (18%) for diagnostics, remainder for main content ImGuiID dock_main = dockspace_id;