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

Pekka Paalanen ppaalanen at gmail.com
Tue Aug 19 06:57:34 PDT 2014


On Tue, 19 Aug 2014 13:21:54 +0200
Jonas Ådahl <jadahl at gmail.com> wrote:

> 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.

Ok, thanks for confirming that this is one series I don't need to feel
bad about. :-)
- pq


More information about the wayland-devel mailing list