text = eina_ustrbuf_string_get(from->unicode);
len = eina_ustrbuf_length_get(from->unicode);
eina_ustrbuf_append_length(to->unicode, text, len);
-#ifdef BIDI_SUPPORT
- /* Reset paragraph direction */
- to->bidi_props.direction = EVAS_BIDI_PARAGRAPH_NATURAL;
- evas_bidi_update_props(eina_ustrbuf_string_get(to->unicode),
- &to->bidi_props);
-#endif
itr = from->format_node;
if (itr && (itr->text_node == from))
{
_evas_textblock_cursor_nodes_merge(cur);
}
+#ifdef BIDI_SUPPORT
+ /* Reset paragraph direction */
+ n->bidi_props.direction = EVAS_BIDI_PARAGRAPH_NATURAL;
+ evas_bidi_update_props(eina_ustrbuf_string_get(n->unicode),
+ &n->bidi_props);
+#endif
if (cur->pos == eina_ustrbuf_length_get(n->unicode))
{
if (should_merge)
{
+ /* We call this function instead of the cursor one because we already
+ * updated the cursors */
_evas_textblock_nodes_merge(o, n1);
}
+
+#ifdef BIDI_SUPPORT
+ /* Reset paragraph direction */
+ n1->bidi_props.direction = EVAS_BIDI_PARAGRAPH_NATURAL;
+ evas_bidi_update_props(eina_ustrbuf_string_get(n1->unicode),
+ &n1->bidi_props);
+#endif
+
evas_textblock_cursor_copy(cur1, cur2);
evas_textblock_cursor_copy(cur1, o->cursor);
_evas_textblock_changed(o, cur1->obj);