diff options
Diffstat (limited to 'x11vnc/remote.c')
| -rw-r--r-- | x11vnc/remote.c | 27 | 
1 files changed, 27 insertions, 0 deletions
| diff --git a/x11vnc/remote.c b/x11vnc/remote.c index e607707..e01f08c 100644 --- a/x11vnc/remote.c +++ b/x11vnc/remote.c @@ -2246,6 +2246,33 @@ char *process_remote_cmd(char *cmd, int stringonly) {  		rfbLog("remote_cmd: disabling -clear_keys mode.\n");  		clear_mods = 0; +	} else if (!strcmp(p, "clear_all")) { +		if (query) { +			snprintf(buf, bufn, "ans=%s:%d", p, +			    clear_mods == 3); +			goto qry; +		} +		rfbLog("remote_cmd: doing clear_all action.\n"); +		clear_mods = 3; +		clear_keys(); +		clear_locks(); + +	} else if (!strcmp(p, "clear_locks")) { +		NOTAPP +		rfbLog("remote_cmd: doing clear_locks action.\n"); +		clear_locks(); + +	} else if (!strcmp(p, "keystate")) { +		int i, state[256]; +		NOTAPP +		for (i=0; i<256; i++) { +			state[i] = 0; +		} +		get_keystate(state); +		for (i=0; i<256; i++) { +			fprintf(stderr, "keystate[%03d] %d\n", i, state[i]); +		} +  	} else if (strstr(p, "remap") == p) {  		char *before, *old;  		COLON_CHECK("remap:") | 
