wayland/actor-surface-role: Check for toplevel window

Don't check whether the surface of the role has a window, but whether
the corresponding toplevel surface has a window. This is necessary to
make subsurfaces not always early out.

https://bugzilla.gnome.org/show_bug.cgi?id=770131
This commit is contained in:
Jonas Ådahl 2016-08-19 15:15:27 +08:00
parent b3f27de710
commit 43151edece

View File

@ -1999,10 +1999,12 @@ actor_surface_commit (MetaWaylandSurfaceRole *surface_role,
{ {
MetaWaylandSurface *surface = MetaWaylandSurface *surface =
meta_wayland_surface_role_get_surface (surface_role); meta_wayland_surface_role_get_surface (surface_role);
MetaWaylandSurface *toplevel_surface;
queue_surface_actor_frame_callbacks (surface, pending); queue_surface_actor_frame_callbacks (surface, pending);
if (!surface->window) toplevel_surface = meta_wayland_surface_get_toplevel (surface);
if (!toplevel_surface || !toplevel_surface->window)
return; return;
meta_surface_actor_wayland_sync_state ( meta_surface_actor_wayland_sync_state (