From dfa5bd4d413504a6afff414962c4de70ab093af0 Mon Sep 17 00:00:00 2001 From: Gabriel Schneider Date: Tue, 29 Sep 2026 22:21:56 -0300 Subject: A middle or right sweep over a column's or the workspace's tag runs or looks for what it swept, as a pane tag's does Both headers acted on the press: a middle or right press ran, or looked for, the word under it (or the header's selection when it was on that) at once, so a drag had nothing left to do. A sweep of `echo SWEPT` in a column tag ran a bare `echo`. They have done so since the headers were drawn apart from the panes; it is no regression, and the -l/Restore allocator fix (ompukopz) does not touch it. Now a press on a header holds a HeaderSweep (the column by its serial, or the workspace), which the drag extends, held to the header's row and text as a pane tag's sweep is. It is painted in its button's tint meanwhile, and the release runs what it swept in that header's context; a release that has not moved runs the word or selection a click always did. The other of middle and right cancels it (acme 2-3/3-2); the select button is inert, as a header's command already takes the held selection as its argument. Running on the release, a builtin from a header is announced as one from a pane tag is: the press used to set the announcement and the release clear it at once. find, restore, theme, topbarexec, ttyhelp, tutor and windowops re-recorded for that badge alone. headersweep.snap sweeps the column and workspace tags with the middle button and a word part with the right one, and cancels a sweep; headersweep-restored.snap sweeps both after Dump and Restore. Co-Authored-By: Claude Opus 5.5 --- test/snapshots/headersweep-restored.snap | 42 ++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 test/snapshots/headersweep-restored.snap (limited to 'test/snapshots/headersweep-restored.snap') diff --git a/test/snapshots/headersweep-restored.snap b/test/snapshots/headersweep-restored.snap new file mode 100644 index 00000000..c2918e1a --- /dev/null +++ b/test/snapshots/headersweep-restored.snap @@ -0,0 +1,42 @@ +# headersweep.snap in a session restored from a dump: its column and +# workspace tags are rebuilt, and a middle sweep over each runs what it +# swept, as it does in a fresh session. +start 21 120 -n 3 +wait 8000 Newcol +stable 700 20000 +press middle @Dump 1 +release middle @Dump 1 +stable 700 10000 +press middle @Restore 1 +release middle @Restore 1 +stable 900 15000 +press left 50 2 +release left 50 2 +key space +text echo RE''STORED-COL +key esc +settle 100 +press middle @echo 2 +drag middle @echo+8 2 +stable 300 5000 +snapstyle col-sweeping +drag middle @echo+19 2 +release middle @echo+19 2 +wait 8000 RESTORED-COL +stable 700 15000 +snap col-swept +press left 118 1 +release left 118 1 +key space +text echo RE''STORED-WS +key esc +settle 100 +press middle @echo 1 +drag middle @echo+8 1 +stable 300 5000 +snapstyle ws-sweeping +drag middle @echo+18 1 +release middle @echo+18 1 +wait 8000 RESTORED-WS +stable 700 15000 +snap ws-swept -- cgit v1.3