From 462d933becfd66d09ff62ec4369440bd5c486248 Mon Sep 17 00:00:00 2001 From: Nathanael Sensfelder Date: Mon, 25 Sep 2017 21:06:42 +0200 Subject: Implements quick & dirty fix for the EV_KEY. --- src/relabsd_device.c | 42 +++++++++++++++++++++++++++++++++++++----- 1 file changed, 37 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/relabsd_device.c b/src/relabsd_device.c index d62ff28..f974e97 100644 --- a/src/relabsd_device.c +++ b/src/relabsd_device.c @@ -241,13 +241,27 @@ int relabsd_device_write_evdev_event */ if (libevdev_uinput_write_event(dev->uidev, type, code, value) == 0) { + /* FIXME: + * Why does activating the timeout trigger the EV_KEYS event to not be + * followed by EV_SYN? + */ + if (type == EV_KEY) + { + libevdev_uinput_write_event + ( + dev->uidev, + EV_SYN, + SYN_REPORT, + 0 + ); + } + return 0; } return -1; } - void relabsd_device_set_axes_to_zero ( const struct relabsd_device * const dev, @@ -255,6 +269,16 @@ void relabsd_device_set_axes_to_zero ) { int i; +// libevdev_uinput_write_event + relabsd_device_write_evdev_event + ( +// dev->uidev, + dev, + EV_SYN, + SYN_REPORT, + 0 + ); + for (i = 0; i < RELABSD_VALID_AXES_COUNT; ++i) { @@ -267,12 +291,20 @@ void relabsd_device_set_axes_to_zero relabsd_axis_to_abs((enum relabsd_axis) i), 0 ); + + /* + * Also send a SYN event when the axes have been modified. + */ + } } - /* - * Also send a SYN event when the axes have been modified. - */ - libevdev_uinput_write_event(dev->uidev, EV_SYN, SYN_REPORT, 0); + libevdev_uinput_write_event + ( + dev->uidev, + EV_SYN, + SYN_REPORT, + 0 + ); } -- cgit v1.2.3-70-g09d2