forked from enlightenment/efl
more evas render 2 work - should not affect normal behavior or code
paths unless turned on at runtime
This commit is contained in:
parent
e399e9df4a
commit
7bb2871102
|
@ -137,7 +137,7 @@ evas_object_rectangle_render2_walk(Evas_Object *eo_obj,
|
|||
// just became visible or invisible
|
||||
if (visible_is != visible_was)
|
||||
{
|
||||
printf(" UP1 %p - %i %i %ix%i\n", eo_obj,
|
||||
printf(" UP1 %p - %4i %4i %4ix%4i\n", eo_obj,
|
||||
obj->cur->cache.clip.x, obj->cur->cache.clip.y,
|
||||
obj->cur->cache.clip.w, obj->cur->cache.clip.h);
|
||||
evas_common_tilebuf_add_redraw
|
||||
|
@ -160,7 +160,7 @@ evas_object_rectangle_render2_walk(Evas_Object *eo_obj,
|
|||
(obj->restack)
|
||||
)
|
||||
{
|
||||
printf(" UP2 %p - %i %i %ix%i\n", eo_obj,
|
||||
printf(" UP2 %p - %4i %4i %4ix%4i\n", eo_obj,
|
||||
obj->prev->cache.clip.x, obj->prev->cache.clip.y,
|
||||
obj->prev->cache.clip.w, obj->prev->cache.clip.h);
|
||||
evas_common_tilebuf_add_redraw
|
||||
|
@ -177,7 +177,7 @@ nochange:
|
|||
// object hasn't really changed
|
||||
if ((visible_is) && (evas_object_is_opaque(eo_obj, obj)))
|
||||
{
|
||||
printf(" NO- %p - %i %i %ix%i\n", eo_obj,
|
||||
printf(" NO- %p - %4i %4i %4ix%4i\n", eo_obj,
|
||||
obj->cur->cache.clip.x, obj->cur->cache.clip.y,
|
||||
obj->cur->cache.clip.w, obj->cur->cache.clip.h);
|
||||
evas_common_tilebuf_del_redraw
|
||||
|
|
|
@ -142,7 +142,6 @@ _evas_render2_th_main_obj_process(Evas_Public_Data *e,
|
|||
Evas_Object *eo_obj = obj->object;
|
||||
const Eina_Inlist *il;
|
||||
|
||||
if (!obj->changed) return;
|
||||
il = evas_object_smart_members_get_direct(eo_obj);
|
||||
if (il)
|
||||
{
|
||||
|
@ -177,7 +176,7 @@ _evas_render2_th_main_do(Eo *eo_e, Evas_Public_Data *e)
|
|||
double t;
|
||||
Tilebuf *updates = NULL;
|
||||
Tilebuf_Rect *rects, *r;
|
||||
Eina_List *updates_list = NULL;
|
||||
Eina_List *updates_list = NULL, *l;
|
||||
Eina_Rectangle *rect;
|
||||
|
||||
updates = evas_common_tilebuf_new(e->output.w, e->output.h);
|
||||
|
@ -195,6 +194,19 @@ _evas_render2_th_main_do(Eo *eo_e, Evas_Public_Data *e)
|
|||
0);
|
||||
}
|
||||
}
|
||||
// add explicitly exposed/damaged regions of the canvas
|
||||
EINA_LIST_FREE(e->damages, rect)
|
||||
{
|
||||
evas_common_tilebuf_add_redraw(updates, rect->x, rect->y,
|
||||
rect->w, rect->h);
|
||||
eina_rectangle_free(rect);
|
||||
}
|
||||
// build obscure objects list of active objects that obscure
|
||||
EINA_LIST_FOREACH(e->obscures, l, rect)
|
||||
{
|
||||
evas_common_tilebuf_del_redraw(updates, rect->x, rect->y,
|
||||
rect->w, rect->h);
|
||||
}
|
||||
t = get_time() - t;
|
||||
printf("T: update generation: "); out_time(t);
|
||||
|
||||
|
@ -204,7 +216,7 @@ _evas_render2_th_main_do(Eo *eo_e, Evas_Public_Data *e)
|
|||
rect = malloc(sizeof(Eina_Rectangle));
|
||||
if (rect)
|
||||
{
|
||||
printf(" %i %i %ix%i\n", r->x, r->y, r->w, r->h);
|
||||
printf(" Render Region [ %4i %4i %4ix%4i ]\n", r->x, r->y, r->w, r->h);
|
||||
rect->x = r->x; rect->y = r->y;
|
||||
rect->w = r->w; rect->h = r->h;
|
||||
updates_list = eina_list_append(updates_list, rect);
|
||||
|
|
Loading…
Reference in New Issue