evdev: drop the check for tablet vs joystick
authorPeter Hutterer <peter.hutterer@who-t.net>
Tue, 14 Jul 2020 03:04:25 +0000 (13:04 +1000)
committerPeter Hutterer <peter.hutterer@who-t.net>
Wed, 15 Jul 2020 03:24:44 +0000 (03:24 +0000)
libwacom has been unsetting ID_INPUT_JOYSTICK for known tablets since 2015
(libwacom 0.12) so this comment is outdated. And the input-id udev builtin
never labels something as tablet *and* joystick. Which means: systemd sets
either tablet or joystick. For tablets that are known to libwacom the joystick
bit gets corrected and we only see the tablet bits.

Tablets unknown to libwacom remain as joysticks and are ignored but that's the
behavior we had anyway.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
src/evdev.c

index 560412aabd3e77e5a3c7731e30c544ca7533f233..0d8e87665826643867b3894a952823a885b525d2 100644 (file)
@@ -1810,11 +1810,7 @@ evdev_configure_device(struct evdev_device *device)
                evdev_disable_accelerometer_axes(device);
        }
 
-       /* libwacom *adds* TABLET, TOUCHPAD but leaves JOYSTICK in place, so
-          make sure we only ignore real joystick devices */
-       const unsigned int joystick_tag = EVDEV_UDEV_TAG_JOYSTICK;
-       const unsigned int joystick_or_tablet_tag = EVDEV_UDEV_TAG_JOYSTICK|EVDEV_UDEV_TAG_TABLET;
-       if ((udev_tags & joystick_or_tablet_tag) == joystick_tag) {
+       if (udev_tags & EVDEV_UDEV_TAG_JOYSTICK) {
                evdev_log_info(device, "device is a joystick, ignoring\n");
                return NULL;
        }