wayland/surface: Discard presentation feedback in _state_merge_into
Newly merged state is always from a different surface commit than the existing state. Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1880>
This commit is contained in:
parent
d43150573e
commit
854c02651f
@ -658,6 +658,11 @@ meta_wayland_surface_state_merge_into (MetaWaylandSurfaceState *from,
|
||||
from->subsurface_placement_ops = NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
* A new commit indicates a new content update, so any previous
|
||||
* content update did not go on screen and needs to be discarded.
|
||||
*/
|
||||
meta_wayland_surface_state_discard_presentation_feedback (to);
|
||||
wl_list_insert_list (&to->presentation_feedback_list,
|
||||
&from->presentation_feedback_list);
|
||||
wl_list_init (&from->presentation_feedback_list);
|
||||
@ -1025,12 +1030,6 @@ meta_wayland_surface_commit (MetaWaylandSurface *surface)
|
||||
{
|
||||
ensure_cached_state (surface);
|
||||
|
||||
/*
|
||||
* A new commit indicates a new content update, so any previous
|
||||
* cached content update did not go on screen and needs to be discarded.
|
||||
*/
|
||||
meta_wayland_surface_state_discard_presentation_feedback (surface->cached_state);
|
||||
|
||||
meta_wayland_surface_state_merge_into (pending, surface->cached_state);
|
||||
}
|
||||
else
|
||||
|
Loading…
x
Reference in New Issue
Block a user