[mutter] compositor/native: Don't allow obscured surface actors as scanout candidates
- From: Marge Bot <marge-bot src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter] compositor/native: Don't allow obscured surface actors as scanout candidates
- Date: Mon, 1 Aug 2022 21:40:45 +0000 (UTC)
commit 66e938bc34b98f0898f3143b84bcda2541a7a655
Author: Dor Askayo <dor askayo gmail com>
Date: Sat Jul 16 09:38:41 2022 +0300
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>
src/compositor/meta-compositor-native.c | 3 +++
src/compositor/meta-surface-actor-wayland.c | 6 ------
2 files changed, 3 insertions(+), 6 deletions(-)
---
diff --git a/src/compositor/meta-compositor-native.c b/src/compositor/meta-compositor-native.c
index a156be7da2..e2614f6f7e 100644
--- a/src/compositor/meta-compositor-native.c
+++ b/src/compositor/meta-compositor-native.c
@@ -119,6 +119,9 @@ maybe_assign_primary_plane (MetaCompositor *compositor)
if (!surface_actor)
goto done;
+ if (meta_surface_actor_is_obscured (surface_actor))
+ goto done;
+
surface_actor_wayland = META_SURFACE_ACTOR_WAYLAND (surface_actor);
surface = meta_surface_actor_wayland_get_surface (surface_actor_wayland);
if (!surface)
diff --git a/src/compositor/meta-surface-actor-wayland.c b/src/compositor/meta-surface-actor-wayland.c
index 1dad50cd78..f6e8f84329 100644
--- a/src/compositor/meta-surface-actor-wayland.c
+++ b/src/compositor/meta-surface-actor-wayland.c
@@ -72,12 +72,6 @@ meta_surface_actor_wayland_try_acquire_scanout (MetaSurfaceActorWayland *self,
MetaWaylandSurface *surface;
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);
g_return_val_if_fail (surface, NULL);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]