- (mouse (intern (if (eq type 3)
- (concat "mouse-" (+ 1 last))
- (setq last type)
- (concat "down-mouse-" (+ 1 type))))))
+ (mouse (intern
+ ;; For buttons > 3, the release-event looks
+ ;; differently (see xc/programs/xterm/button.c,
+ ;; function EditorButton), and there seems to come in
+ ;; a release-event only, no down-event.
+ (cond ((>= type 64)
+ (format "mouse-%d" (- type 60)))
+ ((= type 3)
+ (format "mouse-%d" (+ 1 xterm-mouse-last)))
+ (t
+ (setq xterm-mouse-last type)
+ (format "down-mouse-%d" (+ 1 type)))))))