diff options
| author | blasty <blasty@local> | 2026-07-25 16:08:36 +0200 |
|---|---|---|
| committer | blasty <blasty@local> | 2026-07-25 16:08:36 +0200 |
| commit | 59d9aff1b9c216686fd7b8007aff00b974a17233 (patch) | |
| tree | fdc9cfcacd5c07a9d7ce847dd05092d8e80e9a86 /experiments | |
| parent | docs: refresh PROJECTS.md phase 2/3 to match what shipped (diff) | |
| download | ida-tui-59d9aff1b9c216686fd7b8007aff00b974a17233.tar.gz ida-tui-59d9aff1b9c216686fd7b8007aff00b974a17233.tar.xz ida-tui-59d9aff1b9c216686fd7b8007aff00b974a17233.zip | |
help: lay the cheatsheet out as fluid columns of cards
Five sections stacked vertically ran ~45 rows, so F1 scrolled on any terminal
under ~50 lines. Each section is now its own bordered card (title in the border),
and the cards flow into as many columns as the width allows.
Textual CSS has no media queries, so the column count is computed in compose from
the real app width. Sizing off the WIDEST section would let one long row (Move's
"Ctrl+Home / Ctrl+End") inflate every column and cost a column that would
otherwise fit, so _columns() measures the actual layout instead: chunk the
sections, sum the per-chunk maxima, take the most columns that fit. Keys are
right-aligned per card rather than globally, so a card of short keys stays narrow.
200x50 -> 3 cols 140x44 -> 2 cols 100x36 -> 1 col (scrolls)
160x44 -> 3 cols 120x40 -> 2 cols
The scroll container stays, so a very small terminal degrades to scrolling
instead of clipping — but at any normal size nothing scrolls. The box hugs its
content (width:auto all the way down; VerticalScroll needed width:auto too or it
filled to max-width) and stays centred.
Tried a real CSS Grid first: it collapsed to zero height at narrow widths, and
grid sizing from on_mount read a stale app width. Explicit columns are
predictable. Also shortened one description that was pushing the widest card out.
help scenario now asserts the five cards exist and that the content fits without
a scrollbar. Suite 192/0.
Diffstat (limited to 'experiments')
0 files changed, 0 insertions, 0 deletions
