chiark / gitweb /
hwdb: add MOUSE_WHEEL_CLICK_ANGLE as property
authorPeter Hutterer <peter.hutterer@who-t.net>
Thu, 8 Jan 2015 23:51:40 +0000 (09:51 +1000)
committerPeter Hutterer <peter.hutterer@who-t.net>
Thu, 15 Jan 2015 03:29:15 +0000 (13:29 +1000)
Most mice have a wheel click angle of 15 degrees, i.e. 24 clicks per full
wheel rotation. Some mice, like the Logitech M325 have a larger angle. To
allow userspace to make use of that knowledge, add a property to the hwdb.

This allows for better predictive scrolling. e.g. a mouse that has a smaller
click angle will scroll faster, with this value you can accommodate this
where needed. Likewise, using "half turn of the wheel" or "full turn of the
wheel" as a UI element becomes possible.

This addition is mainly driven by libinput 0.8, having the angle enables
libinput to provide an API that distinguishes between a physical distance
(like touchpad scrolling does) and discrete steps (wheel clicks).
Callers can choose what they prefer based on the device.

hwdb/70-mouse.hwdb

index a7e9eb2ce8e055007b92b0dcaf00aed1b21be0f3..970d5b596c3fa046cc3b7d29c109fd8b6f21ccbe 100644 (file)
 # mouse:usb:v17efp6019:*
 # mouse:*:name:Lenovo Optical USB Mouse:
 #
+# To add local entries, create a new file
+#   /etc/udev/hwdb.d/71-mouse-local.hwdb
+# and add your rules there. To load the new rules execute (as root):
+#   udevadm hwdb --update
+#   udevadm trigger /dev/input/eventXX
+# where /dev/input/eventXX is the mouse in question. If in
+# doubt, simply use /dev/input/event* to reload all input rules.
+#
+# If your changes are generally applicable, open a bug report on
+#   http://bugs.freedesktop.org/enter_bug.cgi?product=systemd
+# and include your new rules, a description of the device, and the
+# output of
+#   udevadm info /dev/input/eventXX
+# (or /dev/input/event*).
+#
+# Allowed properties are:
+#    MOUSE_DPI
+#    MOUSE_WHEEL_CLICK_ANGLE
+#
+#########################################
+#               MOUSE_DPI               #
+#########################################
+#
 # DPI settings are specified as
 #    MOUSE_DPI=<dpi>[@<frequency>]
 #
 # third-party software) must not be entered into this file, use a local
 # hwdb instead.
 #
-# To add local entries, create a new file
-#   /etc/udev/hwdb.d/71-mouse-local.hwdb
-# and add your rules there. To load the new rules execute (as root):
-#   udevadm hwdb --update
-#   udevadm trigger /dev/input/eventXX
-# where /dev/input/eventXX is the mouse in question. If in
-# doubt, simply use /dev/input/event* to reload all input rules.
+#########################################
+#       MOUSE_WHEEL_CLICK_ANGLE         #
+#########################################
+#
+# The angle in degrees per mouse wheel 'click', specified as
+#     MOUSE_WHEEL_CLICK_ANGLE=<degrees>
+#
+# Most mice have a 15 degree click stop (24 clicks per full rotation).
 #
-# If your changes are generally applicable, open a bug report on
-#   http://bugs.freedesktop.org/enter_bug.cgi?product=systemd
-# and include your new rules, a description of the device, and the
-# output of
-#   udevadm info /dev/input/eventXX
-# (or /dev/input/event*).
 
 #
 # Sort by by brand, type (usb, bluetooth), DPI, frequency.