oops - in the process i disabled the multiple fonts in the fontsets to
authorraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Tue, 2 Nov 2010 04:56:57 +0000 (04:56 +0000)
committerraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Tue, 2 Nov 2010 04:56:57 +0000 (04:56 +0000)
load on demand when first needed. fixed. rendering etc. works again
for all intl fonts.

git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/evas@54085 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/engines/common/evas_font_draw.c
src/lib/engines/common/evas_font_load.c

index 5f10633..776b8d2 100644 (file)
@@ -105,7 +105,7 @@ _fash_int_find(Fash_Int *fash, int item)
 {
    int grp, maj, min;
 
-   item &= 0xffffff; // 24bits for unicode - v6 up to E01EF (chrs) & 10FFFD for private use (plane 16)
+   // 24bits for unicode - v6 up to E01EF (chrs) & 10FFFD for private use (plane 16)
    grp = (item >> 16) & 0xff;
    maj = (item >> 8) & 0xff;
    min = item & 0xff;
@@ -119,7 +119,7 @@ _fash_int_add(Fash_Int *fash, int item, RGBA_Font_Int *fint, int index)
 {
    int grp, maj, min;
 
-   item &= 0xffffff; // 24bits for unicode - v6 up to E01EF (chrs) & 10FFFD for private use (plane 16)
+   // 24bits for unicode - v6 up to E01EF (chrs) & 10FFFD for private use (plane 16)
    grp = (item >> 16) & 0xff;
    maj = (item >> 8) & 0xff;
    min = item & 0xff;
@@ -162,7 +162,7 @@ _fash_gl_find(Fash_Glyph *fash, int item)
 {
    int grp, maj, min;
 
-   item &= 0xffffff; // 24bits for unicode - v6 up to E01EF (chrs) & 10FFFD for private use (plane 16)
+   // 24bits for unicode - v6 up to E01EF (chrs) & 10FFFD for private use (plane 16)
    grp = (item >> 16) & 0xff;
    maj = (item >> 8) & 0xff;
    min = item & 0xff;
@@ -176,7 +176,7 @@ _fash_gl_add(Fash_Glyph *fash, int item, RGBA_Font_Glyph *glyph)
 {
    int grp, maj, min;
 
-   item &= 0xffffff; // 24bits for unicode - v6 up to E01EF (chrs) & 10FFFD for private use (plane 16)
+   // 24bits for unicode - v6 up to E01EF (chrs) & 10FFFD for private use (plane 16)
    grp = (item >> 16) & 0xff;
    maj = (item >> 8) & 0xff;
    min = item & 0xff;
index a3b5650..daa4f96 100644 (file)
@@ -299,7 +299,8 @@ evas_common_font_int_memory_load(const char *name, int size, const void *data, i
    fi = calloc(1, sizeof(RGBA_Font_Int));
    if (!fi) return NULL;
    fi->src = evas_common_font_source_find(name);
-   if (!fi->src) fi->src = evas_common_font_source_memory_load(name, data, data_size);
+   if (!fi->src)
+    fi->src = evas_common_font_source_memory_load(name, data, data_size);
    if (!fi->src)
      {
        free(fi);
@@ -331,7 +332,9 @@ evas_common_font_int_load(const char *name, int size)
      }
    fi->size = size;
    _evas_common_font_int_cache_init(fi);
-   return evas_common_font_int_load_init(fi);
+   fi = evas_common_font_int_load_init(fi);
+//   evas_common_font_int_load_complete(fi);
+   return fi;
 }
 
 EAPI RGBA_Font_Int *
@@ -803,8 +806,9 @@ evas_common_font_int_unload(RGBA_Font_Int *fi)
 void
 evas_common_font_int_reload(RGBA_Font_Int *fi)
 {
-  return;
   if (fi->src->ft.face) return;
+  evas_common_font_source_load_complete(fi->src);
+  return;
   evas_common_font_source_reload(fi->src);
   evas_common_font_int_load_complete(fi);
 }