From 2df127c180048ded2b8040b8fc4be9adf8b7fc9e Mon Sep 17 00:00:00 2001
From: Philipp Zabel
Date: Thu, 13 Jul 2023 12:57:42 +0200
Subject: [PATCH] ivi-layout: Use weston_view_add/remove_transform()
Stop manipulating the view->geometry.transformation_list directly and
replace weston_view_geometry_dirty() and weston_view_update_transform()
calls with weston_view_add/remove_transform().
Signed-off-by: Philipp Zabel
---
ivi-shell/ivi-layout.c | 13 +++++--------
1 file changed, 5 insertions(+), 8 deletions(-)
diff --git a/ivi-shell/ivi-layout.c b/ivi-shell/ivi-layout.c
index 4df53d8db..cb5355743 100644
--- a/ivi-shell/ivi-layout.c
+++ b/ivi-shell/ivi-layout.c
@@ -50,7 +50,7 @@
*
* 4/ According properties, set transformation by using weston_matrix and
* weston_view per ivi_surfaces and ivi_layers in while loop.
- * 5/ Set damage and trigger transform by using weston_view_geometry_dirty.
+ * 5/ Set damage and trigger transform by using weston_view_add_transform
* 6/ Schedule repaint for each view by using weston_view_schedule_repaint.
* 7/ Notify update of properties.
*
@@ -149,7 +149,7 @@ ivi_view_is_rendered(struct ivi_layout_view *view)
static void
ivi_view_destroy(struct ivi_layout_view *ivi_view)
{
- wl_list_remove(&ivi_view->transform.link);
+ weston_view_remove_transform(ivi_view->view, &ivi_view->transform);
wl_list_remove(&ivi_view->link);
wl_list_remove(&ivi_view->surf_link);
wl_list_remove(&ivi_view->pending_link);
@@ -611,19 +611,16 @@ update_prop(struct ivi_layout_view *ivi_view)
}
if (can_calc) {
- wl_list_remove(&ivi_view->transform.link);
weston_matrix_init(&ivi_view->transform.matrix);
calc_surface_to_global_matrix_and_mask_to_weston_surface(
iviscrn, ivilayer, ivisurf, &ivi_view->transform.matrix, &r);
weston_view_set_mask(ivi_view->view, r.x, r.y, r.width, r.height);
- wl_list_insert(&ivi_view->view->geometry.transformation_list,
- &ivi_view->transform.link);
-
+ weston_view_add_transform(ivi_view->view,
+ &ivi_view->view->geometry.transformation_list,
+ &ivi_view->transform);
weston_view_set_transform_parent(ivi_view->view, NULL);
- weston_view_geometry_dirty(ivi_view->view);
- weston_view_update_transform(ivi_view->view);
}
ivisurf->update_count++;