From 51acb259a2f3e7ae158b66b69baf634250a9872c Mon Sep 17 00:00:00 2001 From: Hermet Park Date: Tue, 6 Sep 2016 16:45:23 +0900 Subject: [PATCH] evas canvas: fix a wrong condition check in smart changed. There were 2 wrong conditions. 1. visible check. Smart changed can be skipped only if previous/current visibility are false. 2. clipper. Actually, it needed to check previous/current clippers but previously, it checked only previous clippers. @fix --- src/lib/evas/canvas/evas_object_smart.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lib/evas/canvas/evas_object_smart.c b/src/lib/evas/canvas/evas_object_smart.c index ccd4d2b..48d50c4 100644 --- a/src/lib/evas/canvas/evas_object_smart.c +++ b/src/lib/evas/canvas/evas_object_smart.c @@ -1042,9 +1042,9 @@ evas_object_smart_changed_get(Evas_Object *eo_obj) //b. Object clipper visibility if ((obj->prev->clipper && obj->cur->clipper) && - (!(obj->prev->clipper->cur->visible && obj->cur->clipper->cur->visible) || + (!obj->prev->clipper->cur->visible && !obj->cur->clipper->cur->visible || ((obj->prev->clipper->cur->color.a == 0) && - (obj->prev->clipper->prev->color.a == 0)))) + (obj->cur->clipper->cur->color.a == 0)))) return EINA_FALSE; if (!obj->clip.clipees) -- 2.7.4