1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-24 07:20:37 +00:00

Support selection type text/plain on wayland

Apps on XWayland need this.

* lisp/select.el (x-select-request-type): Add choice `text/plain'.
(gui--selection-value-internal): Add text/plain to the default list.
This commit is contained in:
Yuuki Harano 2021-03-02 21:08:50 +09:00
parent 9f7fde8dc9
commit 436f21eda1

View File

@ -140,24 +140,26 @@ MS-Windows does not have a \"primary\" selection."
(defcustom x-select-request-type nil
"Data type request for X selection.
The value is one of the following data types, a list of them, or nil:
`COMPOUND_TEXT', `UTF8_STRING', `STRING', `TEXT'
`COMPOUND_TEXT', `UTF8_STRING', `STRING', `TEXT', `text/plain'
If the value is one of the above symbols, try only the specified type.
If the value is a list of them, try each of them in the specified
order until succeed.
The value nil is the same as the list (UTF8_STRING COMPOUND_TEXT STRING)."
The value nil is the same as the list (UTF8_STRING COMPOUND_TEXT STRING text/plain)."
:type '(choice (const :tag "Default" nil)
(const COMPOUND_TEXT)
(const UTF8_STRING)
(const STRING)
(const TEXT)
(const text/plain)
(set :tag "List of values"
(const COMPOUND_TEXT)
(const UTF8_STRING)
(const STRING)
(const TEXT)))
(const TEXT)
(const text/plain)))
:group 'killing)
(defun gui--selection-value-internal (type)
@ -167,7 +169,7 @@ decided by `x-select-request-type'. The return value is already
decoded. If `gui-get-selection' signals an error, return nil."
(let ((request-type (if (memq window-system '(x pgtk))
(or x-select-request-type
'(UTF8_STRING COMPOUND_TEXT STRING))
'(UTF8_STRING COMPOUND_TEXT STRING text/plain))
'STRING))
text)
(with-demoted-errors "gui-get-selection: %S"