diff options
author | Jay Sorg <jay.sorg@gmail.com> | 2012-12-29 00:49:00 -0800 |
---|---|---|
committer | Jay Sorg <jay.sorg@gmail.com> | 2012-12-29 00:49:00 -0800 |
commit | 3eb3f65e412ca18f4b54e1c7318be98b04cbfe33 (patch) | |
tree | de59203913717520adb65ac5ef3eb66d2dee0d6c | |
parent | b3dcfdaa37644cdd271f509ae56d197be9b83fa2 (diff) | |
download | xrdp-proprietary-3eb3f65e412ca18f4b54e1c7318be98b04cbfe33.tar.gz xrdp-proprietary-3eb3f65e412ca18f4b54e1c7318be98b04cbfe33.zip |
X11rdp: keyboard and offscreen bitmap fix
-rw-r--r-- | xorg/X11R7.6/rdp/rdpinput.c | 7 | ||||
-rw-r--r-- | xorg/X11R7.6/rdp/rdpup.c | 1 |
2 files changed, 6 insertions, 2 deletions
diff --git a/xorg/X11R7.6/rdp/rdpinput.c b/xorg/X11R7.6/rdp/rdpinput.c index b8e1746a..cefb5156 100644 --- a/xorg/X11R7.6/rdp/rdpinput.c +++ b/xorg/X11R7.6/rdp/rdpinput.c @@ -830,11 +830,14 @@ check_keysa(void) void sendDownUpKeyEvent(int type, int x_scancode) { - /* if type is keydown, send keydown + keyup */ - /* this allows us to ignore keyup events */ + /* if type is keydown, send keyup + keydown */ if (type == KeyPress) { + rdpEnqueueKey(KeyRelease, x_scancode); rdpEnqueueKey(KeyPress, x_scancode); + } + else + { rdpEnqueueKey(KeyRelease, x_scancode); } } diff --git a/xorg/X11R7.6/rdp/rdpup.c b/xorg/X11R7.6/rdp/rdpup.c index 13283b84..d1d654de 100644 --- a/xorg/X11R7.6/rdp/rdpup.c +++ b/xorg/X11R7.6/rdp/rdpup.c @@ -219,6 +219,7 @@ rdpup_add_os_bitmap(PixmapPtr pixmap, rdpPixmapPtr priv) LLOGLN(10, ("rdpup_add_os_bitmap: evicting old, oldest_index %d", oldest_index)); /* evict old */ g_os_bitmaps[oldest_index].priv->status = 0; + g_os_bitmaps[oldest_index].priv->con_number = 0; /* set new */ g_os_bitmaps[oldest_index].pixmap = pixmap; g_os_bitmaps[oldest_index].priv = priv; |