summaryrefslogtreecommitdiffstats
path: root/x11vnc/x11vnc.c
diff options
context:
space:
mode:
Diffstat (limited to 'x11vnc/x11vnc.c')
-rw-r--r--x11vnc/x11vnc.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/x11vnc/x11vnc.c b/x11vnc/x11vnc.c
index f81493d..e43c87f 100644
--- a/x11vnc/x11vnc.c
+++ b/x11vnc/x11vnc.c
@@ -431,7 +431,21 @@ static void watch_loop(void) {
unixpw_in_rfbPE = 1;
- rfbPE(-1);
+ /*
+ * do a few more since a key press may
+ * have induced a small change we want to
+ * see quickly (just 1 rfbPE will likely
+ * only process the subsequent "up" event)
+ */
+ if (tm < last_keyboard_time + 0.16) {
+ rfbPE(0);
+ rfbPE(0);
+ rfbPE(-1);
+ rfbPE(0);
+ rfbPE(0);
+ } else {
+ rfbPE(-1);
+ }
unixpw_in_rfbPE = 0;