From da54cfd31dd63e7d51afe459208ff17b283d95b9 Mon Sep 17 00:00:00 2001 From: Marius Vlad Date: Mon, 21 Feb 2022 14:27:28 +0200 Subject: layout: Address all other callsites w/ dirty+surface damage This is just a missing left-over 'layout: Inflict damage on all subsurfaces'. As we have different paths for other types of surface roles, address them as well. Bug-AGL: SPEC-4262 Signed-off-by: Marius Vlad Change-Id: I2b68bf986ad694b0e31396edc24c54cf1dc4d834 (cherry picked from commit cec4cf8fe409cae5618e81e4a3b6dd11cc8b2aa9) --- src/layout.c | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/src/layout.c b/src/layout.c index aa32415..0356d01 100644 --- a/src/layout.c +++ b/src/layout.c @@ -427,8 +427,8 @@ ivi_layout_fullscreen_committed(struct ivi_surface *surface) weston_view_set_position(view, woutput->x, woutput->y); weston_layer_entry_insert(&ivi->fullscreen.view_list, &view->layer_link); - weston_view_update_transform(view); - weston_view_damage_below(view); + weston_view_geometry_dirty(view); + weston_surface_damage(view->surface); wsurface->is_mapped = true; surface->view->is_mapped = true; @@ -456,8 +456,9 @@ ivi_layout_desktop_resize(struct ivi_surface *surface, width, height); weston_view_set_position(view, x, y); - weston_view_update_transform(view); - weston_view_damage_below(view); + + weston_view_geometry_dirty(view); + weston_surface_damage(view->surface); } void @@ -541,8 +542,8 @@ ivi_layout_split_committed(struct ivi_surface *surface) weston_view_set_position(view, x, y); weston_layer_entry_insert(&ivi->normal.view_list, &view->layer_link); - weston_view_update_transform(view); - weston_view_damage_below(view); + weston_view_geometry_dirty(view); + weston_surface_damage(view->surface); wsurface->is_mapped = true; surface->view->is_mapped = true; @@ -606,8 +607,8 @@ ivi_layout_popup_committed(struct ivi_surface *surface) weston_layer_entry_insert(&ivi->popup.view_list, &view->layer_link); - weston_view_update_transform(view); - weston_view_damage_below(view); + weston_view_geometry_dirty(view); + weston_surface_damage(view->surface); wsurface->is_mapped = true; surface->view->is_mapped = true; @@ -843,7 +844,8 @@ ivi_layout_deactivate(struct ivi_compositor *ivi, const char *app_id) view->surface->is_mapped = false; weston_layer_entry_remove(&view->layer_link); - weston_view_damage_below(view); + weston_view_geometry_dirty(view); + weston_surface_damage(view->surface); ivi_output->active = NULL; } } else { @@ -859,6 +861,7 @@ ivi_layout_deactivate(struct ivi_compositor *ivi, const char *app_id) struct weston_view *view = surf->view; weston_layer_entry_remove(&view->layer_link); - weston_view_damage_below(view); + weston_view_geometry_dirty(view); + weston_surface_damage(view->surface); } } -- cgit 1.2.3-korg