From: JengHyun Kang Date: Fri, 9 Dec 2016 02:51:58 +0000 (+0900) Subject: Ignore joystick devices if LIBINPUT_IGNORE_JOYSTICK env is 1 X-Git-Tag: accepted/tizen/unified/20240105.013022~49 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=84c2b467d42ca53ce4be2c4f6638e914b8602b58;p=platform%2Fupstream%2Flibinput.git Ignore joystick devices if LIBINPUT_IGNORE_JOYSTICK env is 1 Change-Id: I56d9cc833acad212e3d8071a79adf27bc29c19ca --- diff --git a/src/evdev.c b/src/evdev.c index 641a23c0..93a158f8 100644 --- a/src/evdev.c +++ b/src/evdev.c @@ -2021,6 +2021,7 @@ evdev_configure_device(struct evdev_device *device) enum evdev_device_udev_tags udev_tags; unsigned int tablet_tags; struct evdev_dispatch *dispatch; + char *env; udev_tags = evdev_device_get_udev_tags(device, device->udev_device); @@ -2057,10 +2058,22 @@ evdev_configure_device(struct evdev_device *device) evdev_disable_accelerometer_axes(device); } - if (evdev_device_is_joystick_or_gamepad(device)) { - evdev_log_info(device, - "device is a joystick or a gamepad, ignoring\n"); - return NULL; + if (udev_tags & EVDEV_UDEV_TAG_JOYSTICK) { + env = getenv("LIBINPUT_IGNORE_JOYSTICK"); + if (env && atoi(env) == 1) { + evdev_log_info(device, + "device '%s', %s have joystick, ignoring\n", + device->devname, devnode); + return NULL; + } + else { + if (evdev_device_is_joystick_or_gamepad(device)) { + evdev_log_info(device, + "device '%s', %s is a joystick, ignoring\n", + device->devname, devnode); + return NULL; + } + } } if (evdev_reject_device(device)) {