[Xcb] [PATCH proto 6/8] xinput: ev ButtonPress, TouchBegin: support list axisvalues

Christian Linhart chris at demorecorder.com
Thu Sep 4 08:49:00 PDT 2014


These events are identical to KeyPress, so needed to be changed the same way.
( in the spec, these are all listed under DeviceEvent )

spec:
http://cgit.freedesktop.org/xorg/proto/inputproto/tree/specs/XI2proto.txt?id=inputproto-2.3.1#n2214

code:
http://cgit.freedesktop.org/xorg/proto/inputproto/tree/XI2proto.h?id=inputproto-2.3.1#n944
---
 src/xinput.xml | 18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

diff --git a/src/xinput.xml b/src/xinput.xml
index 02a8597..4f0e34c 100644
--- a/src/xinput.xml
+++ b/src/xinput.xml
@@ -2311,16 +2311,21 @@ <event name="ButtonPress" number="4" xge="true">
         <field type="GroupInfo"    name="group" />
         <list type="CARD32" name="button_mask">
             <fieldref>buttons_len</fieldref>
         </list>
         <list type="CARD32" name="valuator_mask">
             <fieldref>valuators_len</fieldref>
         </list>
-        <!-- Uninterpreted: list (axisvalues) of FP3232,
-                            length is <popcount> on valuator_mask list -->
+        <list type="FP3232" name="axisvalues">
+            <sumof ref="valuator_mask">
+                <popcount>
+                    <listelement-ref/>
+                </popcount>
+            </sumof>
+        </list>
     </event>
 
     <eventcopy name="ButtonRelease" number="5" ref="ButtonPress" />
     <eventcopy name="Motion"        number="6" ref="ButtonPress" />
 
     <enum name="NotifyMode">
         <item name="Normal">        <value>0</value> </item>
@@ -2494,16 +2499,21 @@ <event name="TouchBegin" number="18" xge="true">
         <field type="GroupInfo"    name="group" />
         <list type="CARD32" name="button_mask">
             <fieldref>buttons_len</fieldref>
         </list>
         <list type="CARD32" name="valuator_mask">
             <fieldref>valuators_len</fieldref>
         </list>
-        <!-- Uninterpreted: list (axisvalues) of FP3232,
-                            length is <popcount> on valuator_mask list -->
+        <list type="FP3232" name="axisvalues">
+            <sumof ref="valuator_mask">
+                <popcount>
+                    <listelement-ref/>
+                </popcount>
+            </sumof>
+        </list>
     </event>
 
     <eventcopy name="TouchUpdate" number="19" ref="TouchBegin" />
     <eventcopy name="TouchEnd"    number="20" ref="TouchBegin" />
 
     <enum name="TouchOwnershipFlags">
         <!-- XXX: Remove this enum? Currently, no flag is defined. -->
-- 
2.0.1



More information about the Xcb mailing list