From 25c09217a0bb2ef721419304d5922d05ae8fc26b Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Sun, 10 Mar 2013 22:56:18 -0400 Subject: [PATCH] * lisp/xt-mouse.el (xterm-mouse-event-read): Remove. (xterm-mouse--read-event-sequence-1000) (xterm-mouse--read-event-sequence-1006): Use read-event instead. --- etc/NEWS | 5 +++++ lisp/ChangeLog | 6 ++++++ lisp/xt-mouse.el | 26 ++++++-------------------- 3 files changed, 17 insertions(+), 20 deletions(-) diff --git a/etc/NEWS b/etc/NEWS index 364dd8bf53a..27218ed8bf0 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -238,6 +238,11 @@ It is layered as: * Incompatible Lisp Changes in Emacs 24.4 +** `read-event' does not return decoded chars in ttys any more. +Just as was the case in Emacs-22 and before, decoding of tty input according to +keyboard-coding-system is not performed in read-event any more. But contrary +to that past, it is still done before input-decode-map/function-key-map/... + ** Removed inhibit-local-menu-bar-menus. ** frame-local variables that affect redisplay do not work any more. diff --git a/lisp/ChangeLog b/lisp/ChangeLog index b609b219fc9..6755f5a9910 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,9 @@ +2013-03-11 Stefan Monnier + + * xt-mouse.el (xterm-mouse-event-read): Remove. + (xterm-mouse--read-event-sequence-1000) + (xterm-mouse--read-event-sequence-1006): Use read-event instead. + 2013-03-10 Stefan Monnier * term/xterm.el (xterm-function-map): Support format used with diff --git a/lisp/xt-mouse.el b/lisp/xt-mouse.el index 9ee6c51c07c..745bca7a2be 100644 --- a/lisp/xt-mouse.el +++ b/lisp/xt-mouse.el @@ -135,20 +135,6 @@ http://invisible-island.net/xterm/ctlseqs/ctlseqs.html)." (terminal-parameter nil 'xterm-mouse-y)))) pos) -;; Read XTerm sequences above ASCII 127 (#x7f) -(defun xterm-mouse-event-read () - ;; We get the characters decoded by the keyboard coding system. Try - ;; to recover the raw character. - (let ((c (read-event))) - (cond ;; If meta-flag is t we get a meta character - ((>= c ?\M-\^@) - (- c (- ?\M-\^@ 128))) - ;; Reencode the character in the keyboard coding system, if - ;; this is a non-ASCII character. - ((>= c #x80) - (aref (encode-coding-string (string c) (keyboard-coding-system)) 0)) - (t c)))) - (defun xterm-mouse-truncate-wrap (f) "Truncate with wrap-around." (condition-case nil @@ -167,7 +153,7 @@ http://invisible-island.net/xterm/ctlseqs/ctlseqs.html)." ;; Normal terminal mouse click reporting: expect three bytes, of the ;; form . Return a list (EVENT-TYPE X Y). (defun xterm-mouse--read-event-sequence-1000 () - (list (let ((code (- (xterm-mouse-event-read) 32))) + (list (let ((code (- (read-event) 32))) (intern ;; For buttons > 3, the release-event looks differently ;; (see xc/programs/xterm/button.c, function EditorButton), @@ -188,19 +174,19 @@ http://invisible-island.net/xterm/ctlseqs/ctlseqs.html)." (setq xterm-mouse-last code) (format "down-mouse-%d" (+ 1 code)))))) ;; x and y coordinates - (- (xterm-mouse-event-read) 33) - (- (xterm-mouse-event-read) 33))) + (- (read-event) 33) + (- (read-event) 33))) ;; XTerm's 1006-mode terminal mouse click reporting has the form ;;