Commit a4812a2
feat(client): the three list pickers adopt the chrome type ramp (UI/UX v3 P4e) (#98)
P4b deferred the command palette, host manager and macro picker as "safe in
principle, deferred to keep the diff reviewable". Measuring them found one
thing that was not safe.
Both list pickers aligned their two columns with `{:<20}` / `{:<22}` — a count
of characters, which lines up only because the chrome borrows the terminal's
monospace font. That is the assumption the ramp removes, and it was already
broken for any name past the pad width and for CJK names. `name_column_width`
replaces it: the widest measured name plus a gap, clamped so the detail column
keeps a floor, so a long name shortens nothing but its own column.
Two more defects the migration closes:
- None of the three truncated, so a long palette action or host name drew past
the panel edge. Every row now goes through `draw_picker_run`, which
truncates and draws from one measurement — the pickers' `draw_row_run`.
- The selection marker moved out of the label. `"> "` and `" "` are the same
width only in a monospace font, so a prefixed marker would have shifted every
selected row's text sideways; it is its own run now and both states start
their label at the same x.
No hit-region work, for the same reason the dialog buttons needed none: none of
the three pickers is mouse-hit-tested at all — `mouse.rs` does not mention
`palette`, `host_manager` or `macro_picker`. Panel sizes and row pitch stay in
cells, so nothing moves.
Observed and deliberately not fixed: the host manager and macro picker draw
their row fills and every text colour from hard-coded literals — G11 residue
that the token migration missed, so those rows do not answer to the scheme and
were never contrast-corrected in P5. Changing hue and type size in one PR would
make a visual regression impossible to attribute; it wants its own change.
Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Happy <yesreply@happy.engineering>1 parent f2c22b0 commit a4812a2
4 files changed
Lines changed: 374 additions & 69 deletions
File tree
- docs/plans
- nexterm-client-gpu
- src/renderer/overlay
Lines changed: 40 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
468 | 468 | | |
469 | 469 | | |
470 | 470 | | |
| 471 | + | |
| 472 | + | |
| 473 | + | |
| 474 | + | |
| 475 | + | |
| 476 | + | |
| 477 | + | |
| 478 | + | |
| 479 | + | |
| 480 | + | |
| 481 | + | |
| 482 | + | |
| 483 | + | |
| 484 | + | |
| 485 | + | |
| 486 | + | |
| 487 | + | |
| 488 | + | |
| 489 | + | |
| 490 | + | |
| 491 | + | |
| 492 | + | |
| 493 | + | |
| 494 | + | |
| 495 | + | |
| 496 | + | |
| 497 | + | |
| 498 | + | |
| 499 | + | |
| 500 | + | |
| 501 | + | |
| 502 | + | |
| 503 | + | |
| 504 | + | |
| 505 | + | |
| 506 | + | |
| 507 | + | |
| 508 | + | |
| 509 | + | |
| 510 | + | |
471 | 511 | | |
472 | 512 | | |
473 | 513 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
715 | 715 | | |
716 | 716 | | |
717 | 717 | | |
| 718 | + | |
| 719 | + | |
| 720 | + | |
| 721 | + | |
| 722 | + | |
| 723 | + | |
| 724 | + | |
718 | 725 | | |
719 | 726 | | |
720 | 727 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
| 22 | + | |
22 | 23 | | |
23 | 24 | | |
24 | 25 | | |
| |||
0 commit comments