button scrolling for absolute devices
Submitted by Alon Bar-Lev
Assigned to Wayland bug list
Link to original bug (#106674)
Description
Hello,
I am trying to migrate from evdev configuration which works fine recent years to libinput configuration.
Functionality: When middle bottom is pressed and primary pointer is moved up/down a scroll events are sent, while if bottom is pressed shortly it acts as middle button (paste).
Use cases:
- Track point support: middle button + movement in trackpoint = scroll
- Any mouse configuration, in this case the track point is exposed to the Linux as USB tablet mouse, however, functionality should remain.
The current evdev configuration which is working fine:
Section "InputClass"
Identifier "MyMouse"
MatchProduct "VirtualBox USB Tablet"
MatchIsPointer "on"
Option "EmulateWheel"
Option "EmulateWheelButton" "2"
Option "EmulateWheelInertia" "500"
EndSection
I tried the following configuration, with and without the ScrollMethod properties:
Section "InputClass"
Identifier "MyMouse"
MatchProduct "VirtualBox USB Tablet"
MatchIsPointer "on"
Option "NaturalScrolling" "true"
Option "ScrollMethod" "button"
Option "ScrollButton" "2"
EndSection
However, I get no affect in xinput, nor do I see difference if I manually set "libinput Natural Scrolling Enabled" property.
Refer to bug#93617 in which we previously also discussed this for evdev, please note bug#93617 comment#25 for the alternative to make absolute device scroll user friendly, per the distance of the pointer from the base point.
Thanks!