1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-21 06:55:39 +00:00

Fix dragging mode line on text terminals with a mouse (bug#67457)

* lisp/xt-mouse.el (xterm-mouse-translate-1): Fix the 'event-kind'
property of mouse-movement symbols emitted by xt-mouse.
* lisp/term/linux.el (terminal-init-linux): Call 'gpm-mouse-mode'
to set up the terminal for the mouse, if needed.
This commit is contained in:
Jared Finder 2023-12-09 10:17:05 +02:00 committed by Eli Zaretskii
parent 12daf386f3
commit 46fe7a17f5
2 changed files with 12 additions and 4 deletions

View File

@ -13,9 +13,13 @@
;; Compositions confuse cursor movement.
(setq-default auto-composition-mode "linux")
;; Ensure additional terminal setup is done when `gpm-mouse-mode' is
;; enabled.
(ignore-errors (when gpm-mouse-mode (gpm-mouse-mode 1)))
;; Don't translate ESC TAB to backtab as directed by ncurses-6.3.
(define-key input-decode-map "\e\t" nil)
;; Make Latin-1 input characters work, too.
;; Meta will continue to work, because the kernel turns that into Escape.

View File

@ -63,9 +63,13 @@ https://invisible-island.net/xterm/ctlseqs/ctlseqs.html)."
(is-move (eq 'mouse-movement ev-command))
(is-down (string-match "down-" (symbol-name ev-command))))
;; Mouse events symbols must have an 'event-kind property with
;; the value 'mouse-click.
(when ev-command (put ev-command 'event-kind 'mouse-click))
;; Mouse events symbols must have an 'event-kind property set.
;; Most of them use the value 'mouse-click, but 'mouse-movement has
;; a different value. See head_table in keyboard.c. (bug#67457)
(when ev-command (put ev-command 'event-kind
(if (eq ev-command 'mouse-movement)
'mouse-movement
'mouse-click)))
(cond
((null event) nil) ;Unknown/bogus byte sequence!