summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2011-06-03 15:13:12 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2011-06-07 09:22:58 +1000
commitbef7648827a0696debdd629472a45508a30144b1 (patch)
tree571c976eb0acbe617d580bc55db68168b21282da
parentb1149ab782619eaeadf70affd94239184e082d03 (diff)
Add XI2-specific defines for grab and property requests
XI 2.0 headers forced clients to mix XI2 specific constants with defines for core input. Most notable here are the grab code which required GrabModeAsync or GrabModeSync from core, but _not_ AnyModifier (XIAnymodifier != AnyModifier). This is a hard-to-debug cause for bugs. Add defines for grab modes, grab return codes and property modes as well as a define for the AnyPropertyType. These defines are identical to the ones defined in core but stop the use of input-related defines from either core or XI 1.x. Clients must use the core defines None and CurrentTime where applicable. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Daniel Stone <daniel@fooishbar.org>
-rw-r--r--XI2.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/XI2.h b/XI2.h
index 3c39946..43338a1 100644
--- a/XI2.h
+++ b/XI2.h
@@ -42,6 +42,14 @@
#define XIPropertyCreated 1
#define XIPropertyModified 2
+/* Property modes */
+#define XIPropModeReplace 0
+#define XIPropModePrepend 1
+#define XIPropModeAppend 2
+
+/* Special property type used for XIGetProperty */
+#define XIAnyPropertyType 0L
+
/* Enter/Leave and Focus In/Out modes */
#define XINotifyNormal 0
#define XINotifyGrab 1
@@ -60,6 +68,17 @@
#define XINotifyPointerRoot 6
#define XINotifyDetailNone 7
+/* Grab modes */
+#define XIGrabModeSync 0
+#define XIGrabModeAsync 1
+
+/* Grab reply status codes */
+#define XIGrabSuccess 0
+#define XIAlreadyGrabbed 1
+#define XIGrabInvalidTime 2
+#define XIGrabNotViewable 3
+#define XIGrabFrozen 4
+
/* Passive grab types */
#define XIGrabtypeButton 0
#define XIGrabtypeKeycode 1