# HG changeset patch # User Nick Roberts # Date 1175634977 0 # Node ID 44b6d7a1ef5563ec90611e7d9f50d475b7b50723 # Parent a9bfd916f61a21d04010cd2d39b60498e590564a (xterm-mouse-event): Don't use the left edge of the window if we're outside it e.g menu-bar. diff -r a9bfd916f61a -r 44b6d7a1ef55 lisp/xt-mouse.el --- a/lisp/xt-mouse.el Tue Apr 03 21:15:37 2007 +0000 +++ b/lisp/xt-mouse.el Tue Apr 03 21:16:17 2007 +0000 @@ -49,7 +49,8 @@ ;; Mouse events symbols must have an 'event-kind property with ;; the value 'mouse-click. -(dolist (event-type '(mouse-1 mouse-2 mouse-3)) +(dolist (event-type '(mouse-1 mouse-2 mouse-3 + M-down-mouse-1 M-down-mouse-2 M-down-mouse-3)) (put event-type 'event-kind 'mouse-click)) (defun xterm-mouse-translate (event) @@ -140,6 +141,11 @@ ;; a release-event only, no down-event. (cond ((>= type 64) (format "mouse-%d" (- type 60))) + ((memq type '(8 9 10)) + (setq xterm-mouse-last type) + (format "M-down-mouse-%d" (- type 7))) + ((= type 11) + (format "mouse-%d" (- xterm-mouse-last 7))) ((= type 3) (format "mouse-%d" (+ 1 xterm-mouse-last))) (t @@ -158,7 +164,7 @@ (let ((event (if w (posn-at-x-y (- x left) (- y top) w t) (append (list nil 'menu-bar) - (nthcdr 2 (posn-at-x-y x y w t)))))) + (nthcdr 2 (posn-at-x-y x y)))))) (setcar (nthcdr 3 event) timestamp) event)))))