mirror of
https://github.com/brl/mutter.git
synced 2025-02-25 01:04:10 +00:00

clutter_actor_paint() implements a clear preference for custom clips over clip_to_allocation: If a custom clip is set, clip_to_allocation is ignored. Since the paint volume reflects what Clutter is going to paint, we should handle it the same when putting together our paint volume: So first handle custom clips, and if one is set, use that. Then handle clip_to_allocation, and if that's set, use that. And finally, if both aren't set, union our allocation with the children paint volumes to get the building volume. clutter_actor_paint() also doesn't check whether the custom clip is empty: If that's the case, it will simply not paint anything. Given that that's allowed by clutter_actor_paint(), the paint volume should also follow here and return an empty paint volume in case the custom clip is empty. Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1592>