Function: org-setup-yank-dnd-handlers
org-setup-yank-dnd-handlers is a byte-compiled function defined in
org.el.gz.
Signature
(org-setup-yank-dnd-handlers)
Documentation
Setup the yank-media and DND handlers for buffer.
Source Code
;; Defined in /usr/src/emacs/lisp/org/org.el.gz
;;; Yank media handler and DND
(defun org-setup-yank-dnd-handlers ()
"Setup the `yank-media' and DND handlers for buffer."
(let ((handler (if (>= emacs-major-version 30)
#'org--dnd-multi-local-file-handler
#'org--dnd-local-file-handler)))
(setq-local dnd-protocol-alist
(append
(list (cons "^file:///" handler)
(cons "^file:/[^/]" handler)
(cons "^file:[^/]" handler))
dnd-protocol-alist)))
(when (fboundp 'yank-media-handler)
(yank-media-handler "image/.*" #'org--image-yank-media-handler)
;; Looks like different DEs go for different handler names,
;; https://larsee.com/blog/2019/05/clipboard-files/.
(yank-media-handler "x/special-\\(?:gnome\\|KDE\\|mate\\)-files"
#'org--copied-files-yank-media-handler))
(when (boundp 'x-dnd-direct-save-function)
(setq-local x-dnd-direct-save-function #'org--dnd-xds-function)))