1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-27 07:37:33 +00:00

Allow customizing the pixel delta of wheel events on X

* lisp/cus-start.el: Add `x-scroll-event-delta-factor'.
* src/xterm.c (handle_one_xevent): Apply scroll event
delta factor to wheel events with pixel data.
(Vx_scroll_event_delta_factor): New user option.
This commit is contained in:
Po Lu 2021-11-29 15:36:15 +08:00
parent a1aa9cbf57
commit 618070d4b4
2 changed files with 10 additions and 0 deletions

View File

@ -826,6 +826,7 @@ since it could result in memory overflow and make Emacs crash."
(x-underline-at-descent-line display boolean "22.1")
(x-stretch-cursor display boolean "21.1")
(scroll-bar-adjust-thumb-portion windows boolean "24.4")
(x-scroll-event-delta-factor mouse float "29.1")
;; xselect.c
(x-select-enable-clipboard-manager killing boolean "24.1")
;; xsettings.c

View File

@ -10045,6 +10045,9 @@ handle_one_xevent (struct x_display_info *dpyinfo,
scroll_unit = pow (FRAME_PIXEL_HEIGHT (f), 2.0 / 3.0);
if (FLOATP (Vx_scroll_event_delta_factor))
scroll_unit *= XFLOAT_DATA (Vx_scroll_event_delta_factor);
if (val->horizontal)
{
inev.ie.arg
@ -15217,4 +15220,10 @@ Otherwise, a wheel event will be sent every time the mouse wheel is
moved. This option is only effective when Emacs is built with XInput
2, with Haiku windowing support, or with NS. */);
x_coalesce_scroll_events = true;
DEFVAR_LISP ("x-scroll-event-delta-factor", Vx_scroll_event_delta_factor,
doc: /* A scale to apply to pixel deltas reported in scroll events.
This option is only effective when Emacs is built with XInput 2
support. */);
Vx_scroll_event_delta_factor = make_float (1.0);
}