Support for sub-surfaces has been merged into mainline Wayland after the protocol work and other changes for this exciting new feature has been in development for several months. Sub-surfaces by itself isn't too exciting to end-users but will benefit application developers in enhancing the Wayland-powered Linux desktop.
Sub-surfaces in this perspective are additional Wayland surface objects that are connected to an application window. The Wayland compositor then does the compositing work of these sub-surfaces that the application/client would otherwise be responsible for compositing. With having the compositor itself handle these sub-surfaces of a given application window rather than the application itself, it should be easier for application developers while also yielding better performance.
Pekka Paalanen, the principal developer of the Wayland sub-surfaces work, used video players as one of the aims for this work. Video players have to deal with window decorations, the video content itself, and other potential overlays for sub-titles and displaying other content. Often these different layers are in different color formats when it comes to video playback. With the sub-surfaces work, the compositor itself can handle blending all of the layers together and potentially make greater use of hardware overlays and other performance-enhancing paths.
Sub-surfaces could also allow separate rendering APIs to work separately while being able to efficiently produced a finished product (window).
After the Wayland sub-surfaces patches went through three revisions, Kristian Høgsberg merged the work last Friday, per this mailing list post
. Besides the Wayland protocol work for sub-surfaces, there's also a Weston compositor implementation and toytoolkit support.
Wayland sub-surfaces is one of the many planned features for Wayland 1.2
. Another recently merged Wayland/Weston 1.2 feature was color management support