summaryrefslogtreecommitdiff
path: root/src/evdev-fallback.c
diff options
context:
space:
mode:
authorDavide Depau <davide@depau.eu>2018-04-17 15:22:42 +0200
committerPeter Hutterer <peter.hutterer@who-t.net>2018-04-18 14:36:31 +1000
commit5feaa5f00ce31a927924a6346706bf93451fa704 (patch)
treec2a55d4dd2b11e46d584e9b58f5d98a5ed6e9dad /src/evdev-fallback.c
parent5aec854ac315d91b284dd6299a1d5e66c62f08d2 (diff)
downloadlibinput-5feaa5f00ce31a927924a6346706bf93451fa704.tar.gz
evdev: don't suspend keyboard on ThinkPad X1 Yoga 1st in tablet mode
When the X1 Yoga is in tablet mode, one capacitative touch button (windows key, sends KEY_LEFTMETA) and two side volume buttons are accessible on the front. The key event comes through the internal keyboard that we disabled in tablet mode so it stops working. Luckily the Yoga physically disables the "main" keyboard when in tablet mode, so all we have to do is skip our code to disable the keyboard and the keys are working again. https://bugs.freedesktop.org/show_bug.cgi?id=103749 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Diffstat (limited to 'src/evdev-fallback.c')
-rw-r--r--src/evdev-fallback.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/evdev-fallback.c b/src/evdev-fallback.c
index 32184f8a..196383d0 100644
--- a/src/evdev-fallback.c
+++ b/src/evdev-fallback.c
@@ -1174,6 +1174,9 @@ fallback_keyboard_pair_tablet_mode(struct evdev_device *keyboard,
(EVDEV_TAG_TRACKPOINT|EVDEV_TAG_INTERNAL_KEYBOARD)) == 0)
return;
+ if (keyboard->model_flags & EVDEV_MODEL_TABLET_MODE_NO_SUSPEND)
+ return;
+
if ((tablet_mode_switch->tags & EVDEV_TAG_TABLET_MODE_SWITCH) == 0)
return;