Skip to content

0.17 phase 4 / PR C — TUI: adaptive layout, scroll, filter#143

Open
StanMarek wants to merge 1 commit into
masterfrom
feat/0.17-tui-adaptive-layout-and-filter
Open

0.17 phase 4 / PR C — TUI: adaptive layout, scroll, filter#143
StanMarek wants to merge 1 commit into
masterfrom
feat/0.17-tui-adaptive-layout-and-filter

Conversation

@StanMarek
Copy link
Copy Markdown
Owner

Summary

  • config edit adapts: 3-pane at width >=100, 2-pane >=60, 1-pane below.
    Preview pane collapsible (p) at medium widths.
  • Field list now uses Paragraph::scroll with offset state; PgUp/PgDn/
    Home/End scroll it. Long sections no longer silently clip.
  • / opens a filter prompt; key + help substring matched
    case-insensitively. Esc clears.
  • Footer shows "Matched N / M fields" while filtered.

Test plan

  • cargo test --workspace green (all crates; tui crate alone runs 81 tests including 17 new ones).
  • filter_narrows_field_list and scroll_offset_clamped_to_field_count
    cover the new state.
  • Headless render smoke via ratatui::backend::TestBackend at 30, 50,
    80, 120 cols, plus the filtered + FilterInput prompt variants —
    every layout branch in render() exercised end-to-end.
  • Manual smoke (resize a real terminal): not done by me; flagging
    explicitly per CLAUDE.md ("if you can't test the UI, say so
    explicitly rather than claiming success"). The 7 render smoke unit
    tests replace the no-panic side of the manual smoke; visual
    verification still wanted before merge.

Coordination

  • Disjoint from PR A (tui/fields.rs test mod append) and PR B
    (status.rs / main.rs / README.md / SECURITY.md). My only fields.rs
    reference is all_fields() reads from App::new, unchanged.
  • Disjoint from phase 5 (gc-suggest providers, gc-pty handler, specs).

- 3/2/1 pane layouts at width >= 100 / >= 60 / narrow.
- Field list now uses Paragraph scroll offset (PgUp/PgDn/Home/End).
- '/' opens a filter that narrows fields by key/help substring.
- Preview panel becomes collapsible (toggle 'p') at medium widths.
@StanMarek StanMarek changed the title 0.17 TUI: adaptive layout, scroll, filter 0.17 phase 4 / PR C — TUI: adaptive layout, scroll, filter May 27, 2026
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.

1 participant