forked from enlightenment/efl
parent
ee3dfadb3b
commit
948bb4a63e
|
@ -126,15 +126,15 @@ evas_new(void)
|
||||||
e->hinting = EVAS_FONT_HINTING_BYTECODE;
|
e->hinting = EVAS_FONT_HINTING_BYTECODE;
|
||||||
e->name_hash = eina_hash_string_superfast_new(NULL);
|
e->name_hash = eina_hash_string_superfast_new(NULL);
|
||||||
|
|
||||||
eina_array_step_set(&e->delete_objects, 16);
|
eina_array_step_set(&e->delete_objects, 256);
|
||||||
eina_array_step_set(&e->active_objects, 16);
|
eina_array_step_set(&e->active_objects, 256);
|
||||||
eina_array_step_set(&e->restack_objects, 16);
|
eina_array_step_set(&e->restack_objects, 256);
|
||||||
eina_array_step_set(&e->render_objects, 16);
|
eina_array_step_set(&e->render_objects, 256);
|
||||||
eina_array_step_set(&e->pending_objects, 16);
|
eina_array_step_set(&e->pending_objects, 256);
|
||||||
eina_array_step_set(&e->obscuring_objects, 16);
|
eina_array_step_set(&e->obscuring_objects, 256);
|
||||||
eina_array_step_set(&e->temporary_objects, 16);
|
eina_array_step_set(&e->temporary_objects, 256);
|
||||||
eina_array_step_set(&e->calculate_objects, 16);
|
eina_array_step_set(&e->calculate_objects, 256);
|
||||||
eina_array_step_set(&e->clip_changes, 16);
|
eina_array_step_set(&e->clip_changes, 256);
|
||||||
|
|
||||||
return e;
|
return e;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1051,6 +1051,11 @@ evas_object_gradient_render_pre(Evas_Object *obj)
|
||||||
evas_object_render_pre_visible_change(&obj->layer->evas->clip_changes, obj, is_v, was_v);
|
evas_object_render_pre_visible_change(&obj->layer->evas->clip_changes, obj, is_v, was_v);
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
|
if (obj->cur.map != obj->prev.map)
|
||||||
|
{
|
||||||
|
evas_object_render_pre_prev_cur_add(&obj->layer->evas->clip_changes, obj);
|
||||||
|
goto done;
|
||||||
|
}
|
||||||
/* its not visible - we accounted for it appearing or not so just abort */
|
/* its not visible - we accounted for it appearing or not so just abort */
|
||||||
if (!is_v) goto done;
|
if (!is_v) goto done;
|
||||||
/* clipper changed this is in addition to anything else for obj */
|
/* clipper changed this is in addition to anything else for obj */
|
||||||
|
|
|
@ -352,6 +352,11 @@ evas_object_gradient2_linear_render_pre(Evas_Object *obj)
|
||||||
evas_object_render_pre_visible_change(&obj->layer->evas->clip_changes, obj, is_v, was_v);
|
evas_object_render_pre_visible_change(&obj->layer->evas->clip_changes, obj, is_v, was_v);
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
|
if (obj->cur.map != obj->prev.map)
|
||||||
|
{
|
||||||
|
evas_object_render_pre_prev_cur_add(&obj->layer->evas->clip_changes, obj);
|
||||||
|
goto done;
|
||||||
|
}
|
||||||
/* its not visible - we accounted for it appearing or not so just abort */
|
/* its not visible - we accounted for it appearing or not so just abort */
|
||||||
if (!is_v) goto done;
|
if (!is_v) goto done;
|
||||||
/* clipper changed this is in addition to anything else for obj */
|
/* clipper changed this is in addition to anything else for obj */
|
||||||
|
|
|
@ -349,6 +349,11 @@ evas_object_gradient2_radial_render_pre(Evas_Object *obj)
|
||||||
evas_object_render_pre_visible_change(&obj->layer->evas->clip_changes, obj, is_v, was_v);
|
evas_object_render_pre_visible_change(&obj->layer->evas->clip_changes, obj, is_v, was_v);
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
|
if (obj->cur.map != obj->prev.map)
|
||||||
|
{
|
||||||
|
evas_object_render_pre_prev_cur_add(&obj->layer->evas->clip_changes, obj);
|
||||||
|
goto done;
|
||||||
|
}
|
||||||
/* its not visible - we accounted for it appearing or not so just abort */
|
/* its not visible - we accounted for it appearing or not so just abort */
|
||||||
if (!is_v) goto done;
|
if (!is_v) goto done;
|
||||||
/* clipper changed this is in addition to anything else for obj */
|
/* clipper changed this is in addition to anything else for obj */
|
||||||
|
|
|
@ -343,6 +343,11 @@ evas_object_line_render_pre(Evas_Object *obj)
|
||||||
evas_object_render_pre_visible_change(&obj->layer->evas->clip_changes, obj, is_v, was_v);
|
evas_object_render_pre_visible_change(&obj->layer->evas->clip_changes, obj, is_v, was_v);
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
|
if (obj->cur.map != obj->prev.map)
|
||||||
|
{
|
||||||
|
evas_object_render_pre_prev_cur_add(&obj->layer->evas->clip_changes, obj);
|
||||||
|
goto done;
|
||||||
|
}
|
||||||
/* it's not visible - we accounted for it appearing or not so just abort */
|
/* it's not visible - we accounted for it appearing or not so just abort */
|
||||||
if (!is_v) goto done;
|
if (!is_v) goto done;
|
||||||
/* clipper changed this is in addition to anything else for obj */
|
/* clipper changed this is in addition to anything else for obj */
|
||||||
|
|
|
@ -358,6 +358,11 @@ evas_object_polygon_render_pre(Evas_Object *obj)
|
||||||
evas_object_render_pre_visible_change(&obj->layer->evas->clip_changes, obj, is_v, was_v);
|
evas_object_render_pre_visible_change(&obj->layer->evas->clip_changes, obj, is_v, was_v);
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
|
if (obj->cur.map != obj->prev.map)
|
||||||
|
{
|
||||||
|
evas_object_render_pre_prev_cur_add(&obj->layer->evas->clip_changes, obj);
|
||||||
|
goto done;
|
||||||
|
}
|
||||||
/* it's not visible - we accounted for it appearing or not so just abort */
|
/* it's not visible - we accounted for it appearing or not so just abort */
|
||||||
if (!is_v) goto done;
|
if (!is_v) goto done;
|
||||||
/* clipper changed this is in addition to anything else for obj */
|
/* clipper changed this is in addition to anything else for obj */
|
||||||
|
|
|
@ -207,6 +207,11 @@ evas_object_rectangle_render_pre(Evas_Object *obj)
|
||||||
evas_object_render_pre_visible_change(&obj->layer->evas->clip_changes, obj, is_v, was_v);
|
evas_object_render_pre_visible_change(&obj->layer->evas->clip_changes, obj, is_v, was_v);
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
|
if (obj->cur.map != obj->prev.map)
|
||||||
|
{
|
||||||
|
evas_object_render_pre_prev_cur_add(&obj->layer->evas->clip_changes, obj);
|
||||||
|
goto done;
|
||||||
|
}
|
||||||
/* it's not visible - we accounted for it appearing or not so just abort */
|
/* it's not visible - we accounted for it appearing or not so just abort */
|
||||||
if (!is_v) goto done;
|
if (!is_v) goto done;
|
||||||
/* clipper changed this is in addition to anything else for obj */
|
/* clipper changed this is in addition to anything else for obj */
|
||||||
|
|
|
@ -819,6 +819,12 @@ static void
|
||||||
evas_object_smart_render_pre(Evas_Object *obj)
|
evas_object_smart_render_pre(Evas_Object *obj)
|
||||||
{
|
{
|
||||||
if (obj->pre_render_done) return;
|
if (obj->pre_render_done) return;
|
||||||
|
if (obj->cur.map != obj->prev.map)
|
||||||
|
{
|
||||||
|
evas_object_render_pre_prev_cur_add(&obj->layer->evas->clip_changes, obj);
|
||||||
|
goto done;
|
||||||
|
}
|
||||||
|
done:
|
||||||
obj->pre_render_done = 1;
|
obj->pre_render_done = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1637,6 +1637,11 @@ evas_object_text_render_pre(Evas_Object *obj)
|
||||||
evas_object_render_pre_visible_change(&obj->layer->evas->clip_changes, obj, is_v, was_v);
|
evas_object_render_pre_visible_change(&obj->layer->evas->clip_changes, obj, is_v, was_v);
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
|
if (obj->cur.map != obj->prev.map)
|
||||||
|
{
|
||||||
|
evas_object_render_pre_prev_cur_add(&obj->layer->evas->clip_changes, obj);
|
||||||
|
goto done;
|
||||||
|
}
|
||||||
/* its not visible - we accounted for it appearing or not so just abort */
|
/* its not visible - we accounted for it appearing or not so just abort */
|
||||||
if (!is_v) goto done;
|
if (!is_v) goto done;
|
||||||
/* clipper changed this is in addition to anything else for obj */
|
/* clipper changed this is in addition to anything else for obj */
|
||||||
|
|
|
@ -5630,6 +5630,11 @@ evas_object_textblock_render_pre(Evas_Object *obj)
|
||||||
evas_object_render_pre_visible_change(&obj->layer->evas->clip_changes, obj, is_v, was_v);
|
evas_object_render_pre_visible_change(&obj->layer->evas->clip_changes, obj, is_v, was_v);
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
|
if (obj->cur.map != obj->prev.map)
|
||||||
|
{
|
||||||
|
evas_object_render_pre_prev_cur_add(&obj->layer->evas->clip_changes, obj);
|
||||||
|
goto done;
|
||||||
|
}
|
||||||
/* it's not visible - we accounted for it appearing or not so just abort */
|
/* it's not visible - we accounted for it appearing or not so just abort */
|
||||||
if (!is_v) goto done;
|
if (!is_v) goto done;
|
||||||
/* clipper changed this is in addition to anything else for obj */
|
/* clipper changed this is in addition to anything else for obj */
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
#include "evas_private.h"
|
#include "evas_private.h"
|
||||||
|
|
||||||
static Eina_List *
|
static Eina_List *
|
||||||
evas_render_updates_internal(Evas *e, Evas_Object *smart, unsigned char make_updates, unsigned char do_draw);
|
evas_render_updates_internal(Evas *e, unsigned char make_updates, unsigned char do_draw);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add a damage rectangle.
|
* Add a damage rectangle.
|
||||||
|
@ -169,7 +169,9 @@ _evas_render_phase1_object_process(Evas *e, Evas_Object *obj, Eina_Array *active
|
||||||
|
|
||||||
obj->is_active = is_active;
|
obj->is_active = is_active;
|
||||||
if ((is_active) || (obj->delete_me != 0))
|
if ((is_active) || (obj->delete_me != 0))
|
||||||
eina_array_push(active_objects, obj);
|
{
|
||||||
|
eina_array_push(active_objects, obj);
|
||||||
|
}
|
||||||
if (restack)
|
if (restack)
|
||||||
{
|
{
|
||||||
if (!obj->changed)
|
if (!obj->changed)
|
||||||
|
@ -511,7 +513,6 @@ evas_render_mapped(Evas *e, Evas_Object *obj, void *context, void *surface, int
|
||||||
|
|
||||||
static Eina_List *
|
static Eina_List *
|
||||||
evas_render_updates_internal(Evas *e,
|
evas_render_updates_internal(Evas *e,
|
||||||
Evas_Object *smart, // is this a good idea?
|
|
||||||
unsigned char make_updates,
|
unsigned char make_updates,
|
||||||
unsigned char do_draw)
|
unsigned char do_draw)
|
||||||
{
|
{
|
||||||
|
@ -530,11 +531,6 @@ evas_render_updates_internal(Evas *e,
|
||||||
MAGIC_CHECK_END();
|
MAGIC_CHECK_END();
|
||||||
if (!e->changed) return NULL;
|
if (!e->changed) return NULL;
|
||||||
|
|
||||||
if (smart)
|
|
||||||
{
|
|
||||||
// FIXME: if smart, only consider child objects
|
|
||||||
}
|
|
||||||
|
|
||||||
evas_call_smarts_calculate(e);
|
evas_call_smarts_calculate(e);
|
||||||
|
|
||||||
/* Check if the modified object mean recalculating every thing */
|
/* Check if the modified object mean recalculating every thing */
|
||||||
|
@ -806,6 +802,12 @@ evas_render_updates_internal(Evas *e,
|
||||||
obj->restack = 0;
|
obj->restack = 0;
|
||||||
obj->changed = 0;
|
obj->changed = 0;
|
||||||
}
|
}
|
||||||
|
else if (obj->cur.map != obj->prev.map)
|
||||||
|
{
|
||||||
|
obj->func->render_post(obj);
|
||||||
|
obj->restack = 0;
|
||||||
|
obj->changed = 0;
|
||||||
|
}
|
||||||
/* moved to other pre-process phase 1
|
/* moved to other pre-process phase 1
|
||||||
if (obj->delete_me == 2)
|
if (obj->delete_me == 2)
|
||||||
{
|
{
|
||||||
|
@ -886,7 +888,7 @@ evas_render_updates(Evas *e)
|
||||||
MAGIC_CHECK_END();
|
MAGIC_CHECK_END();
|
||||||
|
|
||||||
if (!e->changed) return NULL;
|
if (!e->changed) return NULL;
|
||||||
return evas_render_updates_internal(e, NULL, 1, 1);
|
return evas_render_updates_internal(e, 1, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -905,7 +907,7 @@ evas_render(Evas *e)
|
||||||
MAGIC_CHECK_END();
|
MAGIC_CHECK_END();
|
||||||
|
|
||||||
if (!e->changed) return;
|
if (!e->changed) return;
|
||||||
evas_render_updates_internal(e, NULL, 0, 1);
|
evas_render_updates_internal(e, 0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -929,7 +931,7 @@ evas_norender(Evas *e)
|
||||||
MAGIC_CHECK_END();
|
MAGIC_CHECK_END();
|
||||||
|
|
||||||
// if (!e->changed) return;
|
// if (!e->changed) return;
|
||||||
evas_render_updates_internal(e, NULL, 0, 0);
|
evas_render_updates_internal(e, 0, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue