mirror of
https://github.com/systemd/systemd.git
synced 2024-12-26 03:22:00 +03:00
0213a26f65
Pointer acceleration for relative input devices (mice, trackballs, etc.) applies to the deltas of the device. Alas, those deltas have no physical reference point - a delta of 10 may be caused by a large movement of a low-dpi mouse or by a minute movement of a high-dpi mouse. Which makes pointer acceleration a bit useless and high-dpi devices essentially unusable. In an ideal world, we could read the DPI from the device directly and work with that. In the world we actually live in, we need to compile this list manually. This patch introduces the database, with the usual match formats and a single property to be set on a device: MOUSE_DPI That is either a single value for most mice, or a list of values for mice that can change resolution at runtime. The exact format is detailed in the hwdb file. Note that we're explicitly overshooting the requirements we have for libinput atm. Frequency could be detected in software and we don't actually use the list of multiple resolutions (because we can't detect when they change anyway). However, we might as well collect those values from the get-go, adding/modifying what will eventually amount to hundreds of entries is a bit cumbersome. Note: we rely on the input_id builtin to tag us as mouse first, ordering of the rules is important. (David: fixed up typos and moved hwdb file into ./hwdb/) |
||
---|---|---|
.. | ||
.gitignore | ||
20-acpi-vendor.hwdb | ||
20-bluetooth-vendor-product.hwdb | ||
20-net-ifname.hwdb | ||
20-OUI.hwdb | ||
20-pci-classes.hwdb | ||
20-pci-vendor-model.hwdb | ||
20-sdio-classes.hwdb | ||
20-sdio-vendor-model.hwdb | ||
20-usb-classes.hwdb | ||
20-usb-vendor-model.hwdb | ||
60-keyboard.hwdb | ||
70-mouse.hwdb | ||
ids-update.pl | ||
Makefile | ||
sdio.ids |