summaryrefslogtreecommitdiff
path: root/lisp/term/x-win.el
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>1994-04-06 04:51:37 +0000
committerRichard M. Stallman <rms@gnu.org>1994-04-06 04:51:37 +0000
commitdc20df9586dd9a33e33ea5fddaca135f2ac654ff (patch)
treec10f0c9137895a24a0b1bebbae1cef31f18e180b /lisp/term/x-win.el
parent31cd83e9449ad163e0db7a79cb392d38958b2879 (diff)
downloademacs-dc20df9586dd9a33e33ea5fddaca135f2ac654ff.tar.gz
emacs-dc20df9586dd9a33e33ea5fddaca135f2ac654ff.tar.bz2
emacs-dc20df9586dd9a33e33ea5fddaca135f2ac654ff.zip
(x-select-enable-clipboard): New variable.
(x-select-text, x-cut-buffer-or-selection-value): Obey it. (x-handle-args): Doc fix.
Diffstat (limited to 'lisp/term/x-win.el')
-rw-r--r--lisp/term/x-win.el16
1 files changed, 14 insertions, 2 deletions
diff --git a/lisp/term/x-win.el b/lisp/term/x-win.el
index dc826b3cc2b..e60759ec59e 100644
--- a/lisp/term/x-win.el
+++ b/lisp/term/x-win.el
@@ -196,8 +196,8 @@
(defvar x-invocation-args nil)
(defun x-handle-args (args)
- "Here the X-related command line options in ARGS are processed,
-before the user's startup file is loaded. They are copied to
+ "Process the X-related command line options in ARGS.
+This is done before the user's startup file is loaded. They are copied to
x-invocation args from which the X-related things are extracted, first
the switch (e.g., \"-fg\") in the following code, and possible values
(e.g., \"black\") in the option handler code (e.g., x-handle-switch).
@@ -542,6 +542,10 @@ This returns ARGS with the arguments that have been processed removed."
(defvar x-cut-buffer-max 20000
"Max number of characters to put in the cut buffer.")
+(defvar x-select-enable-clipboard nil
+ "Non-nil means cutting and pasting uses the clipboard.
+This is in addition to the primary selection.")
+
;;; Make TEXT, a string, the primary X selection.
;;; Also, set the value of X cut buffer 0, for backward compatibility
;;; with older X applications.
@@ -554,6 +558,8 @@ This returns ARGS with the arguments that have been processed removed."
(x-set-cut-buffer text push)
(x-set-cut-buffer "" push))
(x-set-selection 'PRIMARY text)
+ (if x-select-enable-clipboard
+ (x-set-selection 'CLIPBOARD text))
(setq x-last-selected-text text))
;;; Return the value of the current X selection.
@@ -567,6 +573,12 @@ This returns ARGS with the arguments that have been processed removed."
(setq text (x-get-selection 'PRIMARY))
(error (message "%s" c)))
(if (string= text "") (setq text nil))
+
+ (if x-select-enable-clipboard
+ (condition-case c
+ (setq text (x-get-selection 'CLIPBOARD))
+ (error (message "%s" c))))
+ (if (string= text "") (setq text nil))
(or text (setq text (x-get-cut-buffer 0)))
(if (string= text "") (setq text nil))