Fix issue #3229 Barcode Scanner USB - missing double characters
authorJohn Mullen <jmullen@devonit.com>
Mon, 5 Jun 2017 19:40:43 +0000 (15:40 -0400)
committerJohn Mullen <jmullen@devonit.com>
Mon, 5 Jun 2017 21:06:07 +0000 (17:06 -0400)
With some usb barcode scanners, repeated characters do not appear in the freerdp session.
It looks like this is because the KeyRelease signal is not sent for the first character.
Removing this if check fixes the problem.

client/X11/xf_event.c

index d1a30f4..4e1a8fa 100644 (file)
@@ -492,18 +492,6 @@ static BOOL xf_event_KeyRelease(xfContext* xfc, XEvent* event, BOOL app)
        KeySym keysym;
        char str[256];
 
-       if (XPending(xfc->display))
-       {
-               ZeroMemory(&nextEvent, sizeof(nextEvent));
-               XPeekEvent(xfc->display, &nextEvent);
-
-               if (nextEvent.type == KeyPress)
-               {
-                       if (nextEvent.xkey.keycode == event->xkey.keycode)
-                               return TRUE;
-               }
-       }
-
        XLookupString((XKeyEvent*) event, str, sizeof(str), &keysym, NULL);
        xf_keyboard_key_release(xfc, event->xkey.keycode, keysym);
        return TRUE;