summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Linhart <chris@demorecorder.com>2014-09-04 17:49:01 +0200
committerChristian Linhart <chris@demorecorder.com>2014-11-03 11:23:23 +0100
commit3d8e9abc8019a8f1da90ae779617b93f24fe3239 (patch)
tree8bb83b16a1f58af9080220f421f48c0430e684ef
parentfd9f1ade9605efe7c443d962134c4ded6c54f565 (diff)
xinput: RawEvents: support lists axisvalues and axisvalues_raw
Support the lists axisvalues and axisvalues_raw in RawEvents. These are RawKeyPress, RawButtonPress, RawTouchBegin and their eventcopies. The length of both lists is determined by the number of bits set in the list valuator_mask. This is solved in the same way as for event KeyPress. spec: http://cgit.freedesktop.org/xorg/proto/inputproto/tree/specs/XI2proto.txt?id=inputproto-2.3.1#n2362 code: http://cgit.freedesktop.org/xorg/proto/inputproto/tree/XI2proto.h?id=inputproto-2.3.1#n980 Message-ID: <1409845742-38797-7-git-send-email-chris@demorecorder.com> Patch-Thread-Subject: [Xcb] support popcount of a list and associated xml changes Patch-Set: PopcountList Patch-Number: proto 7/8 Patch-Version: V1 Signed-off-by: Christian Linhart <chris@DemoRecorder.com>
-rw-r--r--src/xinput.xml54
1 files changed, 42 insertions, 12 deletions
diff --git a/src/xinput.xml b/src/xinput.xml
index 7f67cfe..f861231 100644
--- a/src/xinput.xml
+++ b/src/xinput.xml
@@ -2472,10 +2472,20 @@ in struct DeviceTimeCoord.
<list type="CARD32" name="valuator_mask">
<fieldref>valuators_len</fieldref>
</list>
- <!-- Uninterpreted: list (axisvalues) of FP3232,
- length is <popcount> on valuator_mask list -->
- <!-- Uninterpreted: list (axisvalues_raw) of FP3232,
- length is <popcount> on valuator_mask list -->
+ <list type="FP3232" name="axisvalues">
+ <sumof ref="valuator_mask">
+ <popcount>
+ <listelement-ref/>
+ </popcount>
+ </sumof>
+ </list>
+ <list type="FP3232" name="axisvalues_raw">
+ <sumof ref="valuator_mask">
+ <popcount>
+ <listelement-ref/>
+ </popcount>
+ </sumof>
+ </list>
</event>
<eventcopy name="RawKeyRelease" number="14" ref="RawKeyPress" />
@@ -2493,10 +2503,20 @@ in struct DeviceTimeCoord.
<list type="CARD32" name="valuator_mask">
<fieldref>valuators_len</fieldref>
</list>
- <!-- Uninterpreted: list (axisvalues) of FP3232,
- length is <popcount> on valuator_mask list -->
- <!-- Uninterpreted: list (axisvalues_raw) of FP3232,
- length is <popcount> on valuator_mask list -->
+ <list type="FP3232" name="axisvalues">
+ <sumof ref="valuator_mask">
+ <popcount>
+ <listelement-ref/>
+ </popcount>
+ </sumof>
+ </list>
+ <list type="FP3232" name="axisvalues_raw">
+ <sumof ref="valuator_mask">
+ <popcount>
+ <listelement-ref/>
+ </popcount>
+ </sumof>
+ </list>
</event>
<eventcopy name="RawButtonRelease" number="16" ref="RawButtonPress" />
@@ -2580,10 +2600,20 @@ in struct DeviceTimeCoord.
<list type="CARD32" name="valuator_mask">
<fieldref>valuators_len</fieldref>
</list>
- <!-- Uninterpreted: list (axisvalues) of FP3232,
- length is <popcount> on valuator_mask list -->
- <!-- Uninterpreted: list (axisvalues_raw) of FP3232,
- length is <popcount> on valuator_mask list -->
+ <list type="FP3232" name="axisvalues">
+ <sumof ref="valuator_mask">
+ <popcount>
+ <listelement-ref/>
+ </popcount>
+ </sumof>
+ </list>
+ <list type="FP3232" name="axisvalues_raw">
+ <sumof ref="valuator_mask">
+ <popcount>
+ <listelement-ref/>
+ </popcount>
+ </sumof>
+ </list>
</event>
<eventcopy name="RawTouchUpdate" number="23" ref="RawTouchBegin" />