Commit graph

181 commits

Author SHA1 Message Date
Rajas Paranjpe
686ec27ba3 quirks: disable Chromebook Redrix AttrPalmPressureThreshold
This device doesn't need libinput's palm detection, see
https://gitlab.freedesktop.org/libinput/libinput/-/merge_requests/939
2023-10-12 05:33:48 +00:00
Peter Hutterer
98c689ebb2 quirks: add quirks for RazerBlade162023 and RazerBlade182023
Autogenerated from our razer-quirks-lister.py tool
2023-10-09 20:15:10 +10:00
lilly-lizard
31062d6e53 removed thinkpad 13 gen 2 trackpoint pre-multiply quirk
Signed-off-by: Lilly Lizard <bigbanana29@aol.com>
2023-10-07 21:49:44 +00:00
Vadim Yanitskiy
769cb992cc quirks: match 'ITE Device(8910)' keyboard by USB VID/PID
This allows the "Disable while typing" feature to work properly for:

  048d:c102 Integrated Technology Express, Inc. ITE Device(8910)

This keyboard was found in the following Lenovo laptops:

* Legion 5 Pro 16ARH7H
* Legion 5 15ARH7H

The quirk for 16ARH7H was added in 94c785a2 (see #933), however
matching by DMI does not work for 15ARH7H, so let's match by
USB VID/PID instead.

https://gitlab.freedesktop.org/libinput/libinput/-/issues/933#note_2099049
2023-09-25 19:40:26 +07:00
José Expósito
b6ea2f3976 quirks: add a quirk for the HUAWEI MateBook X Pro 2022 touchpad
Clickpad that announces BTN_RIGHT.

Fixes https://gitlab.freedesktop.org/libinput/libinput/-/issues/939
Signed-off-by: José Expósito <jose.exposito89@gmail.com>
2023-09-25 10:15:35 +02:00
Elliot Gawthrop
99c4721f95 quirks: add RollerMouse Pro3 double-click fix 2023-09-05 09:39:06 +01:00
Branko Grubić
94c785a29c quirks: Adds Lenovo Legion 5 Pro 16ARH7H keyboard quirk
Fix allows touchpad Disable while typing feature to work properly.

Fixes: #933

Signed-off-by: Branko Grubić <bitlord0xff@gmail.com>
2023-09-05 01:43:26 +00:00
WeirdTreeThing
d4d0cee077 quirks: Add quirk for Google Chromebook Drobit
This device has a touchpad with uncommon pressure sensitivity which
makes it hard to use out of the box.

Signed-off-by: Brady Norander <bradyn127@protonmail.com>
2023-09-03 18:25:55 +00:00
José Expósito
8d0f2f5f62 pre-commit: Fix end of files
The new pre-commit hook introduced in commit 53517dccb8 ("Add
pre-commit hooks") found 2 files ending with a double empty line:

    Fix End of Files.............................Failed
      - hook id: end-of-file-fixer
      - exit code: 1
      - files were modified by this hook

Fix this error.

Signed-off-by: José Expósito <jose.exposito89@gmail.com>
2023-09-03 17:01:59 +00:00
Weifeng Liu
5aca13a65c quirks: Add quirk for Google Chromebook Redrix
Google Chromebook Redrix (HP Elite Dragonfly) is shipped with a touchpad
from ELAN (ELAN2703:00 04F3:323B) with uncommon pressure parameters
which make moving and tapping not working out of box.

Signed-off-by: Weifeng Liu <weifeng.liu.z@gmail.com>
2023-08-30 08:22:25 +00:00
Bjørn Forsman
34b9c4ce44 quirks: Add Wacom Bamboo Fun Pen
We must disable ABS_DISTANCE or else the automatic pressure offset
calculation doesn't work for this device.

Signed-off-by: Bjørn Forsman <bjorn.forsman@gmail.com>
2023-08-24 19:22:00 +02:00
Peter Hutterer
5534a5f640 quirks: add quirk for the RazerBlade152023 keyboard
Autogenerated from our razer-quirks-lister.py tool

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2023-08-08 20:26:28 +03:00
José Expósito
08e4a3deb9 quirks: Add Lenovo Legion 7i 4090 keyboard quirks
Disable while typing is not working because the keyboard uses the USB
bus.

Add the `AttrKeyboardIntegration=internal` quirk to fix it.

Fixes https://gitlab.freedesktop.org/libinput/libinput/-/issues/911
Signed-off-by: José Expósito <jose.exposito89@gmail.com>
2023-07-31 17:16:42 +02:00
José Expósito
fa0d27d175 quirks: AddHP Spectre x360 15 ModelTabletModeNoSuspend keyboard quirk
The HP stream x360's embedded-controller filters out events form its
builtin keyboard when in tablet-mode itself; and it has a volume up/down
on the side.

Do not suspend the keyboard when in tablet-mode so that the volume
up/down button keeps working when in tablet-mode.

Add a ModelTabletModeNoSuspend quirk so that the home button keeps
working when in tablet-mode.
This can safely be done since the rest of the keyboard gets disabled by
the embedded-controller for us.

Fixes https://gitlab.freedesktop.org/libinput/libinput/-/issues/920
Signed-off-by: José Expósito <jose.exposito89@gmail.com>
2023-07-31 13:25:57 +02:00
Peter Hutterer
2432b6eeff tools: add a tool to update our Razer quirks for internal keyboards
openrazer keeps a convenient list of keyboard devices that belong to the
RazerBlade line and thus should be marked as internal by us. Let's
use that one.

This script git clones the current openrazer repo, imports the file we
need and then overwrites our current quirks file with the sorted list of
devices.

For the second part of this to work reliable we need a marker in the
quirks file that marks the start of autogenerated entries.

Heavily influenced by @danryu in !887.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2023-04-11 14:48:41 +10:00
Peter Hutterer
8a01c3423d quirks: sort the razer entries by PID
No functional changes here, this should help with adding autogenerated
entries since we no longer rely on the source order.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2023-04-11 14:43:46 +10:00
Robert Glossop
57f0354ee5 Disregard touchless clicks on flaky devices
Some touchpads, notably those on the Dell XPS 15 9500, are prone to registering
touchpad clicks when the case is sufficiently flexed. Ignore these by
disregarding any clicks that are registered without touchpad touch.

Signed-off-by: Rob Glossop <robgssp@gmail.com>
2023-04-11 02:00:52 +00:00
Peter Hutterer
b2f5925e62 quirks: add a bunch more Razer internal keyboards
Generated with the same script as the list from
commit 3dcfae3fb6.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2023-03-24 04:32:20 +00:00
Peter Hutterer
f276f3de54 quirks: change all 3-digit matches to zero-prefixed 4-digit matches
Time to get some standardization here!

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2023-03-20 17:38:28 +00:00
Peter Hutterer
28a246188d quirks: fix duplicate section names
Our parser doesn't care about this, but let's stick to the proper format so
we can read those files with e.g. Python's ConfigParser

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2023-03-20 17:38:28 +00:00
José Expósito
74a94be8ed quirks: add a note to not quirk the Bolt Receiver
The Logitech Bolt Receiver can be used with multiple mice, but the
kernel exposes the same product ID for all of them.

Adding a quirk for the device trying to fix a specific mouse would
break other mice.

Since we avoided this problem during code review a couple of times [1]
[2] add a warning to avoid it in the future.

[1] https://gitlab.freedesktop.org/libinput/libinput/-/merge_requests/867#note_1759931
[2] https://gitlab.freedesktop.org/libinput/libinput/-/merge_requests/847#note_1725364
Signed-off-by: José Expósito <jose.exposito89@gmail.com>
2023-03-20 18:10:10 +01:00
José Expósito
6c88d9a251 quirks: fix DWT on Legion 5i
The keyboard present on this device is not recognized as internal and
disable while typing does not work.

Add a quirk to fix this feature.

Fix https://gitlab.freedesktop.org/libinput/libinput/-/issues/848
Signed-off-by: José Expósito <jose.exposito89@gmail.com>
2023-02-13 02:44:20 +00:00
Aksel Stokseth
9764d1f362 add quirks for Logitech MX Master 3B
Signed-off-by: Aksel Stokseth aksel.stokseth@gmail.com
2023-02-09 04:59:51 +00:00
Marge Yang
74415b13fb quirks: Dell Mayabay (Pressure Pad).
Signed-off-by: Marge Yang <marge.yang@synaptics.corp-partner.google.com>
2023-02-08 08:05:37 +00:00
gogogoghost
c855012ddb quirk: Google Chromebook Atlas (Pixelbook go)
Signed-off-by: Jax Leach <heiguiyj@gmail.com>
2023-02-06 18:23:31 +00:00
Bill A
bb21327efe quirks: add generic quirk for Dell 2-in-1 models for side volume buttons
Signed-off-by: Bill A's avatarBill A <vukk.euob@gmail.com>
2023-02-06 17:46:01 +00:00
Diep Pham
32c0af17f0 quirk: Lenovo P14s Gen 1 AMD Trackpoint 2023-01-28 16:06:06 +00:00
Cyril LEVIS
32c9bdcccc fix: add apple m2 keyboard quirks
this fix dwt https://github.com/AsahiLinux/linux/issues/103

Signed-off-by: Cyril Levis <git@levis.name>
2023-01-23 18:23:13 +00:00
Richard Stefun
6e1be53df5 Improve X280 support
Signed-off-by: Richard Stefun <richard.stefun@icloud.com>
2023-01-23 15:17:08 +01:00
Zhangyuan Nie
3b1f86c7c6 quicks: invert horizontal scrolling for Logitech MX Master 3S
Signed-off-by: Zhangyuan Nie <yuan@znie.org>
2023-01-17 06:40:06 +00:00
José Expósito
1d7172488d quirks: touchpad: add ModelPressurePad
Unlike in traditional touchpads, whose pressure value equals contact
size, on pressure pads pressure is a real physical axis.

We don't take advantage of the pressure information reported by
pressure pads yet, so we disable it to avoid errors.

Add a new model quirk for pressure pads instead of disabling
ABS_MT_PRESSURE and ABS_PRESSURE.

Signed-off-by: José Expósito <jose.exposito89@gmail.com>
2023-01-16 19:22:04 +01:00
Charles Wang
29a49e968e quirks: add quirks for Dell Precision5680 Touchpad
This touchpad is a pressure pad and needs the pressure
handling disable.

Fixes https://gitlab.freedesktop.org/libinput/libinput/-/issues/849

Signed-off-by: Charles Wang <charles.goodix@gmail.com>
2023-01-12 10:02:35 +08:00
José Expósito
f185120936 quirks: add quirk for Dell Latitude 5290 2-in-1
Fixes https://gitlab.freedesktop.org/libinput/libinput/-/issues/846
Signed-off-by: José Expósito <jose.exposito89@gmail.com>
2023-01-01 16:40:01 +01:00
Samuel Reddy
aed3fdb94b quirks: add quirks for Glorious Model O mouse
Signed-off-by: Samuel Reddy <samuelsumukhreddy@gmail.com>
2022-12-23 19:13:10 +11:00
José Expósito
3fd9b3fbc6 quirks: add quirks for Positivo-Vaio touchpad
The generic quirk introduced in commit d1f274c781 ("quirks: add a
more generic match for the 5288 Synaptics clickpad") affects the
touchpad (with physical buttons) present in the Positivo-Vaio.

Fixes #819
Signed-off-by: José Expósito <jose.exposito89@gmail.com>
2022-11-28 11:26:47 +01:00
Peter Hutterer
a7e4cbc212 quirks: allow overriding of AttrEventCode and AttrInputProp
This switches the quirk from AttrEventCodeEnable/Disable to just
AttrEventCode with a +/- prefix for each entry.
This switches the quirk from AttrInputPropEnable/Disable to just
AttrInputProp with a +/- prefix for each entry.

Previously, both event codes and input props would only apply the
last-matching section entry for a device. Furthermore, an earlier Disable entry
would take precedence over a later Enable entry. For example, a set of
sections with these lines *should* enable left, right and middle:

  [first]
  AttrEventCodeEnable=BTN_LEFT;BTN_RIGHT;BTN_MIDDLE

  [second]
  AttrEventCodeDisable=BTN_RIGHT

  [third]
  AttrEventCodeEnable=BTN_LEFT;BTN_RIGHT;

Alas: the first line was effectively ignored (quirks only returned the
last-matching one, i.e. the one from "third"). And due to implementation
details in evdev.c, the Disable attribute was processed after Enable,
i.e. the device was enabled for left + right and then disabled for
right. As a result, the device only had BTN_LEFT enabled.

Fix this by changing the attribute to carry both enable/disable
information and merging the commands together.

Internally, all quirks matching a device are simply ref'd into an array
in the struct quirks. The applied value is simply the last entry in the
array corresponding to our quirk.

For AttrEventCode and AttrInputProp instead do this:
- switch them to a tuple with the code as first entry and a boolean
  enable/disable as second entry
- if the struct quirk already has an entry for either, append the more
  recent one to the existing entry (instead of creating a new entry in
  the array). This way we have all entries that match and in-order of
  precedence - i.e. we can process them left-to-right to end up
  with the right state.

Fixes: https://gitlab.freedesktop.org/libinput/libinput/-/issues/821

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2022-11-28 08:25:41 +10:00
Peter Hutterer
703ecb200c Remove trailing whitespaces in the tree
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2022-11-25 10:08:20 +10:00
Hector Martin
c2b420c793 quirks: Add Apple MTP touchpad quirk
Apple M2 (and presumably newer) laptops now embed the touchpad
controller into the main SoC, and use a new internal communications
protocol between it and the main CPU. This isn't really a "bus" like
SPI or I2C, so the downstream kernel driver currently uses the (not
well supported) HOST bus type. MatchBus can't match on that, so let's
just use a name match (plus the vendor ID, which is still valid and
the usual Apple one).

Signed-off-by: Hector Martin <marcan@marcan.st>
2022-11-22 23:48:01 +00:00
Tadhg McDonald-Jensen
7d29e2d616 Fix Framework quirk so it wirks with 12 gen intel
Removes a colon from frameworks quirks dmi match
so it matches pnLaptop(12thGenIntelCore) on newer model

Signed-off-by: Tadhg McDonald-Jensen <tadhgmister@gmail.com>
2022-09-23 14:03:39 -04:00
Leonard Lausen
6efc4aa05c quirks: add generic quirks for ARM based chromebooks
Signed-off-by: Leonard Lausen <leonard@lausen.nl>
2022-08-22 00:48:18 +00:00
Leonard Lausen
62f8b53316 quirks: add quirks for Acer Spin 513 (Lazor)
Signed-off-by: Leonard Lausen <leonard@lausen.nl>
2022-08-15 16:22:28 +00:00
Boris Pek
187ec90bb2 quirks: update quirks for Lenovo IdeaPad Duet 3
My tablet has substring pvrIdeaPadDuet310IGL5-LTE in modalias and there are
other modifications of this model on a market so the mask for DMI should be
simplified to cover more devices.

Signed-off-by: Boris Pek <bpek@astralinux.ru>
2022-07-18 11:06:22 +03:00
Maximilian Luz
238a56eb7c quirks: Add quirks to improve tablet-mode on the Surface Laptop Studio
The Microsoft Surface Laptop Studio can operate in multiple postures. In
one of these, dubbed "slate/tent", the screen is angled roughly 45°,
covering the keyboard but not the touchpad. Unfortunately, this state is
(as far as we can tell) indiscernible to the display being flipped 180°
backwards (dubbed "slate/flipped"), where the keyboard points away from
the user and is now behind the screen.

Due to this, it makes sense to enable tablet-mode in this (general)
"slate" state, which is what the corresponding kernel driver currently
does. This, for example, can tell desktop environments to bring up a
touch keyboard in certain situations and to allow for automatic screen
rotation (which is required in the "flipped" mode).

Unfortunately, libinput disables all integrated peripherals, including
the touchpad, when tablet-mode is on, rendering the touchpad unusable in
the "slate/tent" state. Therefore, set ModelTabletModeNoSuspend=1 to
keep the touchpad functional. For simplicity, apply this quirk to all
input devices on the Surface Laptop Studio. Those are already disabled
by firmware in the respective postures, meaning things work well without
suspension by libinput.

Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
2022-07-10 18:25:22 +00:00
Maximilian Luz
ad95d68f47 quirks: Add quirks for Surface Laptop Studio touchpad
The touchpad on the Microsoft Surface Laptop Studio is force-sensitive.
The default values used by libinput do not seem to work well (causing
touches to not be recognized), so configure it with known-good values.

Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
2022-07-10 18:25:22 +00:00
Max Huber
d137c41319 quirks: add volume rocker quirk for Lenovo IdeaPad Duet 3i
Signed-off-by: Max Huber <ycbcr@disroot.org>
2022-07-10 15:22:24 +02:00
Dale A. Jackson
a2dc175c19
quirks: add Lenovo Legion 7 keyboard
Fixes disable-when-typing for the keyboard model on this laptop

Signed-off-by: Dale A. Jackson <JacksonWrath@gmail.com>
2022-07-01 10:26:44 -07:00
Sean Rhodes
4d26736e20 Quirk all StarLabs trackpads
Quirk all the StarLabs trackpads as they are all the same design,
a clickpad with physical buttons that act as one button.

Fixes #771.

Signed-off-by: Sean Rhodes <sean@starlabs.systems>
2022-05-16 05:10:10 +00:00
Sean Rhodes
a6fa862c00 quirks: Add quirk for StarLite Mk IV
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
2022-05-09 18:26:05 +02:00
Alexander Courtis
e0813f4825 AttrLidSwitchReliability quirk default unreliable->reliable 2022-04-26 01:55:22 +00:00
Markus Wall
4d5d6e7b4e quirks: add lenovo legion slim 7
This makes disable-when-typing for the touchpad work properly
on the Lenovo Legion Slim 7.

Signed-off-by: Markus Wall <markuswall@yahoo.se>
2022-02-15 20:02:38 +01:00