summaryrefslogtreecommitdiff
path: root/test/syntax.zig
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-09-22 09:31:11 -0300
committerGabriel Schneider <[email protected]>2026-10-01 00:12:14 -0300
commita1d5ee19a648abc65b557dffa14a3b2f70577286 (patch)
treeef36c11168bcc2f7bbb9b7a6a29519c7e0882fab /test/syntax.zig
parent43b9d696f9e25ad7589527b91a74666e71ff0472 (diff)
downloadpardes-a1d5ee19a648abc65b557dffa14a3b2f70577286.tar.gz
pardes-a1d5ee19a648abc65b557dffa14a3b2f70577286.zip
Notices become chips that float over the body, not rows taken from it
A notice is an overlay now, which is the one place it is NOT like the tree-sitter context: it takes no row from the body and moves no text. Each one is a chip as wide as its own message plus a blank cell either side, anchored to the pane right edge on the body top rows. The rest of each of those rows is ordinary body text that still reads and still answers a click -- Notices.left records where each chip starts, and the hit test refuses only the cells it covers rather than the whole row. The width is counted in GRID columns rather than scaled into the tagline face the chip is drawn in, because the canonical grid is what a terminal client draws and a chip narrower than its own text there would clip it; the narrower tagline face simply leaves a little more room inside the chip. The tag layer takes the geometry the grid pass already chose, so the two cannot disagree and the GUI skipping the cells a tag layer covers leaves no stub behind. Pane.body_offset is gone with the reservation it existed for, and bodyTop takes only a rect. The body layer keeps every row it had, the scrollbar runs the full body again, and the GUI smooth-scroll extents go back to the pane. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
Diffstat (limited to 'test/syntax.zig')
0 files changed, 0 insertions, 0 deletions