Conversation
* feat(config): add compact_header setting * refactor(header): unified 5-line normal mode layout * feat(header): add compact mode (1-line) * feat(views): add Ctrl+E header toggle * test(header): add tests for compact mode * fix(header): simplify RenderHome to 2-line header * fix(header): ctrl+e toggle layout issues - resource_browser: add buildTable() after toggle - detail_view: add viewport recalc after toggle - header_panel: remove dead code branch (len>12) - main: add --compact flag to help text * refactor(header): centralize ctrl+e, fix styling and theme updates - Add CompactHeaderChangedMsg for centralized header toggle - Move ctrl+e handling from 6 views to app.go - Remove dead code in account ID display (always 12 digits) - Apply theme styles to compact header content - Fix ServiceBrowser not updating on theme change * refactor(header): extract constants and deduplicate profile formatting * fix(header): recalc viewport on compact toggle, persist with autosave * fix(header): dynamic profile display width and ANSI style reset - formatProfilesWithAccounts now uses available width instead of fixed maxShow=2 - Profiles display adapts to screen width, showing (+N) when truncated - Fix ANSI style reset issue: apply valueStyle per-part to prevent dangerStyle reset from breaking subsequent text - formatSingleProfile also applies valueStyle for consistency * fix(header): review fixes - off-by-one, regions truncation, settings/help updates - Fix formatProfilesWithAccounts off-by-one in remaining calc - Add formatRegions with (+N) truncation pattern - Add Ctrl+E to help view Global section - Add compact_header to :settings, remove confusing Startup section - Fix wrapSettingsValue: use lipgloss.Width, word-wrap on delimiter - Increase ModalWidthSettings 70→75 - Add tests for formatRegions and formatProfilesWithAccounts - Update docs: keybindings.md, configuration.md * feat(cli): add --no-compact flag, fix light theme text colors - Add --no-compact flag to override config compact_header setting - Fix settings_view text not visible on light theme - Fix command_input using hardcoded dark theme colors - Style command mode hints with DimStyle for theme awareness * fix(view): add viewport ready guard, move TextInputStyles to ui pkg - header_panel: document first-item-always-shown intent in format funcs - detail_view: add Ready guard in recalcViewport to prevent panic - ui/theme: add TextInputStyles() helper for textinput.Styles - command_input: use ui.TextInputStyles() instead of inline styles * chore(view): cleanup from review - rename label, add comments, remove unused const * fix: review issues - test expectation, dashboard compact handler, docs * fix(header): truncate regions/profiles on invalid width * fix(view): remove confusing (CLI) indicators from settings view - Remove (CLI) suffix for regions/profiles/compact_header - Fix potential data race by eliminating cfg.Startup direct access - Update autosave docs to include compact_header * refactor(view): extract magic numbers to named constants - profileWidthRatio/regionWidthRatio for 2/3 ratio in compact mode - minViewportHeight for viewport minimum height Addresses Claude bot review feedback on PR #151 * fix(header): use max() for availableWidth floor instead of fallback Previous logic incorrectly expanded width to 60 when terminal was narrow, causing overflow. Now uses max() to enforce minimum floor.
PR Review: v0.14.0 - Compact Header ModeSummaryThis PR adds a compact header mode feature that allows users to toggle between a 5-line header (normal) and a 1-2 line header (compact) using Code Quality & Best Practices ✅Strengths:
Minor improvements needed:
Potential Bugs & Issues
|
Summary
Ctrl+E--compact/--no-compactCLI flagscompact_headerconfig setting with autosave supportChanges
CompactHeaderChangedMsgmessage type