1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-23 10:34:07 +00:00

(x-get-selection): If the string returned by

x-get-selection-internal has text property `foreign-selection',
decode it while preserving that property.
This commit is contained in:
Kenichi Handa 2003-06-17 10:54:39 +00:00
parent 0c6db68bc0
commit f147fd76db

View File

@ -38,7 +38,18 @@ how to convert the data.
TYPE may be `SECONDARY' or `CLIPBOARD', in addition to `PRIMARY'.
DATA-TYPE is usually `STRING', but can also be one of the symbols
in `selection-converter-alist', which see."
(x-get-selection-internal (or type 'PRIMARY) (or data-type 'STRING)))
(let ((data (x-get-selection-internal (or type 'PRIMARY)
(or data-type 'STRING)))
coding)
(when (and (stringp data)
(setq data-type (get-text-property 0 'foreign-selection data)))
(setq coding (if (eq data-type 'UTF8_STRING)
'utf-8
(or next-selection-coding-system
selection-coding-system))
data (decode-coding-string data coding))
(put-text-property 0 (length data) 'foreign-selection data-type data))
data))
(defun x-get-clipboard ()
"Return text pasted to the clipboard."