summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lisp/ChangeLog5
-rw-r--r--lisp/mouse.el11
2 files changed, 14 insertions, 2 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index d61c11b4ef5..dee217104db 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
+2010-08-14 Eli Zaretskii <eliz@gnu.org>
+
+ * mouse.el (mouse-yank-primary): Fix mouse-2 on MS-Windows and
+ MS-DOS. (Bug#6689)
+
2010-08-13 Jan Djärv <jan.h.d@swipnet.se>
* menu-bar.el (menu-bar-set-tool-bar-position): New function.
diff --git a/lisp/mouse.el b/lisp/mouse.el
index 3bc3fcefa80..89a136434d9 100644
--- a/lisp/mouse.el
+++ b/lisp/mouse.el
@@ -1265,10 +1265,17 @@ regardless of where you click."
;; the middle of an active region.
(deactivate-mark))
(or mouse-yank-at-point (mouse-set-point click))
- (let ((primary (x-get-selection 'PRIMARY)))
+ (let ((primary
+ (cond
+ ((fboundp 'x-get-selection-value) ; MS-DOS and MS-Windows
+ (or (x-get-selection-value)
+ (x-get-selection 'PRIMARY)))
+ ;; FIXME: What about xterm-mouse-mode etc.?
+ (t
+ (x-get-selection 'PRIMARY)))))
(if primary
(insert primary)
- (error "No primary selection"))))
+ (error "No selection is available"))))
(defun mouse-kill-ring-save (click)
"Copy the region between point and the mouse click in the kill ring.