diff --git a/quirks/50-system-asus.quirks b/quirks/50-system-asus.quirks index 8d7fca54..e03c39e8 100644 --- a/quirks/50-system-asus.quirks +++ b/quirks/50-system-asus.quirks @@ -9,3 +9,8 @@ ModelTouchpadVisibleMarker=1 MatchName=*ETPS/2 Elantech Touchpad* MatchDMIModalias=dmi:*svnASUSTeKComputerInc.:pnUX21E:* AttrPressureRange=24:10 + +[Asus UX302LA] +MatchName=*ETPS/2 Elantech Touchpad* +MatchDMIModalias=dmi:*svnASUSTeKCOMPUTERINC.:pnUX302LA:* +ModelAsusUX302LATouchpad=1 diff --git a/src/evdev.c b/src/evdev.c index 4afdbce7..25bb6e2e 100644 --- a/src/evdev.c +++ b/src/evdev.c @@ -1976,6 +1976,20 @@ evdev_pre_configure_model_quirks(struct evdev_device *device) EV_ABS, ABS_MT_TOOL_TYPE); + /* Asus UX302LA touchpad doesn't update the pressure values once two + * fingers are down. So let's just pretend it doesn't have pressure + * at all. https://gitlab.freedesktop.org/libinput/libinput/issues/145 + */ + if (evdev_device_has_model_quirk(device, + QUIRK_MODEL_ASUS_UX320LA_TOUCHPAD)) { + libevdev_disable_event_code(device->evdev, + EV_ABS, + ABS_MT_PRESSURE); + libevdev_disable_event_code(device->evdev, + EV_ABS, + ABS_PRESSURE); + } + /* Generally we don't care about MSC_TIMESTAMP and it can cause * unnecessary wakeups but on some devices we need to watch it for * pointer jumps */ diff --git a/src/quirks.c b/src/quirks.c index 22c86d02..a65ce4fb 100644 --- a/src/quirks.c +++ b/src/quirks.c @@ -231,6 +231,7 @@ quirk_get_name(enum quirk q) case QUIRK_MODEL_APPLE_MAGICMOUSE: return "ModelAppleMagicMouse"; case QUIRK_MODEL_APPLE_TOUCHPAD: return "ModelAppleTouchpad"; case QUIRK_MODEL_APPLE_TOUCHPAD_ONEBUTTON: return "ModelAppleTouchpadOneButton"; + case QUIRK_MODEL_ASUS_UX320LA_TOUCHPAD: return "ModelAsusUX302LATouchpad"; case QUIRK_MODEL_BOUNCING_KEYS: return "ModelBouncingKeys"; case QUIRK_MODEL_CHROMEBOOK: return "ModelChromebook"; case QUIRK_MODEL_CLEVO_W740SU: return "ModelClevoW740SU"; diff --git a/src/quirks.h b/src/quirks.h index bd08a19b..d032c8a7 100644 --- a/src/quirks.h +++ b/src/quirks.h @@ -58,6 +58,7 @@ enum quirk { QUIRK_MODEL_APPLE_MAGICMOUSE, QUIRK_MODEL_APPLE_TOUCHPAD, QUIRK_MODEL_APPLE_TOUCHPAD_ONEBUTTON, + QUIRK_MODEL_ASUS_UX320LA_TOUCHPAD, QUIRK_MODEL_BOUNCING_KEYS, QUIRK_MODEL_CHROMEBOOK, QUIRK_MODEL_CLEVO_W740SU,