[PATCH weston 00/12] Toytoolkit preparation for sub-surfaces

Kristian Høgsberg hoegsberg at gmail.com
Thu Feb 14 09:35:54 PST 2013

On Wed, Feb 13, 2013 at 04:17:11PM +0200, Pekka Paalanen wrote:
> Hi Kristian,
> this series prepares toytoolkit for sub-surfaces by moving
> fields from struct window to a new per-wl_surface struct.
> It also contains other cleanups. The purpose is just to make
> implementing sub-surface support easier.
> This series does not add any sub-surface featurea, does not
> require any new protocol, and does not change the individual
> toytoolkit clients.
> As long as sub-surfaces will be a sub-class of wl_surface,
> these changes should be appropriate.

The entire series looks good, all committed.


> To get a better understanding on how this will be used, I
> have pushed v1.5 branches of my sub-surface work, which
> includes this patch series, and the main use case of it:
> subsurfaces demo.
> http://cgit.collabora.com/git/user/pq/wayland.git/log/?h=subsurface-v1.5
> http://cgit.collabora.com/git/user/pq/weston.git/log/?h=subsurface-v1.5
> The v1.5 branches have no protocol changes compared to v1.
> They have been rebased, compositor has some minor changes, and
> the subsurfaces demo has been rewritten. I also do not consider
> the additional commits in the branches fit for review.
> If you build the v1.5 branch and your Cairo is built with full GL
> (you have cairo-gl, and no cairo-glesv2), use --with-cairo-glesv2
> in weston's ./configure arguments to disable cairo-egl completely.
> Otherwise subsurfaces would link and use both libGL and libGLESv2,
> and crash, so it will not even be built.
> Thanks,
> pq
> Pekka Paalanen (12):
>   window: destroy the 2nd shm buffer, if both released
>   window: create new struct surface with wl_surface
>   window: move toysurface and allocation to struct surface
>   window: move buffer type and transform into struct surface
>   window: assimilate window_get_resize_dx_dy() into the call site
>   window: move 'widget' member into struct surface
>   window: move input and opaque regions into struct surface
>   window: add surface pointer to widget
>   window: move cairo_surface into struct surface
>   window: remove the transparent flag as unused
>   window: let menu and tooltip redraw use widget size
>   window: create Cairo surfaces on demand for redraw
>  clients/window.c | 477 ++++++++++++++++++++++++++++++++-----------------------
>  clients/window.h |   6 +
>  2 files changed, 284 insertions(+), 199 deletions(-)
> -- 

More information about the wayland-devel mailing list