changeset 109781:c89afd5304b0

Fix bug #6689 with mouse-2 pasting on Windows. mouse.el (mouse-yank-primary): On MS-Windows and MS-DOS, call x-get-selection-value in preference to x-get-selection.
author Eli Zaretskii <eliz@gnu.org>
date Sat, 14 Aug 2010 18:41:22 +0300
parents 300a489dd304
children fe1680d2025e
files lisp/ChangeLog lisp/mouse.el
diffstat 2 files changed, 14 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Sat Aug 14 15:55:04 2010 +0300
+++ b/lisp/ChangeLog	Sat Aug 14 18:41:22 2010 +0300
@@ -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.
--- a/lisp/mouse.el	Sat Aug 14 15:55:04 2010 +0300
+++ b/lisp/mouse.el	Sat Aug 14 18:41:22 2010 +0300
@@ -1265,10 +1265,17 @@
     ;; 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.