In short: Image file drag and drop does only produce file URLs, either with security scope-able bookmarks or plain file paths. Dragging an image file from Finder onto an
NSTextView will trigger
performDragOperation(_:). You get access to
NSDraggingInfo there and can inspect available content. Its
draggingPasteboard (shortened to
pb here) contains the following data when executed on macOS 12 Monterey:
Continue reading …
Nate Thompson compiled a tutorial on how to implement drag & drop in NSTableView. It’s a good read.
I remember how weird it felt to implement this the first time. Drag & drop is actually realized via the pasteboard. So it’s more like cut and paste with a visual representation. From this you get the ability to put multiple content representations into the pasteboard at once, so the drop container can decide how to handle whatever it receives.