diff --git a/quirks/50-system-lenovo.quirks b/quirks/50-system-lenovo.quirks index 9fe961ad..c45359e6 100644 --- a/quirks/50-system-lenovo.quirks +++ b/quirks/50-system-lenovo.quirks @@ -20,6 +20,11 @@ MatchName=Synaptics tm2964-001 MatchDMIModalias=dmi:*svnLENOVO:*:pvrThinkPadT440p* ModelLenovoT450Touchpad=1 +[Lenovo T480s Touchpad] +MatchName=Elan Touchpad +MatchDMIModalias=dmi:*svnLENOVO:*:pvrThinkPadT480s* +ModelLenovoT480sTouchpad=1 + [Lenovo X200 Trackpoint] MatchName=*TPPS/2 IBM TrackPoint MatchDMIModalias=dmi:*svnLENOVO:*pvrThinkPadX20?:* diff --git a/src/evdev.c b/src/evdev.c index 4a998f41..ddd6d110 100644 --- a/src/evdev.c +++ b/src/evdev.c @@ -1908,6 +1908,12 @@ evdev_pre_configure_model_quirks(struct evdev_device *device) libevdev_enable_property(device->evdev, INPUT_PROP_BUTTONPAD); + /* Touchpad is a clickpad but INPUT_PROP_BUTTONPAD is not set, see + * https://gitlab.freedesktop.org/libinput/libinput/issues/177 */ + if (evdev_device_has_model_quirk(device, QUIRK_MODEL_LENOVO_T480S_TOUCHPAD)) + libevdev_enable_property(device->evdev, + INPUT_PROP_BUTTONPAD); + /* Touchpad claims to have 4 slots but only ever sends 2 * https://bugs.freedesktop.org/show_bug.cgi?id=98100 */ if (evdev_device_has_model_quirk(device, QUIRK_MODEL_HP_ZBOOK_STUDIO_G3)) diff --git a/src/quirks.c b/src/quirks.c index debedfb6..fa12045b 100644 --- a/src/quirks.c +++ b/src/quirks.c @@ -241,6 +241,7 @@ quirk_get_name(enum quirk q) case QUIRK_MODEL_HP_ZBOOK_STUDIO_G3: return "ModelHPZBookStudioG3"; case QUIRK_MODEL_LENOVO_SCROLLPOINT: return "ModelLenovoScrollPoint"; case QUIRK_MODEL_LENOVO_T450_TOUCHPAD: return "ModelLenovoT450Touchpad"; + case QUIRK_MODEL_LENOVO_T480S_TOUCHPAD: return "ModelLenovoT480sTouchpad"; case QUIRK_MODEL_LENOVO_X230: return "ModelLenovoX230"; case QUIRK_MODEL_SYNAPTICS_SERIAL_TOUCHPAD: return "ModelSynapticsSerialTouchpad"; case QUIRK_MODEL_SYSTEM76_BONOBO: return "ModelSystem76Bonobo"; diff --git a/src/quirks.h b/src/quirks.h index 735ed56d..1d731a48 100644 --- a/src/quirks.h +++ b/src/quirks.h @@ -73,6 +73,7 @@ enum quirk { QUIRK_MODEL_HP_ZBOOK_STUDIO_G3, QUIRK_MODEL_LENOVO_SCROLLPOINT, QUIRK_MODEL_LENOVO_T450_TOUCHPAD, + QUIRK_MODEL_LENOVO_T480S_TOUCHPAD, QUIRK_MODEL_LENOVO_X230, QUIRK_MODEL_SYNAPTICS_SERIAL_TOUCHPAD, QUIRK_MODEL_SYSTEM76_BONOBO,