Textarea bug when I use Arabic

Description

What MCU/Processor/Board and compiler are you using?

PC Linux simulator

What do you experience?

When I add characters to thetextarea, Arabic does not connect, but when I delete one, it is ok. I had enable LV_USE_ARABIC_PERSIAN_CHARS and LV_USE_BIDI.

What do you expect?

Code to reproduce

First

    lv_obj_t *ta = lv_textarea_create(lv_scr_act(), NULL);

    static lv_font_t font_set;
    lv_freetype_font_init(&font_set, "/system/res/font/arial.ttf", 36, 36);

    lv_obj_set_style_local_text_font(ta, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, &font_set);

    lv_textarea_set_text(ta, "");
    lv_textarea_add_text(ta, "ض");
    lv_textarea_add_text(ta, "ض");
    lv_textarea_add_text(ta, "ض");

Second

    lv_obj_t *ta = lv_textarea_create(lv_scr_act(), NULL);

    static lv_font_t font_set;
    lv_freetype_font_init(&font_set, "/system/res/font/arial.ttf", 36, 36);

    lv_obj_set_style_local_text_font(ta, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, &font_set);

    lv_textarea_set_text(ta, "");
    lv_textarea_add_text(ta, "ض");
    lv_textarea_add_text(ta, "ض");
    lv_textarea_add_text(ta, "ض");

    lv_textarea_add_text(ta, "ض");
    lv_textarea_del_char(ta);

arial.ttf
arial.zip (421.1 KB)

Screenshot and/or video

First Result
1604480682(1)

Second Result
1604480682

Answered on GitHub: