summaryrefslogtreecommitdiff
path: root/XInput.h
diff options
context:
space:
mode:
authorPeter Hutterer <peter@cs.unisa.edu.au>2007-11-13 11:29:06 +1030
committerPeter Hutterer <peter@cs.unisa.edu.au>2007-11-13 11:29:06 +1030
commit14e6e7bad06a560ec943654b94e05d4293709f2c (patch)
treee8d6707ed2a4d6a4f47867c9318392c385697a96 /XInput.h
parent685a2dd32736956f5175afb9bc5773c829725fea (diff)
Add DeviceClassesChangedEvent.
Diffstat (limited to 'XInput.h')
-rw-r--r--XInput.h27
1 files changed, 23 insertions, 4 deletions
diff --git a/XInput.h b/XInput.h
index 459ea78..ba3bf6a 100644
--- a/XInput.h
+++ b/XInput.h
@@ -186,6 +186,8 @@ extern "C" {
#define DeviceBusy(dpy,error) _xidevicebusy(dpy, &error)
+typedef struct _XAnyClassinfo *XAnyClassPtr;
+
/***************************************************************
*
* DeviceKey events. These events are sent by input devices that
@@ -510,7 +512,26 @@ typedef struct {
} XDeviceHierarchyChangedEvent;
/*
- * RawDeviceEvent.
+ * Notifies the client that the classes have been changed. This happens when
+ * the slave device that sends through the master changes.
+ */
+typedef struct {
+ int type; /* GenericEvent */
+ unsigned long serial; /* # of last request processed by server */
+ Bool send_event; /* true if this came from a SendEvent request */
+ Display *display; /* Display the event was read from */
+ int extension; /* XI extension offset */
+ int evtype; /* XI_DeviceHierarchyChangedNotify */
+ Time time;
+ XID deviceid; /* id of the device that changed */
+ XID slaveid; /* id of the slave device that caused the
+ change */
+ int num_classes;
+ XAnyClassPtr inputclassinfo; /* same as in XDeviceInfo */
+} XDeviceClassesChangedEvent;
+
+/*
+ * RawDeviceEvent.
* Data as received directly from the device.
*/
typedef struct {
@@ -522,7 +543,7 @@ typedef struct {
int evtype; /* XI_RawDeviceEvent */
int event_type; /* MotionNotify, ButtonPress or
ButtonRelease*/
- int deviceid;
+ XID deviceid;
int buttons;
int num_valuators;
int first_valuator;
@@ -799,8 +820,6 @@ typedef struct {
*
*/
-typedef struct _XAnyClassinfo *XAnyClassPtr;
-
typedef struct _XAnyClassinfo {
#if defined(__cplusplus) || defined(c_plusplus)
XID c_class;