diff options
author | runge <runge> | 2007-02-12 02:42:28 +0000 |
---|---|---|
committer | runge <runge> | 2007-02-12 02:42:28 +0000 |
commit | 0016cd4280ee9a0d088454a508a9c7f6bde33f62 (patch) | |
tree | 41614a1dfbd8bba02f35a588e8cc87d4e7692173 /x11vnc/xevents.c | |
parent | 90d96b971f04b11fe1902091a94be94697738766 (diff) | |
download | libtdevnc-0016cd4280ee9a0d088454a508a9c7f6bde33f62.tar.gz libtdevnc-0016cd4280ee9a0d088454a508a9c7f6bde33f62.zip |
x11vnc: -grabalways, -forcedpms, -clientdpms, -noserverdpms, -loopbg, -svc, -xdmsvc
Diffstat (limited to 'x11vnc/xevents.c')
-rw-r--r-- | x11vnc/xevents.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/x11vnc/xevents.c b/x11vnc/xevents.c index 0b5eac1..7b8dc30 100644 --- a/x11vnc/xevents.c +++ b/x11vnc/xevents.c @@ -21,6 +21,7 @@ int grab_buster = 0; int grab_kbd = 0; int grab_ptr = 0; +int grab_always = 0; int sync_tod_delay = 20; void initialize_vnc_connect_prop(void); @@ -871,6 +872,7 @@ void check_xevents(int reset) { XSetErrorHandler(old_handler); trapped_xerror = 0; + last_call = now; } /* check for CUT_BUFFER0 and VNC_CONNECT changes: */ @@ -1156,7 +1158,6 @@ void check_xevents(int reset) { } X_UNLOCK; - last_call = now; #endif /* NO_X11 */ } @@ -1346,14 +1347,22 @@ void set_server_input(rfbClientPtr cl, int grab) { return; #else if (grab) { + if (!no_ultra_dpms) { + set_dpms_mode("enable"); + set_dpms_mode("off"); + force_dpms = 1; + } + process_remote_cmd("cmd=grabkbd", 0); process_remote_cmd("cmd=grabptr", 0); - set_dpms_mode("off"); - } else { process_remote_cmd("cmd=nograbkbd", 0); process_remote_cmd("cmd=nograbptr", 0); + + if (!no_ultra_dpms) { + force_dpms = 0; + } } #endif } |