summaryrefslogtreecommitdiff
path: root/lisp/xt-mouse.el
diff options
context:
space:
mode:
authorFrancesco Potortì <pot@gnu.org>2003-04-07 14:04:51 +0000
committerFrancesco Potortì <pot@gnu.org>2003-04-07 14:04:51 +0000
commita9772fb4137e6ff65f6e0306074b1e9da93c08e4 (patch)
treea6e4fad82b1c8f91b7b3ca75aeb2a3b9e5852b08 /lisp/xt-mouse.el
parent99a4c53c8dcd7f394c310bf29179f889d0b93a24 (diff)
downloademacs-a9772fb4137e6ff65f6e0306074b1e9da93c08e4.tar.gz
(xterm-mouse-event-read): New function.
(xterm-mouse-event): Use it to get xterm sequences above #x7f. Suggested by Aman Bhargava <emacs-bug@amanb.net>.
Diffstat (limited to 'lisp/xt-mouse.el')
-rw-r--r--lisp/xt-mouse.el13
1 files changed, 10 insertions, 3 deletions
diff --git a/lisp/xt-mouse.el b/lisp/xt-mouse.el
index 08e1d39a430..9fad35fb850 100644
--- a/lisp/xt-mouse.el
+++ b/lisp/xt-mouse.el
@@ -112,11 +112,18 @@
(setcdr pos (cons xterm-mouse-x xterm-mouse-y))
pos)
+;; read xterm sequences above ascii 127 (#x7f)
+(defun xterm-mouse-event-read ()
+ (let ((c (read-char)))
+ (if (< c 0)
+ (+ c #x8000000 128)
+ c)))
+
(defun xterm-mouse-event ()
"Convert XTerm mouse event to Emacs mouse event."
- (let* ((type (- (read-char) #o40))
- (x (- (read-char) #o40 1))
- (y (- (read-char) #o40 1))
+ (let* ((type (- (xterm-mouse-event-read) #o40))
+ (x (- (xterm-mouse-event-read) #o40 1))
+ (y (- (xterm-mouse-event-read) #o40 1))
(point (cons x y))
(window (window-at x y))
(where (if window