Gerd Hoffmann <kra...@redhat.com> writes:

>   Hi,
>
>>> What is your vnc client?  Does it support VNC_ENCODING_EXT_KEY_EVENT?
>> 
>> It's uses gvnc as a protocol library and renders via fbdev.  It reads
>> keyboard events by putting /dev/tty into mediumraw mode and uses ext key
>> events exclusively.  It has no knowledge of the guest keymap.
>
> Neat.  URL?

We haven't published yet but I keep meaning too...  It's really quite simple.

> Does the linux kernel keep track of {caps,num}lock state (+leds) with
> the keyboard in mediumraw mode?

Nope.

> Or does it expect the userspace app set the led state then?

Yup.

> No UI client (neither vnc nor spice) knows the guest keymap btw.

Well, they do actually.

gtk-vnc has key modifier tracking code.  I assume gtk-spice does too.
This code looks at the GdkEventKey::keysym which has gone through the
host keymap.  The assumption is that the host keymap == the guest keymap
at least as far as modifiers are concerned.

Take a look at key_event in vncdisplay.c in gtk-vnc.

>> I believe VMware already has a VNC extension for passing LED state
>> changes and I think having an open extension for this is a Good Thing.
>> It's a pretty obvious missing piece in the VNC protocol.
>
> Anyone tried to bug vmware to open the specs for the existing
> extension?

I have in the past but that was many years ago at this point.

Regards,

Anthony Liguori

>
> cheers,
>   Gerd


Reply via email to