evas/evas_map - added workaround code to remove afterimage problem.Sine the last...
authorChunEon Park <chuneon.park@samsung.com>
Fri, 1 Jul 2011 02:01:36 +0000 (11:01 +0900)
committerChunEon Park <chuneon.park@samsung.com>
Fri, 1 Jul 2011 11:52:25 +0000 (20:52 +0900)
src/lib/canvas/evas_map.c

index f78ce94..78e4140 100644 (file)
@@ -382,6 +382,14 @@ evas_object_map_enable_set(Evas_Object *obj, Eina_Bool enabled)
           {
              _evas_map_calc_geom_change(obj);
              evas_object_mapped_clip_across_mark(obj);
+             //FIXME: Since the last frame is not updated when map is
+             //disabled, afterimage problem is happened in s/w rendering.
+             //Need to find out the fundamental reason then fix it.
+             evas_damage_rectangle_add(obj->layer->evas,
+                                       0,
+                                       0,
+                                       obj->layer->evas->output.w,
+                                       obj->layer->evas->output.h);
           }
      }
    _evas_map_calc_map_geometry(obj);
@@ -449,7 +457,18 @@ evas_object_map_set(Evas_Object *obj, const Evas_Map *map)
              if (!obj->cur.usemap) _evas_map_calc_geom_change(obj);
              else _evas_map_calc_map_geometry(obj);
              if (obj->cur.usemap)
-                evas_object_mapped_clip_across_mark(obj);
+               {
+                  evas_object_mapped_clip_across_mark(obj);
+                  //FIXME: Since the last frame is not updated when map is
+                  //disabled, afterimage problem is happened in s/w
+                  //rendering. Need to find out the fundamental reason
+                  //then fix it.
+                  evas_damage_rectangle_add(obj->layer->evas,
+                                            0,
+                                            0,
+                                            obj->layer->evas->output.w,
+                                            obj->layer->evas->output.h);
+               }
           }
         return;
      }