diff options
| author | Ingmar Steen <iksteen@gmail.com> | 2026-09-06 20:34:26 +0200 |
|---|---|---|
| committer | Ingmar Steen <iksteen@gmail.com> | 2026-09-06 20:34:26 +0200 |
| commit | 79a2812808061129bf1449d9f4c3356b36bf0061 (patch) | |
| tree | 773ca521e7432af6e271bfb7f69ff2ab5047f1c9 /docs/scripting.md | |
| parent | graphics: place what a float leaves of an image, not nothing (diff) | |
| download | slosh-79a2812808061129bf1449d9f4c3356b36bf0061.tar.gz slosh-79a2812808061129bf1449d9f4c3356b36bf0061.tar.xz slosh-79a2812808061129bf1449d9f4c3356b36bf0061.zip | |
app: cut the modals, toasts and splash out of the images under them
Overlays are painted over the panes and the compositor needs no more
than that: painted later is on top. A placement is not painted, though
-- the client's terminal draws the image over the cells, in whatever
order they arrived -- so an overlay that is only drawn is an overlay an
image sits on top of. The cheatsheet came up under a picture and was
unreadable through it, in the terminal and in the mirror both.
So a frame now records where its overlays landed, and the graphics pass
takes them out of a placement exactly as it takes out a float: the
modal's box (the cheatsheet and the picker wear the same frame), each
toast, and the splash. The list is rebuilt every compose, so a rect that
is not registered again is one that is no longer on screen.
Only the opaque things are registered. The scrim behind a modal tints
what is behind it rather than hiding it, and an image cannot be tinted
by us at all -- so a picture beside the cheatsheet stays bright while
the text around it is pushed back, which is wrong-looking but a great
deal better than the image disappearing while a modal is up.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CRz3zwZJvBvzsR9k4cj6dd
Diffstat (limited to 'docs/scripting.md')
0 files changed, 0 insertions, 0 deletions
