[Xcb] xinput: make ListInputDevices work, sumof with nested expr, ...
Ran Benita
ran234 at gmail.com
Tue Oct 21 14:15:05 PDT 2014
On Wed, Sep 03, 2014 at 01:14:23PM +0200, Christian Linhart wrote:
> Hi all,
>
> In this thread I'll post patches which make the ListInputDevice reply work.
>
> This has also required some changes in the generator:
> * generate calls to accessor function or iterator function instead of
> a struct-member access for fields which can only be accessed with
> accessor function or iterator respectively.
>
> * make sumof more flexible. Especially support a nested expression which is evaluated
> in the scope of each list-element which is iterated to compute sumof.
> Example:
> <sumof ref="devices">
> <fieldref>num_class_info</fieldref>
> </sumof>
The proto patches as in ListInputDevices-V4 [1], all look good to me. The
fact that ref/lenfield_name can now also point to a list depending on if
there's an expression is a bit confusing. But summing over an expression
is inevitable, and this solves the problem nicely (as far as the xml
goes), so no bikeshedding from me (/me resists suggesting unwarranted
generalizations of this - or we'll end up with map/reduce :).
I'll look at the implementation in the generator next.
Ran
[1] http://infra-srv1.demorecorder.com/gitweb/?p=free-sw/xcb/proto;a=shortlog;h=refs/heads/ListInputDevices-V4
> Due to using switch-case, some structs have became obsolete.
> (and due to using struct STR from xproto instead of DeviceName because these
> are the same and the spec uses STR)
>
> This patchset contains two patches to remove these obsolete structs.
> You may reject these patches due to API-compatibility concerns.
> On the other hand, probably nobody has used the structs for request ListInputDevice
> anyways before because this request/reply didn't work anyways in the previous form.
>
> You can also get these patches at the following git-repo:
> http://infra-srv1.demorecorder.com/git/free-sw/xcb/listinputdevices-sumof-20140903-2/proto
> http://infra-srv1.demorecorder.com/git/free-sw/xcb/listinputdevices-sumof-20140903-2/libxcb
>
> Chris
>
>
> P.S.: The patches are based on the following patches which are not
> yet in the official repo:
> * my patches from the the Thread
> "[Xcb] xinput:QueryDeviceState: full-support: generator and xml-changes"
> * my patch in the email
> "[Xcb] [PATCH libxcb] no typename for nested structs"
>
> ( you can get those also at
> http://infra-srv1.demorecorder.com/git/free-sw/xcb/20140903-1/proto
> http://infra-srv1.demorecorder.com/git/free-sw/xcb/20140903-1/libxcb )
More information about the Xcb
mailing list