summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2024-02-21update .gitignoreHEADmasterEnrico Weigelt, metux IT consult1-0/+1
"test/test-bezier" was yet missing Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-02-21fix int type mismatches in printf()-like callsEnrico Weigelt, metux IT consult1-4/+4
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-02-21replace BUG_() macros by xf86IDrvMsg() callsEnrico Weigelt, metux IT consult1-4/+14
Latest master moved the BUG_() macros out of os.h, and it's more appropriate to use xf86IDrvMsg() in those cases (like we're already doing in other places) anyways. Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-02-20gitlab CI: update to latest templates and current fedoraPeter Hutterer1-4/+4
2024-02-20Add editorconfig filePeter Hutterer1-0/+17
2023-11-10Add a property for the tablet tool serial and hw IDPeter Hutterer2-0/+50
The driver encodes the serial in the device name but that's not reliable enough. Expose both serial and tool id (optional) as a property so clients can read them and adjust their behavior accordingly. Fixes #16
2023-11-10Sort the read-only propertiesPeter Hutterer1-18/+19
2023-08-25xf86-input-libinput 1.4.0xf86-input-libinput-1.4.0Peter Hutterer2-2/+2
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2023-07-10Don't try to enable a NULL devicePeter Hutterer1-1/+2
If there is no other libinput device in our list (and next is thus NULL), skip the xf86AddEnabledDevice() call. Fixes #60
2023-07-03Don't run past the last element in the listPeter Hutterer1-1/+1
If there is no (other) libinput device in the current device list, we'd eventually end up with next == NULL, causing a segfault. Fixes #60
2023-06-15tablet: map BTN_STYLUS3 to button 8Peter Hutterer1-0/+1
Buttons 4-7 are out of bounds for hysterical historical reasons. Previously this button fell through to the default statement and resulted in 8 + BTN_STYLUS3 - BTN_SIDE == 65 which is rather obviously wrong. Instead, map it explicitly to what the fourth button would be mapped to on other devices. This will now overlap with BTN_SIDE on devices that both BTN_STYLUS3 *and* BTN_SIDE but those devices don't appear to exist in the real world. Fixes #50 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2023-06-08Initialize the left-handed property for tablet toolsPeter Hutterer1-2/+2
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2023-06-08Change the capabilities to an enumPeter Hutterer1-7/+9
Slightly nicer for debugging.
2023-04-26Improve documentation of the custom acceleration profileYinon Burgansky1-16/+77
2023-04-04xf86-input-libinput 1.3.0xf86-input-libinput-1.3.0Peter Hutterer2-2/+2
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2023-02-18Add support for the scroll movement type of the custom acceleration profileYinon Burgansky3-9/+69
Adds new properties and xorg.conf entries for setting the scroll acceleration function's points and step. The new xorg.conf entries are AccelPointsScroll, AccelStepScroll.
2023-02-01Correct the coordinate transform parameters for an absolute pointerShin-myoung-serp1-2/+2
Fixes #53
2023-01-09Add support for custom pointer accelerationPeter Hutterer9-21/+1187
Adds new properties and xorg.conf entries for setting the acceleration function's points and step. `AccelProfile` option can now accept `custom` value. Add 4 new options which only apply when `AccelProfile` is `custom`: - Add `AccelPointsFallback` option for setting the points of the Fallback acceleration function. Points values are represented by a space-separated list, e.g. "0.0 1.0 2.4 2.5". - Add `AccelStepFallback` option for setting the step of the Fallback acceleration function. When a step of 0.0 is provided, libinput default Fallback acceleration function is used. - Add `AccelPointsMotion` and `AccelStepMotion` options, which are equivalent to `AccelPointsFallback` and `AccelStepFallback` options, but apply to the Motion acceleration function. See libinput documentation for a detailed explanation of custom pointer acceleration.
2022-12-09configure.ac: inputproto 2.4 is optionalPeter Hutterer1-1/+2
Missing else condition in PKG_CHECK_MODULES caused configure to bail out where 2.4 wasn't available. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2022-07-23gitlab CI: enable gitlab's builtin static analysisAlan Coopersmith1-0/+1
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2022-07-23gitlab CI: enable commit & merge request checksAlan Coopersmith1-5/+46
Uses ci-fairy from freedesktop/ci-templates Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2022-04-27Better explain HorizontalScrolling.Hong Xu1-4/+4
2022-01-25Add meson build systemPeter Hutterer2-0/+152
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2022-01-25man: use @VERSION@ for the driver versionPeter Hutterer2-1/+4
Makes use of meson easier which requires @ as pre/suffix for variables. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2022-01-25man: replace the various suffixes with their actual numbersPeter Hutterer1-11/+11
These don't change, iirc they exist because of some unixes having different man pages but at this point really on Solaris is left and that uses the same suffixes as everyone else. And the __xservername__ is a leftover from the Xfree86 vs Xorg days - if you're still running Xfree86, you're not using this driver. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2022-01-25Drop HAVE_CONFIG_H, we always have it definedPeter Hutterer1-2/+0
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2022-01-24xf86-input-libinput 1.2.1xf86-input-libinput-1.2.1Peter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2022-01-24Fix a compiler warningPeter Hutterer1-1/+3
xf86libinput.c:2457:89: warning: passing argument 1 of ‘libinput_event_pointer_get_axis_source’ from incompatible pointer type [-Wincompatible-pointer-types] No function changes due to the binary layout of libinput events but let's not rely on that. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2022-01-16Build xz tarballs instead of bzip2Alan Coopersmith1-1/+1
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2022-01-16Fix spelling/wording issuesAlan Coopersmith3-3/+3
Found by using: codespell --builtin clear,rare,usage,informal,code,names Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2021-12-18Fix copy-paste error in LibinputInitAccelProperty checking available ↵Luna Nova1-1/+1
profiles against adaptive/flat
2021-11-24Quietly check for the _source optionPeter Hutterer1-1/+1
xf86CheckStrOption returns the same value but doesn't mark it as used in the server and, more importantly, doesn't spam the log with (**) Option "_source" "server/udev" messages. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-11-17Make XIPropertyValuePtr verification consistentJosé Expósito1-3/+3
Signed-off-by: José Expósito <jose.exposito89@gmail.com>
2021-11-14Add an option to disable high-resolution wheel scrollJosé Expósito3-20/+108
Starting on libinput 1.19 pointer axis events have been deprecated in favor of their scroll equivalents, including support for high-resolution wheel scroll. While it is recommended to handle the new events, some applications and/or frameworks might not be ready at the moment. Provide an option to discard high-resolution wheel scroll events. Fix #41 Signed-off-by: José Expósito <jose.exposito89@gmail.com>
2021-11-10man: fix horizontal scroll property nameJosé Expósito1-1/+1
Signed-off-by: José Expósito <jose.exposito89@gmail.com>
2021-09-19xf86-input-libinput 1.2.0xf86-input-libinput-1.2.0Povilas Kanapickas1-1/+1
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2021-09-16Rename HAS_GESTURES to HAVE_GESTURESPeter Hutterer1-9/+9
HAVE_FOO is generally used everywhere (see HAVE_CONFIG_H) so let's keep this consistent. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-09-16gitlab-ci: Configure xorgproto build from sourcePovilas Kanapickas2-1/+11
We need newer xorgproto than what's in fedora as we depend on inputproto 2.3.99.1 or newer.
2021-09-16Require inputproto 2.4 to build the gesture supportPovilas Kanapickas2-0/+5
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2021-08-06Use the new v120 API from libinput if availablePeter Hutterer2-16/+101
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-08-04Get scroll source in the event handlerJosé Expósito1-5/+8
Where libinput supports high-resolution scroll events, the scroll source is encoded in the event type. Get the scroll source in xf86libinput_handle_event to facilitate the migration. Refactor, no functional changes. Signed-off-by: José Expósito <jose.exposito89@gmail.com>
2021-08-04Upgrade the default scroll distance to 120Peter Hutterer1-3/+6
This is just a number, to be used as divider and shouldn't have any effect in correctly written clients. With the high-res scrolling coming up however, we have a few devices where the dist cannot be expressed as an integer fraction of 15, so let's up it to 120 because we know all hardware wheels have to be an integer fraction of that that, thanks to Microsoft's API requirements. For non-wheel scrolls we need to now map into the new range. Previously we just passed the scroll events on from the touchpad/button scrolling, meaning a vdist of 15 meant 15 "libinput pixels" of scrolling resulted in a logical wheel click. Now that we have 120 as vdist, we need to times the input data by 8 to keep the same proportions. See 39b0bb4585106a56a51236d8e9843b2da8d745a5 for the previous revert. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-07-05Implement support for touchpad gesturesPovilas Kanapickas1-1/+122
2021-06-24xf86-input-libinput 1.1.0xf86-input-libinput-1.1.0Peter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-05-05Implement a touchpad scroll distance propertyPeter Hutterer3-2/+141
To be used for touchpads and continuous (i.e. button-based scrolling). libinput provides us with pixel data for finger-based and button-based scrolling but the X server does support this - XI2.1 smooth scrolling is merely centered around a logical scroll click (defined as "increment"), with smooth scrolling being a fraction of that increment. For example, in the old synaptics driver that value was in device-specific units and thus different for every device. The increment is a constant value set in the ScrollClass and cannot be changed at device runtime. So we simply initialize with a random default (15, because that works well for wheels) and then scale our pixel delta in to that range. With the default value, a 15 pixel movement would result in a logical scroll click, if the distance is set to 30 the users has to move 30 pixels to trigger that scroll click. Pixel here being defined as the deltas that libinput provides to us. From the client's perspective nothing changes, the increment is still the same. Range checks are quite restrictive, this option is supposed to improve usability, not as a workaround around other bugs. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-05-05Fix a spacing issuePeter Hutterer1-16/+16
yay for copy/paste proliferation Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-04-16xf86-input-libinput 1.0.1xf86-input-libinput-1.0.1Peter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-04-09Make sure the device is valid when setting the tap button mapPeter Hutterer1-2/+6
Fixes #34 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-04-06xf86-input-libinput 1.0.0xf86-input-libinput-1.0.0Peter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-04-06gitlab CI: bump to use Fedora 33Peter Hutterer1-3/+3
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>