Provide AGL extension, wl_shell support for Weston ivi-shell. 19/4119/1
authorNobuhiko Tanibata <NOBUHIKO_TANIBATA@denso.co.jp>
Wed, 7 Oct 2015 08:52:25 +0000 (17:52 +0900)
committerNobuhiko Tanibata <ntanibata@jp.adit-jv.com>
Thu, 8 Oct 2015 02:12:27 +0000 (11:12 +0900)
This component is merged in meta-agl/meta-ivi-common. Additionally,
AGL demo, Home screen, requires, wl_shell support as well. This patch
just makes two function extern to be used by Wayland-IVI-Extension to
support wl_shell. This means this patch doesn't change bihavior of
ivi-shell but allows Wayland-IVI-Extension to get notification of
creation of wl_shell and send configure to the application.

In details, please visit AGL wiki and Wayland-IVI-Extension's README

https://wiki.automotivelinux.org/agl-distro/demo-apps/home-screen

Change-Id: If300ca9ecc62a78e473e01ef670cd9a366fe44e0
Signed-off-by: Nobuhiko Tanibata <ntanibata@jp.adit-jv.com>
recipes-graphics/wayland/weston/0001-weston-patch-for-wl-shell-emulator.patch [new file with mode: 0644]
recipes-graphics/wayland/weston_1.5.0.bbappend [new file with mode: 0644]

diff --git a/recipes-graphics/wayland/weston/0001-weston-patch-for-wl-shell-emulator.patch b/recipes-graphics/wayland/weston/0001-weston-patch-for-wl-shell-emulator.patch
new file mode 100644 (file)
index 0000000..0e14915
--- /dev/null
@@ -0,0 +1,50 @@
+---
+ ivi-shell/ivi-layout-export.h | 19 +++++++++++++++++++
+ ivi-shell/ivi-layout.c        |  2 ++
+ 2 files changed, 21 insertions(+)
+
+diff --git a/ivi-shell/ivi-layout-export.h b/ivi-shell/ivi-layout-export.h
+index 8a92009..7f93c82 100644
+--- a/ivi-shell/ivi-layout-export.h
++++ b/ivi-shell/ivi-layout-export.h
+@@ -185,6 +185,25 @@ struct ivi_controller_interface {
+       int32_t (*commit_changes)(void);
+
+       /**
++       * \brief Creates an ivi_layout_surface.
++       *
++       * \return IVI_SUCCEEDED if the method call was successful
++       * \return IVI_FAILED if the method call was failed
++       */
++      struct ivi_layout_surface* (*surface_create)(
++                              struct weston_surface *wl_surface,
++                              uint32_t id_surface);
++
++      /**
++       * \brief Configure an ivi_layout_surface
++       *
++       * \return IVI_SUCCEEDED if the method call was successful
++       * \return IVI_FAILED if the method call was failed
++       */
++      void (*surface_configure)(struct ivi_layout_surface *ivisurf,
++                                int32_t width, int32_t height);
++
++      /**
+        * surface controller interface
+        */
+
+diff --git a/ivi-shell/ivi-layout.c b/ivi-shell/ivi-layout.c
+index 51d0a8d..76891bf 100644
+--- a/ivi-shell/ivi-layout.c
++++ b/ivi-shell/ivi-layout.c
+@@ -2870,6 +2870,8 @@ static struct ivi_controller_interface ivi_controller_interface = {
+        */
+       .commit_changes = ivi_layout_commit_changes,
+
++      .surface_create = ivi_layout_surface_create,
++      .surface_configure = ivi_layout_surface_configure,
+       /**
+        * surface controller interfaces
+        */
+--
+1.8.3.1
diff --git a/recipes-graphics/wayland/weston_1.5.0.bbappend b/recipes-graphics/wayland/weston_1.5.0.bbappend
new file mode 100644 (file)
index 0000000..ee9422f
--- /dev/null
@@ -0,0 +1,5 @@
+FILESEXTRAPATHS_append := ":${THISDIR}/${PN}"
+
+SRC_URI_append = "\
+    file://0001-weston-patch-for-wl-shell-emulator.patch \
+    "