aboutsummaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
authoruser <user@clank>2026-08-11 21:30:00 +0200
committeruser <user@clank>2026-08-11 21:30:00 +0200
commit568c45ba47dd27c4fdfcf6bd8303beeb853b93d4 (patch)
tree00e3581fdb0ee1779c2b853940d06e770102e8fd /README.md
parentsl0p: keep plugin panes pinned when synthesizing a layout (diff)
downloadsl0ppij-568c45ba47dd27c4fdfcf6bd8303beeb853b93d4.tar.gz
sl0ppij-568c45ba47dd27c4fdfcf6bd8303beeb853b93d4.tar.xz
sl0ppij-568c45ba47dd27c4fdfcf6bd8303beeb853b93d4.zip
sl0p: stop hide_default_pane_names blanking the plugin API
`hide_default_pane_names` is a frame-rendering option, but it was applied inside current_title() -- which is also what fills PaneInfo.title. Every plugin that lists panes therefore received an empty string for any pane whose program had never set a title. For the bundled session manager that is untidy. For a fuzzy pane finder it is broken: the rows are identical AND unsearchable, so the plugin's whole purpose stops working. The blanking moves to the frame, which already had a blank_title concept, and current_title() goes back to reporting a real title to everything that asks. Frames still show nothing for an unnamed pane, named panes still show their name, and PaneInfo reports "Pane #N" again. Changes a value rather than adding a field, so it needs no protobuf regeneration. Only observable without a shell that sets a title: verified by disabling the zsh hook, where the pane finder previously listed three identical blank rows and now lists Pane #1/#2/#3. That masking is also why this went unnoticed -- and why I flagged it twice without confirming it was actually reachable.
Diffstat (limited to 'README.md')
-rw-r--r--README.md5
1 files changed, 5 insertions, 0 deletions
diff --git a/README.md b/README.md
index 3d8d73d6..56d1355b 100644
--- a/README.md
+++ b/README.md
@@ -147,6 +147,11 @@ Two deliberate behaviours:
It protected little in any case: expanding applies `BASE` or a grid, so a
manual arrangement is replaced by a collapse/expand round trip either way.
+Note this affects **frame rendering only**. Panes still report their `Pane #N`
+placeholder to the plugin API, so anything that lists panes — the session
+manager, a pane finder — can still label and search them. Blanking it there too
+left such plugins with rows they could neither identify nor fuzzy-match.
+
### Capping the stacked-pane picker
A stack reserves one row per member plus a padding row, so a deep stack spends