libinput/doc/user
Yinon Burgansky 5324f425a1 Introduce custom acceleration profile
The custom acceleration profile allow the user to define custom
acceleration functions for each movement type per device, giving
full control over accelerations behavior at different speeds.

This commit introduces 2 movement types which corresponds to the
2 profiles currently in use by libinput.

regular filter is Motion type.
constant filter is Fallback type.

This allows possible expansion of new movement types for the
different devices.

The custom pointer acceleration profile gives the user full control over the
acceleration behavior at different speeds.
The user needs to provide a custom acceleration function f(x) where
the x-axis is the device speed and the y-axis is the pointer speed.

The user should take into account the native device dpi and screen dpi in
order to achieve the desired behavior/feel of the acceleration.

The custom acceleration function is defined using n points which are spaced
uniformly along the x-axis, starting from 0 and continuing in constant steps.
There by the points defining the custom function are:
(0 * step, f[0]), (1 * step, f[1]), ..., ((n-1) * step, f[n-1])
where f is a list of n unitless values defining the acceleration
factor for each velocity.
When a velocity value does not lie exactly on those points, a linear
interpolation of the two closest points will be calculated.
When a velocity value is greater than the max point defined, a linear
extrapolation of the two biggest points will be calculated.

Signed-off-by: Yinon Burgansky <51504-Yinon@users.noreply.gitlab.freedesktop.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2023-01-17 01:46:17 +00:00
..
dot doc/user: some rewording and improvements 2018-07-31 16:16:16 +10:00
svg Remove trailing whitespaces in the tree 2022-11-25 10:08:20 +10:00
404.rst doc/user: add custom 404 pages for the old links 2018-08-03 11:18:14 +10:00
absolute-axes.rst doc/user: correct some small typos 2018-08-19 11:54:52 -05:00
absolute-coordinate-ranges.rst doc/user: fix a link to the system hwdb file 2021-04-29 10:30:49 +10:00
architecture.rst dox: switch to sphinx for the user-visible documentation 2018-07-30 12:24:04 +10:00
building.rst doc/user: make "verifying install" command portable 2021-07-26 12:35:33 +02:00
button-debouncing.rst doc/user: rename filenames with underscores to dashes 2018-08-02 11:22:11 +10:00
clickpad-softbuttons.rst doc/user: more documentation cleanups and fixes 2018-08-01 10:07:28 +10:00
clickpad-with-right-button.rst quirks: allow overriding of AttrEventCode and AttrInputProp 2022-11-28 08:25:41 +10:00
conf.py.in doc/user: explicitly specify language as en 2022-11-22 14:26:44 +10:00
configuration.rst touchpad: new option dwtp (disable-while-trackpointing) 2022-03-08 01:33:40 +00:00
contributing.rst doc/user: clarify fork visibility 2022-02-14 19:30:34 +01:00
dependencies.rst doc/user: generate the required package list for the CI distributions 2021-02-15 15:22:42 +10:00
development.rst High-resolution scroll wheel support 2021-08-31 08:45:01 +02:00
device-configuration-via-udev.rst doc/user: add an example udev rule for LIBINPUT_IGNORE_DEVICE 2021-11-16 06:47:48 +00:00
device-quirks.rst quirks: touchpad: add ModelPressurePad 2023-01-16 19:22:04 +01:00
faqs.rst doc/user: write an article explaining the different contexts 2021-12-13 10:35:24 +10:00
features.rst treewide: fix typos 2020-12-16 22:08:23 +01:00
gestures.rst doc/user: move the hold gesture section up to the others 2021-07-27 05:20:45 +00:00
git_version.py.in doc/user: add a hack to get to the git version 2018-08-02 11:22:11 +10:00
incorrectly-enabled-hires.rst quirks: allow overriding of AttrEventCode and AttrInputProp 2022-11-28 08:25:41 +10:00
index.rst doc/user: expand the contributing document and make it top-level 2020-01-20 09:14:44 +10:00
meson.build doc/user: add a page to troubleshoot right-click Clickpads 2022-03-28 23:25:26 +00:00
middle-button-emulation.rst dox: switch to sphinx for the user-visible documentation 2018-07-30 12:24:04 +10:00
normalization-of-relative-motion.rst doc/user: explain why we are doing motion normalization 2021-03-16 21:29:56 +00:00
palm-detection.rst touchpad: new option dwtp (disable-while-trackpointing) 2022-03-08 01:33:40 +00:00
pointer-acceleration.rst Introduce custom acceleration profile 2023-01-17 01:46:17 +00:00
reporting-bugs.rst doc: correct the documentation for reporting trackpoint bugs 2022-02-11 07:45:40 +00:00
scrolling.rst High-resolution scroll wheel support 2021-08-31 08:45:01 +02:00
seats.rst dox: switch to sphinx for the user-visible documentation 2018-07-30 12:24:04 +10:00
switches.rst treewide: fix typos 2020-12-16 22:08:23 +01:00
t440-support.rst doc/user: more fixes including adding a device-types section 2018-08-02 11:22:11 +10:00
tablet-debugging.rst doc/user: fix broken link to systemd 60-evdev.hwdb 2021-10-30 12:10:10 +02:00
tablet-support.rst doc/user: move the tablet capabilities debugging to a separate page 2018-08-20 10:06:42 +10:00
tapping.rst doc: update the docs with a note regarding multifinger dragging 2021-02-15 17:13:46 +10:00
test-suite.rst meson: group all tests under suite names 2019-05-07 04:48:00 +00:00
timestamps.rst dox: switch to sphinx for the user-visible documentation 2018-07-30 12:24:04 +10:00
tools.rst doc/user: document the new list-kernel-devices tool 2022-12-09 13:16:38 +10:00
touchpad-jitter.rst doc/user: fix typo 2018-10-03 11:13:58 +10:00
touchpad-jumping-cursors.rst touchpad: ignore the ALPS jump to 4095/0 2020-09-07 02:13:40 +00:00
touchpad-pressure-debugging.rst tools: revamp the touchpad-pressure measuring tool 2020-03-30 14:44:47 +10:00
touchpad-pressure.rst doc/user: correct some small typos 2018-08-19 11:54:52 -05:00
touchpad-thumb-detection.rst doc/user: add documentation for the new thumb detection 2019-07-17 09:33:14 +10:00
touchpads.rst doc/user: mark the touchpads page as orphan 2018-08-03 11:18:14 +10:00
trackpoint-configuration.rst treewide: fix typos 2020-12-16 22:08:23 +01:00
trackpoints.rst doc/user: fix broken link to "Observations on trackpoint input data" 2021-11-28 13:49:14 +01:00
troubleshooting.rst doc/user: add a page to troubleshoot right-click Clickpads 2022-03-28 23:25:26 +00:00
what-is-libinput.rst doc/user: more fixes including adding a device-types section 2018-08-02 11:22:11 +10:00
wheel-api.rst High-resolution scroll wheel support 2021-08-31 08:45:01 +02:00