---
name: "xcb_xkb_get_controls"
section: "3"
platform: "linux"
package: "libxcb"
version: "1.17.0-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/xcb_xkb_get_controls"
---

# xcb\_xkb\_get\_controls(3)

## NAME

xcb\_xkb\_get\_controls -

## SYNOPSIS

**#include \<xcb/xkb.h\>**

### Request function

xcb\_xkb\_get\_controls\_cookie\_t **xcb\_xkb\_get\_controls**(xcb\_connection\_t \**conn*, xcb\_xkb\_device\_spec\_t *deviceSpec*);

### Reply datastructure

```

typedef struct xcb_xkb_get_controls_reply_t {
    uint8_t  response_type;
    uint8_t  deviceID;
    uint16_t sequence;
    uint32_t length;
    uint8_t  mouseKeysDfltBtn;
    uint8_t  numGroups;
    uint8_t  groupsWrap;
    uint8_t  internalModsMask;
    uint8_t  ignoreLockModsMask;
    uint8_t  internalModsRealMods;
    uint8_t  ignoreLockModsRealMods;
    uint8_t  pad0;
    uint16_t internalModsVmods;
    uint16_t ignoreLockModsVmods;
    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 accessXOption;
    uint16_t accessXTimeout;
    uint16_t accessXTimeoutOptionsMask;
    uint16_t accessXTimeoutOptionsValues;
    uint8_t  pad1[2];
    uint32_t accessXTimeoutMask;
    uint32_t accessXTimeoutValues;
    uint32_t enabledControls;
    uint8_t  perKeyRepeat[32];
} xcb_xkb_get_controls_reply_t;
```

### Reply function

xcb\_xkb\_get\_controls\_reply\_t \***xcb\_xkb\_get\_controls\_reply**(xcb\_connection\_t \**conn*, xcb\_xkb\_get\_controls\_cookie\_t *cookie*, xcb\_generic\_error\_t \*\**e*);\

## REQUEST ARGUMENTS

- *conn*

  The XCB connection to X11.

- *deviceSpec*

  TODO: NOT YET DOCUMENTED.

## REPLY FIELDS

- *response\_type*

  The type of this reply, in this case *XCB\_XKB\_GET\_CONTROLS*. This field is also present in the *xcb\_generic\_reply\_t* and can be used to tell replies apart from each other.

- *sequence*

  The sequence number of the last request processed by the X11 server.

- *length*

  The length of the reply, in words (a word is 4 bytes).

- *deviceID*

  TODO: NOT YET DOCUMENTED.

- *mouseKeysDfltBtn*

  TODO: NOT YET DOCUMENTED.

- *numGroups*

  TODO: NOT YET DOCUMENTED.

- *groupsWrap*

  TODO: NOT YET DOCUMENTED.

- *internalModsMask*

  TODO: NOT YET DOCUMENTED.

- *ignoreLockModsMask*

  TODO: NOT YET DOCUMENTED.

- *internalModsRealMods*

  TODO: NOT YET DOCUMENTED.

- *ignoreLockModsRealMods*

  TODO: NOT YET DOCUMENTED.

- *internalModsVmods*

  TODO: NOT YET DOCUMENTED.

- *ignoreLockModsVmods*

  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.

- *accessXOption*

  TODO: NOT YET DOCUMENTED.

- *accessXTimeout*

  TODO: NOT YET DOCUMENTED.

- *accessXTimeoutOptionsMask*

  TODO: NOT YET DOCUMENTED.

- *accessXTimeoutOptionsValues*

  TODO: NOT YET DOCUMENTED.

- *accessXTimeoutMask*

  TODO: NOT YET DOCUMENTED.

- *accessXTimeoutValues*

  TODO: NOT YET DOCUMENTED.

- *enabledControls*

  TODO: NOT YET DOCUMENTED.

- *perKeyRepeat*

  TODO: NOT YET DOCUMENTED.

## DESCRIPTION

## RETURN VALUE

Returns an *xcb\_xkb\_get\_controls\_cookie\_t*. Errors have to be handled when calling the reply function *xcb\_xkb\_get\_controls\_reply*.

If you want to handle errors in the event loop instead, use *xcb\_xkb\_get\_controls\_unchecked*. See **[xcb-requests(3)](/xcb-requests/3.md)** for details.

## ERRORS

This request does never generate any errors.

## SEE ALSO

## AUTHOR

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