<!--
{
  "availability" : [
    "macOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "AppKit",
  "identifier" : "/documentation/AppKit/NSDraggingInfo/draggingSourceOperationMask",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Property",
  "symbol" : {
    "kind" : "Instance Property",
    "modules" : [
      "AppKit"
    ],
    "preciseIdentifier" : "c:objc(pl)NSDraggingInfo(py)draggingSourceOperationMask"
  },
  "title" : "draggingSourceOperationMask"
}
-->

# draggingSourceOperationMask

Information about the dragging operation and the data it contains.

```
@MainActor var draggingSourceOperationMask: NSDragOperation { get }
```

## Discussion

The dragging source ([`NSDraggingSource`](/documentation/AppKit/NSDraggingSource)) declares the dragging operation mask through [`draggingSession(_:sourceOperationMaskFor:)`](/documentation/AppKit/NSDraggingSource/draggingSession(_:sourceOperationMaskFor:)).

If the source doesn’t permit dragging operations, the value of the dragging source operation mask is [`NSDragOperationNone`](/documentation/AppKit/NSDragOperation/NSDragOperationNone), or the empty option set in Swift (`[]`). If the source permits dragging operations, the value of the dragging source operation mask is the result of a bitwise OR operation on one or more of the [`NSDragOperation`](/documentation/AppKit/NSDragOperation) constants in Objective-C, or an option set containing one or more of the [`NSDragOperation`](/documentation/AppKit/NSDragOperation) constants in Swift.

If the user holds down a modifier key during the dragging session and the dragging source allows modifier keys to affect the drag operation, the system combines the dragging source operation mask with the value that corresponds to the modifier key. You control whether the modifier keys can affect the drag operation using the dragging source’s [`ignoreModifierKeys(for:)`](/documentation/AppKit/NSDraggingSource/ignoreModifierKeys(for:)) method.

|Modifier Key      |Dragging Operation                                                  |
|------------------|--------------------------------------------------------------------|
|Option            |``doc://com.apple.appkit/documentation/AppKit/NSDragOperation/copy``|
|Command           |``doc://com.apple.appkit/documentation/AppKit/NSDragOperation/move``|
|Option and Command|``doc://com.apple.appkit/documentation/AppKit/NSDragOperation/link``|

---

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)