Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
XQUERYDEVICESTATE(3)					    XQUERYDEVICESTATE(3)

NAME
     XQueryDeviceState - query the state of an extension input device.

SYNOPSIS
     #include <X11/extensions/XInput.h>

     XDeviceState* XQueryDeviceState( Display *display,
				      XDevice *device);

     display
	    Specifies the connection to the X server.

     device
	    Specifies the device whose state is to be queried.

DESCRIPTION
	 The XQueryDeviceState request queries the state of an input
	 device. The current state of keys and buttons (up or down), and
	 valuators (current value) on the device is reported by this
	 request. Each key or button is represented by a bit in the
	 XDeviceState structure that is returned. Valuators on the
	 device report 0 if they are reporting relative information, and
	 the current value if they are reporting absolute information.

	 XQueryDeviceState can generate a BadDevice error.

	 Structures:

	 The XDeviceState structure contains:

	 typedef struct {
	     XID device_id;
	     int num_classes;
	     XInputClass *data;
	 } XDeviceState;

	 The XValuatorState structure contains:

	 typedef struct {
	     unsigned char class;
	     unsigned char length;
	     unsigned char num_valuators;
	     unsigned char mode;
	     int *valuators;
	 } XValuatorState;

	 The XKeyState structure contains:

	 typedef struct {
	     unsigned char class;
	     unsigned char length;
	     short     num_keys;
	     char keys[32];
	 } XKeyState;

	 The XButtonState structure contains:

	 typedef struct {
	     unsigned char class;
	     unsigned char length;
	     short     num_buttons;
	     char buttons[32];
	 } XButtonState;

DIAGNOSTICS
	 BadDevice
		An invalid device was specified. The specified device
		does not exist or has not been opened by this client via
		XOpenInputDevice. This error may also occur if some
		other client has caused the specified device to become
		the X keyboard or X pointer device via the
		XChangeKeyboardDevice or XChangePointerDevice requests.

				   05/18/2026		    XQUERYDEVICESTATE(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=XQueryDeviceState&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help