From 01a9741c055938621a87b5f3b9558fe96b6a24c2 Mon Sep 17 00:00:00 2001 From: ChunEon Park Date: Fri, 1 Jul 2011 11:30:17 +0000 Subject: [PATCH] evas/evas_map - added workaround code for avoid afterimage problem temporary. Since the last frame is not updated when map is disabled, Afterimage problem is happened in s/w rendering. Need to find out the fundanmental reason then fix it. SVN revision: 60914 --- legacy/evas/src/lib/canvas/evas_map.c | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/legacy/evas/src/lib/canvas/evas_map.c b/legacy/evas/src/lib/canvas/evas_map.c index f78ce94ced..441d812945 100644 --- a/legacy/evas/src/lib/canvas/evas_map.c +++ b/legacy/evas/src/lib/canvas/evas_map.c @@ -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; }