diff options
-rw-r--r-- | meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension/0001-Fix-ivi-application-lib-install.patch | 30 | ||||
-rw-r--r-- | meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension/0001-Send-process-ID-that-created-surface-to-client.patch | 43 | ||||
-rwxr-xr-x | meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension/0001-ivi-input-support-touch-and-pointer-on-subsurface.patch | 191 | ||||
-rw-r--r-- | meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.11.0.bb (renamed from meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.5.0.bb) | 19 | ||||
-rwxr-xr-x | meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.11.0.bbappend | 8 | ||||
-rw-r--r-- | meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.5.0.bbappend | 7 | ||||
-rw-r--r-- | meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.9.1.bb | 26 | ||||
-rwxr-xr-x | meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.9.1.bbappend | 7 |
8 files changed, 48 insertions, 283 deletions
diff --git a/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension/0001-Fix-ivi-application-lib-install.patch b/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension/0001-Fix-ivi-application-lib-install.patch new file mode 100644 index 000000000..4140ce576 --- /dev/null +++ b/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension/0001-Fix-ivi-application-lib-install.patch @@ -0,0 +1,30 @@ +From 1e13c6d494a8b542c2a7f8251afc7aec401e3ad8 Mon Sep 17 00:00:00 2001 +From: Ronan Le Martret <ronan.lemartret@iot.bzh> +Date: Tue, 7 Feb 2017 17:13:47 +0100 +Subject: [PATCH] Fix ivi-application lib install + + * libivi-application.so must be a link to + libivi-application.so.X.X.XX + * fix yocto package QA + +Signed-off-by: Ronan Le Martret <ronan.lemartret@iot.bzh> +--- + protocol/CMakeLists.txt | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/protocol/CMakeLists.txt b/protocol/CMakeLists.txt +index 613a1a6..09d5126 100644 +--- a/protocol/CMakeLists.txt ++++ b/protocol/CMakeLists.txt +@@ -170,6 +170,8 @@ install( + DESTINATION include/ilm + ) + ++SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES VERSION ${ILM_API_VERSION} SOVERSION ${ILM_API_VERSION}) ++ + #============================================================================================= + # generate documentation for ivi-application API + #============================================================================================= +-- +2.6.6 + diff --git a/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension/0001-Send-process-ID-that-created-surface-to-client.patch b/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension/0001-Send-process-ID-that-created-surface-to-client.patch deleted file mode 100644 index 5c29d90e2..000000000 --- a/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension/0001-Send-process-ID-that-created-surface-to-client.patch +++ /dev/null @@ -1,43 +0,0 @@ -From f4adf64d979944aa80f1ba5dba4ed991b6620162 Mon Sep 17 00:00:00 2001 -From: Wataru Natsume <wnatsume@jp.adit-jv.com> -Date: Tue, 23 Feb 2016 11:14:53 +0900 -Subject: [PATCH] ivi-controller: Send process ID that created surface to - client. - -createPid should be a pid of process that creates surface. - -Signed-off-by: Wataru Natsume <wnatsume@jp.adit-jv.com> ---- - weston-ivi-shell/src/ivi-controller-impl.c | 13 ++++++++++++- - 1 file changed, 12 insertions(+), 1 deletion(-) - -diff --git a/weston-ivi-shell/src/ivi-controller-impl.c b/weston-ivi-shell/src/ivi-controller-impl.c -index f4e29ce..57bf5cc 100644 ---- a/weston-ivi-shell/src/ivi-controller-impl.c -+++ b/weston-ivi-shell/src/ivi-controller-impl.c -@@ -603,10 +603,21 @@ controller_surface_send_stats(struct wl_client *client, - struct wl_resource *resource) - { - struct ivisurface *ivisurf = wl_resource_get_user_data(resource); -+ struct weston_surface *surface; -+ struct wl_client* target_client; - pid_t pid; - uid_t uid; - gid_t gid; -- wl_client_get_credentials(client, &pid, &uid, &gid); -+ -+ /* Get pid that created surface */ -+ surface = ivi_extension_surface_get_weston_surface(ivisurf->shell, -+ ivisurf->layout_surface); -+ if (!surface) -+ return; -+ -+ target_client = wl_resource_get_client(surface->resource); -+ -+ wl_client_get_credentials(target_client, &pid, &uid, &gid); - - ivi_controller_surface_send_stats(resource, 0, 0, - ivisurf->update_count, pid, ""); --- -1.8.3.1 - diff --git a/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension/0001-ivi-input-support-touch-and-pointer-on-subsurface.patch b/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension/0001-ivi-input-support-touch-and-pointer-on-subsurface.patch deleted file mode 100755 index e1adf74ff..000000000 --- a/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension/0001-ivi-input-support-touch-and-pointer-on-subsurface.patch +++ /dev/null @@ -1,191 +0,0 @@ -From e1823ef6721dec9db2343c7f92703d03a435e2bf Mon Sep 17 00:00:00 2001 -From: Ryo Kagaya <rkagaya@jp.adit-jv.com> -Date: Fri, 4 Nov 2016 18:30:06 +0900 -Subject: [PATCH] ivi-input: support touch and pointer on subsurface - -When sends event to client, find a focused surface from subsurface list. - -support following events - -touch_down - -touch_up - -touch_motion - -pointer_button ---- - .../src/ivi-input-controller.c | 78 ++++++++++++++++++---- - 1 file changed, 64 insertions(+), 14 deletions(-) - -diff --git a/ivi-input-modules/ivi-input-controller/src/ivi-input-controller.c b/ivi-input-modules/ivi-input-controller/src/ivi-input-controller.c -index 9ed85d2..b1f9d6d 100644 ---- a/ivi-input-modules/ivi-input-controller/src/ivi-input-controller.c -+++ b/ivi-input-modules/ivi-input-controller/src/ivi-input-controller.c -@@ -372,7 +372,8 @@ pointer_grab_button(struct weston_pointer_grab *grab, uint32_t time, - struct surface_ctx *surf_ctx; - wl_fixed_t sx, sy; - struct weston_view *picked_view, *w_view, *old_focus; -- struct weston_surface *w_surf; -+ struct weston_surface *w_surf, *send_surf; -+ struct weston_subsurface *sub; - struct wl_resource *resource; - struct wl_client *surface_client; - uint32_t serial; -@@ -391,12 +392,24 @@ pointer_grab_button(struct weston_pointer_grab *grab, uint32_t time, - /* search for the picked view in layout surfaces */ - wl_list_for_each(surf_ctx, &seat->input_ctx->surface_list, link) { - w_surf = interface->surface_get_weston_surface(surf_ctx->layout_surface); -- w_view = wl_container_of(w_surf->views.next, w_view, surface_link); -+ -+ /* Find a focused surface from subsurface list */ -+ send_surf = w_surf; -+ if (!wl_list_empty(&w_surf->subsurface_list)) { -+ wl_list_for_each(sub, &w_surf->subsurface_list, parent_link) { -+ if (sub->surface == picked_view->surface) { -+ send_surf = sub->surface; -+ break; -+ } -+ } -+ } -+ -+ w_view = wl_container_of(send_surf->views.next, w_view, surface_link); - - if (get_accepted_seat(surf_ctx, grab->pointer->seat->seat_name) < 0) - continue; - -- if (picked_view->surface == w_surf) { -+ if (picked_view->surface == send_surf) { - /* Correct layout surface is found*/ - surf_ctx->focus |= ILM_INPUT_DEVICE_POINTER; - send_input_focus(seat->input_ctx, -@@ -458,7 +471,8 @@ touch_grab_down(struct weston_touch_grab *grab, uint32_t time, int touch_id, - - /* For each surface_ctx, check for focus and send */ - wl_list_for_each(surf_ctx, &seat->input_ctx->surface_list, link) { -- struct weston_surface *surf; -+ struct weston_surface *surf, *send_surf; -+ struct weston_subsurface *sub; - struct weston_view *view; - struct wl_resource *resource; - struct wl_client *surface_client; -@@ -469,9 +483,20 @@ touch_grab_down(struct weston_touch_grab *grab, uint32_t time, int touch_id, - if (get_accepted_seat(surf_ctx, grab->touch->seat->seat_name) < 0) - continue; - -+ /* Find a focused surface from subsurface list */ -+ send_surf = surf; -+ if (!wl_list_empty(&surf->subsurface_list)) { -+ wl_list_for_each(sub, &surf->subsurface_list, parent_link) { -+ if (sub->surface == grab->touch->focus->surface) { -+ send_surf = sub->surface; -+ break; -+ } -+ } -+ } -+ - /* Touches set touch focus */ - if (grab->touch->num_tp == 1) { -- if (surf == grab->touch->focus->surface) { -+ if (send_surf == grab->touch->focus->surface) { - surf_ctx->focus |= ILM_INPUT_DEVICE_TOUCH; - send_input_focus(seat->input_ctx, - interface->get_id_of_surface(surf_ctx->layout_surface), -@@ -490,23 +515,23 @@ touch_grab_down(struct weston_touch_grab *grab, uint32_t time, int touch_id, - continue; - - /* Assume one view per surface */ -- view = wl_container_of(surf->views.next, view, surface_link); -+ view = wl_container_of(send_surf->views.next, view, surface_link); - weston_view_from_global_fixed(view, x, y, &sx, &sy); - -- surface_client = wl_resource_get_client(surf->resource); -+ surface_client = wl_resource_get_client(send_surf->resource); - serial = wl_display_next_serial(display); - wl_resource_for_each(resource, &grab->touch->resource_list) { - if (wl_resource_get_client(resource) != surface_client) - continue; - -- wl_touch_send_down(resource, serial, time, surf->resource, -+ wl_touch_send_down(resource, serial, time, send_surf->resource, - touch_id, sx, sy); - } - wl_resource_for_each(resource, &grab->touch->focus_resource_list) { - if (wl_resource_get_client(resource) != surface_client) - continue; - -- wl_touch_send_down(resource, serial, time, surf->resource, -+ wl_touch_send_down(resource, serial, time, send_surf->resource, - touch_id, sx, sy); - } - } -@@ -525,7 +550,8 @@ touch_grab_up(struct weston_touch_grab *grab, uint32_t time, int touch_id) - - /* For each surface_ctx, check for focus and send */ - wl_list_for_each(surf_ctx, &seat->input_ctx->surface_list, link) { -- struct weston_surface *surf; -+ struct weston_surface *surf, *send_surf; -+ struct weston_subsurface *sub; - struct wl_resource *resource; - struct wl_client *surface_client; - uint32_t serial; -@@ -537,8 +563,20 @@ touch_grab_up(struct weston_touch_grab *grab, uint32_t time, int touch_id) - continue; - - surf = interface->surface_get_weston_surface(surf_ctx->layout_surface); -- surface_client = wl_resource_get_client(surf->resource); - serial = wl_display_next_serial(display); -+ -+ /* Find a focused surface from subsurface list */ -+ send_surf = surf; -+ if (!wl_list_empty(&surf->subsurface_list)) { -+ wl_list_for_each(sub, &surf->subsurface_list, parent_link) { -+ if (sub->surface == grab->touch->focus->surface) { -+ send_surf = sub->surface; -+ break; -+ } -+ } -+ } -+ surface_client = wl_resource_get_client(send_surf->resource); -+ - wl_resource_for_each(resource, &grab->touch->resource_list) { - if (wl_resource_get_client(resource) != surface_client) - continue; -@@ -555,7 +593,7 @@ touch_grab_up(struct weston_touch_grab *grab, uint32_t time, int touch_id) - - /* Touches unset touch focus */ - if (grab->touch->num_tp == 0) { -- if (surf == grab->touch->focus->surface) -+ if (send_surf == grab->touch->focus->surface) - surf_ctx->focus &= ~ILM_INPUT_DEVICE_TOUCH; - send_input_focus(seat->input_ctx, - interface->get_id_of_surface(surf_ctx->layout_surface), -@@ -576,7 +614,8 @@ touch_grab_motion(struct weston_touch_grab *grab, uint32_t time, int touch_id, - - /* For each surface_ctx, check for focus and send */ - wl_list_for_each(surf_ctx, &seat->input_ctx->surface_list, link) { -- struct weston_surface *surf; -+ struct weston_surface *surf, *send_surf; -+ struct weston_subsurface *sub; - struct weston_view *view; - struct wl_resource *resource; - struct wl_client *surface_client; -@@ -592,7 +631,18 @@ touch_grab_motion(struct weston_touch_grab *grab, uint32_t time, int touch_id, - view = wl_container_of(surf->views.next, view, surface_link); - weston_view_from_global_fixed(view, x, y, &sx, &sy); - -- surface_client = wl_resource_get_client(surf->resource); -+ /* Find a focused surface from subsurface list */ -+ send_surf = surf; -+ if (!wl_list_empty(&surf->subsurface_list)) { -+ wl_list_for_each(sub, &surf->subsurface_list, parent_link) { -+ if (sub->surface == grab->touch->focus->surface) { -+ send_surf = sub->surface; -+ break; -+ } -+ } -+ } -+ surface_client = wl_resource_get_client(send_surf->resource); -+ - wl_resource_for_each(resource, &grab->touch->resource_list) { - if (wl_resource_get_client(resource) != surface_client) - continue; --- -1.9.1 - diff --git a/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.5.0.bb b/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.11.0.bb index 9582a5a55..581cc5b13 100644 --- a/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.5.0.bb +++ b/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.11.0.bb @@ -3,19 +3,20 @@ DESCRIPTION = "GENIVI Layer Management API based on Wayland IVI Extension" HOMEPAGE = "http://projects.genivi.org/wayland-ivi-extension" BUGTRACKER = "http://bugs.genivi.org/enter_bug.cgi?product=Wayland%20IVI%20Extension" LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=176cedb32f48dd58f07e0c1c717b3ea4" +LIC_FILES_CHKSUM = "file://LICENSE;md5=1f1a56bb2dadf5f2be8eb342acf4ed79" -DEPENDS = "weston" - -SRC_URI = "git://git.projects.genivi.org/${PN}.git \ - " -SRC_URI_append_wandboard = "file://wandboard_fix_build.patch" +SRCREV = "c9001582b10ce209c37b42dd560947c5aa8928b3" +SRC_URI = "git://github.com/GENIVI/${BPN}.git;protocol=http \ + " +S = "${WORKDIR}/git" -SRCREV = "8f0874b606b8e2a9385af947728905735bad3939" +DEPENDS = "weston virtual/libgles2 pixman" -S = "${WORKDIR}/git" +inherit cmake -inherit cmake autotools +EXTRA_OECMAKE := "-DWITH_ILM_INPUT=1" FILES_${PN} += "${libdir}/weston/*" FILES_${PN}-dbg += "${libdir}/weston/.debug/*" + +EXTRA_OECMAKE += "-DLIB_SUFFIX=${@d.getVar('baselib', True).replace('lib', '')}" diff --git a/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.11.0.bbappend b/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.11.0.bbappend new file mode 100755 index 000000000..d1a6bb18b --- /dev/null +++ b/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.11.0.bbappend @@ -0,0 +1,8 @@ +FILESEXTRAPATHS_prepend := ":${THISDIR}/wayland-ivi-extension:" + + +SRC_URI_append = " \ + file://0001-Fix-ivi-application-lib-install.patch \ + " + +SRC_URI_append_wandboard = "file://wandboard_fix_build.patch" diff --git a/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.5.0.bbappend b/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.5.0.bbappend deleted file mode 100644 index f68ba713d..000000000 --- a/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.5.0.bbappend +++ /dev/null @@ -1,7 +0,0 @@ -FILESEXTRAPATHS_prepend := ":${THISDIR}/wayland-ivi-extension:" - - -SRC_URI_append = " \ - file://0001-Send-process-ID-that-created-surface-to-client.patch \ - " - diff --git a/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.9.1.bb b/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.9.1.bb deleted file mode 100644 index 9ea7d24bb..000000000 --- a/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.9.1.bb +++ /dev/null @@ -1,26 +0,0 @@ -SUMMARY = "Wayland IVI Extension" -DESCRIPTION = "GENIVI Layer Management API based on Wayland IVI Extension" -HOMEPAGE = "http://projects.genivi.org/wayland-ivi-extension" -BUGTRACKER = "http://bugs.genivi.org/enter_bug.cgi?product=Wayland%20IVI%20Extension" -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=176cedb32f48dd58f07e0c1c717b3ea4" - -DEPENDS = "weston" - -SRC_URI = "git://github.com/GENIVI/${PN}.git;protocol=https \ - " -SRC_URI_append_wandboard = "file://wandboard_fix_build.patch" - -SRCREV = "44598504503eea5ac7f94c88477a5a78bda01f30" - -S = "${WORKDIR}/git" - -inherit cmake -#jsmoeller: rm autotools from inherit ... there can only be one - -PACKAGECONFIG ??= "ilm_input" -PACKAGECONFIG[ivi-share] = "-DIVI_SHARE=ON,-DIVI_SHARE=OFF,libgbm libdrm" -PACKAGECONFIG[ilm_input] = "-DWITH_ILM_INPUT=1,-DWITH_ILM_INPUT=0" - -FILES_${PN} += "${libdir}/weston/*" -FILES_${PN}-dbg += "${libdir}/weston/.debug/*" diff --git a/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.9.1.bbappend b/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.9.1.bbappend deleted file mode 100755 index 63f3472e4..000000000 --- a/meta-ivi-common/recipes-graphics/wayland/wayland-ivi-extension_1.9.1.bbappend +++ /dev/null @@ -1,7 +0,0 @@ -FILESEXTRAPATHS_prepend := ":${THISDIR}/wayland-ivi-extension:" - - -SRC_URI_append = " \ - file://0001-ivi-input-support-touch-and-pointer-on-subsurface.patch \ - " - |