summaryrefslogtreecommitdiff
path: root/XIproto.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 /XIproto.h
parent685a2dd32736956f5175afb9bc5773c829725fea (diff)
Add DeviceClassesChangedEvent.
Diffstat (limited to 'XIproto.h')
-rw-r--r--XIproto.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/XIproto.h b/XIproto.h
index efb7e83..ab676ef 100644
--- a/XIproto.h
+++ b/XIproto.h
@@ -120,6 +120,7 @@ struct tmask
/* GE events */
#define XI_DeviceHierarchyChangedNotify 0
+#define XI_DeviceClassesChangedNotify 1
#define XI_RawDeviceEvent 2
@@ -2129,6 +2130,34 @@ typedef struct
CARD32 pad5 B32;
} deviceHierarchyChangedEvent;
+/*********************************************************
+ * DeviceClassesChangedEvent
+ *
+ * Send whenever a master device changes classes (due to another slave device
+ * sending events).
+ *
+ * Event is followed by the same type of class list as used in the
+ * ListInputDevices request.
+ */
+
+typedef struct
+ {
+ BYTE type; /* always GenericEvent */
+ BYTE extension; /* XI extension offset */
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD16 evtype B16; /* XI_DeviceClassesChangedNotify */
+ CARD8 deviceid; /* id of master */
+ CARD8 new_slave; /* id of new slave */
+ CARD32 time B32;
+ CARD8 num_classes;
+ CARD8 pad0;
+ CARD16 pad1 B16;
+ CARD32 pad2 B32;
+ CARD32 pad4 B32;
+ CARD32 pad5 B32;
+ } deviceClassesChangedEvent;
+
#undef Window
#undef Time