Use third argument of posn-col-row on Emacs >= 29
* eat.el (eat-term-input-event): Use USE-WINDOW argument of 'posn-col-row' to support text scaling properly, but only on Emacs >= 29 since on Emacs 28 'posn-col-row' takes only one argument.
This commit is contained in:
parent
0cf652a591
commit
ebdbba0c4b
1 changed files with 16 additions and 6 deletions
22
eat.el
22
eat.el
|
@ -4438,7 +4438,9 @@ client process may get confused."
|
|||
(pos (if (memq 'drag modifiers)
|
||||
(event-end mouse)
|
||||
(event-start mouse)))
|
||||
(x-y (posn-col-row pos 'use-window))
|
||||
(x-y (if (< emacs-major-version 29)
|
||||
(posn-col-row pos)
|
||||
(posn-col-row pos 'use-window)))
|
||||
(x (1+ (car x-y)))
|
||||
(y (1+ (cdr x-y)))
|
||||
(button
|
||||
|
@ -4453,7 +4455,9 @@ client process may get confused."
|
|||
(cl-incf b 16))
|
||||
b)))
|
||||
(when ref-pos
|
||||
(let ((ref-x-y (posn-col-row ref-pos 'use-window)))
|
||||
(let ((ref-x-y (if (< emacs-major-version 29)
|
||||
(posn-col-row ref-pos)
|
||||
(posn-col-row ref-pos 'use-window))))
|
||||
(cl-decf x (car ref-x-y))
|
||||
(cl-decf y (cdr ref-x-y))))
|
||||
(when (and (<= 1 x (eat--t-disp-width disp))
|
||||
|
@ -4527,16 +4531,22 @@ client process may get confused."
|
|||
(pred mouse-movement-p)
|
||||
movement)
|
||||
(let* ((pos (event-start movement))
|
||||
(x (1+ (car (posn-col-row pos))))
|
||||
(y (1+ (cdr (posn-col-row pos))))
|
||||
(x-y (if (< emacs-major-version 29)
|
||||
(posn-col-row pos)
|
||||
(posn-col-row pos 'use-window)))
|
||||
(x (1+ (car x-y)))
|
||||
(y (1+ (cdr x-y)))
|
||||
(button
|
||||
(if (car (eat--t-term-mouse-pressed terminal))
|
||||
(+ (car (eat--t-term-mouse-pressed terminal))
|
||||
32)
|
||||
35)))
|
||||
(when ref-pos
|
||||
(cl-decf x (car (posn-col-row ref-pos)))
|
||||
(cl-decf y (cdr (posn-col-row ref-pos))))
|
||||
(let ((ref-x-y (if (< emacs-major-version 29)
|
||||
(posn-col-row ref-pos)
|
||||
(posn-col-row ref-pos 'use-window))))
|
||||
(cl-decf x (car ref-x-y))
|
||||
(cl-decf y (cdr ref-x-y))))
|
||||
(when (and (or (eq (eat--t-term-mouse-mode terminal)
|
||||
'any-event)
|
||||
(/= button 35))
|
||||
|
|
Loading…
Add table
Reference in a new issue