On Mon, Nov 21, 2016 at 12:42:36PM +0000, Daniel Stone wrote: > Hi, > > On 20 November 2016 at 05:14, Peter Hutterer <[email protected]> wrote: > > Rather than relying on input-event-codes, define our own enum that is > > tailored > > towards the tablet interface. > > > > Signed-off-by: Peter Hutterer <[email protected]> > > --- > > Because it's usually easier to pick holes into a patch proposal than come up > > with ideas elsewhere, here's a quick-and-dirty patch. > > > > Advantage: we control the button names/numbers and clients don't have to > > know about cases where linux/input.h isn't enough. > > Obvious drawback: adding new buttons requires a new protocol. Given this > > hardware hasn't really changed much in quite a while, this may not be much > > of an issue. > > Conceptually, I don't see why not. > > > @@ -539,6 +539,26 @@ > > <arg name="clicks" type="int" summary="The wheel delta in discrete > > clicks"/> > > </event> > > > > + <enum name="button"> > > + <description summary="physical button name"> > > + Describes the physical button that produced the button event. > > + </description> > > + <entry name="unknown" value="0" summary="An unknown button"/> > > + <entry name="stylus1" value="1" summary="The primary button on a > > stylus-like tool"/> > > + <entry name="stylus2" value="2" summary="The secondary button on a > > stylus-like tool"/> > > + <entry name="stylus3" value="3" summary="The third button on a > > stylus-like tool"/> > > + <entry name="stylus4" value="4" summary="The forth button on a > > stylus-like tool"/> > > + <entry name="stylus5" value="5" summary="The fifth button on a > > stylus-like tool"/> > > + <entry name="stylus6" value="6" summary="The sixth button on a > > stylus-like tool"/> > > + <entry name="stylus7" value="7" summary="The seventh button on a > > stylus-like tool"/> > > + <entry name="stylus8" value="8" summary="The eighth button on a > > stylus-like tool"/> > > + <entry name="stylus9" value="9" summary="The ninth button on a > > stylus-like tool"/> > > + <entry name="left" value="10" summary="The left button on a > > mouse-like tool"/> > > + <entry name="right" value="11" summary="The right button on a > > mouse-like tool"/> > > + <entry name="middle" value="12" summary="The middle button on a > > mouse-like tool"/> > > + <entry name="thumb" value="13" summary="The thumb button on a > > mouse-like tool"/> > > + </enum> > > Concretely though, reusing BTN_* codes where possible would make it > easier for clients to transition between the two.
I disagree here. The kernel only has BTN_STYLUS and BTN_STYLUS2, after that we overlap with DOUBLETAP range and later buttons that are completely different (e.g. BTN_GEAR_DOWN). I think this would only make it worse. This protocol is still unstable, every client needs updates once we mark it stable anyway, making the enums *values* mean something is counterproductive IMO. > Also, 9 stylus buttons seems like an oddly specific number. was supposed to be 10 [0-9], I just have an index offset error here, sorry :) Cheers, Peter > Anyway, if you switch these values to the current BTN_* equivalents: > Acked-by: Daniel Stone <[email protected]> > > Cheers, > Daniel _______________________________________________ wayland-devel mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/wayland-devel
