Imported Upstream version 1.6.1
[platform/upstream/libXi.git] / man / XChangeKeyboardDevice.txt
1 XCHANGEKEYBOARDDEVICE(libmansuffix)
2 ===================================
3
4 NAME
5 ----
6
7    XChangeKeyboardDevice - change which device is used as the X
8    keyboard
9
10 SYNOPSIS
11 --------
12
13    #include <X11/extensions/XInput.h>
14
15    Status XChangeKeyboardDevice( Display *display,
16                                  XDevice *device);
17
18    display
19           Specifies the connection to the X server.
20
21    device
22           Specifies the device to be used as the X keyboard.
23
24 DESCRIPTION
25 -----------
26
27    The XChangeKeyboardDevice request causes the server to use the
28    specified device as the X keyboard. The device must have been
29    previously opened by the requesting client via XOpenDevice or a
30    BadDevice error will result. The device must support input
31    class Keys, or a BadMatch error will result. If the server
32    implementation does not support using the requested device as
33    the X keyboard, a BadDevice error will result.
34
35    If the specified device is grabbed by another client,
36    AlreadyGrabbed is returned. If the specified device is frozen
37    by a grab on another device, GrabFrozen is returned. If the
38    request is successful, Success is returned.
39
40    If the request succeeds, a ChangeDeviceNotify event is sent to
41    all clients that have selected that event. A MappingNotify
42    event with request = MappingKeyboard is sent to all clients.
43    The specified device becomes the X keyboard and the old X
44    keyboard becomes accessible through the input extension
45    protocol requests.
46
47    XChangeKeyboardDevice can generate a BadDevice or a BadMatch
48    error.
49
50 DIAGNOSTICS
51 -----------
52
53    BadDevice
54           An invalid device was specified. The specified device
55           does not exist, has not been opened by this client via
56           XOpenInputDevice, or is already one of the core X device
57           (pointer or keyboard). This error may also occur if the
58           server implementation does not support using the
59           specified device as the X keyboard.
60
61    BadMatch
62           This error may occur if an XChangeKeyboardDevice request
63           was made specifying a device that has no keys.
64
65 SEE ALSO
66 --------
67
68    XChangePointerDevice(libmansuffix)