diff options
author | Richard Hult <richard@imendio.com> | 2007-03-18 14:07:42 +0000 |
---|---|---|
committer | Richard Hult <rhult@src.gnome.org> | 2007-03-18 14:07:42 +0000 |
commit | 27004a4dace9d39dc2efb75151e6b3970b3ff66d (patch) | |
tree | 723d366f74abb3a2bebe718b1cc0a980563c2b0d /pango/pangocairo-atsuifont.c | |
parent | c11e021943ea586376b2a228f6fef9c2613e9561 (diff) | |
download | pango-27004a4dace9d39dc2efb75151e6b3970b3ff66d.tar.gz |
Bug 419262 - Don't create coverage every time it's asked for
2007-03-18 Richard Hult <richard@imendio.com>
Bug 419262 - Don't create coverage every time it's asked for
* pango/pangoatsui.c: (pango_atsui_font_get_coverage):
* pango/pangoatsui-fontmap.c: Pass around a PangoATSUIFace instead of
the postscript name string. Move the coverage creation from the font to
the face, and get the coverage from the face instead of creating it
every time.
* pango/pangocairo-atsui.h:
* pango/pangocairo-atsuifont.c: (_pango_cairo_atsui_font_new): Use the
face instead of the postscript name.
* pango/pangoatsui-private.h:
* pango/pangocairo-atsuifontmap.c: Add getters for the postscript name
and coverage for the face.
svn path=/trunk/; revision=2218
Diffstat (limited to 'pango/pangocairo-atsuifont.c')
-rw-r--r-- | pango/pangocairo-atsuifont.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/pango/pangocairo-atsuifont.c b/pango/pangocairo-atsuifont.c index 72130e41..ce00ca10 100644 --- a/pango/pangocairo-atsuifont.c +++ b/pango/pangocairo-atsuifont.c @@ -2,7 +2,7 @@ * pangocairo-atsuifont.c * * Copyright (C) 2000-2005 Red Hat Software - * Copyright (C) 2005 Imendio AB + * Copyright (C) 2005-2007 Imendio AB * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -263,9 +263,10 @@ pango_cairo_atsui_font_init (PangoCairoATSUIFont *cafont) PangoATSUIFont * _pango_cairo_atsui_font_new (PangoCairoATSUIFontMap *cafontmap, PangoContext *context, - const char *postscript_name, + PangoATSUIFace *face, const PangoFontDescription *desc) { + const char *postscript_name; PangoCairoATSUIFont *cafont; PangoATSUIFont *afont; CFStringRef cfstr; @@ -273,6 +274,7 @@ _pango_cairo_atsui_font_new (PangoCairoATSUIFontMap *cafontmap, const PangoMatrix *pango_ctm; ATSUFontID font_id; + postscript_name = _pango_atsui_face_get_postscript_name (face); cfstr = CFStringCreateWithCString (NULL, postscript_name, kCFStringEncodingUTF8); @@ -288,7 +290,7 @@ _pango_cairo_atsui_font_new (PangoCairoATSUIFontMap *cafontmap, afont = PANGO_ATSUI_FONT (cafont); afont->desc = pango_font_description_copy (desc); - afont->postscript_name = g_strdup (postscript_name); + afont->face = face; cafont->size = (double) pango_font_description_get_size (desc) / PANGO_SCALE; cafont->font_id = font_id; |