diff options
| author | user <user@clank> | 2026-08-18 16:20:37 +0200 |
|---|---|---|
| committer | user <user@clank> | 2026-08-18 16:20:37 +0200 |
| commit | 13967ce08d440a850665c81d407e710c1c77394d (patch) | |
| tree | 673e1fa8208474bceee1f00a6532f280335de879 /docs/panes.md | |
| parent | sl0ppty: the split arrow belongs on the button (diff) | |
| download | slosh-13967ce08d440a850665c81d407e710c1c77394d.tar.gz slosh-13967ce08d440a850665c81d407e710c1c77394d.tar.xz slosh-13967ce08d440a850665c81d407e710c1c77394d.zip | |
sl0ppty: aim the top handle at the middle, and stop ruling through the row
Two faults that fed each other, and only the second one made the first visible.
The handle went to the **widest** free run of the top row. A centred title leaves
two runs of nearly the same width, so a one-cell difference nobody can see threw
the handle out toward a corner: on a 116-column pane whose row middle is 60, it
sat at 85. Placement should be stated in terms of where the thing wants to be,
not of the leftovers it is allowed to occupy -- so it now aims at the middle of
the row and slides into the nearest run that is free. Nothing in the way: centred,
like the other three sides. A title holding the middle: hard against the title,
where the eye already is. That same pane now puts it at 64.
The armed edge also ruled the heavy line straight across the whole border, over
the pane's name, its buttons, its scroll indicator and a dead pane's epitaph. The
row went unreadable exactly while the pointer was on it -- and the title the
handle had just been placed beside was wiped, which is what turned a merely-off
position into an apparently random one. Each cell of the edge is now painted only
if the hit list says the edge still owns it: the same question the handle asks,
and the one the click will ask.
The epitaph had to start claiming its cells to take part. It answers
`panestatus:` and does nothing when clicked, because an epitaph is not a button;
what it buys is that ` exited: status 3 ` survives a hover over the border it
lives on, next to `[re-run]` and `[close]`, which already survived because they
were buttons.
Verified: `make retest`, **1877 checks measured**, all green. Four new: the handle
is centred on the row when the row is empty, sits against the title when the
title holds the middle, and the armed top edge leaves both the name and the three
buttons legible.
Live on a 116x36 pane, hovering the far left of the top row -- deliberately the
rim, so this is the first stage doing all of it:
╭━━━━━━━━━━━━━━━━━━━ sl0ppty ███▲███━━━━━━━━━━━━━━━━━▬ □ ✕ ╮
and on a dead pane, hovering the bottom handle:
╰ exited: status 3 ━━━━━━━━━━███▼███━━━━━━━━[re-run]━[close]━╯
Diffstat (limited to 'docs/panes.md')
| -rw-r--r-- | docs/panes.md | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/docs/panes.md b/docs/panes.md index b341821..dd1c435 100644 --- a/docs/panes.md +++ b/docs/panes.md @@ -45,9 +45,11 @@ nothing you click can disagree with what is on screen. wall. Resting *on* the handle adds a dashed line where the new boundary will land. The rest of the edge does nothing when clicked. - **The top row is the drag handle, and its handle splits upward.** Clicking a - pane's header to focus it never splits it. On a titled pane the handle sits - wherever the title and the buttons left room, since the title keeps its own - cells for the double-click rename. + pane's header to focus it never splits it. Its handle goes as near the middle + of the row as the row allows: centred when the row is empty, and against the + title when the title is holding the middle, since the title keeps its own cells + for the double-click rename. Arming an edge leaves the name, the buttons and a + dead pane's epitaph legible — the heavy rule goes round them. - **Drag the gap between panes** to move that boundary. Where two gaps cross, drag the crossing to move both at once. - **Drag a pane by its title** onto another to swap them. Everything it could |
