summaryrefslogtreecommitdiff
path: root/docs/tags.md
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-09-28 16:47:26 -0300
committerGabriel Schneider <[email protected]>2026-10-01 00:12:15 -0300
commit2663a4d1b3170cb2a4dca5e6f1f3535f44b30e44 (patch)
tree070aca7142684fe4c1c646e0fbd4d592951221dd /docs/tags.md
parenta007457cb007b03f310bca55c339e8cd5d9baafc (diff)
downloadpardes-2663a4d1b3170cb2a4dca5e6f1f3535f44b30e44.tar.gz
pardes-2663a4d1b3170cb2a4dca5e6f1f3535f44b30e44.zip
No panic from a notice wider than its band, or from the rest of its class
The showcase GUI died in joinNotice on a long shader-error notice: with the tagline narrower than the body, the band hides more columns (skip) than a long message has padding (pad), and `skip..@min(pad, ..)` ran backwards. An audit of draw.zig, Layer.zig, Presentation.zig and animation.zig found the same class elsewhere, all fixed: - a multi-row pane tag or header scrolled for its caret's line sliced a shorter row past its end (paintPaneTag, renderHeaderLayer); - a zero-width column tag kept an earlier frame's viewport, and a column move's clip took it below zero (now saturating, and the early return resets the viewport and caret); - a tag line past 65535 columns overflowed tag_scroll's u16; - a hover left over from a bigger window dashed past the grid; - a border drag over a column that went away, a move preview past a shrunken grid, a column-move rail at zero columns; - Layer.pointAt cast a host's unchecked float metrics (web) to u16; - Text.insertVerticalCursor read past its lines for a cursor whose text changed under it. Regressions: a test of a notice wider than its band through Msg and through setMessage (the Post.zig compile-error path), which panics without the fix; and a monkey over the core at a gui's metrics (random resizes to a cell, long notices, prompts, multi-row tags, clicks, keys), 400 steps in the suite, PARDES_FUZZ_SEED/STEPS for longer runs; 60 seeds x 3000 steps clean. Shared files touched: none of the list (draw.zig, Layer.zig, Text.zig).
Diffstat (limited to 'docs/tags.md')
0 files changed, 0 insertions, 0 deletions