XChangeKeyboardDevice()

NAME

XChangeKeyboardDevice() - change which device is used as the X keyboard

SYNOPSIS

Status XChangeKeyboardDevice (Display *display, XDevice *device)

ARGUMENTS

display
Specifies the connection to the X server.
device
Specifies the device to be used as the X keyboard.

DESCRIPTION

The XChangeKeyboardDevice(3) request causes the server to use the specified device as the X keyboard. The device must have been previously opened by the requesting client through XOpenDevice(3) or a BadDevice error will result. The device must support input class Keys, or a BadMatch error will result. If the server implementation does not support using the requested device as the X keyboard, a BadDevice error will result.

If the specified device is grabbed by another client, AlreadyGrabbed is returned. If the specified device is frozen by a grab on another device, GrabFrozen is returned. If the request is successful, Success is returned.

If the request succeeds, a ChangeDeviceNotify event is sent to all clients that have selected that event. A MappingNotify event with request = MappingKeyboard is sent to all clients. The specified device becomes the X keyboard and the old X keyboard becomes accessible through the input extension protocol requests.

XChangeKeyboardDevice(3) can generate a BadDevice or a BadMatch error.

DIAGNOSTICS

BadDevice
An invalid device was specified. The specified device does not exist, has not been opened by this client with XOpenInputDevice(), or is already one of the core X device (pointer or keyboard). This error might also occur if the server implementation does not support using the specified device as the X keyboard.
BadMatch
This error might occur if an XChangeKeyboardDevice(3) request was made specifying a device that has no keys.

SEE ALSO

XChangePointerDevice()

Programming With Xlib