DOKK / manpages / debian 12 / libx11-doc / XkbLockModifiers.3.en
XkbLockModifiers(3) XKB FUNCTIONS XkbLockModifiers(3)

XkbLockModifiers - Locks and unlocks any of the eight real keyboard modifiers

Bool XkbLockModifiers (Display *display, unsigned int device_spec, unsigned int affect, unsigned int values);

connection to the X server
device ID, or XkbUseCoreKbd
mask of real modifiers whose lock state is to change
1 => lock, 0 => unlock; only for modifiers selected by affect

XkbLockModifiers sends a request to the server to lock the real modifiers selected by both affect and values and to unlock the real modifiers selected by affect, but not selected by values. XkbLockModifiers does not wait for a reply from the server. It returns True if the request was sent, and False otherwise.

The functions in this section that change the use of modifiers use a mask in the parameter affect. It is a bitwise inclusive OR of the legal modifier masks:

Table 1 Real Modifier Masks
Mask
ShiftMask
LockMask
ControlMask
Mod1Mask
Mod2Mask
Mod3Mask
Mod4Mask
Mod5Mask

The XkbLockModifiers function returns True if a request is sent to the server to lock the real modifiers selected by both affect and values and to unlock the real modifiers selected by affect, but not selected by values.
The XkbLockModifiers function returns False if the request was not sent.
libX11 1.8.4 X Version 11