[PATCH weston v2 08/15] ivi-layout: use libweston-desktop api for views

Michael Teyfel mteyfel at de.adit-jv.com
Mon Nov 6 13:52:42 UTC 2017


Signed-off-by: Michael Teyfel <mteyfel at de.adit-jv.com>
---
 ivi-shell/ivi-layout.c | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/ivi-shell/ivi-layout.c b/ivi-shell/ivi-layout.c
index 086d0fd2..6b854503 100644
--- a/ivi-shell/ivi-layout.c
+++ b/ivi-shell/ivi-layout.c
@@ -153,7 +153,10 @@ ivi_view_destroy(struct ivi_layout_view *ivi_view)
 	wl_list_remove(&ivi_view->pending_link);
 	wl_list_remove(&ivi_view->order_link);
 
-	weston_view_destroy(ivi_view->view);
+	if (weston_surface_is_desktop_surface(ivi_view->ivisurf->surface))
+		weston_desktop_surface_unlink_view(ivi_view->view);
+	else
+		weston_view_destroy(ivi_view->view);
 
 	free(ivi_view);
 }
@@ -170,7 +173,13 @@ ivi_view_create(struct ivi_layout_layer *ivilayer,
 		return NULL;
 	}
 
-	ivi_view->view = weston_view_create(ivisurf->surface);
+	if (weston_surface_is_desktop_surface(ivisurf->surface)) {
+		ivi_view->view = weston_desktop_surface_create_view(
+				ivisurf->weston_desktop_surface);
+	} else {
+		ivi_view->view = weston_view_create(ivisurf->surface);
+	}
+
 	if (ivi_view->view == NULL) {
 		weston_log("fails to allocate memory\n");
 		free(ivi_view);
-- 
2.15.0



More information about the wayland-devel mailing list