[PATCH weston 00/19] Basic tablet support in Weston

Jonas Ådahl jadahl at gmail.com
Tue Aug 19 04:21:54 PDT 2014


On Tue, Aug 19, 2014 at 01:03:52PM +0300, Pekka Paalanen wrote:
> On Wed,  6 Aug 2014 19:07:50 -0400
> Stephen Chandler Paul <thatslyude at gmail.com> wrote:
> 
> > Hi! As some of you have been aware, I have been working on implementing tablet
> > ssupport in libinput, the wayland protocol and weston. This patchset adds basic
> > tablet support to weston, along with support in the shell and the window
> > manager. It should be noted that these patches rely on one of the earlier
> > patches to libinput that I posted on the mailing list: "tablet: Add
> > libinput_tablet_has_axis()", along with the tablet-support branch in the git repository for libinput.
> > 
> > As of right now, the following things are still missing/haven't been finished
> > yet:
> > * Tablet objects don't ever send a removed event, right now it's up to the
> >   clients to free the resources for each tool object.
> > * Tablet tool objects should be separate for each tablet connected that doesn't
> >   report serial numbers. Right now tablet objects are shared by all tablets
> >   connected to the system unconditionally.
> > * The tablet cursor disappears occasionally when moving a window and causing
> >   the mouse pointer to change images, but reappears the next time a client sets
> >   a cursor image.
> > * weston-flower can crash the shell for some reason. It seems that if a tablet
> >   is turned on, and the first surface the tool comes into focus on belongs to a
> >   weston-flower instance, the desktop-shell runs into an error and exits. I
> >   haven't noticed this with anything other then weston-flower though.
> > * Held down buttons are released when the tool changes focus from one surface
> >   to another, instead of being held down until they're released.
> > * Some of the declarations for structs in my code might need to be moved
> >   around, I'm not sure what the expected guidelines for this in weston's code
> >   are though.
> > * A surface argument needs to be added to the proximity_out event, so we can
> >   tell if the tablet tool is leaving proximity to switch focus to another
> >   surface, or if it's just exiting proximity.
> > 
> > Review/critique would be appreciated, thank you! ^^
> > 
> > Cheers,
> > 	Lyude
> > 
> > Stephen Chandler Paul (19):
> >   tablet: Add XML for wl_tablet and wl_tablet_manager
> >   tablet: Add initial tablet support to weston
> >   client: Add support for handling motion events in toytoolkit
> >   client: Add support for handling proximity_in/out events in
> >     libtoytoolkit
> >   tablet: Add support for setting/changing the tablet cursor in weston
> >   client: Add tablet cursor support into libtoytoolkit
> >   tablet: Add support for tablet tool objects
> >   client: Add support for tool objects in libtoytoolkit
> >   client: Add support for tablet cursor motion to window frames in
> >     libtoytoolkit
> >   tablet: Add support for button presses to weston
> >   client: Add support for handling button presses to libtoytoolkit
> >   tablet: Add support for up/down events to weston
> >   client: Add up/down event support into libtoytoolkit
> >   tablet: Add support for moving windows around using the stylus
> >   tablet: Add support for reporting pressure, distance, and tilt in
> >     weston
> >   client: Add support for pressure, distance, and tilt into
> >     libtoytoolkit
> >   tablet: Add tablet support to the top panel of the desktop shell
> >   tablet: Add binding to activate surfaces using the tablet tool
> >   tablet: Add demo application for tablets
> > 
> >  .gitignore                  |   1 +
> >  Makefile.am                 |  23 +-
> >  clients/desktop-shell.c     |  55 ++++
> >  clients/tablet.c            | 341 ++++++++++++++++++++
> >  clients/window.c            | 607 ++++++++++++++++++++++++++++++++++++
> >  clients/window.h            | 102 ++++++
> >  desktop-shell/shell.c       | 282 +++++++++++++++++
> >  protocol/wayland-tablet.xml | 310 +++++++++++++++++++
> >  shared/cairo-util.h         |   4 +
> >  shared/frame.c              |  38 +++
> >  src/bindings.c              |  37 +++
> >  src/compositor.c            |   1 +
> >  src/compositor.h            | 171 ++++++++++
> >  src/input.c                 | 736 ++++++++++++++++++++++++++++++++++++++++++++
> >  src/libinput-device.c       | 317 +++++++++++++++++++
> >  src/libinput-device.h       |   4 +-
> >  16 files changed, 3024 insertions(+), 5 deletions(-)
> >  create mode 100644 clients/tablet.c
> >  create mode 100644 protocol/wayland-tablet.xml
> > 
> 
> Hi,
> 
> just a heads-up, do I get the right impression that this is not yet in
> a shape to merge into Weston, so won't be included in 1.6?

Yes. The libinput side of tablet support still live on a separate branch,
so merging this series is not an option for 1.6 IMHO.


Jonas

> 
> Could an input person review this and suggest whether this should in
> his opinion get merged for 1.6 and is it reasonable to assume, that all
> the remaining known bugs can be sufficiently fixed within the couple
> of weeks or so that our alpha and RC phase lasts?
> 
> I still haven't read the latest protocol discussion thread, so I'm not
> sure where the design is atm.
> 
> Personally I cannot even test this, since I don't have a tablet device
> here.
> 
> 
> Thanks,
> pq
> _______________________________________________
> wayland-devel mailing list
> wayland-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/wayland-devel


More information about the wayland-devel mailing list