summaryrefslogtreecommitdiffstats
path: root/x11vnc/pointer.c
diff options
context:
space:
mode:
authorrunge <runge>2007-01-31 15:41:42 +0000
committerrunge <runge>2007-01-31 15:41:42 +0000
commit1b9082bc8739e5ab186092ca1dcff1736eb91c0e (patch)
tree9d2a267bcbba93aed87634838c9ac10f36363210 /x11vnc/pointer.c
parent1f8da9bde3b7de272228872410143f076662ae13 (diff)
downloadlibtdevnc-1b9082bc8739e5ab186092ca1dcff1736eb91c0e.tar.gz
libtdevnc-1b9082bc8739e5ab186092ca1dcff1736eb91c0e.zip
x11vnc: -reflect, -N. -ncache, FINDDISPLAY, FINDCREATEDISPLAY, improvements. MODTWEAK_LOWEST workaround.
Diffstat (limited to 'x11vnc/pointer.c')
-rw-r--r--x11vnc/pointer.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/x11vnc/pointer.c b/x11vnc/pointer.c
index 803e793..3663819 100644
--- a/x11vnc/pointer.c
+++ b/x11vnc/pointer.c
@@ -558,6 +558,8 @@ static void pipe_pointer(int mask, int x, int y, rfbClientPtr client) {
uinput_pointer_command(mask, x, y, client);
} else if (pipeinput_int == PIPEINPUT_MACOSX) {
macosx_pointer_command(mask, x, y, client);
+ } else if (pipeinput_int == PIPEINPUT_VNC) {
+ vnc_reflect_send_pointer(x, y, mask);
}
if (pipeinput_fh == NULL) {
return;
@@ -679,6 +681,8 @@ void pointer(int mask, int x, int y, rfbClientPtr client) {
got_user_input++;
got_pointer_input++;
last_pointer_client = client;
+ last_pointer_time = dnow();
+ last_event = last_input = last_pointer_input = time(NULL);
}
if (input.motion) {
/* raw_fb hack track button state */
@@ -994,6 +998,9 @@ if (0) fprintf(stderr, "initialize_pipeinput: %s -- %s\n", pipeinput_str, p);
} else if (strstr(p, "MACOSX") == p) {
pipeinput_int = PIPEINPUT_MACOSX;
return;
+ } else if (strstr(p, "VNC") == p) {
+ pipeinput_int = PIPEINPUT_VNC;
+ return;
}
set_child_info();