View Single Post
Posts: 23 | Thanked: 9 times | Joined on Feb 2010
#59
Originally Posted by cpulvermacher View Post
Could you try running x11vnc with the -dk option and see what it prints when you press shift/fn + other keys? (You may want to use a paste bin for the output)
Yes, great, thanks for pointing out the way to get a debug log

A more full version of the log with all the preamble is at pastebin:
http://pastebin.com/F1S7KwAG

But the problem appears to be that PresenceVNC sends the Shift and Fn keypresses as well, and they are applied server-side by X11VNC, effectively cancelling out the application by PresenceVNC that was done before sending to the server:
Code:
####################################
# Pressing Shift+t ('T' character)
####################################
07/09/2010 10:12:18 # keyboard(down, 0xffe1 "Shift_L") uip=0  175.8804
07/09/2010 10:12:18 modifier_tweak_keyboard: down keysym=0xffe1
07/09/2010 10:12:18 modifier_tweak_keyboard: KeySym 0xffe1 "Shift_L" -> KeyCode 0x32
07/09/2010 10:12:18 XTestFakeKeyEvent(dpy, keycode=0x32 "Shift_L", down)
07/09/2010 10:12:18 calling XTestFakeKeyEvent(50, 1)  175.8806
07/09/2010 10:12:18 # keyboard(down, 0x54 "T") uip=0  176.0173
07/09/2010 10:12:18 modifier_tweak_keyboard: down keysym=0x54
07/09/2010 10:12:18 tweak_mod: Start:  down=1 index=3 mod_state=0x1 is_shift=1
07/09/2010 10:12:18 XTestFakeKeyEvent(dpy, keycode=0x32 "Shift_L", up)
07/09/2010 10:12:18 calling XTestFakeKeyEvent(50, 0)  176.0177
07/09/2010 10:12:18 tweak_mod: Finish: down=1 index=3 mod_state=0x1 is_shift=1
07/09/2010 10:12:18 modifier_tweak_keyboard: KeySym 0x54 "T" -> KeyCode 0x1c
07/09/2010 10:12:18 XTestFakeKeyEvent(dpy, keycode=0x1c "t", down)
07/09/2010 10:12:18 calling XTestFakeKeyEvent(28, 1)  176.0178
07/09/2010 10:12:18 tweak_mod: Start:  down=0 index=3 mod_state=0x1 is_shift=1
07/09/2010 10:12:18 XTestFakeKeyEvent(dpy, keycode=0x32 "Shift_L", down)
07/09/2010 10:12:18 calling XTestFakeKeyEvent(50, 1)  176.0178
07/09/2010 10:12:18 tweak_mod: Finish: down=0 index=3 mod_state=0x1 is_shift=1
07/09/2010 10:12:18 # keyboard(up, 0x54 "T") uip=0  176.2423
07/09/2010 10:12:18 modifier_tweak_keyboard: up keysym=0x54
07/09/2010 10:12:18 modifier_tweak_keyboard: KeySym 0x54 "T" -> KeyCode 0x1c
07/09/2010 10:12:18 XTestFakeKeyEvent(dpy, keycode=0x1c "t", up)
07/09/2010 10:12:18 calling XTestFakeKeyEvent(28, 0)  176.2424


A similar thing happens with Fn+Space, with PresenceVNC sending a "ISO_Level3_Shift" down event, followed by an "at" character, which X11VNC then converts back to a "2" because the L3_Shift is applied.

Thanks so much for your help.

Last edited by karatestarfish; 2010-09-07 at 02:38.
 

The Following User Says Thank You to karatestarfish For This Useful Post: