Function: x-dnd-handle-file-name
x-dnd-handle-file-name is a byte-compiled function defined in
x-dnd.el.gz.
Signature
(x-dnd-handle-file-name WINDOW ACTION STRING)
Documentation
Convert file names to URLs and call dnd-handle-one-url.
WINDOW is the window where the drop happened. STRING is the file names as a string, separated by nulls.
Source Code
;; Defined in /usr/src/emacs/lisp/x-dnd.el.gz
(defun x-dnd-handle-file-name (window action string)
"Convert file names to URLs and call `dnd-handle-one-url'.
WINDOW is the window where the drop happened.
STRING is the file names as a string, separated by nulls."
(let ((uri-list (split-string string "[\0\r\n]" t))
(coding (or file-name-coding-system
default-file-name-coding-system))
retval)
(dolist (bf uri-list)
;; If one URL is handled, treat as if the whole drop succeeded.
(if coding (setq bf (encode-coding-string bf coding)))
(let* ((file-uri (concat "file://"
(mapconcat 'url-hexify-string
(split-string bf "/") "/")))
(did-action (dnd-handle-one-url window action file-uri)))
(when did-action (setq retval did-action))))
retval))