mirror of
https://github.com/brl/mutter.git
synced 2024-12-23 03:22:04 +00:00
wayland/surface: Simplify state cleanup after merge
Instead of manually freeing things, use the existing helper function. https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1232
This commit is contained in:
parent
2becb3dd29
commit
3c068ef135
@ -506,9 +506,6 @@ meta_wayland_surface_state_merge_into (MetaWaylandSurfaceState *from,
|
||||
if (to->buffer)
|
||||
g_clear_signal_handler (&to->buffer_destroy_handler_id, to->buffer);
|
||||
|
||||
if (from->buffer)
|
||||
g_clear_signal_handler (&from->buffer_destroy_handler_id, from->buffer);
|
||||
|
||||
to->newly_attached = TRUE;
|
||||
to->buffer = from->buffer;
|
||||
to->dx = from->dx;
|
||||
@ -516,11 +513,10 @@ meta_wayland_surface_state_merge_into (MetaWaylandSurfaceState *from,
|
||||
}
|
||||
|
||||
wl_list_insert_list (&to->frame_callback_list, &from->frame_callback_list);
|
||||
wl_list_init (&from->frame_callback_list);
|
||||
|
||||
cairo_region_union (to->surface_damage, from->surface_damage);
|
||||
cairo_region_union (to->buffer_damage, from->buffer_damage);
|
||||
cairo_region_destroy (from->surface_damage);
|
||||
cairo_region_destroy (from->buffer_damage);
|
||||
|
||||
if (from->input_region_set)
|
||||
{
|
||||
@ -530,7 +526,6 @@ meta_wayland_surface_state_merge_into (MetaWaylandSurfaceState *from,
|
||||
to->input_region = cairo_region_reference (from->input_region);
|
||||
|
||||
to->input_region_set = TRUE;
|
||||
cairo_region_destroy (from->input_region);
|
||||
}
|
||||
|
||||
if (from->opaque_region_set)
|
||||
@ -541,7 +536,6 @@ meta_wayland_surface_state_merge_into (MetaWaylandSurfaceState *from,
|
||||
to->opaque_region = cairo_region_reference (from->opaque_region);
|
||||
|
||||
to->opaque_region_set = TRUE;
|
||||
cairo_region_destroy (from->opaque_region);
|
||||
}
|
||||
|
||||
if (from->has_new_geometry)
|
||||
@ -603,7 +597,7 @@ meta_wayland_surface_state_merge_into (MetaWaylandSurfaceState *from,
|
||||
to);
|
||||
}
|
||||
|
||||
meta_wayland_surface_state_set_default (from);
|
||||
meta_wayland_surface_state_reset (from);
|
||||
}
|
||||
|
||||
static void
|
||||
|
Loading…
Reference in New Issue
Block a user