compositor/native: Don't allow obscured surface actors as scanout candidates

This check was previously done after it was already determined that
a surface actor is suitable for scanout.

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2526>
This commit is contained in:
Dor Askayo 2022-07-16 09:38:41 +03:00 committed by Marge Bot
parent 259a9998d8
commit 66e938bc34
2 changed files with 3 additions and 6 deletions

View File

@ -119,6 +119,9 @@ maybe_assign_primary_plane (MetaCompositor *compositor)
if (!surface_actor) if (!surface_actor)
goto done; goto done;
if (meta_surface_actor_is_obscured (surface_actor))
goto done;
surface_actor_wayland = META_SURFACE_ACTOR_WAYLAND (surface_actor); surface_actor_wayland = META_SURFACE_ACTOR_WAYLAND (surface_actor);
surface = meta_surface_actor_wayland_get_surface (surface_actor_wayland); surface = meta_surface_actor_wayland_get_surface (surface_actor_wayland);
if (!surface) if (!surface)

View File

@ -72,12 +72,6 @@ meta_surface_actor_wayland_try_acquire_scanout (MetaSurfaceActorWayland *self,
MetaWaylandSurface *surface; MetaWaylandSurface *surface;
CoglScanout *scanout; CoglScanout *scanout;
/* If the actor appears to be obscured, need to go through the normal paint
* machinery to ensure the unobscured region is up to date
*/
if (meta_surface_actor_is_obscured (META_SURFACE_ACTOR (self)))
return NULL;
surface = meta_surface_actor_wayland_get_surface (self); surface = meta_surface_actor_wayland_get_surface (self);
g_return_val_if_fail (surface, NULL); g_return_val_if_fail (surface, NULL);