Proposal to change subsurface extension

John Kåre Alsaker john.kare.alsaker at
Thu Jun 13 03:35:36 PDT 2013

I propose the we should change the commit behavior to having commit on the
toplevel wl_surface
commit itself and all it's subsurfaces atomically. Commiting on subsurfaces
should be a no-op.
That is to allow eglSwapBuffers to be used in subsurfaces, should you
manage to get it to be non-blocking.
This isn't a huge loss since clients only need to atomically commit all
surfaces anyway.

This has a number of benefits
- We can get rid of the commit modes (and the set_sync/set_desync request)
and wl_surface.commit becomes easy to reason about
- Commiting all surfaces becomes a single request instead of having to
walking the surface tree bottom up commiting surface along in synchronized
- The compositor doesn't have to manage more than 2 states per surface
(pending and current)

I don't see any drawbacks from this or the reason for the complexity in the
current extension
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the wayland-devel mailing list