From b6ddca5dbb943b93a761fbc6f74f89eb8339b514 Mon Sep 17 00:00:00 2001 From: cinnaboot Date: Fri, 30 Jan 2026 09:17:39 -0500 Subject: [PATCH] Fix spacecraft panel showing for 1 frame then disappearing - Remove unconditional reset of ui_state.selected_craft_index in render_body_list_ui() - Only reset ui_state.selected_craft_index to -1 when body is selected - This prevents panel from disappearing in subsequent frames when spacecraft remains selected --- src/ui_renderer.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/ui_renderer.cpp b/src/ui_renderer.cpp index 7bf2428..ee4b157 100644 --- a/src/ui_renderer.cpp +++ b/src/ui_renderer.cpp @@ -123,12 +123,11 @@ void render_body_list_ui(SimulationState* sim, RenderState* render_state, UIStat int previous_active = ui_state->body_list_active; GuiListView(list_bounds, list_text, &ui_state->body_list_scroll, &ui_state->body_list_active); - ui_state->selected_craft_index = -1; - // Check if an item was selected if (ui_state->body_list_active >= 0 && ui_state->body_list_active != previous_active) { if (ui_state->body_list_active < sim->body_count) { render_state->selected_body_index = ui_state->body_list_active; + ui_state->selected_craft_index = -1; render_state->camera_target_enabled = true; printf("Camera follow enabled for body: %s\n", sim->bodies[render_state->selected_body_index].name); } else {