X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;ds=sidebyside;f=meta-agl-bsp%2Fmeta-ti%2Frecipes-arago%2Fweston%2Fweston%2F0007-ivi-shell-layout-Export-surface-destroy-callback.patch;fp=meta-agl-bsp%2Fmeta-ti%2Frecipes-arago%2Fweston%2Fweston%2F0007-ivi-shell-layout-Export-surface-destroy-callback.patch;h=1fe7cf5aa7c2fb740e669f0e525e0762663fc703;hb=534b92bdada2ec1920cdd9e16d2a5a4c286c4d1c;hp=0000000000000000000000000000000000000000;hpb=b678c686af5962c8ceec4517aa27992c9ba2d47b;p=AGL%2Fmeta-agl.git diff --git a/meta-agl-bsp/meta-ti/recipes-arago/weston/weston/0007-ivi-shell-layout-Export-surface-destroy-callback.patch b/meta-agl-bsp/meta-ti/recipes-arago/weston/weston/0007-ivi-shell-layout-Export-surface-destroy-callback.patch new file mode 100644 index 000000000..1fe7cf5aa --- /dev/null +++ b/meta-agl-bsp/meta-ti/recipes-arago/weston/weston/0007-ivi-shell-layout-Export-surface-destroy-callback.patch @@ -0,0 +1,60 @@ +From 9f47b84c94c71ef8bb1459c4c2b2759343432558 Mon Sep 17 00:00:00 2001 +From: Volodymyr Riazantsev +Date: Fri, 1 Jul 2016 22:38:43 -0400 +Subject: [PATCH 7/8] ivi-shell: layout: Export surface destroy callback + +[HACK] +Some applications still using regular shell interface and +thereby must be handled through weston native notifications. + +Only one and single notification callback accepted and it can be +in external module. + +So we need to export call back for remove surface inside layout +controlled. + +This is a obvious hack. + +Signed-off-by: Volodymyr Riazantsev +Signed-off-by: Karthik Ramanan +--- + ivi-shell/ivi-layout-export.h | 7 +++++++ + ivi-shell/ivi-layout.c | 4 +++- + 2 files changed, 10 insertions(+), 1 deletion(-) + +diff --git a/ivi-shell/ivi-layout-export.h b/ivi-shell/ivi-layout-export.h +index 7f93c82..f5ea54e 100644 +--- a/ivi-shell/ivi-layout-export.h ++++ b/ivi-shell/ivi-layout-export.h +@@ -823,6 +823,13 @@ struct ivi_controller_interface { + * \return id of ivi_screen + */ + uint32_t (*get_id_of_screen)(struct ivi_layout_screen *iviscrn); ++ ++ /** ++ * \brief HACK. Destroy surface. ++ * ++ */ ++ void (*surface_destroy)(struct ivi_layout_surface *ivisurf); ++ + }; + + #ifdef __cplusplus +diff --git a/ivi-shell/ivi-layout.c b/ivi-shell/ivi-layout.c +index 85cb457..7d2daa1 100644 +--- a/ivi-shell/ivi-layout.c ++++ b/ivi-shell/ivi-layout.c +@@ -3016,7 +3016,9 @@ static struct ivi_controller_interface ivi_controller_interface = { + /** + * screen controller interfaces part2 + */ +- .get_id_of_screen = ivi_layout_get_id_of_screen ++ .get_id_of_screen = ivi_layout_get_id_of_screen, ++ ++ .surface_destroy = ivi_layout_surface_destroy + }; + + int +-- +2.4.5 +