diff lisp/prim/mouse.el @ 104:cf808b4c4290 r20-1b4

Import from CVS: tag r20-1b4
author cvs
date Mon, 13 Aug 2007 09:16:51 +0200
parents 54cc21c15cbb
children fe104dbd9147
line wrap: on
line diff
--- a/lisp/prim/mouse.el	Mon Aug 13 09:15:51 2007 +0200
+++ b/lisp/prim/mouse.el	Mon Aug 13 09:16:51 2007 +0200
@@ -1036,13 +1036,25 @@
   (setq default-mouse-track-down-event (copy-event event))
   nil)
 
-(defun default-mouse-track-cleanup-hook ()
+(defun default-mouse-track-cleanup-extents-hook ()
+  (remove-hook 'pre-command-hook 'default-mouse-track-cleanup-extents-hook)
   (let ((extent default-mouse-track-extent))
     (if (consp extent) ; rectangle-p
 	(mapcar 'delete-extent extent)
       (if extent
 	  (delete-extent extent)))))
 
+(defun default-mouse-track-cleanup-hook ()
+  (if zmacs-regions
+      (funcall 'default-mouse-track-cleanup-extents-hook)
+    (let ((extent default-mouse-track-extent)
+	  (func #'(lambda (e) (set-extent-face e 'primary-selection))))
+      (add-hook 'pre-command-hook 'default-mouse-track-cleanup-extents-hook)
+      (if (consp extent)		; rectangle-p
+	  (mapcar func extent)
+	(if extent
+	    (funcall func extent))))))
+
 (defun default-mouse-track-cleanup-extent ()
   (let ((dead-func
 	 (function (lambda (x)