<!--
{
  "documentType" : "article",
  "framework" : "AppKit",
  "identifier" : "/documentation/AppKit/gestures",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "Gestures"
}
-->

# Gestures

Encapsulate your app’s event-handling logic in gesture recognizers so that you can reuse that code throughout your app.

## Topics

### Standard Gestures

[`NSClickGestureRecognizer`](/documentation/AppKit/NSClickGestureRecognizer)

A discrete gesture recognizer that tracks a specified number of mouse clicks.

[`NSPressGestureRecognizer`](/documentation/AppKit/NSPressGestureRecognizer)

A discrete gesture recognizer that tracks whether the user holds down a mouse button for a minimum amount of time before releasing it.

[`NSPanGestureRecognizer`](/documentation/AppKit/NSPanGestureRecognizer)

A continuous gesture recognizer for panning gestures.

[`NSRotationGestureRecognizer`](/documentation/AppKit/NSRotationGestureRecognizer)

A continuous gesture recognizer that tracks two trackpad touches moving opposite each other in a circular motion.

[`NSMagnificationGestureRecognizer`](/documentation/AppKit/NSMagnificationGestureRecognizer)

A continuous gesture recognizer that tracks a pinch gesture that magnifies content.

### Custom Gestures

[`NSGestureRecognizer`](/documentation/AppKit/NSGestureRecognizer)

An object that monitors events and calls its action method when a predefined sequence of events occur.

[`NSGestureRecognizerDelegate`](/documentation/AppKit/NSGestureRecognizerDelegate)

A set of methods for fine-tuning a gesture recognizer’s behavior.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)