mirror of
https://github.com/brl/mutter.git
synced 2025-02-18 22:24:10 +00:00

This tweaks the semantics of the has_redraw_clips vfunc so we can assume that at the start of a new frame there is an implied, initial, redraw_clip that clips everything (i.e. nothing would be redrawn) so in that case we would expect the has_redraw_clips vfunc to return True at the start of a new frame for backends that support clipping. Previously there was an ambiguity when this function returned False since it could either mean a full screen redraw had been queued or it could mean that the clip state wasn't yet initialized for that frame. This would result in _clutter_stage_has_full_redraw_queued() returning True at the start of a new frame even before any actors have been updated, which in turn meant we would incorrectly ignore queue_redraw requests for actors, believing them to be redundant.