evas_textblock: optimize calculate main format once in layout setup stage
Summary:
This change based on discussion on D9533 , where @smohanty example shows that unnecessary calculation happened on textblock related to lay-outing
Where now _layout_setup will not calculate main format using (_format_fill) unless style has been changed.
expedite commit:
https://git.enlightenment.org/tools/expedite.git/commit/?id=
dc6c931dc2e6c240d3e240f24578980c689ab7fc
src/bin/textblock_text_fill_format.c
Test Plan:
```
#define EFL_EO_API_SUPPORT 1
#define EFL_BETA_API_SUPPORT 1
#include <Eina.h>
#include <Efl.h>
#include <Elementary.h>
EAPI_MAIN int
elm_main(int argc, char **argv)
{
Evas_Object *win, *textblock;
elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);
win = elm_win_util_standard_add("Main", "App");
elm_win_autodel_set(win, EINA_TRUE);
int l, r, t, b;
textblock = evas_object_textblock_add(evas_object_evas_get(win));
Evas_Textblock_Style *st = evas_textblock_style_new();
evas_textblock_style_set (st, "DEFAULT='font=Sans font_size=10 color=#000000 wrap=word align=left outline_color=#000 shadow_color=#fff8 shadow_color=#0002 glow2_color=#fe87 glow_color=#f214 underline_color=#00f linesize=40'");
evas_object_textblock_style_set(textblock, st);
int sizes[] = {600, 700};
evas_object_textblock_text_markup_set(textblock, "This test resize text block and keep style (style parsed only once)");
clock_t start, end;
start = clock();
for (int i = 0; i < 10000; i++)
{
evas_object_resize(textblock, sizes[i % 2], sizes[i % 2]);
evas_object_textblock_style_insets_get(textblock, &l, &r, &t, &b);
}
end = clock();
double total_Time1 = ((double)(end - start)) / CLOCKS_PER_SEC;
printf("total time = %f\n", total_Time1);
evas_object_size_hint_weight_set(textblock, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(textblock, EVAS_HINT_FILL, EVAS_HINT_FILL);
evas_object_show(textblock);
evas_object_move(textblock, 0, 0);
evas_object_resize(textblock, 640, 800);
evas_object_resize(win, 640, 800);
evas_object_show(win);
elm_run();
return 0;
}
ELM_MAIN()
```
**Old Code output : total time = 0.096900
New Code output : total time = 0.045580**
Reviewers: smohanty, woohyun, Hermet, bowonryu, cedric, bu5hm4n, zmike
Reviewed By: zmike
Subscribers: zmike, segfaultxavi, bu5hm4n, smohanty, cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9536