Added XDG compatibility to ivi-shell
[AGL/meta-agl.git] / meta-agl / recipes-graphics / wayland / weston / 0008-ivi-layout-use-libweston-desktop-api-for-views.patch
diff --git a/meta-agl/recipes-graphics/wayland/weston/0008-ivi-layout-use-libweston-desktop-api-for-views.patch b/meta-agl/recipes-graphics/wayland/weston/0008-ivi-layout-use-libweston-desktop-api-for-views.patch
new file mode 100644 (file)
index 0000000..e53a8c4
--- /dev/null
@@ -0,0 +1,30 @@
+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);