Skip to content

Commit 13af502

Browse files
nedtwiggclaude
andcommitted
Document mouse/trackpad click handling in Gesture mode
Spec that primary mouse/trackpad clicks (alongside touches and pen presses) open the radial menu so /tether is usable on desktop without a touchscreen, and clarify that non-primary buttons remain unhandled. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent b8b50ac commit 13af502

1 file changed

Lines changed: 11 additions & 1 deletion

File tree

docs/specs/mobile-ui.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ Touch modes:
8787

8888
| Mode | Button label | Icon | Availability | Behavior |
8989
| --- | --- | --- | --- | --- |
90-
| Gestures | `Gestures` | `HandPointingIcon` | Always available | Pane-content touches open the Gesture mode radial menu. |
90+
| Gestures | `Gestures` | `HandPointingIcon` | Always available | Pane-content touches, pen presses, and primary mouse/trackpad clicks open the Gesture mode radial menu. |
9191
| Text selection | `Select` | `CursorTextIcon` | Always available | Touches are reserved for terminal text selection and copy/paste. If the TUI is capturing mouse events, MouseTerm activates mouse override for the active pane. |
9292
| Cursor | `Cursor` | `CursorClickIcon` | Only when the active TUI is capturing mouse events | Touches are passed through as terminal mouse/cursor input. |
9393

@@ -96,6 +96,16 @@ Default touch mode is **Gestures**.
9696
If Cursor mode is active and the active pane stops capturing mouse events, the
9797
selector must fall back to Gestures.
9898

99+
Gesture mode intentionally consumes primary mouse/trackpad clicks in addition to
100+
touch input. This keeps the `/tether` prototype usable in desktop browsers,
101+
narrow desktop viewports, and Storybook without a touchscreen. A primary
102+
mouse/trackpad click in pane content must start radial gesture handling, call
103+
`preventDefault()`, stop propagation, and capture that pointer; it is not passed
104+
through to the embedded `Wall`, xterm, or dockview for focus, selection, or pane
105+
interaction. Non-primary mouse buttons are ignored by gesture handling so their
106+
browser or host behavior can continue. Users who want terminal selection or TUI
107+
mouse input must choose Select or Cursor mode explicitly.
108+
99109
## 5. Gesture Mode
100110

101111
Gesture mode is the default pane-content touch behavior. Tapping the pane content

0 commit comments

Comments
 (0)