Skip to content

Hold pinches until Loop accepts them - #1185

Draft
jvanderen1 wants to merge 2 commits into
mrkai77:developfrom
jvanderen1:fix/trackpad-gesture-event-leak
Draft

jvanderen1 wants to merge 2 commits into
mrkai77:developfrom
jvanderen1:fix/trackpad-gesture-event-leak

Conversation

@jvanderen1

Copy link
Copy Markdown
Contributor

Description

Builds on the scroll hold in #1176. A bound pinch or spread now holds the zoom events the same way, including both Show Desktop and Launchpad, because the first sample can point the wrong way. Maximize is selected once the pinch is recognizable, instead of waiting for a larger step that made a visible gesture do nothing on lift. Pinching back inside that first ring cancels it.

How has this been tested?

  • Four-finger spread selects Maximize when the teal debug ring meets the green ring, and lifting applies it without Show Desktop
  • Pinching back inside the green ring clears the preview, and spreading past it again selects Maximize
  • A bound three-finger swipe moves the window without also scrolling the page
  • Unbound system gestures (Mission Control, App Exposé, Spaces) still finish
  • Turning Trackpad gestures off returns those swipes to macOS, and clicks and typing still work

Screenshots (if appropriate)

Checklist:

  • I have performed a self-review of my own code
  • I have made corresponding changes to the documentation if applicable
  • I have no unrelated changes in this PR.

Please describe to which degree, if any, an LLM was used in creating this pull request.

An LLM drafted the implementation and the stress-test notes in docs/trackpad-gesture-stress-test.md. The behavior was then exercised locally on macOS.

Made with Cursor

jvanderen1 and others added 2 commits October 19, 2026 00:08
…een ring.

A bound pinch or spread keeps Show Desktop from starting. Maximize is chosen once the pinch is recognizable, and pinching back inside that ring cancels it.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant