[PATCH wayland] protocol: add repeat_info event to wl_keyboard

Pekka Paalanen ppaalanen at gmail.com
Mon Jun 2 00:36:56 PDT 2014


On Mon, 2 Jun 2014 10:22:40 +0300
Pekka Paalanen <ppaalanen at gmail.com> wrote:

> On Fri, 30 May 2014 11:32:25 +0200
> Jonny Lamb <jonny.lamb at collabora.co.uk> wrote:
> 
> > In the process wl_keyboard's version has been incremented. Given
> > clients get the wl_keyboard from wl_seat without a version, wl_seat's
> > version has also been incremented (wl_seat version 4 implies
> > wl_keyboard version 4).
> > ---
> >  protocol/wayland.xml | 17 +++++++++++++++--
> >  1 file changed, 15 insertions(+), 2 deletions(-)
> > 
> > diff --git a/protocol/wayland.xml b/protocol/wayland.xml
> > index 22eb6e7..722cb89 100644
> > --- a/protocol/wayland.xml
> > +++ b/protocol/wayland.xml
> > @@ -1262,7 +1262,7 @@
> >      </request>
> >     </interface>
> >  
> > -  <interface name="wl_seat" version="3">
> > +  <interface name="wl_seat" version="4">
> >      <description summary="group of input devices">
> >        A seat is a group of keyboards, pointer and touch devices. This
> >        object is published as a global during start up, or when such a
> > @@ -1490,7 +1490,7 @@
> >  
> >    </interface>
> >  
> > -  <interface name="wl_keyboard" version="3">
> > +  <interface name="wl_keyboard" version="4">
> >      <description summary="keyboard input device">
> >        The wl_keyboard interface represents one or more keyboards
> >        associated with a seat.
> > @@ -1578,6 +1578,19 @@
> >      <request name="release" type="destructor" since="3">
> >        <description summary="release the keyboard object"/>
> >      </request>
> > +
> > +    <!-- Version 4 of additions -->
> > +
> > +    <event name="repeat_info" since="4">
> > +      <description summary="repeat rate and delay">
> > +        Informs the client about the keyboard's repeat rate and delay.
> > +      </description>
> > +
> > +      <arg name="rate" type="int"
> > +           summary="the rate of repeating keys in characters per second"/>
> > +      <arg name="delay" type="int"
> > +           summary="time in milliseconds between keys repeating"/>
> > +    </event>
> >    </interface>
> >  
> >    <interface name="wl_touch" version="3">
> 
> Hi,
> 
> this looks good to me, but I'd like to see text about when this event
> is sent. I assume it is sent once as soon as a wl_keyboard object has
> been created, and this is also required/guaranteed. IOW, if a client
> creates a wl_keyboard and then does a roundtrip, it is guaranteed to
> have received the event at least once. Right?
> 
> Or should sending it be optional? Should we define any defaults in case
> no event has been received? I'd assume not.
> 
> Can it be sent later, too? (Likely yes.)
> 
> Was this ever discussed before this email thread? I'd like to see at
> least one more ack (Daniel already ack'd) before I'm comfortable pushing
> this to wayland master, as this is part of the core protocol.

Oh one more thing.

Would we want to specify "no repeat" values?

Also, while it is just an event and error codes would not make sense in
the protocol, we should probably still mention, that negative values are
illegal - what to do with zero?

Re-reading it, this seems funnily said:
> > +           summary="time in milliseconds between keys repeating"/>
I think it wants to say: "delay in milliseconds since key-down until
repeating starts" or something. Not "between keys" since that sounds
like repeat rate. :-)


Thanks,
pq


More information about the wayland-devel mailing list