You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(tui): pin tab + auto-follow new downloads (#438)
* feat(tui): add pin tab feature and auto-follow new downloads
- Add pinnedTab field to RootModel to track which tab is pinned (-1 = none)
- Press ctrl+tab to toggle pin on the active tab; a π icon appears in the tab bar
- When a tab is pinned, automatic tab switching is suppressed β the UI stays put
- When no tab is pinned, the TUI now auto-follows new downloads started from
the browser extension (sets SelectedDownloadID on DownloadStarted/Queued events)
- Update Tab component to accept a Pinned field and render the pin icon
- Add PinTab key binding to dashboard help view
Closes#431
* fix(tui): use switch for tab name resolution (staticcheck)
* style(tui): replace pin emoji with unicode β (U+25C6)
* fix(tui): change pin tab key from ctrl+tab to 't'
ctrl+tab is consumed by the terminal emulator and never reaches the TUI.
Use 't' (toggle) as the pin key instead β consistent with single-key
binding style used throughout the dashboard (q/w/e, p, r, x, etc.).
* feat(tui): arrow key tab switching, remove j/k, fix pin override
- Left/right arrows now switch tabs (prev/next); tab key retained for next
- Remove vim j/k navigation bindings (closes#430)
- Fix: pin tab now fully overrides ALL tab switches including:
- Downloads started via 'a' key (startDownload in process.go)
- Browser extension downloads (update_events.go)
- Download completion follow-through (list.go)
* feat(tui): block tab switching when pinned, log hint to unpin
When a tab is pinned, pressing q/w/e, left/right, or tab now logs
'β Tab is pinned β press t to unpin' instead of switching tabs.
* fix(tui): address auto-follow edge cases and add tests
0 commit comments