mirror of
https://github.com/brl/mutter.git
synced 2025-03-25 12:43:52 +00:00

Add a new pair of APIs corresponding to CoglFramebuffer's draw_rectangles() and draw_textured_rectangles(). They're generally more performance compared to adding multiple single-rect operations. These variants are heavily used by GNOME Shell's CSS implementation. The op array is built to match cogl_framebuffer_draw_textured_rectangles() always, which means it's a series of 8 floats composed (x1 y1 x2 y2) and (s1 t1 s2 t2). To avoid adding new struct fields to ClutterPaintOperation, which is a performance and memory sensitive structure, simply divide the array length by 8 (which is guaranteed to be correct). Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1637>