[Wayland-bugs] [Bug 106036] IBM Scrollpoint mouse: libinput mouse scrolling speed insanely fast

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Fri Apr 20 19:01:14 UTC 2018


https://bugs.freedesktop.org/show_bug.cgi?id=106036

--- Comment #6 from peter.ganzhorn at gmail.com ---
I think I figured this out and have a working solution right now like this:

        if (dispatch->wheel.y != 0) {
                wheel_degrees.y = -1 * dispatch->wheel.y *
                                        device->scroll.wheel_click_angle.y;
                if (device->model_flags & EVDEV_MODEL_SCROLLPOINT) {
                        discrete.y = 0;

                        source = LIBINPUT_POINTER_AXIS_SOURCE_CONTINUOUS;
                } else {
                        discrete.y = -1 * dispatch->wheel.y;

                        source = device->scroll.is_tilt.vertical ?
                                LIBINPUT_POINTER_AXIS_SOURCE_WHEEL_TILT:
                                LIBINPUT_POINTER_AXIS_SOURCE_WHEEL;
                }

                evdev_notify_axis(
                        device,
                        time,
                        AS_MASK(LIBINPUT_POINTER_AXIS_SCROLL_VERTICAL),
                        source,
                        &wheel_degrees,
                        &discrete);
                dispatch->wheel.y = 0;
        }

I implemented the same for the x-axis as well.
There is one issue left where I'd like to get your feedback:

libinput-debug-events reports 15° wheel movements as smallest value possible
and easily goes up to around 500° without increasing force on the scrolling
device a lot. Actually hitting only 15° is almost impossible.
This makes scrolling still way too fast, but with the changes I made to
libinput and adding the following to /lib/udev/hwdb.d/70-mouse.hwdb I have
usable results:
mouse:usb:v04b3p3100:*
mouse:usb:v04b3p3103:*
mouse:usb:v04b3p3105:*
mouse:usb:v04b3p3108:*
mouse:usb:v04b3p3109:*
mouse:usb:v14efp6049:*
 MOUSE_WHEEL_CLICK_ANGLE=2
 MOUSE_WHEEL_CLICK_ANGLE_HORIZONTAL=2

This file is not part of the libinput sources, so where could I add this to be
set by default? Without this part the changes I made to libinput don't really
improve usability of the scrollpoint.
Without the changes I made to libinput so far these options do not seem to have
any noticeable effect.

As soon as I know where to put this, I will create a patch against libinput to
add support for the scrollpoint mice for review.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/wayland-bugs/attachments/20180420/ab38e9f1/attachment.html>


More information about the wayland-bugs mailing list