XChangePointerDevice(3) change which device is the X pointer

SYNOPSIS


#include <X11/extensions/XInput.h>

Status XChangePointerDevice( Display *display,
                             XDevice *device,
                             int xaxis,
                             int yaxis);

display
       Specifies the connection to the X server.

device
       Specifies the device to be used as the X pointer.

xaxis
       Specifies the axis of the device to be used as the X
       pointer x-axis.

yaxis
       Specifies the axis of the device to be used as the X
       pointer y-axis.

DESCRIPTION

The XChangePointerDevice request causes the server to use the
specified device as the X pointer. The device must have been
opened by the client via XOpenDevice or a BadDevice error will
result. The device must support input class Valuators or a
BadMatch error will result. If the implementation does not
support use of the specified device as the X pointer, 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 = MappingPointer is sent to all clients. The
specified device becomes the X pointer, and the old X pointer
becomes accessible through the input extension protocol
requests.

XChangePointerDevice 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 via
       XOpenInputDevice, or is already one of the core X input
       devices (pointer or keyboard). This error may also occur
       if the server implementation does not support using the
       specified device as the X pointer.

BadMatch
       This error may occur if an XChangePointerDevice request
       was made specifying a device that has less than two
       valuators, or specifying a valuator index beyond the
       range supported by the device.