GNOME Bugzilla – Bug 562537
gtk-vnc doesn't send NumLock key event
Last modified: 2012-11-19 09:09:23 UTC
This bug is found by Takao. We port gtk-vnc 0.3.7 and vinagre 2.24.1 in Solaris. To reproduce: 1. Log into GNOME session in one sever. 2. Invoke vino-preferences and enable vino-server in the server. 3. Launch vinagre on another client and connect to the vino-server. 4. Try to send NumLock key from vinagre client to vino-server. Then the remote session doesn't receive the NumLock status. I think this bug should belong to gtk-vnc, not vinagre. Please correct me if I'm wrong.
This bug can be reproduce on Ubuntu 8.10, which has gtk-vnc 0.3.7 and vinagre 2.24.1 installed.
Hello, Halton. gtk-vnc 0.3.8 was released last week. It fixes a number of issues related to keyboard handling. Could you try it?
John, this bug still reproducible in gtk-vnc 0.3.8.
OK, please, run vinagre with the command line option --gtk-vnc-debug and reproduce this bug. Then paste here the output.
Created attachment 126006 [details] debug output of vinagre --gtk-vnc-debug
(In reply to comment #4) > OK, please, run vinagre with the command line option --gtk-vnc-debug and > reproduce this bug. Then paste here the output. > Jonh, as your request. What I did is (My NumLock key is off initially): 1) vinagre --gtk-vnc-debug rebound|grep -v FramebufferUpdate|grep -v Expose> out.txt 2) I press NumLock, and press '2','4','6','8' 3) Do 2) again. 4) quit vinagre Please check out.txt in attachments
I have been unable to reproduce this problem in current GTK-VNC using either a normal VNC server, or QEMU/KVM VNC server. In all cases the remote desktop sees the "NumLock" key presses that you'd expect. I think this could well be a case of a platform-specific issue with the local X server keymapping code, which historically needs to be ported to each platform separately. In 0.4.1 release we rewrote this code completely commit e0910397d6ba1eca3d968c98a2105c1a7ead7fd7 Author: Daniel P. Berrange <berrange@redhat.com> Date: Fri Jul 9 19:30:54 2010 +0100 Rewrite keymap code to work on more platforms The current keymap code assumes an Xorg server on Linux with either evdev or kbd drivers. This adds heuristics to detect XQuartz (Xorg on OS-X) and XWin (Xorg on Cygwin). Further it adds support for native GDK on OS-X and Win32. I'm not sure that this would fix solaris compatibility, but testing with the latest 0.5.0 release of GTK-VNC might help us identify the problem more clearly.
Let's presume the issue is fixed by now. If it's not, please reopen this bugreport.