[PATCH] Correctly handle extended RDP keycodes

Ran Benita ran234 at gmail.com
Sun Apr 7 09:11:44 PDT 2013


On Sun, Apr 07, 2013 at 12:08:11PM +0200, Hardening wrote:
> On 07/04/2013 09:32, Ran Benita wrote:
> > On Sat, Apr 06, 2013 at 11:39:26PM +0200, Hardening wrote:
> >> The keycodes received by the FreeRDP server aren't evdev keycodes.
> 
> [...]
> > 
> > Hi,
> > 
> > Your approach is almost certainly the best approach. I'll just like to
> > mention for the archive: the underlying keymap library (libxkbcommon)
> > actually has a keycode abstraction, i.e. you can map them however you
> > want with a "keycodes" file (e.g. /usr/share/X11/xkb/keycodes/evdev -
> > note that with xkbcommon there is no limit to the number of keycodes or
> > the length of their names). So if you have a say in the XKB keymap that
> > is used (as the compositor does afaik), you can do it like that. But
> > again just translating to evdev is probably the easiest and least
> > confusing way to do it.
> 
> Hi,
> to precise things a little, RDP use its own abstract keycodes. When a
> key is pressed on the client side, the client have to compute a virtual
> keycode. This virtual keycode is sent over the wire, and the server
> treats the virtual keycode with the layout sent during the negociation.
> 
> I have the impression that it's almost like if the interpretation of the
> keycodes was done only on the serverside. I'm not sure to understand all
> aspects of this subject, but the patch did the trick for me (french
> keyboard fully functional).

Oh yes, I've confused things a little. I thought you were doing the
conversion the other way around (windows VK -> evdev), even though the
commit message is pretty clear.. My comment doesn't make sense then.

Ran


More information about the wayland-devel mailing list