From cb8dc18a64d1457d660357bae6bf7cdca896dca8 Mon Sep 17 00:00:00 2001 From: Eric Traut Date: Thu, 2 Apr 2026 14:02:52 -0600 Subject: [PATCH] Fix resume picker initial loading state (#16591) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Addresses #16514 Problem: Resume picker could show “No sessions yet” before the initial session fetch finished. Solution: Render a loading message while the first page is pending, and keep the empty state for truly empty results. --- codex-rs/tui/src/resume_picker.rs | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/codex-rs/tui/src/resume_picker.rs b/codex-rs/tui/src/resume_picker.rs index d5e7fbd1e..60d189d22 100644 --- a/codex-rs/tui/src/resume_picker.rs +++ b/codex-rs/tui/src/resume_picker.rs @@ -1360,11 +1360,10 @@ fn render_empty_state_line(state: &PickerState) -> Line<'static> { return vec!["No results for your search".italic().dim()].into(); } - if state.all_rows.is_empty() && state.pagination.num_scanned_files == 0 { - return vec!["No sessions yet".italic().dim()].into(); - } - if state.pagination.loading.is_pending() { + if state.all_rows.is_empty() && state.pagination.num_scanned_files == 0 { + return vec!["Loading sessions…".italic().dim()].into(); + } return vec!["Loading older sessions…".italic().dim()].into(); }