a73x

5cee2d84

docs: require Shift-drag in application mouse parity

a73x   2026-09-06 08:35

Commit message
docs: require Shift-drag in application mouse parity

RETRO.md
Old New
@@ -1229,3 +1229,11 @@ alongside GUI paste and copy feedback. See the upstream explanation at
1229 https://code.claude.com/docs/en/fullscreen#keep-native-text-selection . 1229 https://code.claude.com/docs/en/fullscreen#keep-native-text-selection .
1230 Confirmation of copying is hands-on feedback, 1230 Confirmation of copying is hands-on feedback,
1231 not acceptance of the whole sprint or authorization to end daemon sessions. 1231 not acceptance of the whole sprint or authorization to end daemon sessions.
1232
1233 The user confirmed Shift+drag belongs to the overall mouse feature. It is now
1234 required acceptance for the application mouse/clipboard slice: force native
1235 selection despite application mouse reporting, retain gesture ownership through
1236 release and modifier changes, and prevent reports or text leaking across panes.
1237 The wheel plan records the remaining order: wheel/history first, application
1238 mouse/clipboard next. The latter slice's planner owns carrying these criteria
1239 into implementation, tests and the demo; GUI paste remains deferred.
docs/superpowers/plans/2026-09-06-native-text-selection.md
Old New
@@ -203,3 +203,26 @@ parity must distinguish alternate-screen mode from requested mouse reporting:
203 TUI `Core.forward` already uses `TermModes.appMouse()`. Native application mouse 203 TUI `Core.forward` already uses `TermModes.appMouse()`. Native application mouse
204 forwarding and application clipboard effects are both missing; the pump currently 204 forwarding and application clipboard effects are both missing; the pump currently
205 skips `clipboard_set`. GUI paste stays deferred by the user's clarification. 205 skips `clipboard_set`. GUI paste stays deferred by the user's clarification.
206
207 ## Required follow-up: application mouse and clipboard behavior
208
209 Shift+drag is part of the overall mouse feature, as confirmed by the user; it is
210 required when adding application mouse forwarding, not an optional later polish.
211 The next planned slice is [wheel scrolling](2026-09-06-native-wheel-scrolling.md).
212 The following application mouse/clipboard slice must demonstrate:
213
214 - Normal click/drag reaches applications that request mouse reporting, using
215 coordinates relative to the starting pane. Alternate-screen mode alone does
216 not decide mouse ownership.
217 - Shift+drag forces mux's native selection and copy even when the application
218 requests mouse reporting. No part of that drag reaches the application.
219 - A gesture keeps its chosen owner through motion and release, including modifier
220 changes and crossing another pane; cancellation cannot leave an application
221 with a stuck button or copy text from a different pane.
222 - Application-issued clipboard writes reach the desktop through the existing
223 validated clipboard-effect path. Verify actual PTY mouse reports and an
224 independent clipboard reader, plus a real application's selection/copy flow.
225
226 Owner: the planner and implementer of the application mouse/clipboard slice under
227 parity issue `8b16e26b`. Include the Shift override in that slice's demo and tests
228 before declaring application mouse parity complete. GUI paste remains deferred.
docs/superpowers/plans/2026-09-06-native-wheel-scrolling.md
Old New
@@ -12,6 +12,15 @@ arrow input in an alternate-screen application without mouse reporting, and
12 terminal mouse reports when an application requests them. Match existing TUI 12 terminal mouse reports when an application requests them. Match existing TUI
13 behavior while keeping each pane independent. 13 behavior while keeping each pane independent.
14 14
15 ## Order within the overall mouse feature
16
17 After visible-text selection, this wheel slice is the next planned sprint item.
18 Application click/drag forwarding and application clipboard writes follow it.
19 That slice includes Shift+drag as the required native-selection override; see
20 the [application mouse acceptance criteria](2026-09-06-native-text-selection.md#required-follow-up-application-mouse-and-clipboard-behavior).
21 Wheel delivery alone does not complete the overall mouse feature. Preserve native
22 selection and copy throughout these slices; GUI paste remains deferred.
23
15 ## Observable acceptance 24 ## Observable acceptance
16 25
17 - Three panes on two daemons, including off-origin and unfocused panes. Wheel 26 - Three panes on two daemons, including off-origin and unfocused panes. Wheel