xcb_xkb_set_controls(3)

πŸ“¦
version 1.17.0 Β· 4 versions
, in alpine 3.22, alpine 3.23, alpine 3.24, arch rolling, centos-stream 10, debian trixie, fedora 43, fedora 44, nixpkgs unstable, opensuse-leap 16.0, ubuntu questing, ubuntu resolute, ubuntu stonking

✨ xcb_xkb_set_controls ✨

okay bestie, welcome to the xcb_xkb_set_controls page, it's a classic XCB Requests moment and honestly? it's giving "underdocumented but iconic". let's get into it πŸ’…


🌸 NAME 🌸

xcb_xkb_set_controls β€” (the NAME line is literally just the function name with nothing after it, no cap, the original is out here with zero explanation and we respect the mystery 🫢)


πŸ¦‹ SYNOPSIS πŸ¦‹

#include <xcb/xkb.h>

Request function

xcb_void_cookie_t xcb_xkb_set_controls(xcb_connection_t *conn,
       xcb_xkb_device_spec_t deviceSpec, uint8_t affectInternalRealMods,
       uint8_t internalRealMods, uint8_t affectIgnoreLockRealMods,
       uint8_t ignoreLockRealMods, uint16_t affectInternalVirtualMods,
       uint16_t internalVirtualMods,
       uint16_t affectIgnoreLockVirtualMods,
       uint16_t ignoreLockVirtualMods, uint8_t mouseKeysDfltBtn,
       uint8_t groupsWrap, uint16_t accessXOptions,
       uint32_t affectEnabledControls, uint32_t enabledControls,
       uint32_t changeControls, uint16_t repeatDelay,
       uint16_t repeatInterval, uint16_t slowKeysDelay,
       uint16_t debounceDelay, uint16_t mouseKeysDelay,
       uint16_t mouseKeysInterval, uint16_t mouseKeysTimeToMax,
       uint16_t mouseKeysMaxSpeed, int16_t mouseKeysCurve,
       uint16_t accessXTimeout, uint32_t accessXTimeoutMask,
       uint32_t accessXTimeoutValues,
       uint16_t accessXTimeoutOptionsMask,
       uint16_t accessXTimeoutOptionsValues, const
       uint8_t *perKeyRepeat);

look at that signature. thirty-one arguments. she's long and she knows it πŸ’–


πŸŽ€ REQUEST ARGUMENTS πŸŽ€

bestie I'm gonna be so real with you, the original docs for every single one of these say the exact same thing, so I'm giving you the honest-to-god truth for each one: nobody wrote it down. that's not me being lazy, that is literally what the page says. here we go, one by one, no skips 🌈

  • conn β€” your XCB connection to X11. the classic. the moment. the vibe. πŸ”₯
  • deviceSpec β€” TODO: NOT YET DOCUMENTED.
  • affectInternalRealMods β€” TODO: NOT YET DOCUMENTED.
  • internalRealMods β€” TODO: NOT YET DOCUMENTED.
  • affectIgnoreLockRealMods β€” TODO: NOT YET DOCUMENTED.
  • ignoreLockRealMods β€” TODO: NOT YET DOCUMENTED.
  • affectInternalVirtualMods β€” TODO: NOT YET DOCUMENTED.
  • internalVirtualMods β€” TODO: NOT YET DOCUMENTED.
  • affectIgnoreLockVirtualMods β€” TODO: NOT YET DOCUMENTED.
  • ignoreLockVirtualMods β€” TODO: NOT YET DOCUMENTED.
  • mouseKeysDfltBtn β€” TODO: NOT YET DOCUMENTED.
  • groupsWrap β€” TODO: NOT YET DOCUMENTED.
  • accessXOptions β€” TODO: NOT YET DOCUMENTED.
  • affectEnabledControls β€” TODO: NOT YET DOCUMENTED.
  • enabledControls β€” TODO: NOT YET DOCUMENTED.
  • changeControls β€” TODO: NOT YET DOCUMENTED.
  • repeatDelay β€” TODO: NOT YET DOCUMENTED.
  • repeatInterval β€” TODO: NOT YET DOCUMENTED.
  • slowKeysDelay β€” TODO: NOT YET DOCUMENTED.
  • debounceDelay β€” TODO: NOT YET DOCUMENTED.
  • mouseKeysDelay β€” TODO: NOT YET DOCUMENTED.
  • mouseKeysInterval β€” TODO: NOT YET DOCUMENTED.
  • mouseKeysTimeToMax β€” TODO: NOT YET DOCUMENTED.
  • mouseKeysMaxSpeed β€” TODO: NOT YET DOCUMENTED.
  • mouseKeysCurve β€” TODO: NOT YET DOCUMENTED.
  • accessXTimeout β€” TODO: NOT YET DOCUMENTED.
  • accessXTimeoutMask β€” TODO: NOT YET DOCUMENTED.
  • accessXTimeoutValues β€” TODO: NOT YET DOCUMENTED.
  • accessXTimeoutOptionsMask β€” TODO: NOT YET DOCUMENTED.
  • accessXTimeoutOptionsValues β€” TODO: NOT YET DOCUMENTED.
  • perKeyRepeat β€” TODO: NOT YET DOCUMENTED.
not a single one of these is documented yet 😭 that's the whole energy of this page. thirty-one placeholders and a dream.

πŸ’œ DESCRIPTION πŸ’œ

okay so. the DESCRIPTION section? it's empty. there is nothing in it. zero words. the void. the silence. she said "no thoughts, head empty" and meant it πŸ™ˆ


⭐ RETURN VALUE ⭐

it hands you back an xcb_void_cookie_t. that's it, that's the return. and because it's a void cookie, any errors (if there even are any) have to be handled in the event loop, not right here on the spot.

if you'd rather catch errors immediately with xcb_request_check, then use xcb_xkb_set_controls_checked instead. full details live in xcb-requests(3) β€” go read it, it's worth it 🫢


πŸ’€ ERRORS πŸ’€

This request does never generate any errors.

(yes queen, zero errors, not one, that's the actual sentence and we're keeping it exactly like that πŸ‘‘)


🧚 SEE ALSO 🧚

nothing listed here! the SEE ALSO section is empty. no references, no friends, just vibes πŸ¦‹


🌟 AUTHOR 🌟

Generated from xkb.xml. Contact xcb@lists.freedesktop.org for corrections and improvements.

like, please do email them, bestie, this page needs it πŸ’–


and that's the whole thing! this page is from X Version 11, libxcb 1.17.0, and the date on it is xcb_xkb_set_controls(3)'s own footer moment β€” so shoutout to that version and that release for giving us thirty-one undocumented arguments to obsess over. slay, stay curious, and always read your xcb-requests(3). periodt πŸ’…βœ¨πŸŽ€