[PATCH] Added confine protocol.

Philipp Reh sefi at s-e-f-i.de
Thu May 5 07:04:58 PDT 2011


---
 XI2proto.h |   83 ++++++++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 62 insertions(+), 21 deletions(-)

diff --git a/XI2proto.h b/XI2proto.h
index 84574a5..5ded2f3 100644
--- a/XI2proto.h
+++ b/XI2proto.h
@@ -71,27 +71,29 @@
 /**
  * XI2 Request opcodes
  */
-#define X_XIQueryPointer                40
-#define X_XIWarpPointer                 41
-#define X_XIChangeCursor                42
-#define X_XIChangeHierarchy             43
-#define X_XISetClientPointer            44
-#define X_XIGetClientPointer            45
-#define X_XISelectEvents                46
-#define X_XIQueryVersion                47
-#define X_XIQueryDevice                 48
-#define X_XISetFocus                    49
-#define X_XIGetFocus                    50
-#define X_XIGrabDevice                  51
-#define X_XIUngrabDevice                52
-#define X_XIAllowEvents                 53
-#define X_XIPassiveGrabDevice           54
-#define X_XIPassiveUngrabDevice         55
-#define X_XIListProperties              56
-#define X_XIChangeProperty              57
-#define X_XIDeleteProperty              58
-#define X_XIGetProperty                 59
-#define X_XIGetSelectedEvents           60
+#define X_XIQueryPointer                 40
+#define X_XIWarpPointer                  41
+#define X_XIChangeCursor                 42
+#define X_XIChangeHierarchy              43
+#define X_XISetClientPointer             44
+#define X_XIGetClientPointer             45
+#define X_XISelectEvents                 46
+#define X_XIQueryVersion                 47
+#define X_XIQueryDevice                  48
+#define X_XISetFocus                     49
+#define X_XIGetFocus                     50
+#define X_XIGrabDevice                   51
+#define X_XIUngrabDevice                 52
+#define X_XIAllowEvents                  53
+#define X_XIPassiveGrabDevice            54
+#define X_XIPassiveUngrabDevice          55
+#define X_XIListProperties               56
+#define X_XIChangeProperty               57
+#define X_XIDeleteProperty               58
+#define X_XIGetProperty                  59
+#define X_XIGetSelectedEvents            60
+#define X_XIGrabDeviceWithConfine        61
+#define X_XIPassiveGrabDeviceWithConfine 62
 
 /** Number of XI requests */
 #define XI2REQUESTS (X_XIGetSelectedEvents - X_XIQueryPointer + 1)
@@ -569,6 +571,25 @@ typedef struct {
 } xXIGrabDeviceReq;
 #define sz_xXIGrabDeviceReq                     24
 
+typedef struct {
+    uint8_t     reqType;
+    uint8_t     ReqType;                /**< Always ::X_XIGrabDeviceWithConfine */
+    uint16_t    length;                 /**< Length in 4 byte units */
+    Window      grab_window;
+    Window      confine_to;
+    Time        time;
+    Cursor      cursor;
+    uint16_t    deviceid;
+    uint8_t     grab_mode;
+    uint8_t     paired_device_mode;
+    uint8_t     owner_events;
+    uint8_t     pad;
+    uint16_t    mask_len;
+} xXIGrabDeviceWithConfineReq;
+
+#define sz_xXIGrabDeviceWithConfineReq          28
+
+
 /**
  * Return codes from a XIPassiveGrabDevice request.
  */
@@ -648,6 +669,26 @@ typedef struct {
 #define sz_xXIPassiveGrabDeviceReq              32
 
 typedef struct {
+    uint8_t     reqType;
+    uint8_t     ReqType;                /**< Always ::X_XIPassiveGrabDeviceWithConfine */
+    uint16_t    length;                 /**< Length in 4 byte units */
+    Time        time;
+    Window      grab_window;
+    Window      confine_to;
+    Cursor      cursor;
+    uint32_t    detail;
+    uint16_t    deviceid;
+    uint16_t    num_modifiers;
+    uint16_t    mask_len;
+    uint8_t     grab_type;
+    uint8_t     grab_mode;
+    uint8_t     paired_device_mode;
+    uint8_t     owner_events;
+    uint16_t    pad1;
+} xXIPassiveGrabDeviceWithConfineReq;
+#define sz_xXIPassiveGrabDeviceWithConfineReq   36
+
+typedef struct {
     uint8_t     repType;                /**< Input extension major opcode */
     uint8_t     RepType;                /**< Always ::X_XIPassiveGrabDevice */
     uint16_t    sequenceNumber;
-- 
1.7.5.rc3



More information about the xorg-devel mailing list