Skip to content

feat(tui): unify list interactions across all tabs#19

Merged
llcro merged 2 commits into
mainfrom
feat/tui-list-interactions
May 1, 2026
Merged

feat(tui): unify list interactions across all tabs#19
llcro merged 2 commits into
mainfrom
feat/tui-list-interactions

Conversation

@troycdc
Copy link
Copy Markdown
Collaborator

@troycdc troycdc commented Apr 30, 2026

Summary

  • Add mouse click/double-click and Enter key navigation to all list tabs (History, Watchlist, Orders, Positions) — previously only Market tab supported mouse interaction
  • Fix Market tab empty space at bottom: clicking empty rows no longer selects hidden items or enters detail
  • Fix History tab over-scroll: selected item now stays within visible bounds with proper scroll windowing
  • Fix History pagination to use correct API cursor-based pagination (end_time/limit) instead of non-existent page_size/page params
  • Esc from Market detail returns to the originating tab when navigated via another tab
  • Positions tab now uses stable sort (by instrument name) to prevent visual reordering on load
  • History time column shows full YYYY-MM-DD HH:MM format

Test plan

  • Click and double-click items in Watchlist, History, Orders, Positions tabs
  • Verify double-click / Enter navigates to Market detail for the selected instrument
  • Press Esc in Market detail after navigating from Watchlist — should return to Watchlist
  • Scroll down in History tab with many items — selected row should stay visible
  • Navigate pages in History with Right/Left arrows — verify single API request per page
  • Verify no navigation beyond last page (Right arrow disabled when no more records)
  • Open Positions tab — verify list order is stable across re-renders

🤖 Generated with Claude Code

troycdc and others added 2 commits April 30, 2026 11:29
- Add mouse click/double-click support to History, Watchlist, Orders,
  and Positions tabs (previously only Market tab handled clicks)
- Add Enter key navigation to detail view for History and Orders tabs
- Fix Market tab empty space: use correct visible_rows_in_table() in
  draw, prevent clicks on empty rows beyond rendered data
- Fix History tab over-scroll: add scroll_offset tracking so selected
  item always stays within visible bounds
- Fix History pagination: replace incorrect page_size/page params with
  API-correct end_time/limit cursor-based pagination using nanosecond
  timestamps; prevent duplicate requests with a requesting guard
- Add Esc-returns-to-origin: pressing Esc in Market detail view returns
  to the tab that initiated the navigation (Watchlist, History, etc.)
- Fix Positions tab unstable sort: sort by instrument name after loading
- Improve History time column: show full YYYY-MM-DD HH:MM instead of
  just HH:MM

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@llcro llcro merged commit ad3415d into main May 1, 2026
8 checks passed
@troycdc troycdc deleted the feat/tui-list-interactions branch May 12, 2026 02:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants