-
Peter Hutterer authored
Commit db3b6fe5 "fallback: change to handle the state at EV_SYN time" introduced regressions for two types of event sequences. One is a kernel bug - some devices/drivers like the asus-wireless send a key press + release within the same event frame which now cancels out and disappears into the ether. This should be fixed in the kernel drivers but there appear to be enough of them that we can't just pretend it's an outlier. The second issue is a libinput bug. If we get two key events in the same frame (e.g. shift + A) we update the state correctly but the events are sent in the order of the event codes. KEY_A sorts before KEY_LEFTSHIFT and our shift + A becomes A + shift. Fix this by treating key events as before db3b6fe5 - by sending them out as we get them. https://bugs.freedesktop.org/show_bug.cgi?id=104030 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
1c863692