compositor: add an assign_planes hook to the output
This allows each output back end to optimize drawing using overlay planes
and cursors (yet to be integrated). If a surface is assigned to a
plane, the back end should clear its damage field so that the later
repaint code won't look at it.
diff --git a/src/compositor.c b/src/compositor.c
index 3797a71..4cd8d99 100644
--- a/src/compositor.c
+++ b/src/compositor.c
@@ -986,6 +986,15 @@
&es->transform.boundingbox);
}
+ if (output->assign_planes)
+ /*
+ * This will queue flips for the fbs and sprites where
+ * applicable and clear the damage for those surfaces.
+ * The repaint loop below will repaint everything
+ * else.
+ */
+ output->assign_planes(output);
+
weston_output_set_cursor(output, ec->input_device);
wl_list_for_each(es, &ec->surface_list, link) {