[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

x11proto-input: Changes to 'upstream-experimental'



 .gitignore   |    1 
 ChangeLog    |    4 -
 Makefile.am  |   10 ++++
 XI.h         |   30 ++++++++----
 XInput.h     |   73 +++++++++++++++++++++++++++++
 XIproto.h    |  145 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 configure.ac |    2 
 7 files changed, 246 insertions(+), 19 deletions(-)

New commits:
commit d38e79ca3ddd6031ca4a335eb2faf99294a6731f
Author: Peter Hutterer <peter.hutterer@redhat.com>
Date:   Wed Nov 26 21:37:06 2008 +1000

    inputproto 1.5.0

diff --git a/configure.ac b/configure.ac
index b343465..56b9bc7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,5 +1,5 @@
 AC_PREREQ([2.57])
-AC_INIT([InputProto], [1.4.4], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg])
+AC_INIT([InputProto], [1.5.0], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 
 XORG_RELEASE_VERSION

commit 5829370cafb112e488156e7ac1dd7902cfd1659a
Author: Peter Hutterer <peter.hutterer@redhat.com>
Date:   Mon Nov 17 10:58:31 2008 +1000

    Remove Configure/QueryDeviceProperty.
    (cherry picked from commit 18ef04f8a2026cca5d2d2b796ec2ea1c949bad36)
    
    Removing Configure/QueryDevice property from XInput.h as well.
    Not cherry-picked as XInput.h is moved to libXi in master.
    
    Conflicts:
    
    	XIproto.h

diff --git a/XI.h b/XI.h
index 878ba0f..7c8c111 100644
--- a/XI.h
+++ b/XI.h
@@ -108,9 +108,6 @@ SOFTWARE.
 #define sz_xChangeDeviceControlReply		32
 #define sz_xListDevicePropertiesReq             8
 #define sz_xListDevicePropertiesReply           32
-#define sz_xQueryDevicePropertyReq              12
-#define sz_xQueryDevicePropertyReply            32
-#define sz_xConfigureDevicePropertyReq          12
 #define sz_xChangeDevicePropertyReq             20
 #define sz_xDeleteDevicePropertyReq             12
 #define sz_xGetDevicePropertyReq                24
diff --git a/XInput.h b/XInput.h
index 34fbb33..702706d 100644
--- a/XInput.h
+++ b/XInput.h
@@ -1244,23 +1244,6 @@ extern void XChangeDeviceProperty(
     int                 /* nelements */
 );
 
-extern XIPropertyInfo* XQueryDeviceProperty(
-    Display*            /* dpy */,
-    XDevice*            /* dev */,
-    Atom                /* property */
-);
-
-extern void
-XConfigureDeviceProperty(
-    Display*            /* dpy */,
-    XDevice*            /* dev */,
-    Atom                /* property */,
-    Bool                /* pending */,
-    Bool                /* range */,
-    int                 /* num_values */,
-    long*               /* values */
-);
-
 extern void
 XDeleteDeviceProperty(
     Display*            /* dpy */,
@@ -1276,7 +1259,6 @@ XGetDeviceProperty(
      long               /* offset*/,
      long               /* length*/,
      Bool               /* delete*/,
-     Bool               /* pending*/,
      Atom               /* req_type*/,
      Atom*              /* actual_type*/,
      int*               /* actual_format*/,
diff --git a/XIproto.h b/XIproto.h
index c84fe39..eef3ee8 100644
--- a/XIproto.h
+++ b/XIproto.h
@@ -159,11 +159,9 @@ struct tmask
 #define X_ChangeDeviceControl		35
 /* XI 1.5 */
 #define X_ListDeviceProperties          36
-#define X_QueryDeviceProperty           37
-#define X_ConfigureDeviceProperty       38
-#define X_ChangeDeviceProperty          39
-#define X_DeleteDeviceProperty          40
-#define X_GetDeviceProperty             41
+#define X_ChangeDeviceProperty          37
+#define X_DeleteDeviceProperty          38
+#define X_GetDeviceProperty             39
 
 /*********************************************************
  *
@@ -1454,55 +1452,6 @@ typedef struct {
 
 /*********************************************************
  *
- * QueryDeviceProperty.
- *
- */
-
-typedef struct {
-    CARD8       reqType;        /* input extension major opcode */
-    CARD8       ReqType;        /* always X_QueryDeviceProperty */
-    CARD16      length B16;
-    Atom        property B32;
-    CARD8       deviceid;
-    CARD8       pad0;
-    CARD16      pad1 B16;
-} xQueryDevicePropertyReq;
-
-typedef struct {
-    CARD8       repType;        /* X_Reply                        */
-    CARD8       RepType;        /* always X_QueryDeviceProperty */
-    CARD16      sequenceNumber B16;
-    CARD32      length B32;
-    BOOL        pending;
-    BOOL        range;
-    BOOL        immutable;
-    BOOL        fromClient;     /* TRUE if allocated by client */
-    CARD32      pad2 B32;
-    CARD32      pad3 B32;
-    CARD32      pad4 B32;
-    CARD32      pad5 B32;
-    CARD32      pad6 B32;
-} xQueryDevicePropertyReply;
-
-/*********************************************************
- *
- * ConfigureDeviceProperty.
- *
- */
-
-typedef struct {
-    CARD8       reqType;        /* input extension major opcode */
-    CARD8       ReqType;        /* always X_ConfigureDeviceProperty */
-    CARD16      length B16;
-    Atom        property B32;
-    CARD8       deviceid;
-    BOOL        pending;
-    BOOL        range;
-    CARD8       pad;
-} xConfigureDevicePropertyReq;
-
-/*********************************************************
- *
  * ChangeDeviceProperty.
  *
  */
@@ -1556,8 +1505,7 @@ typedef struct {
 #else
     BOOL        delete;
 #endif
-    BOOL        pending;
-    CARD8       pad;
+    CARD16      pad;
 } xGetDevicePropertyReq;
 
 typedef struct {

commit 6a4aefa04bb95c05d223027cebbe83c4117829f0
Author: Peter Hutterer <peter.hutterer@redhat.com>
Date:   Thu Sep 18 16:28:09 2008 +0930

    Add XI_JOYSTICK type.
    (cherry picked from commit c9454a8e84b2dce54bb346ff1aafb32e3c0ac5b9)

diff --git a/XI.h b/XI.h
index 822d5c1..878ba0f 100644
--- a/XI.h
+++ b/XI.h
@@ -136,6 +136,7 @@ SOFTWARE.
 #define XI_EYETRACKER	"EYETRACKER"
 #define XI_CURSORKEYS	"CURSORKEYS"
 #define XI_FOOTMOUSE	"FOOTMOUSE"
+#define XI_JOYSTICK	"JOYSTICK"
 
 #define Dont_Check			0
 #define XInput_Initial_Release		1

commit 6af8447fab4a06d943398e6540e6b869d8a714ae
Author: Peter Hutterer <peter.hutterer@redhat.com>
Date:   Mon Nov 17 10:13:15 2008 +1000

    Undef Atom after we're done so we don't pollute users of XIproto.h
    (cherry picked from commit 36c8a6f3faf56a8f8ca31455812c9132b379b1b3)
    
    Conflicts:
    
    	XIproto.h

diff --git a/XIproto.h b/XIproto.h
index 410347f..c84fe39 100644
--- a/XIproto.h
+++ b/XIproto.h
@@ -1799,5 +1799,6 @@ typedef struct
 #undef Window
 #undef Time
 #undef KeyCode
+#undef Atom
 
 #endif

commit 72fb0941fff83f00fb039f865edcf5d25584757c
Author: Peter Hutterer <peter.hutterer@redhat.com>
Date:   Mon Nov 17 10:12:50 2008 +1000

    Make sure Atoms are defined as CARD32.
    (cherry picked from commit c919917e375aefaf473570c1b25b3c22231e858d)
    
    Conflicts:
    
    	XIproto.h

diff --git a/XIproto.h b/XIproto.h
index 6870ef0..410347f 100644
--- a/XIproto.h
+++ b/XIproto.h
@@ -54,6 +54,7 @@ SOFTWARE.
 #define Window CARD32
 #define Time CARD32
 #define KeyCode CARD8
+#define Atom CARD32
 
 /*********************************************************
  *

commit 6ee1ad8951ff811dc2618c9bd26cd42096ab2ecc
Author: Peter Hutterer <peter.hutterer@redhat.com>
Date:   Fri Aug 15 14:21:24 2008 +0930

    Remove RCS tags, typo fix.
    (cherry picked from commit c2d47b04c55cf72aef6c13a9e2cc4b41abfca673)

diff --git a/XIproto.h b/XIproto.h
index 67c4755..6870ef0 100644
--- a/XIproto.h
+++ b/XIproto.h
@@ -1,5 +1,3 @@
-/* $Xorg: XIproto.h,v 1.5 2001/02/09 02:03:24 xorgcvs Exp $ */
-
 /************************************************************
 
 Copyright 1989, 1998  The Open Group
@@ -45,7 +43,6 @@ ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
 SOFTWARE.
 
 ********************************************************/
-/* $XFree86: xc/include/extensions/XIproto.h,v 1.4 2001/01/17 17:53:17 dawes Exp $ */
 
 #ifndef _XIPROTO_H
 #define _XIPROTO_H
@@ -1546,7 +1543,7 @@ typedef struct {
 
 typedef struct {
     CARD8       reqType;        /* input extension major opcode */
-    CARD8       ReqType;        /* always X_ChangeDeviceProperty */
+    CARD8       ReqType;        /* always X_GetDeviceProperty */
     CARD16      length B16;
     Atom        property B32;
     Atom        type B32;

commit d81ca85c4bcdcab208e4731a5d0f7d9bffbfab67
Author: Peter Hutterer <peter.hutterer@redhat.com>
Date:   Fri Oct 31 17:53:39 2008 +1030

    PropertyNotify, move deviceid back to last byte.
    
    This way, it can be type-cast to deviceKeyButtonPointer to extract the
    deviceid, which is (aside from time) the only thing it has in common with
    those anyway.
    (cherry picked from commit f8064629496c6061bedb7a99b788fb9d3a170f11)

diff --git a/XIproto.h b/XIproto.h
index 55a2d3b..67c4755 100644
--- a/XIproto.h
+++ b/XIproto.h
@@ -1783,18 +1783,18 @@ typedef struct
 
 typedef struct
     {
-    BYTE        type;                /* always GenericEvent */
+    BYTE        type;
     BYTE        state;               /* NewValue or Deleted */
     CARD16      sequenceNumber B16;
     CARD32      time B32;
     Atom        atom B32;            /* affected property */
-    CARD8       deviceid;            /* id of device */
-    CARD8       pad0;
-    CARD16      pad1 B16;
+    CARD32      pad0 B32;
+    CARD32      pad1 B32;
     CARD32      pad2 B32;
     CARD32      pad3 B32;
-    CARD32      pad4 B32;
-    CARD32      pad5 B32;
+    CARD16      pad5 B16;
+    CARD8       pad4;
+    CARD8       deviceid;            /* id of device */
     } devicePropertyNotify;
 
 

commit e22b0ace88447a87c0b19d062a678880529b1b3b
Author: Peter Hutterer <peter.hutterer@redhat.com>
Date:   Mon Aug 25 11:34:47 2008 +0930

    Add libXi's property interfaces.
    
    XInput.h was removed from inputproto, hence this commit is not a cherry-pick
    but a copy of the changes to XInput.h in libXi.

diff --git a/XInput.h b/XInput.h
index e3585b4..34fbb33 100644
--- a/XInput.h
+++ b/XInput.h
@@ -72,6 +72,10 @@ SOFTWARE.
 #define _deviceStateNotify	0
 #define _deviceMappingNotify	1
 #define _changeDeviceNotify	2
+/* Space of 3 between is necessary! Reserved for DeviceKeyStateNotify,
+   DeviceButtonStateNotify, DevicePresenceNotify (essentially unused). This
+   code has to be in sync with FixExtensionEvents() in xserver/Xi/extinit.c */
+#define _propertyNotify		6
 
 #define FindTypeAndClass(d,type,_class,classid,offset) \
     { int _i; XInputClassInfo *_ip; \
@@ -119,6 +123,9 @@ SOFTWARE.
 #define ChangeDeviceNotify(d,type,_class) \
     FindTypeAndClass(d, type, _class, OtherClass, _changeDeviceNotify)
 
+#define DevicePropertyNotify(d, type, _class) \
+    FindTypeAndClass(d, type, _class, OtherClass, _propertyNotify)
+
 #define DevicePointerMotionHint(d,type,_class) \
     { _class =  ((XDevice *) d)->device_id << 8 | _devicePointerMotionHint;}
 
@@ -448,6 +455,22 @@ typedef struct {
     XID           control;
 } XDevicePresenceNotifyEvent;
 
+/*
+ * Notifies the client that a property on a device has changed value. The
+ * client is expected to query the server for updated value of the property.
+ */
+typedef struct {
+    int           type;
+    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 */
+    Window        window;       /* unused */
+    Time          time;
+    XID           deviceid;     /* id of the device that changed */
+    Atom          atom;         /* the property that changed */
+    int           state;        /* PropertyNewValue or PropertyDeleted */
+} XDevicePropertyNotifyEvent;
+
 /*******************************************************************
  *
  * Control structures for input devices that support input class
@@ -1195,6 +1218,74 @@ extern void	XFreeDeviceControl(
     XDeviceControl*	/* control */
 );
 
+typedef struct {
+    Bool    pending;
+    Bool    range;
+    Bool    immutable;
+    Bool    fromClient;
+    int     num_values;
+    long    *values;
+} XIPropertyInfo;
+
+extern Atom*   XListDeviceProperties(
+    Display*            /* dpy */,
+    XDevice*            /* dev */,
+    int*                /* nprops_return */
+);
+
+extern void XChangeDeviceProperty(
+    Display*            /* dpy */,
+    XDevice*            /* dev */,
+    Atom                /* property */,
+    Atom                /* type */,
+    int                 /* format */,
+    int                 /* mode */,
+    _Xconst unsigned char * /*data */,
+    int                 /* nelements */
+);
+
+extern XIPropertyInfo* XQueryDeviceProperty(
+    Display*            /* dpy */,
+    XDevice*            /* dev */,
+    Atom                /* property */
+);
+
+extern void
+XConfigureDeviceProperty(
+    Display*            /* dpy */,
+    XDevice*            /* dev */,
+    Atom                /* property */,
+    Bool                /* pending */,
+    Bool                /* range */,
+    int                 /* num_values */,
+    long*               /* values */
+);
+
+extern void
+XDeleteDeviceProperty(
+    Display*            /* dpy */,
+    XDevice*            /* dev */,
+    Atom                /* property */
+);
+
+extern Status
+XGetDeviceProperty(
+     Display*           /* dpy*/,
+     XDevice*           /* dev*/,
+     Atom               /* property*/,
+     long               /* offset*/,
+     long               /* length*/,
+     Bool               /* delete*/,
+     Bool               /* pending*/,
+     Atom               /* req_type*/,
+     Atom*              /* actual_type*/,
+     int*               /* actual_format*/,
+     unsigned long*     /* nitems*/,
+     unsigned long*     /* bytes_after*/,
+     unsigned char**    /* prop*/
+);
+
+
 _XFUNCPROTOEND
 
 #endif /* _XINPUT_H_ */

commit 0a87cb3aac72adbbb81c7ac7ac04551547bf8b56
Author: Peter Hutterer <peter.hutterer@redhat.com>
Date:   Fri Aug 15 14:50:23 2008 +0930

    Protect against C++ includes.
    (cherry picked from commit fabe087cebb11c6a2600e57c6f7a52fda2efea29)

diff --git a/XIproto.h b/XIproto.h
index ae32d72..55a2d3b 100644
--- a/XIproto.h
+++ b/XIproto.h
@@ -1553,7 +1553,11 @@ typedef struct {
     CARD32      longOffset B32;
     CARD32      longLength B32;
     CARD8       deviceid;
+#if defined(__cplusplus) || defined(c_plusplus)
+    BOOL        c_delete;
+#else
     BOOL        delete;
+#endif
     BOOL        pending;
     CARD8       pad;
 } xGetDevicePropertyReq;

commit e507aaaa74eeb02896843eb1815b614adf47a24a
Author: Peter Hutterer <peter.hutterer@redhat.com>
Date:   Mon Aug 25 10:19:37 2008 +0930

    Back out Device Properties from XI 2, push into XI 1.5.
    (cherry picked from commit 7c9620d8232e5c05115746055a832363a528ac2d)
    
    Conflicts:
    
    	XI.h
    	XIproto.h

diff --git a/XI.h b/XI.h
index 51a4175..822d5c1 100644
--- a/XI.h
+++ b/XI.h
@@ -106,6 +106,15 @@ SOFTWARE.
 #define sz_xGetDeviceControlReply		32
 #define sz_xChangeDeviceControlReq		8
 #define sz_xChangeDeviceControlReply		32
+#define sz_xListDevicePropertiesReq             8
+#define sz_xListDevicePropertiesReply           32
+#define sz_xQueryDevicePropertyReq              12
+#define sz_xQueryDevicePropertyReply            32
+#define sz_xConfigureDevicePropertyReq          12
+#define sz_xChangeDevicePropertyReq             20
+#define sz_xDeleteDevicePropertyReq             12
+#define sz_xGetDevicePropertyReq                24
+#define sz_xGetDevicePropertyReply              32
 
 #define INAME 			"XInputExtension"
 
@@ -134,6 +143,7 @@ SOFTWARE.
 #define XInput_Add_XSetDeviceValuators	3
 #define XInput_Add_XChangeDeviceControl	4
 #define XInput_Add_DevicePresenceNotify	5
+#define XInput_Add_DeviceProperties	6
 
 #define XI_Absent		0
 #define XI_Present		1
@@ -153,6 +163,9 @@ SOFTWARE.
 #define XI_Add_DevicePresenceNotify_Major	1
 #define XI_Add_DevicePresenceNotify_Minor	4
 
+#define XI_Add_DeviceProperties_Major		1
+#define XI_Add_DeviceProperties_Minor		5
+
 #define DEVICE_RESOLUTION	1
 #define DEVICE_ABS_CALIB        2
 #define DEVICE_CORE             3
diff --git a/XIproto.h b/XIproto.h
index 6d4bf64..ae32d72 100644
--- a/XIproto.h
+++ b/XIproto.h
@@ -72,8 +72,9 @@ SOFTWARE.
 
 #define numInputClasses 7
 
-#define IEVENTS		16
+#define IEVENTS		17
 #define IERRORS		5
+#define IREQUESTS       41
 
 #define CLIENT_REQ		1
 
@@ -114,6 +115,8 @@ struct tmask
 #define XI_DeviceKeystateNotify		13
 #define XI_DeviceButtonstateNotify	14
 #define XI_DevicePresenceNotify		15
+#define XI_DevicePropertyNotify         16
+
 
 /*********************************************************
  *
@@ -156,6 +159,13 @@ struct tmask
 #define X_SetDeviceValuators		33
 #define X_GetDeviceControl		34
 #define X_ChangeDeviceControl		35
+/* XI 1.5 */
+#define X_ListDeviceProperties          36
+#define X_QueryDeviceProperty           37
+#define X_ConfigureDeviceProperty       38
+#define X_ChangeDeviceProperty          39
+#define X_DeleteDeviceProperty          40
+#define X_GetDeviceProperty             41
 
 /*********************************************************
  *
@@ -1413,6 +1423,156 @@ typedef struct {
     CARD16          pad1 B16;
 } xDeviceEnableCtl;
 
+/* XI 1.5 */
+
+/*********************************************************
+ *
+ * ListDeviceProperties.
+ *
+ */
+
+typedef struct {
+    CARD8       reqType;        /* input extension major opcode */
+    CARD8       ReqType;        /* always X_ListDeviceProperties */
+    CARD16      length B16;
+    CARD8       deviceid;
+    CARD8       pad0;
+    CARD16      pad1 B16;
+} xListDevicePropertiesReq;
+
+typedef struct {
+    CARD8       repType;        /* X_Reply                       */
+    CARD8       RepType;        /* always X_ListDeviceProperties */
+    CARD16      sequenceNumber B16;
+    CARD32      length B32;
+    CARD16      nAtoms B16;
+    CARD16      pad1 B16;
+    CARD32      pad2 B32;
+    CARD32      pad3 B32;
+    CARD32      pad4 B32;
+    CARD32      pad5 B32;
+    CARD32      pad6 B32;
+} xListDevicePropertiesReply;
+
+/*********************************************************
+ *
+ * QueryDeviceProperty.
+ *
+ */
+
+typedef struct {
+    CARD8       reqType;        /* input extension major opcode */
+    CARD8       ReqType;        /* always X_QueryDeviceProperty */
+    CARD16      length B16;
+    Atom        property B32;
+    CARD8       deviceid;
+    CARD8       pad0;
+    CARD16      pad1 B16;
+} xQueryDevicePropertyReq;
+
+typedef struct {
+    CARD8       repType;        /* X_Reply                        */
+    CARD8       RepType;        /* always X_QueryDeviceProperty */
+    CARD16      sequenceNumber B16;
+    CARD32      length B32;
+    BOOL        pending;
+    BOOL        range;
+    BOOL        immutable;
+    BOOL        fromClient;     /* TRUE if allocated by client */
+    CARD32      pad2 B32;
+    CARD32      pad3 B32;
+    CARD32      pad4 B32;
+    CARD32      pad5 B32;
+    CARD32      pad6 B32;
+} xQueryDevicePropertyReply;
+
+/*********************************************************
+ *
+ * ConfigureDeviceProperty.
+ *
+ */
+
+typedef struct {
+    CARD8       reqType;        /* input extension major opcode */
+    CARD8       ReqType;        /* always X_ConfigureDeviceProperty */
+    CARD16      length B16;
+    Atom        property B32;
+    CARD8       deviceid;
+    BOOL        pending;
+    BOOL        range;
+    CARD8       pad;
+} xConfigureDevicePropertyReq;
+
+/*********************************************************
+ *
+ * ChangeDeviceProperty.
+ *
+ */
+
+typedef struct {
+    CARD8       reqType;        /* input extension major opcode */
+    CARD8       ReqType;        /* always X_ChangeDeviceProperty */
+    CARD16      length B16;
+    Atom        property B32;
+    Atom        type B32;
+    CARD8       deviceid;
+    CARD8       format;
+    CARD8       mode;
+    CARD8       pad;
+    CARD32      nUnits B32;
+} xChangeDevicePropertyReq;
+
+/*********************************************************
+ *
+ * DeleteDeviceProperty.
+ *
+ */
+
+typedef struct {
+    CARD8       reqType;        /* input extension major opcode */
+    CARD8       ReqType;        /* always X_DeleteDeviceProperty */
+    CARD16      length B16;
+    Atom        property B32;
+    CARD8       deviceid;
+    CARD8       pad0;
+    CARD16      pad1 B16;
+} xDeleteDevicePropertyReq;
+
+/*********************************************************
+ *
+ * GetDeviceProperty.
+ *
+ */
+
+typedef struct {
+    CARD8       reqType;        /* input extension major opcode */
+    CARD8       ReqType;        /* always X_ChangeDeviceProperty */
+    CARD16      length B16;
+    Atom        property B32;
+    Atom        type B32;
+    CARD32      longOffset B32;
+    CARD32      longLength B32;
+    CARD8       deviceid;
+    BOOL        delete;
+    BOOL        pending;
+    CARD8       pad;
+} xGetDevicePropertyReq;
+
+typedef struct {
+    CARD8       repType;        /* X_Reply                        */
+    CARD8       RepType;        /* always X_GetDeviceProperty   */
+    CARD16      sequenceNumber B16;
+    CARD32      length B32;
+    Atom        propertyType B32;
+    CARD32      bytesAfter B32;
+    CARD32      nItems B32;
+    CARD8       format;
+    CARD8       deviceid;
+    CARD16      pad1 B16;
+    CARD32      pad2 B32;
+    CARD32      pad3 B32;
+} xGetDevicePropertyReply;
+
 /**********************************************************
  *
  * Input extension events.
@@ -1610,6 +1770,30 @@ typedef struct
     CARD32	pad06 B32;
     }  devicePresenceNotify;
 
+/*********************************************************
+ * DevicePropertyNotifyEvent
+ *
+ * Sent whenever a device's property changes.
+ *
+ */
+
+typedef struct
+    {
+    BYTE        type;                /* always GenericEvent */
+    BYTE        state;               /* NewValue or Deleted */
+    CARD16      sequenceNumber B16;
+    CARD32      time B32;
+    Atom        atom B32;            /* affected property */
+    CARD8       deviceid;            /* id of device */
+    CARD8       pad0;
+    CARD16      pad1 B16;
+    CARD32      pad2 B32;
+    CARD32      pad3 B32;
+    CARD32      pad4 B32;
+    CARD32      pad5 B32;
+    } devicePropertyNotify;
+
+
 #undef Window
 #undef Time
 #undef KeyCode

commit c109e2ddb9cab22f185a877ab7e48002d1087400
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Tue Jul 29 09:10:09 2008 +0930

    inputproto 1.4.4

diff --git a/configure.ac b/configure.ac
index b07f4ea..b343465 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,5 +1,5 @@
 AC_PREREQ([2.57])
-AC_INIT([InputProto], [1.4.3], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg])
+AC_INIT([InputProto], [1.4.4], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 
 XORG_RELEASE_VERSION

commit f41d153886c3519ebaf767f9c0d3281b6adce030
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Tue Jul 29 08:58:53 2008 +0930

    Add DeviceControlChanged define.
    
    This value is used for the devchange field in the DevicePresenceNotify event
    when a device's control has been modified.
    (cherry picked from commit 0daf8328cfa90b038753fc409c5eb05ba3fac6d5)

diff --git a/XI.h b/XI.h
index 3b11860..51a4175 100644
--- a/XI.h
+++ b/XI.h
@@ -250,7 +250,8 @@ SOFTWARE.
 #define DeviceRemoved            1
 #define DeviceEnabled            2
 #define DeviceDisabled           3
-#define DeviceUnrecoverable      4  
+#define DeviceUnrecoverable      4
+#define DeviceControlChanged     5
 
 #define XI_BadDevice	0
 #define XI_BadEvent	1
diff --git a/XIproto.h b/XIproto.h
index 4f46f4f..6d4bf64 100644
--- a/XIproto.h
+++ b/XIproto.h
@@ -1600,7 +1600,7 @@ typedef struct
     BYTE        pad00;
     CARD16 	sequenceNumber B16;
     Time        time B32;
-    BYTE        devchange; /* Device{Added|Removed|Enabled|Disabled} */
+    BYTE        devchange; /* Device{Added|Removed|Enabled|Disabled|ControlChanged} */
     BYTE        deviceid;
     CARD16      control B16;
     CARD32	pad02 B32;

commit 852568991b251e9366da167f1b746a0a1db6adf0
Author: Adam Jackson <ajax@redhat.com>
Date:   Mon Mar 10 09:31:51 2008 -0400

    Typo fix.

diff --git a/XI.h b/XI.h
index ec9bee2..3b11860 100644
--- a/XI.h
+++ b/XI.h
@@ -49,6 +49,8 @@ SOFTWARE.
 #ifndef _XI_H_
 #define _XI_H_
 
+#define sz_xGetExtensionVersionReq             8
+#define sz_xGetExtensionVersionReply           32
 #define sz_xListInputDevicesReq			4
 #define sz_xListInputDevicesReply		32
 #define sz_xOpenDeviceReq			8

commit b5cbe2d93f6c0129b8f29da97778f6d1b15c38f9
Author: Adam Jackson <ajax@redhat.com>
Date:   Mon Mar 10 09:08:21 2008 -0400

    C sucks: define XEventClass in terms of unsigned int, not CARD32.
    
    Apparently pulling in Xmd.h here breaks qt, since they both define an
    INT32 type (and incompatible ones even, since Xmd's is unsigned long on
    ILP32 because whoever wrote Xmd.h is a C novice).

diff --git a/XI.h b/XI.h
index fe4981a..ec9bee2 100644
--- a/XI.h
+++ b/XI.h
@@ -1,5 +1,3 @@
-/* $Xorg: XI.h,v 1.4 2001/02/09 02:03:23 xorgcvs Exp $ */
-
 /************************************************************
 
 Copyright 1989, 1998  The Open Group
@@ -45,17 +43,12 @@ ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
 SOFTWARE.
 
 ********************************************************/
-/* $XFree86: xc/include/extensions/XI.h,v 1.4 2001/01/17 17:53:16 dawes Exp $ */
 
 /* Definitions used by the server, library and client */
 
 #ifndef _XI_H_
 #define _XI_H_
 
-#include <X11/Xmd.h> /* CARD32 */
-
-#define sz_xGetExtensionVersionReq		8
-#define sz_xGetExtensionVersionReply		32
 #define sz_xListInputDevicesReq			4
 #define sz_xListInputDevicesReply		32
 #define sz_xOpenDeviceReq			8
@@ -263,12 +256,16 @@ SOFTWARE.
 #define XI_DeviceBusy	3
 #define XI_BadClass	4
 
-/* Make XEventClass be a CARD32 for 64 bit servers.  Don't affect client
+/*
+ * Make XEventClass be a CARD32 for 64 bit servers.  Don't affect client
  * definition of XEventClass since that would be a library interface change.
  * See the top of X.h for more _XSERVER64 magic.
+ *
+ * But, don't actually use the CARD32 type.  We can't get it defined here
+ * without polluting the namespace.
  */
 #ifdef _XSERVER64
-typedef	CARD32		XEventClass;
+typedef unsigned int	XEventClass;
 #else
 typedef	unsigned long	XEventClass;
 #endif

commit 3edc1bf23b07ea47d7e1e32047e15c67333c663e
Author: Adam Jackson <ajax@redhat.com>
Date:   Wed Mar 5 22:06:19 2008 -0500

    inputproto 1.4.3

diff --git a/configure.ac b/configure.ac
index c010699..b07f4ea 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,5 +1,5 @@
 AC_PREREQ([2.57])
-AC_INIT([InputProto], [1.4.2.1], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg])
+AC_INIT([InputProto], [1.4.3], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 
 XORG_RELEASE_VERSION

commit 096b20bf5492d248b5c8ff0c1c28e221d59db724
Author: Jesse Barnes <jesse.barnes@intel.com>
Date:   Mon Jan 21 15:28:49 2008 -0800

    Use Xmd.h instead of X.h to pull in CARD32 definition
    
    On 64 bit hosts, CARD32 may be undefined unless we use Xmd.h to define it for
    us.  Apparently X.h is no longer sufficient.

diff --git a/XI.h b/XI.h
index 0bfefcc..fe4981a 100644
--- a/XI.h
+++ b/XI.h
@@ -52,7 +52,7 @@ SOFTWARE.
 #ifndef _XI_H_
 #define _XI_H_
 
-#include <X11/X.h> /* CARD32 */
+#include <X11/Xmd.h> /* CARD32 */
 
 #define sz_xGetExtensionVersionReq		8
 #define sz_xGetExtensionVersionReply		32

commit 9359e625787761e6b3df15f29bbf842c67a9516d
Author: James Cloos <cloos@jhcloos.com>
Date:   Thu Dec 6 16:39:02 2007 -0500

    Replace static ChangeLog with dist-hook to generate from git log

diff --git a/ChangeLog b/ChangeLog
deleted file mode 100644
index c722b51..0000000
--- a/ChangeLog
+++ /dev/null
@@ -1,4 +0,0 @@
-2005-12-14  Kevin E. Martin  <kem-at-freedesktop-dot-org>
-
-	* configure.ac:
-	Update package version number for final X11R7 release candidate.
diff --git a/Makefile.am b/Makefile.am
index e39ea0a..f8d4a32 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -8,3 +8,13 @@ pkgconfigdir = $(libdir)/pkgconfig
 pkgconfig_DATA = inputproto.pc
 
 EXTRA_DIST = autogen.sh inputproto.pc.in
+
+EXTRA_DIST += ChangeLog
+MAINTAINERCLEANFILES = ChangeLog
+
+.PHONY: ChangeLog
+
+ChangeLog:
+	(GIT_DIR=$(top_srcdir)/.git git-log > .changelog.tmp && mv .changelog.tmp ChangeLog; rm -f .changelog.tmp) || (touch ChangeLog; echo 'git directory not found: installing possibly empty changelog.' >&2)
+
+dist-hook: ChangeLog

commit 4b22047f347d8fd65a36b2fc90e1a87dff8e93e3
Author: Eamon Walsh <ewalsh@tycho.nsa.gov>
Date:   Thu Sep 27 12:27:19 2007 -0400

    XI.h needs X.h for CARD32 on 64-bit systems.

diff --git a/XI.h b/XI.h
index ae52292..0bfefcc 100644
--- a/XI.h
+++ b/XI.h
@@ -50,9 +50,10 @@ SOFTWARE.
 /* Definitions used by the server, library and client */
 
 #ifndef _XI_H_
-
 #define _XI_H_
 
+#include <X11/X.h> /* CARD32 */
+
 #define sz_xGetExtensionVersionReq		8
 #define sz_xGetExtensionVersionReply		32
 #define sz_xListInputDevicesReq			4

commit 369dd283cfcf006e2cfe3496ebc5157839a3d04e
Author: James Cloos <cloos@jhcloos.com>
Date:   Mon Sep 3 05:54:06 2007 -0400

    Add *~ to .gitignore to skip patch/emacs droppings

diff --git a/.gitignore b/.gitignore
index 2c3bca3..503dd99 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,3 +8,4 @@ configure
 install-sh


Reply to: