On Mon, 11 Apr 2011, Enlightenment SVN wrote:

> Log:
> Evas textblock: Fixed double-drawing bug (visible in efm).

changelog ?

>
>  Moved the place we merge back items at. It's currently cleaner, more
>  correct and as mentioned, fixes a double-drawing bug.
>
> Author:       tasn
> Date:         2011-04-11 08:37:06 -0700 (Mon, 11 Apr 2011)
> New Revision: 58555
> Trac:         http://trac.enlightenment.org/e/changeset/58555
>
> Modified:
>  trunk/evas/src/lib/canvas/evas_object_textblock.c
>
> Modified: trunk/evas/src/lib/canvas/evas_object_textblock.c
> ===================================================================
> --- trunk/evas/src/lib/canvas/evas_object_textblock.c 2011-04-11 14:07:42 UTC 
> (rev 58554)
> +++ trunk/evas/src/lib/canvas/evas_object_textblock.c 2011-04-11 15:37:06 UTC 
> (rev 58555)
> @@ -1834,7 +1834,6 @@
>         par->lines = (Evas_Object_Textblock_Line 
> *)eina_inlist_remove(EINA_INLIST_GET(par->lines), 
> EINA_INLIST_GET(par->lines));
>         _line_free(obj, ln);
>      }
> -   par->line_no = -1;
> }
>
> /**
> @@ -3271,6 +3270,29 @@
>           }
>         c->par->text_node->dirty = EINA_FALSE;
>         c->par->text_node->new = EINA_FALSE;
> +
> +        /* Merge back and clear the paragraph */
> +          {
> +             Eina_List *itr, *itr_next;
> +             Evas_Object_Textblock_Item *it, *prev_it = NULL;
> +             _paragraph_clear(c->obj, c->par);
> +             EINA_LIST_FOREACH_SAFE(c->par->logical_items, itr, itr_next, it)
> +               {
> +                  if (it->merge && prev_it &&
> +                        (prev_it->type == EVAS_TEXTBLOCK_ITEM_TEXT) &&
> +                        (it->type == EVAS_TEXTBLOCK_ITEM_TEXT))
> +                    {
> +                       _layout_item_merge_and_free(c, _ITEM_TEXT(prev_it),
> +                             _ITEM_TEXT(it));
> +                       c->par->logical_items =
> +                          eina_list_remove_list(c->par->logical_items, itr);
> +                    }
> +                  else
> +                    {
> +                       prev_it = it;
> +                    }
> +               }
> +          }
>      }
>
>    c->y = c->par->y;
> @@ -3640,37 +3662,6 @@
>         c->par = NULL;
>      }
>
> -   if (!calc_only && c->width_changed)
> -     {
> -        _paragraphs_clear(obj, o->paragraphs);
> -        c->paragraphs = o->paragraphs;
> -        /* Merge the ones that need merging. */
> -        /* Go through all the paragraphs, lines, items and merge if should be
> -         * merged we merge backwards!!! */
> -        Evas_Object_Textblock_Paragraph *par;
> -        EINA_INLIST_FOREACH(EINA_INLIST_GET(c->paragraphs), par)
> -          {
> -             Eina_List *itr, *itr_next;
> -             Evas_Object_Textblock_Item *it, *prev_it = NULL;
> -             EINA_LIST_FOREACH_SAFE(par->logical_items, itr, itr_next, it)
> -               {
> -                  if (it->merge && prev_it &&
> -                        (prev_it->type == EVAS_TEXTBLOCK_ITEM_TEXT) &&
> -                        (it->type == EVAS_TEXTBLOCK_ITEM_TEXT))
> -                    {
> -                       _layout_item_merge_and_free(c, _ITEM_TEXT(prev_it),
> -                             _ITEM_TEXT(it));
> -                       par->logical_items =
> -                          eina_list_remove_list(par->logical_items, itr);
> -                    }
> -                  else
> -                    {
> -                       prev_it = it;
> -                    }
> -               }
> -          }
> -     }
> -
>    c->paragraphs = o->paragraphs;
>
>    /* If there are no paragraphs, create the minimum needed,
>
>
> ------------------------------------------------------------------------------
> Xperia(TM) PLAY
> It's a major breakthrough. An authentic gaming
> smartphone on the nation's most reliable network.
> And it wants your games.
> http://p.sf.net/sfu/verizon-sfdev
> _______________________________________________
> enlightenment-svn mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/enlightenment-svn
>
>

------------------------------------------------------------------------------
Xperia(TM) PLAY
It's a major breakthrough. An authentic gaming
smartphone on the nation's most reliable network.
And it wants your games.
http://p.sf.net/sfu/verizon-sfdev
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to