evas: Fix don't redraw map_sufarce issue
authorjiin.moon <jiin.moon@samsung.com>
Tue, 30 May 2017 10:25:37 +0000 (19:25 +0900)
committerJean-Philippe Andre <jp.andre@samsung.com>
Tue, 30 May 2017 10:25:37 +0000 (19:25 +0900)
Summary:
map_surface does not redraw in below case.

1) parent and child are smart object and has map.
3) drawing objects.
4) apply new map to child object.

Test Plan: sample code

Reviewers: jpeg, cedric, jypark

Differential Revision: https://phab.enlightenment.org/D4889

src/lib/evas/canvas/evas_map.c

index df84657..09e65d8 100644 (file)
@@ -543,6 +543,10 @@ evas_object_map_set(Evas_Object *eo_obj, const Evas_Map *map)
             !memcmp(&map->persp, &obj->map->cur.map->persp, sizeof(map->persp)))
           return;
      }
+     /* changed_pchange means map's change.
+      * This flag will be used to decide whether to redraw the map surface. 
+      * And value of flag would be EINA_FALSE after rendering. */
+     obj->changed_pchange = EINA_TRUE;
 
    if ((!map) || (map->count < 4))
      {