Evas textblock: split the visual layouting to two stages:
authortasn <tasn@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Sun, 30 Jan 2011 10:41:42 +0000 (10:41 +0000)
committertasn <tasn@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Sun, 30 Jan 2011 10:41:42 +0000 (10:41 +0000)
commitad360b70d59f2774003841ea78e2671f28ca7c65
tree510e9e91a5dc4fe2346d12afdee11b33a8bbefc5
parentc5e400f2ec43b379ef90a8f4084708ef1eed6904
Evas textblock: split the visual layouting to two stages:
1. Split to logical layout units.
2. Order the logical layout units in a visual way.
This lets us cache the results of the first part (unless the text changes), which makes everything a lot faster in the OT case, and quite faster in the regular case.
There are still some issues unresolved in this commit that will be resolved in future commits:
1. No support for async rendering - yes, I forgot I'm supposed to support that.
2. native_size should probably be calculated in another way because the current one is slow and if we already have the logical items it should be a piece of cake...

git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/evas@56504 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33
src/lib/canvas/evas_object_textblock.c
src/lib/engines/common/evas_font_ot.c
src/lib/engines/common/evas_font_ot.h
src/lib/engines/common/evas_text_utils.c
src/lib/engines/common/evas_text_utils.h