Table of Contents

## Name

XChangePointerDevice - change which device is the X pointer

## Syntax

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

## Arguments

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.

## See Also

XChangeKeyboardDevice
Programming With Xlib

Table of Contents

- Name
- Syntax
- Arguments
- Description
- Diagnostics
- See Also