Translating XkbApplyMappingChange() et al. to xcb-xkb

Ran Benita ran234 at gmail.com
Fri Oct 17 12:41:22 PDT 2014


On Fri, Oct 17, 2014 at 03:39:17PM -0300, Laércio de Sousa wrote:
> Hi there!
> 
> I'm currently working on a full XCB backend for xf86-video-nested driver.
> I'm able to translate all Xlib-related code in file xlibclient.c to XCB,
> except some Xkb related parts which force me to maintain a minimal XCB-Xlib
> mix.

I am sorry, I am not familiar with this code, but I can offer some
pointers.

> I would like to translate some Xkb functions used in xf86-video-nested to
> xcb-xkb in order to get rid of Xlib stuff, namely:
> 
> XkbGetKeyboard()
> 
> XkbGetControls()

You can do the equivalent of these calls using xcb-xkb. From my quick
read it appears you use these calls to fill up the server's XKB data
structures. I have done something similar, but instead filling somewhat
equivalent structures in the libxkbcommon library (mostly like the
XkbGetKeyboard function; we don't need most XKB controls. But the call
is there). It's a lot of work, but maybe it can help:
https://github.com/xkbcommon/libxkbcommon/blob/master/src/x11/keymap.c

Note that XkbGetKeyboard translates to many protocol requests.

> XkbApplyMappingChange()
> 
> XkbDDXChangeControls()
> 
> XkbCopyDeviceKeymap()

These are internal server functions/API, no xlib ones. So I imagine you
can keep them?

Ran

> Is it currently possible to translate these functions to xcb-xkb? The
> relevant files in which these functions appear are the following:
> 
> http://cgit.freedesktop.org/xorg/driver/xf86-video-nested/tree/src/xlibclient.c
> http://cgit.freedesktop.org/xorg/driver/xf86-video-nested/tree/src/nested_input.c
> -- 
> *Laércio de Sousa*
> *Orientador de Informática*
> *Escola Municipal "Professor Eulálio Gruppi"*
> *Rua Ismael da Silva Mello, 559, Mogi Moderno*
> *Mogi das Cruzes - SPCEP 08717-390*
> Telefone: (11) 4726-8313

> _______________________________________________
> xorg-devel at lists.x.org: X.Org development
> Archives: http://lists.x.org/archives/xorg-devel
> Info: http://lists.x.org/mailman/listinfo/xorg-devel



More information about the xorg-devel mailing list