aboutsummaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
authoruser <user@clank>2026-08-14 13:59:05 +0200
committeruser <user@clank>2026-08-14 13:59:05 +0200
commit4bb2bb5f05dda628722ae363fa4580aa69f37e7c (patch)
tree4c06be8b88295a266405a9ec28e67993e4936fae /README.md
parentsl0ppty: drag greys the other panes, and dim_unfocused (diff)
downloadslosh-4bb2bb5f05dda628722ae363fa4580aa69f37e7c.tar.gz
slosh-4bb2bb5f05dda628722ae363fa4580aa69f37e7c.tar.xz
slosh-4bb2bb5f05dda628722ae363fa4580aa69f37e7c.zip
sl0ppty: dashed borders and a deeper push-back while dragging
Two changes to the same moment, on opposite sides of the chrome boundary. Every pane that is not being dragged now draws a dashed border, because every one of them is somewhere the pane could be dropped and a dashed frame says so without needing a legend. The pane in your hand keeps a solid one, so the two states are distinguishable by shape and not only by colour — which matters on a terminal whose palette makes the greying subtle, and to anyone who would not see the greying at all. The pane actually under the pointer still takes the existing drop-target highlight on top of the dashes: these are all targets, that one is the one you are on. Borders are chrome, so this is not a shader and could not have been. It lives in draw_frame, keyed off the same drag.moved that gates the greying, so a press that turns out to be a click neither greys nor dashes anything. The greying itself gets a second pass: desaturated *and* darkened, rather than only desaturated. Grey alone still competes for attention at the same brightness, which is what made the dragged pane fail to pop. Two shaders instead of one that does both, because "colourless" and "recessed" are different things to want and want separate knobs — drag_grayscale 200 and drag_dim 140. This is the first thing to actually use the chain, and it is what the chain was for. The knob that used to mean "off" no longer does, and the test that asserted it caught that immediately: drag_grayscale 0 now leaves drag_dim still dimming. Rather than couple them, the test became three — both off, each alone — which is better coverage of a two-knob effect than the single case was of a one-knob one.
Diffstat (limited to 'README.md')
-rw-r--r--README.md12
1 files changed, 7 insertions, 5 deletions
diff --git a/README.md b/README.md
index 6963ac6..0894b1d 100644
--- a/README.md
+++ b/README.md
@@ -58,9 +58,11 @@ it and shows a dashed line where the split would land. Click a pane to focus
it, a tab to switch, `+tab` to open one, a collapsed header to expand it, and a
pane's own buttons to talk to the program inside it. **Drag a pane's title bar
onto another pane to swap them, or drag the gap between two panes to move the
-boundary.** While you drag, every *other* pane greys out so the one you are
-moving lifts off the page. Focus follows the pointer (`focus_follows_mouse`,
-on by default, and it knows when not to).
+boundary.** While you drag, every *other* pane drains to grey and drops in
+brightness while its border turns dashed — they are all places the pane could
+land — and the one in your hand keeps its colour and a solid border, so it
+lifts off the page. Focus follows the pointer (`focus_follows_mouse`, on by
+default, and it knows when not to).
**Double-click a pane's name to rename it**, in the title itself rather than in
a dialog. Enter keeps the new name, Escape abandons it, clicking away keeps it.
@@ -79,8 +81,8 @@ like "copied 13 chars".
**Shaders** are colour passes over a pane's *contents* — never the frame, the
title or the tab strip, so chrome stays legible over a pane that has been
dimmed underneath it. `dim_unfocused` (off by default) fades every pane but
-the focused one; `drag_grayscale` is the greying you get while dragging. Both
-are strengths from 0 to 255. Because a cell's colour is often "whatever the
+the focused one; `drag_grayscale` and `drag_dim` are the greying and the
+recession you get while dragging. All are strengths from 0 to 255. Because a cell's colour is often "whatever the
terminal calls default", shaders resolve those through `theme`'s `default_fg`
and `default_bg` — set them to your terminal's real colours, or a shaded pane
will shift as it turns on. Panes with no shader defer to your terminal exactly