xcb_xkb_set_debugging_flags(3)
π¦ xcb_xkb_set_debugging_flags π
okay bestie, welcome to a page from the XCB Requests manual β yes that's the manual name, we're in XCB land now, tie your hair back. This one is about a request function that pokes at XKB debugging flags, and I'm gonna walk you through every single crumb of it, no skips, no shortcuts, periodt. π«Ά
β¨ NAME β¨
xcb_xkb_set_debugging_flags β and that is genuinely the whole section. No little dash-description, no vibe explanation, nothing. The manpage said "the name speaks for itself" and honestly? respect the confidence. π
β¨ SYNOPSIS β¨
the include you need π
#include <xcb/xkb.h>
Request function πΈ
xcb_xkb_set_debugging_flags_cookie_t
xcb_xkb_set_debugging_flags(xcb_connection_t *conn,
uint16_t msgLength, uint32_t affectFlags, uint32_t flags,
uint32_t affectCtrls, uint32_t ctrls, const
xcb_xkb_string8_t *message);
Reply datastructure π§
typedef struct xcb_xkb_set_debugging_flags_reply_t {
uint8_t response_type;
uint8_t pad0;
uint16_t sequence;
uint32_t length;
uint32_t currentFlags;
uint32_t currentCtrls;
uint32_t supportedFlags;
uint32_t supportedCtrls;
uint8_t pad1[8];
} xcb_xkb_set_debugging_flags_reply_t;
Reply function π
xcb_xkb_set_debugging_flags_reply_t
*xcb_xkb_set_debugging_flags_reply(xcb_connection_t *conn,
xcb_xkb_set_debugging_flags_cookie_t cookie,
xcb_generic_error_t **e);
π REQUEST ARGUMENTS π
okay so here's everything you hand over when you make the request. heads up: most of these are the classic "we never actually wrote this down" situation, and I am not gonna invent lore for you. π
connβ your XCB connection to X11. the whole pipeline, the main character, the one you bring everywhere. π«ΆmsgLengthβTODO: NOT YET DOCUMENTED.</p> yeah. they said what they said.affectFlagsβTODO: NOT YET DOCUMENTED.</p>flagsβTODO: NOT YET DOCUMENTED.</p>affectCtrlsβTODO: NOT YET DOCUMENTED.</p>ctrlsβTODO: NOT YET DOCUMENTED.</p>messageβTODO: NOT YET DOCUMENTED.</p> (it's aconst xcb_xkb_string8_t *, so like, it's some string, but the docs are staying mysterious β¨)
π« REPLY FIELDS π«
when the server finally replies, this is what you're unwrapping. π
response_typeβ the type of this reply, which in this case isXCB_XKB_SET_DEBUGGING_FLAGS. this field is also hanging out inxcb_generic_reply_t, so you can use it to tell your replies apart from each other when they're all crowding your inbox. πsequenceβ the sequence number of the last request the X11 server actually processed. your lil receipt number, iykyk. π§Ύlengthβ how long the reply is, in words. and reminder bestie, a word is 4 bytes. πcurrentFlagsβTODO: NOT YET DOCUMENTED.</p>currentCtrlsβTODO: NOT YET DOCUMENTED.</p>supportedFlagsβTODO: NOT YET DOCUMENTED.</p>supportedCtrlsβTODO: NOT YET DOCUMENTED.</p>
not me listing four fields in a row that the docs just refuse to explain π the structure is real, the descriptions are simply on vacation. that's all we got, and that's all we're passing along.
π DESCRIPTION π
yeahβ¦ this section is empty. like, genuinely nothing here. no prose, no lore, no nothing. we move. π
β RETURN VALUE β
Hands you back an xcb_xkb_set_debugging_flags_cookie_t. πͺ And here's the important part: errors have to be handled when you call the reply function xcb_xkb_set_debugging_flags_reply.
But if you'd rather catch your errors in the event loop instead, use xcb_xkb_set_debugging_flags_unchecked. That whole flow is explained over in xcb-requests(3), so go read that one too, bestie. π
π ERRORS π
This request does never generate any errors. not a single one. zero. none. the drama-free request of the century. π
π₯ SEE ALSO π₯
also empty. the manpage really said "no further reading, go touch grass." π±
π«Ά AUTHOR π«Ά
Generated from xkb.xml. If you spot something that needs fixing or improving, hit up xcb@lists.freedesktop.org β they take corrections and improvements, fr fr. π
okay that's the whole page, you ate it, you understood it, you're iconic. π thanks for reading with me β this one came from X Version 11, libxcb 1.17.0, and yes, xcb_xkb_set_debugging_flags(3) is the girl we've been talking about this whole time. now go forth and set those debugging flags, whatever they may be. mwah. π
β¨π
π¦ where this page comes from
- alpine 3.22: libxcb-doc 1.17.0-r0 Β· MIT
- alpine 3.23: libxcb-doc 1.17.0-r1 Β· MIT
- alpine 3.24: libxcb-doc 1.17.0-r2 Β· MIT
- arch rolling: libxcb 1.17.0-1 Β· X11
- centos-stream 10: libxcb-devel 1.17.0-3.el10 Β· X11
- debian trixie: libxcb-doc 1.17.0-2
- fedora 43: libxcb-devel 1.17.0-6.fc43 Β· X11
- fedora 43: libxcb-devel 1.17.0-6.fc43 Β· X11
- fedora 44: libxcb-devel 1.17.0-7.fc44 Β· X11
- fedora 44: libxcb-devel 1.17.0-7.fc44 Β· X11
- nixpkgs unstable: libxcb 1.17.0
- opensuse-leap 16.0: libxcb-devel-doc 1.17.0-160000.2.2 Β· MIT
- ubuntu questing: libxcb-doc 1.17.0-2build1
- ubuntu resolute: libxcb-doc 1.17.0-2ubuntu1
- ubuntu stonking: libxcb-doc 1.17.0-2ubuntu1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms