[Xcb] [Bug 89560] xcb_xkb_get_kbd_by_name not working

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Sat Mar 14 04:34:44 PDT 2015


https://bugs.freedesktop.org/show_bug.cgi?id=89560

--- Comment #1 from Konstantin <ria.freelander at gmail.com> ---
Just read all about this bug and related changes (expand XKB support in XCB). I
cannot wait until full correct realization of XKB arrives.

For now I am want a replacement for this in setxkbmap:
    if (verbose > 5)
    {
        MSG("Trying to build keymap using the following components:\n");
        dumpNames(False, True);
    }
    /* Upload the new description to the server. */
    if (dpy && !print && !query)
    {
        XkbComponentNamesRec cmdNames = {
            .keymap = settings.keymap.value,
            .keycodes = settings.keycodes.value,
            .types = settings.types.value,
            .compat = settings.compat.value,
            .symbols = settings.symbols.value,
            .geometry = settings.geometry.value
        };

        xkb = XkbGetKeyboardByName(dpy, deviceSpec, &cmdNames,
                                   XkbGBN_AllComponentsMask,
                                   XkbGBN_AllComponentsMask &
                                   (~XkbGBN_GeometryMask), True);
        if (!xkb)
        {
            ERR("Error loading new keyboard description\n");
            return False;
        }

To fill XkbComponentNames-like struct, I am using libxkbcommon and regexes from
GLib. So the one problem is replicate XkbGetKeyboardByName request to set
description to server.
It is even possible with use current XCB? For example, using raw
xcb_send_request (I am tried, but got XI_BadDevice)?
If yes, can you post a simple how to for it?

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/xcb/attachments/20150314/330b3e99/attachment.html>


More information about the Xcb mailing list