backport to 1.0 ?

On Sun, 14 Aug 2011, Enlightenment SVN wrote:

> Log:
> edje: fix cache and proxy.
>
>
> Author:       cedric
> Date:         2011-08-14 14:55:31 -0700 (Sun, 14 Aug 2011)
> New Revision: 62464
> Trac:         http://trac.enlightenment.org/e/changeset/62464
>
> Modified:
>  trunk/edje/src/lib/edje_calc.c
>
> Modified: trunk/edje/src/lib/edje_calc.c
> ===================================================================
> --- trunk/edje/src/lib/edje_calc.c    2011-08-14 21:47:17 UTC (rev 62463)
> +++ trunk/edje/src/lib/edje_calc.c    2011-08-14 21:55:31 UTC (rev 62464)
> @@ -1948,6 +1948,7 @@
> _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags)
> {
> #ifdef EDJE_CALC_CACHE
> +   Eina_Bool proxy_invalidate = EINA_FALSE;
>    int state1 = -1;
>    int state2 = -1;
>    int statec = -1;
> @@ -2101,6 +2102,24 @@
>       return;
>      }
>
> +   if (ep->part->type == EDJE_PART_TYPE_PROXY)
> +     {
> +        Edje_Real_Part *pp;
> +        int part_id;
> +
> +        if (pos >= 0.5)
> +          part_id = ((Edje_Part_Description_Proxy*) 
> ep->param2->description)->proxy.id;
> +        else
> +          part_id = ((Edje_Part_Description_Proxy*) chosen_desc)->proxy.id;
> +        pp = ed->table_parts[part_id % ed->table_parts_size];
> +#ifdef EDJE_CALC_CACHE
> +        if (pp->invalidate)
> +          proxy_invalidate = EINA_TRUE;
> +#endif
> +
> +        if (!pp->calculated) _edje_part_recalc(ed, ep, flags);
> +     }
> +
> #ifndef EDJE_CALC_CACHE
>    p1 = &lp1;
> #else
> @@ -2114,6 +2133,7 @@
>           ep->invalidate ||
>           state1 >= ep->param1.state ||
>           statec >= ep->param1.state ||
> +            proxy_invalidate ||
>           ((ep->part->type == EDJE_PART_TYPE_TEXT || ep->part->type == 
> EDJE_PART_TYPE_TEXTBLOCK) && ed->text_part_change))
> #endif
>         {
> @@ -2143,6 +2163,7 @@
>           ep->invalidate ||
>           state2 >= ep->param2->state ||
>           statec >= ep->param2->state ||
> +            proxy_invalidate ||
>           ((ep->part->type == EDJE_PART_TYPE_TEXT || ep->part->type == 
> EDJE_PART_TYPE_TEXTBLOCK) && ed->text_part_change))
> #endif
>         {
>
>
> ------------------------------------------------------------------------------
> FREE DOWNLOAD - uberSVN with Social Coding for Subversion.
> Subversion made easy with a complete admin console. Easy
> to use, easy to manage, easy to install, easy to extend.
> Get a Free download of the new open ALM Subversion platform now.
> http://p.sf.net/sfu/wandisco-dev2dev
> _______________________________________________
> enlightenment-svn mailing list
> enlightenment-...@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-svn
>
>

------------------------------------------------------------------------------
uberSVN's rich system and user administration capabilities and model 
configuration take the hassle out of deploying and managing Subversion and 
the tools developers use with it. Learn more about uberSVN and get a free 
download at:  http://p.sf.net/sfu/wandisco-dev2dev
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to