Skip to content

Unify solid-colour surface handling in shells [weston_buffer epic part 1]

shell-utils already has a helper which allows shells to create a solid-colour view, e.g. for fullscreen backgrounds or fade transitions. This is currently implemented by creating a weston_surface and a weston_view (mostly as fullscreen for a given output), and calling the renderer's surface_set_color hook to make it be a solid colour.

This MR cleans the helper up a little bit, makes it as generic as possible, then switches all the shells over to using it.

The helper originally just returned a weston_view, however (spoiler!) in preparation for moving from solid-colour surfaces to solid-colour buffers attached to surfaces in !767 (merged), it now returns a weston_curtain struct with a specialised destructor.

Edited by Daniel Stone

Merge request reports