Commit Graph

5035 Commits

Author SHA1 Message Date
Keith Guerin 2ebe51cf0d Merge pull request #19001 from statusline 2026-03-01 23:26:00 -08:00
Keith Guerin 715711b9e2 Merge pull request #18725 from feat/thinking-ux-improvements 2026-03-01 23:19:54 -08:00
Keith Guerin 093a68cdb0 Merge pull request #18713 from feat/redesign-header-compact 2026-03-01 23:04:54 -08:00
Keith Guerin 69cc143596 fix(cli): update remaining themes and tests with border.focused for SemanticColors consistency 2026-03-01 22:58:48 -08:00
Keith Guerin 65c57ef463 Merge pull request #20673 from feature/stable-footer-ux 2026-03-01 22:55:25 -08:00
Keith Guerin ff0783b460 chore: re-trigger CI with latest fixes 2026-03-01 20:56:22 -08:00
Keith Guerin a0518cb1c4 docs: regenerate settings documentation and schema 2026-03-01 20:26:54 -08:00
Keith Guerin 5f17506bc4 fix(cli): update remaining test mocks for consistent semantic-colors 2026-03-01 20:12:49 -08:00
Keith Guerin 3030a8a64a style(cli): update FRAME_PADDING_AND_BORDER to match current layout 2026-03-01 14:40:29 -08:00
Keith Guerin 1721b51f7a fix(cli): resolve type error in LoadingIndicator and adjust mouse tests 2026-03-01 14:40:04 -08:00
Keith Guerin 23cb331657 fix(cli): make string-width test environment-agnostic 2026-03-01 12:48:43 -08:00
Keith Guerin 57e844c271 chore: re-trigger CI 2026-03-01 09:23:29 -08:00
Keith Guerin ac09d73c99 test(cli): adjust InputPrompt mouse tests for new padding 2026-03-01 08:59:32 -08:00
Keith Guerin acd24006b6 feat(cli): finalize stable footer UX and fix lint/tests 2026-03-01 08:59:31 -08:00
Keith Guerin e1e863dba2 feat(cli): unify loading phrase settings into single layout control
- Replace ui.loadingPhrases and ui.wittyPhrasePosition with ui.loadingPhraseLayout
- Supported layouts: none, tips, wit_status, wit_inline, wit_ambient, all_inline, all_ambient
- Set 'all_inline' as the new default (tips on right, wit inline)
- Update migration logic to map deprecated enableLoadingPhrases to 'none'
- Synchronize all unit tests and documentation with the new configuration model
2026-03-01 08:59:31 -08:00
Keith Guerin 3bd36ce4f0 feat(cli): implement customizable witty phrase positioning
- Add ui.wittyPhrasePosition setting (status, inline, ambient)
- Refactor usePhraseCycler to return tips and wit separately
- Implement 'inline' position: append witty phrases in gray after status
- Update status length estimation to account for inline wit
- Replace pause icon with up arrow (↑) for awaiting approval
- Remove 'Tip:' prefix from loading phrases
- Update unit tests and research report
2026-03-01 08:59:31 -08:00
Keith Guerin 5e87ba8be3 docs: update footer-ui report with ellipsis removal details 2026-03-01 08:59:31 -08:00
Keith Guerin 54c6da64e7 feat(cli): remove hardcoded trailing ellipses from tips and wit
Removing trailing ellipses from the constants prevents confusion with
actual UI truncation and creates a cleaner, more professional look.
2026-03-01 08:59:31 -08:00
Keith Guerin 384be60635 feat(cli): implement width-aware phrase selection for footer tips
- Update usePhraseCycler to filter phrase list based on available width
- Move status length estimation logic to AppContainer
- Ensure tips are only selected if they fit the remaining terminal width
- Update snapshots for usePhraseCycler
2026-03-01 08:59:31 -08:00
Keith Guerin e63207dfec feat(cli): finalize footer layout refinements
- Remove extra bottom padding in DefaultAppLayout
- Update responsive wrapping logic for narrow terminals
- Update research report with testing summary
2026-03-01 08:59:31 -08:00
Keith Guerin f451f747f4 feat(cli): implement stable 2-row footer layout with responsive collision handling
This commit introduces a new, more stable footer architecture that addresses
several long-standing UX issues:
- Stabilizes the layout by anchoring mode indicators and context summaries
- Protects safety indicators (YOLO/Plan) from being hidden by notifications
- Decouples ambient tips/wit from real system status to prevent confusion
- Implements intelligent collision detection for narrow terminal windows
- Keeps input visible but disabled during tool approval pauses
- Enhances visual consistency with unified status colors and hook icons
2026-03-01 08:59:31 -08:00
Keith Guerin 63b484a0bb feat(ui): make shell icon green when focused and fix DescriptiveRadioButtonSelect test mock 2026-03-01 02:50:36 -08:00
Keith Guerin 0a370ad1ce feat(ui): replace rainbow shell icon with themed blue spinner 2026-03-01 02:15:29 -08:00
Keith Guerin 716266d91d fix(ui): improve user message visibility and refine focus hints 2026-03-01 01:56:57 -08:00
Keith Guerin d19388ec66 docs: regenerate settings schema and documentation 2026-03-01 00:52:49 -08:00
Keith Guerin 542e77ab58 test: fix ContextUsageDisplay tests to correctly await waitUntilReady 2026-03-01 00:31:17 -08:00
Keith Guerin e5eac6597f fix(ui): resolve test failures and snapshot mismatches 2026-03-01 00:13:46 -08:00
Keith Guerin 990f0280f1 feat(ui): rename selection to focus and use AccentGreen for focus by default 2026-03-01 00:13:46 -08:00
Keith Guerin e90f2c1339 feat(ui): implement standardized selection background with interpolation 2026-03-01 00:13:46 -08:00
Keith Guerin 4e812232a8 feat(ui): standardize focus/selection color and integrate visualizer into theme dialog 2026-03-01 00:13:46 -08:00
Keith Guerin 7e7e775dcc refactor(ui): implement recursive color flattening and improve contrast in colors visualizer 2026-03-01 00:13:46 -08:00
Keith Guerin 96151ede07 feat(ui): remove redundant column logic and use flexGrow for name column in colors visualizer 2026-03-01 00:13:46 -08:00
Keith Guerin 2a1ea7db2f feat(ui): narrow background boxes and update title in colors visualizer 2026-03-01 00:13:46 -08:00
Keith Guerin 44e4b2030c feat(ui): simplify colors visualizer bullets and remove redundant usage column 2026-03-01 00:13:45 -08:00
Keith Guerin a651fc2a0d feat(ui): refine /theme colors debug visualizer layout and styling 2026-03-01 00:13:45 -08:00
Keith Guerin 067d8982d6 feat(ui): merge /colors table into /theme dialog and restrict to authors 2026-03-01 00:13:45 -08:00
Keith Guerin c884813df5 feat(ui): refine /colors value column width and prevent text wrap in tests 2026-03-01 00:13:45 -08:00
Keith Guerin 170d1aef70 feat(ui): make the first column narrower in /colors output 2026-03-01 00:13:45 -08:00
Keith Guerin 800aa60f9b feat(ui): use primary color for /colors summary and remove background row gaps 2026-03-01 00:13:45 -08:00
Keith Guerin d9a2d080f7 feat(ui): finalize /colors layout and improve interaction explanation 2026-03-01 00:13:45 -08:00
Keith Guerin d9765a18bd feat(ui): fix ESLint unescaped entities in /colors 2026-03-01 00:13:45 -08:00
Keith Guerin 00c3afe076 feat(ui): move backgrounds to top and further refine /colors layout 2026-03-01 00:13:45 -08:00
Keith Guerin b67b103f45 feat(ui): refine /colors layout and add colorized names and vertical gradients 2026-03-01 00:13:45 -08:00
Keith Guerin 8ced1bcf38 feat(ui): add /colors slash command to demo theme colors 2026-03-01 00:13:45 -08:00
Keith Guerin dc2cc57ba8 test: fix TypeScript errors in Footer tests 2026-03-01 00:06:08 -08:00
Keith Guerin f4c52d7b11 ui: implement responsive footer wrapping 2026-03-01 00:03:27 -08:00
Keith Guerin 94272f3f24 ui: address PR comments and rename 'usage-limit' to 'quota' 2026-02-28 23:57:01 -08:00
Keith Guerin ea965bc149 ui: update footer labels to lowercase and 'workspace (/directory)' 2026-02-28 23:56:44 -08:00
Jack Wotherspoon 32e01f723a test(cli): fix cross-platform footer test alignment and path normalization 2026-02-28 23:56:24 -08:00
Jack Wotherspoon 0292a20d41 chore: update tests 2026-02-28 23:56:21 -08:00