[Spice-devel] [patch 0/6] X11 KEYSYM input channel extension v2

Marc-André Lureau marcandre.lureau at gmail.com
Wed Oct 16 12:50:52 CEST 2013


On Wed, Oct 16, 2013 at 7:15 AM,  <dietmar at proxmox.com> wrote:
> This version adds code to directly forward keysmys to vdagent, which then
> tries to inject keysyms into X11.
>
> That way you always have correct input characters even if VM and
> client do not share the same keymap!
>
> Experiemts showed that is quite useful, but very difficult to
> implement correctly with current X11/linux.
>
> I just send this to the list to archive the work I have done so far.
> Marc already expressed that he do like the current patches, so I will
> rewrite them and post v3 soon.

Yes, but I have concerns that you should address or justify.

> Description from v1:
>
> The SPICE input channel currently only sends scancodes. Thus the
> server does not know what character was pressed (server does not know
> the client keymap).
>
> But Some SPICE applications want to use the keymap from the client
> side, and work directly with UTF input characters (for example the
> 'spiceterm' terminal emulator). The current scancode values cannot be
> used for such applications.
>
> Unfortunately, we cannot use UTF directly, because the UTF character
> set miss all special keyboard keys like function-keys. So this patch
> uses X11/gdk keyboard symbols (keysyms) instead (VNC clients also use
> that, so this makes it easy to move from VNC to SPICE). Many frameworks
> provide functions to translate keysyms to unicode
> (gdk_keyval_to_unicode, XKeySymToWideChar, ...)
>
> Another use case for this protocol extension is to generate scancodes
> at server side. This is useful when there is no way to get scancodes on
> the client side (HTML5/javascript/java clients). Qemu already has code
> to do that with the VNC input channel, so it would be easy to reuse
> that code.
>
> Changelog for v2:
>
> * fix compiler warnings
>
> * add code to directly forward keysmys to vdagent, which then
>   tries to inject keysyms into X11.
>
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel



-- 
Marc-André Lureau


More information about the Spice-devel mailing list