Skip to content

Unify pane borders and clarify text entry - #25

Merged
merefield merged 2 commits into
masterfrom
feat/consistent-view-panes
Oct 12, 2026
Merged

merefield merged 2 commits into
masterfrom
feat/consistent-view-panes

Conversation

@merefield

@merefield merefield commented Oct 12, 2026 •

Copy link
Copy Markdown
Owner

Header boxes previously used a separate background, and most content views lacked the rounded main-pane border already used by the topic list. This change gives every content view a consistent framed main pane and makes content headers share the main background.

  • Omit headers with no visible content and put their title on the main pane border.
  • Put the editable Search query in the header, reserving the main pane for results.
  • Give Search, title-entry, and composer fields a subdued theme-aware background across their entire editable area, including blank cells. Refresh input styling when the theme changes.
  • Use shared content coordinates for wrapping, editor dimensions, mouse targets, and expanded Kitty/Sixel/symbol images. Image views reflow inside their border after resizing.
  • Make the Windows installer fixture wait for HTTP readiness for up to 30 seconds, publish its port atomically, quote temporary paths, and include server output in startup failures.
  • Preserve typed query punctuation without applying display-header separator formatting to editable rows.

Validation:

  • go test -race -timeout 10m ./... and go vet ./... pass.
  • All six supported platform/architecture builds pass.
  • Regression tests inspect complete frames for populated/empty views, narrow/short terminals, box counts, click targets, Search field location, input background/reset boundaries across all three color modes, and Kitty placeholder selection.
  • Validated the Python HTTP fixture with a forced six-second startup delay, paths containing spaces, and atomic port publication. Windows validates the complete PowerShell installer flow in CI.
  • Reviewed a visual preview generated from the actual Search, topic, and composer frames. Live terminal graphics verification remains outstanding.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

Two moderate-severity issues remain in editor width handling and zero-content Kitty image rendering.

0 open findings

What changed in this PR

This PR standardizes framed content panes, editable-field styling, header behavior, and image layout across the terminal UI.

Changes:

  • Adds shared pane geometry and rounded borders.
  • Moves search and title inputs into pane headers.
  • Refreshes theme-aware input backgrounds.
  • Reflows content, mouse targets, and images within pane bounds.
  • Adds extensive layout and styling regression tests.

Outstanding findings: composer.go should pass the full inner width to SetWidth; images.go should handle zero-content panes before entering the Kitty image path. Both are moderate-severity findings (1 vote each).

File Summary
README.md Documents pane and input styling changes.
internal/​ui/​ui.go Applies shared pane layout to topic lists.
internal/​ui/​ui_test.go Updates navigation and style expectations.
internal/​ui/​topic.go Uses pane geometry for topic content and targets.
internal/​ui/​tabs.go Supports empty headers and literal rows.
internal/​ui/​style.go Adds pane, input, and header styling.
internal/​ui/​startup_load.go Frames startup loading content.
internal/​ui/​search_notifications.go Frames search and notification views.
internal/​ui/​pane.go Provides shared pane geometry and drawing.
internal/​ui/​pane_test.go Tests pane layouts and field backgrounds.
internal/​ui/​images.go Reflows images within panes; has an outstanding zero-content Kitty-path issue.
internal/​ui/​errors.go Frames error content.
internal/​ui/​composer.go Updates editor layout and theme refresh; has an outstanding width-handling issue.
internal/​ui/​background_test.go Validates background behavior across themes.

🧠 Review effort: Lite


💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@merefield
merefield merged commit 1047169 into master Oct 12, 2026
4 checks passed
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