xwayland: Don't queue frame callbacks when role assigned

'xwayland: Do not queue frame callbacks unconditionally' changed the
frame callback behavior of Xwayland surfaces so that they behave the
same way as other actor surfaces (e.g. xdg-shell ones), except for the
case when they are initially assigned.

Remove this special casing as well including the now incorrect comment,
so that the Xwayland surfaces behave the same as the others in this
regard also when assigning.

https://gitlab.gnome.org/GNOME/mutter/merge_requests/964
This commit is contained in:
Jonas Ådahl 2019-12-09 15:46:04 +01:00
parent 06fa131235
commit 4fccc903b5

View File

@ -854,24 +854,6 @@ meta_xwayland_shutdown (MetaXWaylandManager *manager)
}
}
static void
xwayland_surface_assigned (MetaWaylandSurfaceRole *surface_role)
{
MetaWaylandSurface *surface =
meta_wayland_surface_role_get_surface (surface_role);
MetaWaylandSurfaceRoleClass *surface_role_class =
META_WAYLAND_SURFACE_ROLE_CLASS (meta_wayland_surface_role_xwayland_parent_class);
/* See comment in xwayland_surface_commit for why we reply even though the
* surface may not be drawn the next frame.
*/
wl_list_insert_list (&surface->compositor->frame_callbacks,
&surface->pending_frame_callback_list);
wl_list_init (&surface->pending_frame_callback_list);
surface_role_class->assigned (surface_role);
}
static MetaWaylandSurface *
xwayland_surface_get_toplevel (MetaWaylandSurfaceRole *surface_role)
{
@ -935,7 +917,6 @@ meta_wayland_surface_role_xwayland_class_init (MetaWaylandSurfaceRoleXWaylandCla
object_class->finalize = xwayland_surface_finalize;
surface_role_class->assigned = xwayland_surface_assigned;
surface_role_class->get_toplevel = xwayland_surface_get_toplevel;
actor_surface_class->get_geometry_scale = xwayland_surface_get_geometry_scale;