Keep parent tab highlighted when focus is on a sub-agent

The top tab bar compared against focusedID, so stepping into a
sub-agent dropped the parent tab's highlight even though the user
was still inside that thread. activeAgentID already walks the
parent chain to the top-level root for the sidebar's agent tree
— reuse it for the tab strip too.
This commit is contained in:
2026-05-15 15:26:06 +01:00
parent 4b4e7543e8
commit 1fb919c22a
2 changed files with 12 additions and 1 deletions

View File

@@ -24,7 +24,11 @@ func (st *uiState) drawTabBar() {
}
st.mu.Lock()
palOpen := st.palette != nil
focus := st.focusedID
// Highlight the top-level agent tab even when focus has stepped
// into a sub-agent (or a Processes pane entry). activeAgentID walks
// the parent chain to the root, so the user always sees which tab
// their current thread belongs to.
focus := st.activeAgentID
st.mu.Unlock()
if palOpen {
return