meta-agl-bsp: weston: flags of events must be kept 49/13449/2
authorMihail Grigorov <michael.grigorov@konsulko.com>
Wed, 14 Feb 2018 15:28:25 +0000 (17:28 +0200)
committerMihail Grigorov <michael.grigorov@konsulko.com>
Wed, 14 Feb 2018 15:34:35 +0000 (17:34 +0200)
in case of using compositor-fbdev

Bug-AGL: SPEC-1192

Change-Id: If81cb3245fac01a32a97b02106ff23b65856d565
Signed-off-by: Mihail Grigorov <michael.grigorov@konsulko.com>
meta-agl-bsp/meta-freescale-layer/recipes-graphics/wayland/weston-2.0.0/fix-ivi-layout-for-IMX6-fbdev.patch

index 2f4e6b6..a0ef210 100644 (file)
@@ -1,13 +1,53 @@
---- a/ivi-shell/ivi-layout.c   2018-01-09 12:36:35.595811484 +0200
-+++ b/ivi-shell/ivi-layout.c   2018-01-09 12:39:59.579122491 +0200
-@@ -629,10 +629,6 @@
-       struct ivi_rectangle r;
-       bool can_calc = true;
--      /*In case of no prop change, this just returns*/
--      if (!ivilayer->prop.event_mask && !ivisurf->prop.event_mask)
--              return;
+From 1b6dc7e5815d3aa02fd1d01b1334c03473e5cf72 Mon Sep 17 00:00:00 2001
+From: Mihail Grigorov <michael.grigorov@konsulko.com>
+Date: Wed, 14 Feb 2018 17:12:42 +0200
+Subject: [PATCH] ivi-shell: event_mask must not be cleared after emit
+
+Signed-off-by: Mihail Grigorov <michael.grigorov@konsulko.com>
+---
+ ivi-shell/ivi-layout.c | 18 ++----------------
+ 1 file changed, 2 insertions(+), 16 deletions(-)
+
+diff --git a/ivi-shell/ivi-layout.c b/ivi-shell/ivi-layout.c
+index 64e4ead8..7d13fc88 100644
+--- a/ivi-shell/ivi-layout.c
++++ b/ivi-shell/ivi-layout.c
+@@ -917,20 +917,6 @@ commit_transition(struct ivi_layout* layout)
+ }
+ static void
+-send_surface_prop(struct ivi_layout_surface *ivisurf)
+-{
+-      wl_signal_emit(&ivisurf->property_changed, ivisurf);
+-      ivisurf->pending.prop.event_mask = 0;
+-}
+-
+-static void
+-send_layer_prop(struct ivi_layout_layer *ivilayer)
+-{
+-      wl_signal_emit(&ivilayer->property_changed, ivilayer);
+-      ivilayer->pending.prop.event_mask = 0;
+-}
 -
-       update_opacity(ivilayer, ivisurf, ivi_view->view);
+-static void
+ send_prop(struct ivi_layout *layout)
+ {
+       struct ivi_layout_layer   *ivilayer = NULL;
+@@ -938,12 +924,12 @@ send_prop(struct ivi_layout *layout)
+       wl_list_for_each_reverse(ivilayer, &layout->layer_list, link) {
+               if (ivilayer->prop.event_mask)
+-                      send_layer_prop(ivilayer);
++                      wl_signal_emit(&ivilayer->property_changed, ivilayer);
+       }
+       wl_list_for_each_reverse(ivisurf, &layout->surface_list, link) {
+               if (ivisurf->prop.event_mask)
+-                      send_surface_prop(ivisurf);
++                      wl_signal_emit(&ivisurf->property_changed, ivisurf);
+       }
+ }
  
-       if (ivisurf->prop.source_width == 0 || ivisurf->prop.source_height == 0) {
+-- 
+2.11.0
+