[Xcb] [PATCH proto 5/5 V2] xinput: add TODO list
Christian Linhart
chris at DemoRecorder.com
Fri Aug 22 03:11:50 PDT 2014
Add TODO list of things which cannot be done yet
with the current feature-set of xml and the generator.
V2: Fix reference in the parametrized struct-paragraph:
to correctly refer to the GetDeviceMotionEvents-reply
(instead of the ChangeKeyboardDevice-request which
does not need parametrized structs.)
---
src/xinput.xml | 67 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 67 insertions(+)
diff --git a/src/xinput.xml b/src/xinput.xml
index 4ee55f8..c74e1f9 100644
--- a/src/xinput.xml
+++ b/src/xinput.xml
@@ -28,14 +28,81 @@
-->
<!-- Specifications:
http://cgit.freedesktop.org/xorg/proto/inputproto/tree/specs/XIproto.txt
http://cgit.freedesktop.org/xorg/proto/inputproto/tree/specs/XI2proto.txt
-->
+<!-- TODO: Things which need to be done for full XInput support
+ but cannot be done now ( August 18, 2014 ) with the current feature-set
+ of the xml and the generator:
+
+*****
+
+replace "uninterpreted_data" or similar constructs
+with a semantic that shows how to interpret this data.
+This requires enhancements to the xml-schema and generator such as union with selector.
+
+This will, e.g., be necessary for automatically generated byte-order conversion code,
+which will, e.g., be necessary for server-side xcb.
+
+This affects the following:
+* GetFeedbackControl reply field "feedbacks" ( structs FeedbackState, ... )
+* ChangeFeedbackControl request field "feedback" ( structs FeedbackCtl, ... )
+* QueryDeviceState reply field "classes" ( structs InputState, ... )
+* GetDeviceControl reply field "control" ( structs DeviceState, ... )
+* ChangeDeviceControl request field "control" ( structs ChangeDeviceControl, ... )
+* XIChangeHierarchy request field "changes" ( structs HierarchyChange, ... )
+* struct XIDeviceInfo field "classes" ( structs DeviceClass, ... )
+* SendExtensionEvent member "events"
+
+*****
+
+xml and generator have to support <popcount> of all members of a list
+
+This is needed for the following XI2-events ( and eventcopies thereof )
+ KeyPress
+ ButtonPress
+ RawKeyPress
+ RawKeyPress
+ RawButtonPress
+ TouchBegin
+ RawTouchBegin
+
+
+*****
+
+<sumof> should support fields of listmembers.
+
+This is needed for request "ListInputDevices"
+
+*****
+
+xml and generator should support
+switch-case similar to switch-bitcase.
+
+(and maybe: variable sized unions with a mechanism to define
+which union-field is selected.)
+
+One of these features is needed for the InputInfo type
+which is used by request "ListInputDevices" for the list "input_infos".
+
+*****
+
+Parametrized structs
+
+This is needed for being able to use the value of the field
+"num_axes" of the GetDeviceMotionEvents-reply
+in struct DeviceTimeCoord.
+
+*****
+
+-->
+
+
<xcb header="xinput" extension-xname="XInputExtension" extension-name="Input"
major-version="2" minor-version="3">
<import>xfixes</import>
<import>xproto</import>
<!-- ⋅⋅⋅ Types (v1.0) ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ -->
-- 2.0.1
More information about the Xcb
mailing list