forked from enlightenment/efl
ok still doesnt work - FASTFREEZE shoudl work.. but dont.
SVN revision: 35925
This commit is contained in:
parent
0cf0cd8e15
commit
aaa724d23c
|
@ -144,9 +144,12 @@ _edje_recalc(Edje *ed)
|
||||||
}
|
}
|
||||||
if ((ed->freeze > 0) || (_edje_freeze_val > 0))
|
if ((ed->freeze > 0) || (_edje_freeze_val > 0))
|
||||||
{
|
{
|
||||||
_edje_freeze_calc_count++;
|
|
||||||
ed->recalc = 1;
|
ed->recalc = 1;
|
||||||
if (!ed->calc_only) return;
|
if (!ed->calc_only)
|
||||||
|
{
|
||||||
|
if (_edje_freeze_val > 0) _edje_freeze_calc_count++;
|
||||||
|
return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
for (i = 0; i < ed->table_parts_size; i++)
|
for (i = 0; i < ed->table_parts_size; i++)
|
||||||
{
|
{
|
||||||
|
|
|
@ -53,6 +53,29 @@ edje_freeze(void)
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef FASTFREEZE
|
||||||
|
static void
|
||||||
|
_edje_thaw_edje(Edje *ed)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
|
||||||
|
for (i = 0; i < ed->table_parts_size; i++)
|
||||||
|
{
|
||||||
|
Edje_Real_Part *rp;
|
||||||
|
|
||||||
|
rp = ed->table_parts[i];
|
||||||
|
if (rp->part->type == EDJE_PART_TYPE_GROUP && rp->swallowed_object)
|
||||||
|
{
|
||||||
|
Edje *ed2;
|
||||||
|
|
||||||
|
ed2 = _edje_fetch(rp->swallowed_object);
|
||||||
|
if (ed2) _edje_thaw_edje(ed2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if ((ed->recalc) && (ed->freeze <= 0)) _edje_recalc(ed);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
/** Thaw all Edje objects in the current process.
|
/** Thaw all Edje objects in the current process.
|
||||||
*
|
*
|
||||||
* See edje_object_thaw() for more.
|
* See edje_object_thaw() for more.
|
||||||
|
@ -63,7 +86,7 @@ edje_thaw(void)
|
||||||
#ifdef FASTFREEZE
|
#ifdef FASTFREEZE
|
||||||
_edje_freeze_val--;
|
_edje_freeze_val--;
|
||||||
printf("fr -- ->%i\n", _edje_freeze_val);
|
printf("fr -- ->%i\n", _edje_freeze_val);
|
||||||
if ((_edje_freeze_val == 0) && (_edje_freeze_calc_count > 0))
|
if ((_edje_freeze_val <= 0) && (_edje_freeze_calc_count > 0))
|
||||||
{
|
{
|
||||||
Evas_List *l;
|
Evas_List *l;
|
||||||
|
|
||||||
|
@ -73,16 +96,7 @@ edje_thaw(void)
|
||||||
Edje *ed;
|
Edje *ed;
|
||||||
|
|
||||||
ed = _edje_fetch(l->data);
|
ed = _edje_fetch(l->data);
|
||||||
if (ed->recalc)
|
if (ed) _edje_thaw_edje(ed);
|
||||||
{
|
|
||||||
if (ed->freeze == 0)
|
|
||||||
{
|
|
||||||
printf(" CALC %p\n", l->data);
|
|
||||||
_edje_recalc(ed);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
printf(" !CALC %p\n", l->data);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
|
|
Loading…
Reference in New Issue