| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
Move the PangoScriptIter structure definition to a private header file,
so that we can embed the iterator within other structures or allocate
a local iterator on the stack. This eliminates the frequent short-lived
allocations associated with the iterator.
|
| |
|
|
|
|
| |
Don't crash when no fonts installed.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Gecko uses its own PangoFcFontMap subclass with its own PangoFontSet.
Previously we were setting font->fontmap in our own private
PangoFcFontSet. Now it's up to the PangoFcFont subclass to set it
when creating the new font object.
Also adds the following backend-public symbol:
pango_fc_font_map_find_decoder()
|
| |
|
| |
|
| |
|
|
|
|
| |
Now that we keep a lot fewer objects per fontset, increase the cache size.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
indicate weight or stretch into the corrersponding Pango font
description setting and stripped those word(s) from the family name.
Personally I liked the effect this had on the GTK+ font picker,
combining all weight and stretch variants of what de facto is one
typeface family (for instance DejaVu) under one family name. But Bulia
Byak reported that this caused regressions in Inkscape. So OK then.
|
| |
|
| |
|
| |
|
|
|
|
| |
Reported by Tommi Rantala.
|
| |
|
|
|
|
| |
svn path=/trunk/; revision=2829
|
|
|
|
|
|
|
|
|
| |
2009-02-03 Behdad Esfahbod <behdad@gnome.org>
* pango/Makefile.am: Comment out gobject-introspection for now,
to get a release out.
svn path=/trunk/; revision=2827
|
|
|
|
|
|
|
|
|
|
| |
2009-02-01 Behdad Esfahbod <behdad@gnome.org>
* pango/pangocairo-fcfont.c (pango_cairo_fc_font_class_init):
Don't do anything in shutdown. Was causing double-free of cairo
font private data.
svn path=/trunk/; revision=2825
|
|
|
|
|
|
|
|
|
|
|
| |
2009-01-31 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-gpos.c (Load_Mark2Array),
(Free_Mark2Array):
Allocate all array rows in a single ALLOC call. Saves over 100
alloc calls when loading DejaVu Sans,
svn path=/trunk/; revision=2824
|
|
|
|
|
|
|
|
|
|
|
| |
2009-01-31 Behdad Esfahbod <behdad@gnome.org>
* pango/pangofc-fontmap.c (pango_fc_face_describe),
(pango_fc_face_list_sizes), (pango_fc_family_list_faces):
It's not a programming error if face->family is NULL or
family->fontmap is NULL. Be graceful.
svn path=/trunk/; revision=2823
|
|
|
|
| |
svn path=/trunk/; revision=2822
|
|
|
|
|
|
|
|
|
|
|
| |
2009-01-30 Behdad Esfahbod <behdad@gnome.org>
Bug 569763 – pango doesn't like font descriptions without family!
* pango/pangofc-fontmap.c (pango_fc_make_pattern): Don't crash is desc
doesn't have family set.
svn path=/trunk/; revision=2821
|
|
|
|
|
|
|
|
|
|
| |
2009-01-29 Behdad Esfahbod <behdad@gnome.org>
* pango-view/viewer-render.c (make_layout), (get_options_string):
Remove default font family and size. This means default is "serif 12"
now, instead of previous "sans 18".
svn path=/trunk/; revision=2820
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-01-29 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-open.h:
* pango/opentype/harfbuzz-gdef.c (Make_ClassRange),
(HB_GDEF_Build_ClassDefinition):
* pango/opentype/harfbuzz-gpos.c (Load_PosClassRule),
(Load_ChainPosClassRule):
* pango/opentype/harfbuzz-gsub.c (Load_SubClassRule),
(Load_ChainSubClassRule):
* pango/opentype/harfbuzz-open.c (Load_ClassDef1),
(Load_ClassDef2), (_HB_OPEN_Load_ClassDefinition),
(_HB_OPEN_Load_EmptyClassDefinition),
(_HB_OPEN_Free_ClassDefinition):
Remove ClassDef->Defined field. This is the comment accompanying it:
The `Defined' field is not defined in the OpenType specification
but apparently needed for processing fonts like trado.ttf: This
font refers to a class which contains not a single element. We
map such classes to class 0.
The comment is correct that trado.ttf (MS Traditional Arabic) uses
such classes. However, in my testing I couldn't identify any
problems with the font if the special handling is removed. I also
processed as many fonts as I could get my hand on and trado.ttf was
the only not-totally-broken font hitting the special-case code.
DejaVu fonts hit it too, but I'm sure they do not require the
special-handling code. Most probably, that code introduces bugs
in them.
The special-casing was consuming lots of memory. EIGHT MEGABYTES
for loading DejaVu Sans! While this could be complete fixed, I
decided to remove the special-handling code altogether. I don't
think it will make any real difference, and if it does, we'll fix
fonts. Such hacks will not be in harfbuzz-ng anyway.
Bug originally reported by nsf.
svn path=/trunk/; revision=2819
|
|
|
|
|
|
|
|
|
| |
2009-01-29 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-impl.c (_hb_alloc): Use calloc(),
instead of malloc()ing and memset()ing.
svn path=/trunk/; revision=2818
|
|
|
|
|
|
|
|
| |
2009-01-29 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-dump-main.c (main): Remove old cruft.
svn path=/trunk/; revision=2817
|
|
|
|
|
|
|
|
|
|
| |
2009-01-29 Behdad Esfahbod <behdad@gnome.org>
* pango/pangofc-fontmap.c (pango_fc_font_map_fini),
(pango_fc_font_map_shutdown): Don't disassociate family from fontmap
during cache_clear().
svn path=/trunk/; revision=2816
|
|
|
|
|
|
|
|
|
|
| |
2009-01-29 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-gpos.c (Load_BaseArray), (Free_BaseArray):
Allocate all array rows in a single ALLOC call. Saves over 2000
alloc calls when loading DejaVu Sans!
svn path=/trunk/; revision=2815
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-01-28 Behdad Esfahbod <behdad@gnome.org>
Bug 560792 – Make PangoLayoutLine with line->layout==NULL renderable
* pango/pango-renderer.c (pango_renderer_draw_layout_line),
(pango_renderer_draw_glyph_item), (pango_renderer_set_matrix):
Handle line->layout == NULL.
svn path=/trunk/; revision=2814
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-01-28 Behdad Esfahbod <behdad@gnome.org>
Bug 567392 – Abiword crashes in pango when opening document with
certain locales
* pango/pango-ot-info.c (pango_ot_info_find_language),
(pango_ot_info_find_feature), (pango_ot_info_list_languages),
(pango_ot_info_list_features): Protect against more broken fonts.
svn path=/trunk/; revision=2813
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-01-27 Behdad Esfahbod <behdad@gnome.org>
Bug 566727 – PangoFontsetLazy
* pango/pangofc-fontmap.c: Rework caching.
Cache FcFontSort results separately from PangoFontset's.
Add PangoFcFontset which is lazy and does not create fonts until it
really needs to.
Use FcFontMatch() and only do FcFontSort() if fallback fonts are
needed.
svn path=/trunk/; revision=2809
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-01-09 Behdad Esfahbod <behdad@gnome.org>
Bug 567165 – Apply all pattern matrices
* pango/pangocairo-fcfont.c (_pango_cairo_fc_font_new):
* pango/pangofc-fontmap.c (pango_fc_font_map_new_font):
Apply all FC_MATRIX values, not just the first one. Fixes synthetic
italic rotated text with ft2 and xft backends. Can't believe no one
ever noticed that they are broken...
svn path=/trunk/; revision=2808
|
|
|
|
| |
svn path=/trunk/; revision=2807
|
|
|
|
| |
svn path=/trunk/; revision=2806
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-01-09 Behdad Esfahbod <behdad@gnome.org>
* docs/pango-sections.txt:
* docs/tmpl/pangofc-fontmap.sgml:
* docs/tmpl/text-attributes.sgml:
* pango/pangocairo-fc.h:
* pango/pangocairo-fcfont.c (get_font_size), (get_gravity_class),
(get_gravity), (_pango_cairo_fc_font_new):
* pango/pangocairo-fcfontmap.c
(pango_cairo_fc_font_map_font_key_substitute),
(pango_cairo_fc_font_map_create_font),
(pango_cairo_fc_font_map_class_init):
* pango/pangofc-font.c (_pango_fc_font_get_font_key),
(_pango_fc_font_set_font_key):
* pango/pangofc-fontmap.c (pango_fc_font_key_equal),
(pango_fc_font_key_hash), (pango_fc_font_key_free),
(pango_fc_font_key_copy), (get_context_matrix),
(pango_fc_font_key_init), (pango_fc_font_key_get_pattern),
(pango_fc_font_key_get_matrix),
(pango_fc_font_key_get_context_key), (pango_fc_font_map_init),
(pango_fc_font_map_class_init), (pango_fc_font_map_add),
(_pango_fc_font_map_remove), (pango_fc_make_pattern),
(pango_fc_font_map_new_font), (pango_fc_default_substitute),
(pango_fc_font_map_get_patterns), (pango_fc_font_map_load_fontset):
* pango/pangofc-fontmap.h:
* pango/pangofc-private.h:
Change PangoFc font loading API such that PangoContext is not passed
down. We use a new opaque struct called PangoFcFontKey. This struct
is in fact our font hash key. This avoids problems where previously
we were using context members that were not necessarily considered
by the pangofc layer when caching.
This is in preparation for lazy loading of fonts in the pangofc fontmap.
svn path=/trunk/; revision=2804
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-01-09 Behdad Esfahbod <behdad@gnome.org>
* pango/pangocairo-atsuifont.c (_pango_cairo_atsui_font_new):
* pango/pangocairo-fcfont.c (_pango_cairo_fc_font_new):
* pango/pangocairo-font.c (_pango_cairo_font_private_initialize):
* pango/pangocairo-private.h:
* pango/pangocairo-win32font.c (_pango_cairo_win32_font_new):
Remove desc argument from _pango_cairo_font_private_initialize().
Replace it with gravity, the only thing from desc we actually needed.
This is in preparation for lazy loading of fonts in the pangofc fontmap.
svn path=/trunk/; revision=2803
|
|
|
|
|
|
|
|
|
| |
2009-01-09 Behdad Esfahbod <behdad@gnome.org>
* pango/pangofc-fontmap.c (font_hash_key_equal):
Avoid context key comparison if any of the keys is NULL.
svn path=/trunk/; revision=2802
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-01-09 Behdad Esfahbod <behdad@gnome.org>
* pango/pangocairo-atsuifont.c (_pango_cairo_atsui_font_new):
* pango/pangocairo-fcfont.c (_pango_cairo_fc_font_new):
* pango/pangocairo-font.c (_pango_cairo_font_private_initialize):
* pango/pangocairo-private.h:
* pango/pangocairo-win32font.c (_pango_cairo_win32_font_new):
Remove context argument from _pango_cairo_font_private_initialize().
Replace it with pango_ctm and font_options, the only things from
context we actually needed. This is in preparation for lazy loading
of fonts in the pangofc fontmap.
svn path=/trunk/; revision=2801
|
|
|
|
| |
svn path=/trunk/; revision=2800
|
|
|
|
| |
svn path=/trunk/; revision=2799
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-01-20 Johan Dahlin <jdahlin@async.com.br>
Bug 567934 – Add introspection support inside pango
* configure.in:
* pango/Makefile.am:
* pango/pango-attributes.c:
* pango/pango-layout.c:
svn path=/trunk/; revision=2798
|
|
|
|
|
|
|
|
|
| |
2009-01-08 Behdad Esfahbod <behdad@gnome.org>
* pango/pangofc-fontmap.c (pango_fc_font_map_get_patterns):
Protect against a NULL context.
svn path=/trunk/; revision=2797
|
|
|
|
|
|
|
|
|
| |
2009-01-08 Behdad Esfahbod <behdad@gnome.org>
* pango/pango-context.c (itemize_state_process_run):
Improve warning message.
svn path=/trunk/; revision=2796
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-01-08 Behdad Esfahbod <behdad@gnome.org>
Bug 549532 – Correction to the sample string for Hindi in
pango-language-sample-table.h
* pango/pango-language-sample-table.h:
Improve Hindi sample text.
svn path=/trunk/; revision=2795
|
|
|
|
|
|
|
|
|
|
|
| |
2009-01-07 Behdad Esfahbod <behdad@gnome.org>
Bug 566726 – Minor optimization
* pango/pango-context.c (get_shaper_and_font):
Don't walk the fontset if there are no engines.
svn path=/trunk/; revision=2794
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-01-07 Behdad Esfahbod <behdad@gnome.org>
Bug 566941 – Add PANGO_ATTRIBUTE_INDEX_FROM_TEXT_BEGINNING and
PANGO_ATTRIBUTE_INDEX_TO_TEXT_END
* docs/pango-sections.txt:
* docs/tmpl/text-attributes.sgml:
* pango/pango-attributes.c (pango_attribute_init):
* pango/pango-attributes.h:
Add two new public macros:
PANGO_ATTRIBUTE_INDEX_FROM_TEXT_BEGINNING
PANGO_ATTRIBUTE_INDEX_TO_TEXT_END
svn path=/trunk/; revision=2793
|