Evas textblock: Update bidi props also when merging nodes and when deleting formats.

SVN revision: 51922
This commit is contained in:
Tom Hacohen 2010-09-06 12:19:17 +00:00
parent f7e049050b
commit b3982e535d
1 changed files with 18 additions and 4 deletions

View File

@ -4090,6 +4090,11 @@ _evas_textblock_nodes_merge(Evas_Object_Textblock *o, Evas_Object_Textblock_Node
{
to->format_node = from->format_node;
}
#ifdef BIDI_SUPPORT
evas_bidi_paragraph_props_unref(to->bidi_props);
to->bidi_props = evas_bidi_paragraph_props_get(
eina_ustrbuf_string_get(to->unicode));
#endif
_evas_textblock_cursors_set_node(o, from, to);
_evas_textblock_node_text_remove(o, from);
@ -5975,11 +5980,20 @@ evas_textblock_cursor_format_append(Evas_Textblock_Cursor *cur, const char *form
/* Advance all the cursors after our cursor */
_evas_textblock_cursors_update_offset(cur, cur->node, cur->pos, 1);
}
if (_IS_PARAGRAPH_SEPARATOR(format))
{
_evas_textblock_cursor_break_paragraph(cur, n);
if (_IS_PARAGRAPH_SEPARATOR(format))
{
_evas_textblock_cursor_break_paragraph(cur, n);
}
else
{
#ifdef BIDI_SUPPORT
evas_bidi_paragraph_props_unref(cur->node->bidi_props);
cur->node->bidi_props = evas_bidi_paragraph_props_get(
eina_ustrbuf_string_get(cur->node->unicode));
#endif
}
}
_evas_textblock_changed(o, cur->obj);