[PATCH weston] ivi-layout: apply opacity to weston_view correctly

Nobuhiko Tanibata nobuhiko_tanibata at xddp.denso.co.jp
Sat Dec 26 06:52:51 PST 2015


From: Nobuhiko Tanibata <NOBUHIKO_TANIBATA at xddp.denso.co.jp>

update_opacity is only called when a ivi-surface is visible. But the
previous code also checks event masks redundantly. However if the event
happens when ivi-surface is invisible, opacity is not calculated. This
patch removes this redundant check to fix potential bug.

Signed-off-by: Nobuhiko Tanibata <NOBUHIKO_TANIBATA at xddp.denso.co.jp>

---
 ivi-shell/ivi-layout.c | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/ivi-shell/ivi-layout.c b/ivi-shell/ivi-layout.c
index b90a437..3de1405 100644
--- a/ivi-shell/ivi-layout.c
+++ b/ivi-shell/ivi-layout.c
@@ -325,12 +325,9 @@ update_opacity(struct ivi_layout_layer *ivilayer,
 	double layer_alpha = wl_fixed_to_double(ivilayer->prop.opacity);
 	double surf_alpha  = wl_fixed_to_double(ivisurf->prop.opacity);
 
-	if ((ivilayer->event_mask & IVI_NOTIFICATION_OPACITY) ||
-	    (ivisurf->event_mask  & IVI_NOTIFICATION_OPACITY)) {
-		tmpview = get_weston_view(ivisurf);
-		assert(tmpview != NULL);
-		tmpview->alpha = layer_alpha * surf_alpha;
-	}
+	tmpview = get_weston_view(ivisurf);
+	assert(tmpview != NULL);
+	tmpview->alpha = layer_alpha * surf_alpha;
 }
 
 static void
-- 
1.8.3.1



More information about the wayland-devel mailing list