[mutter] wayland/actor-surface: Check for MetaXwaylandSurface instead of window type



commit 0ada90024f442e4dac842717c18d921cd7453b2e
Author: Robert Mader <robert mader posteo de>
Date:   Sun Feb 23 16:09:21 2020 +0100

    wayland/actor-surface: Check for MetaXwaylandSurface instead of window type
    
    The previous check would not ignore subsurfaces. Use the chance to directly
    check for the surface role instead - it's much cleaner.
    
    https://gitlab.gnome.org/GNOME/mutter/merge_requests/1082

 src/wayland/meta-wayland-actor-surface.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)
---
diff --git a/src/wayland/meta-wayland-actor-surface.c b/src/wayland/meta-wayland-actor-surface.c
index d61603905..6b030fa7b 100644
--- a/src/wayland/meta-wayland-actor-surface.c
+++ b/src/wayland/meta-wayland-actor-surface.c
@@ -31,6 +31,7 @@
 #include "wayland/meta-wayland-buffer.h"
 #include "wayland/meta-wayland-surface.h"
 #include "wayland/meta-window-wayland.h"
+#include "wayland/meta-xwayland-surface.h"
 
 typedef struct _MetaWaylandActorSurfacePrivate MetaWaylandActorSurfacePrivate;
 
@@ -150,7 +151,6 @@ meta_wayland_actor_surface_real_sync_actor_state (MetaWaylandActorSurface *actor
   MetaShapedTexture *stex;
   MetaWaylandBuffer *buffer;
   cairo_rectangle_int_t surface_rect;
-  MetaWindow *window;
   MetaWaylandSurface *subsurface_surface;
 
   surface_actor = priv->actor;
@@ -195,9 +195,7 @@ meta_wayland_actor_surface_real_sync_actor_state (MetaWaylandActorSurface *actor
       meta_surface_actor_set_input_region (surface_actor, NULL);
     }
 
-  window = meta_wayland_surface_get_window (surface);
-  if (window &&
-      window->client_type == META_WINDOW_CLIENT_TYPE_WAYLAND)
+  if (!META_IS_XWAYLAND_SURFACE (surface_role))
     {
       if (surface->opaque_region)
         {


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]