2007-12-05 Behdad Esfahbod * examples/cairotwisted.c (point_on_path): Optimize double math. 2007-12-05 Behdad Esfahbod Bug 501938 – Arabic shaping broken with vertical layout with vertical-hint=line * modules/arabic/arabic-fc.c (arabic_engine_shape): Take gravity into equation when deciding whether to shape visually or logically. 2007-12-05 Behdad Esfahbod * pango-view/viewer-pangocairo.c (render_callback): Fix assertion in pango_gravity_get_rotation(). 2007-12-04 Behdad Esfahbod Bug 501575 – Compile errors Patch from Jens Granseuer * pango/opentype/harfbuzz-stream.c (_hb_font_goto_table): * pango/pango-utils.c (handle_alias_line): Fix C99ism. 2007-12-03 Behdad Esfahbod * === Released 1.19.1 === * configure.in: Version 1.19.1 * NEWS: Updated. 2007-12-03 Behdad Esfahbod Bug 501317 – "and" found where word should be "an" * docs/tmpl/layout.sgml: Fix typo. 2007-12-03 Behdad Esfahbod * examples/cairotwisted.c: Add some more comments to document the math involved. 2007-11-30 Behdad Esfahbod * examples/cairotwisted.c (two_points_distance), (curve_length), (parametrize_path), (point_on_path), (draw_twisted), (main): Document cairotwisted example. 2007-11-29 Behdad Esfahbod * example/cairo*.c: Add some documentation. 2007-11-29 Behdad Esfahbod Bug 485536 – underline_position can be zero * pango/pango-utils.c (pango_cairo_quantize_line_geometry): Document that returned position may be zero. * pango/pangocairo-win32font.c (pango_cairo_win32_font_create_metrics_for_context): * pango/pangofc-font.c (get_face_metrics): Handle case of underline_position==0 after rounding. 2007-11-29 Behdad Esfahbod Bug 500549 – pangocairo.h should include pango.h and cairo.h * pango/pangocairo.h: #include 2007-11-23 Behdad Esfahbod * docs/check.docs: Make it reusable by not hardcoding "pango". 2007-11-23 Behdad Esfahbod * pango/opentype/harfbuzz-impl.c: Remove unused macro. 2007-11-18 Behdad Esfahbod * docs/Makefile.am: Replace GNU-specific syntax with more general one. 2007-11-16 Tor Lillqvist * pango/pango-utils.c (handle_alias_line): Factor out the common code from read_builtin_aliases() and read_alias_file(). (#492517) 2007-11-09 Behdad Esfahbod * pango/Makefile.am: Include ATSUI included modules. 2007-11-08 Behdad Esfahbod Bug 495091 – pango-utils.c:variable is declared at middle of block * pango/pango-utils.c (read_builtin_aliases): Move variable declaraction before code. 2007-11-07 Behdad Esfahbod * pango/opentype/*: And some more. 2007-11-07 Behdad Esfahbod * pango/opentype/*: Some more cleanup and merging. 2007-11-05 Behdad Esfahbod * tools/gen-script-for-lang-new.c (scripts_for_lang), (main): Update to new propsed language enumeration API for fontconfig. 2007-11-02 Tor Lillqvist * pango/pango-utils.c (read_builtin_aliases, pango_load_aliases): On Windows store the default aliases file in a string array. (#492517) Compared to the pango.aliases file as distributed with my most recent Windows builds there are some changes: Add the DejaVu fonts as the first ones listed for the generic sans, serif and mono font names. Use Tahoma instead of Arial for sans, and Georgia instead of Times New Roman for serif (to be used if the DejaVu fonts aren't present). Add Arial Unicode MS (a font with quite large coverage that comes with MS Office and thus is often available). Add Sylfaen (the Armenian and Georgian font bundled with Windows). When using the MS-Windows theme the font used by GTK+ will the system UI one. Both fonts typically used as system fonts, Tahoma (on XP) and Segoe UI (on Vista), are aliased here. * pango/pango-utils.c (read_alias_file): Accept also a quoted string for the left-hand side of an aliases file line. This is to enable aliasing fonts with spaces in their name, like "Segoe UI" which is the default system font on Vista. (#492504) (With the above built-in default aliases lists, no actual pango.aliases file is longer required on Windows for non-Latin script support, though.) 2007-10-30 Behdad Esfahbod * docs/pango-sections.txt: * docs/tmpl/main.sgml: * docs/tmpl/vertical.sgml: Improve vertical docs. 2007-10-29 Behdad Esfahbod * === Released 1.19.0 === * configure.in: Version 1.19.0 * NEWS: Updated. 2007-10-28 Behdad Esfahbod * pango/pango-script-lang-table.h: * tools/gen-script-for-lang-new.c: Sort scripts based on frequency. * tools/Makefile.am: Don't build anything by default. 2007-10-26 Murray Cumming * docs/pango_markup.sgml: Adds a link to pango_font_description_from_string() so that the font_desc attribute is not so mysterious. Bug #490661. 2007-10-26 Behdad Esfahbod * tools/Makefile.am: * tools/gen-script-for-lang-new.c: Functional dup of gen-script-for-lang that uses FcGetLangs() and FcCharSetForLang() instead of parsing .orth files. 2007-10-26 Behdad Esfahbod * pango/pango-script-lang-table.h: Update for fontconfig-2.4.91. 2007-10-25 Behdad Esfahbod * pango/pangofc-fontmap.c (pango_fc_font_map_get_patterns): Call FcFontSetDestroy() instead of FcFontSetSortDestroy(). These days they are the same, but previously the latter was not freeing the actual patterns. But we don't need the sort patterns, so this retroactively fixes a leak in older versions! 2007-10-25 Behdad Esfahbod * pango/opentype/*: Even more cleanup and more type renames. 2007-10-25 Behdad Esfahbod * pango/opentype/*: More cleanup, remove redundant error types. 2007-10-24 Behdad Esfahbod * pango/opentype/*: Rename ftglue.c to harfbuzz-impl.c and more type renames and moving code around. 2007-10-24 Behdad Esfahbod * pango/opentype/*: New header file harfbuzz-global.h. Rename FT_* int types to HB_* types. 2007-10-24 Behdad Esfahbod * pango/opentype/harfbuzz-gpos-private.h: * pango/opentype/harfbuzz-gsub-private.h: Add commented-out dummy struct for Extension lookups. 2007-10-24 Behdad Esfahbod Bug 478865 – Drastically reduce number of PangoFont objects created for rotating text * pango/pangofc-fontmap.c (fontset_hash_key_hash), (get_scaled_size), (pango_fc_font_map_get_patterns): Use a Pango-unit int for scaled-size instead of double. Merges even more queries... 2007-10-24 Behdad Esfahbod Bug 478865 – Drastically reduce number of PangoFont objects created for rotating text * pango/pangofc-fontmap.c (fontset_hash_key_equal), (fontset_hash_key_hash), (fontset_hash_key_copy), (get_scaled_size), (pango_fc_font_map_get_patterns): Only keep scaled-size in fontset hash, instead of unscaled-size and context matrix. 2007-10-24 Behdad Esfahbod Bug 471568 – Optimizations in _pango_cairo_update_context() * pango/pangocairo-context.c (_pango_cairo_update_context): Skip change notification about matrix changes if merged font options for the context set metrics hinting to off. 2007-10-24 Behdad Esfahbod Bug 489909 – pango_cairo_update_context() should ignore matrix translation * pango/pangocairo-context.c (_pango_cairo_update_context): Just compare the first four doubles of matrices for change notification purposes. 2007-10-24 Behdad Esfahbod Bug 486951 – ChangeLog.pre-1-18 * Makefile.am: * ChangeLog.pre-1-18: Split ChangeLog. 2007-10-24 Behdad Esfahbod * pango/glyphstring.c (pango_glyph_string_copy), (pango_glyph_string_free): Fix another Oops of mine from recent commits. 2007-10-24 Behdad Esfahbod Bug 472924 – Mark some classes abstract * pango/fonts.c: * pango/pango-fontmap.c: * pango/pangofc-font.c: * pango/pangofc-fontmap.c: Public API chance: Mark the following types as abstract: PangoFont PangoFontFace PangoFontFamily PangoFontMap PangoFcFont PangoFcFontMap 2007-10-24 Behdad Esfahbod Bug 472303 – Make PANGO_GLYPH_EMPTY and PANGO_GLYPH_UNKNOWN_FLAG public * pango/pango-font.h: Make PANGO_GLYPH_EMPTY, PANGO_GLYPH_UNKNOWN_FLAG, and PANGO_GET_UNKNOWN_GLYPH() public. Previously they were only defined for backend/engine implementations. 2007-10-24 Behdad Esfahbod Bug 471601 – Pass pango version information to fontconfig * pango/pangofc-fontmap.h: New public API: PANGO_FC_GRAVITY PANGO_FC_VERSION * pango/pangofc-fontmap.c (pango_fc_make_pattern): Set PANGO_FC_VERSION in pattern. * docs/pango-sections.txt: * docs/tmpl/pangofc-fontmap.sgml: Update. 2007-10-24 Behdad Esfahbod Bug 472629 – Add pango_renderer_get_layout(_line) * pango/pango-renderer.h: * pango/pango-renderer.c: New public API: pango_renderer_get_layout() pango_renderer_get_layout_line() * pango/pangocairo-render.c (pango_cairo_renderer_draw_shape), (release_renderer), (_pango_cairo_do_layout_line), (_pango_cairo_do_layout): Use above API to simplify shape_renderer implementation. * pango/pango.def: * docs/pango-sections.txt: * docs/tmpl/pango-renderer.sgml: Update. 2007-10-24 Behdad Esfahbod * pango/pango-attributes.c: Fix couple Oopses from my last commit. 2007-10-24 Behdad Esfahbod Bug 469641 – Initialize attribute start/end to [0..MAXUINT] * pango/pango-attributes.h: * pango/pango-attributes.c: New public API: pango_attribute_init() * pango/pango-attributes.c: (pango_attr_string_new), (pango_attr_language_new), (pango_attr_color_new), (pango_attr_int_new), (pango_attr_float_new), (pango_attr_size_new_internal), (pango_attr_font_desc_new), (pango_attr_shape_new_with_data): Initialize attributes using pango_attribute_init(). * pango/pango.def: * docs/pango-docs.sgml: * docs/pango-sections.txt: * docs/tmpl/text-attributes.sgml: Update. 2007-10-24 Behdad Esfahbod Bug 471577 – GBoxed GType for PangoGlyphItem * pango/pango-glyph-item.h: * pango/pango-glyph-item.c: New public API: PANGO_TYPE_GLYPH_ITEM pango_glyph_item_copy() pango_glyph_item_get_type() * pango/pango-layout.c: New public API: pango_layout_iter_copy() * pango/fonts.c (pango_font_description_copy), (pango_font_description_copy_static), (pango_font_description_free), (pango_font_descriptions_free), (pango_font_metrics_ref), (pango_font_metrics_unref): * pango/glyphstring.c (pango_glyph_string_copy), (pango_glyph_string_free): * pango/pango-attributes.c (pango_attr_list_ref), (pango_attr_list_unref), (pango_attr_list_copy): * pango/pango-color.c (pango_color_copy), (pango_color_free): * pango/pango-item.c (pango_item_copy), (pango_item_free): * pango/pango-layout.c (pango_layout_line_ref), (pango_layout_line_unref), (pango_layout_iter_copy), (pango_layout_iter_free): * pango/pango-layout.h: * pango/pango-matrix.c (pango_matrix_copy), (pango_matrix_free): Update all copy/free functions to accept NULL as legitimate input. Previously all were g_return_[val_]if_fail()ing it. * pango/pango.def: * docs/pango-sections.txt: * docs/tmpl/glyphs.sgml: * docs/tmpl/layout.sgml: Update. 2007-10-22 Behdad Esfahbod Bug 471571 – Add pango_layout_iter_get_layout() * pango/pango-layout.h: * pango/pango-layout.c: New public API: pango_layout_iter_get_layout() * docs/pango-sections.txt: * docs/tmpl/layout.sgml: * pango/pango.def: 2007-10-22 Behdad Esfahbod * docs/tmpl/layout.sgml: Remove obsolete comment. PangoLayoutRun is not deprecated. It's just same type as PangoGlyphItem. 2007-10-21 Behdad Esfahbod * pango/pango-layout.h: Remove obsolete comment. PangoLayoutRun is not deprecated. It's just same type as PangoGlyphItem. 2007-10-21 Behdad Esfahbod Bug 488840 – harfbuzz: protect against ligid overflow * pango/opentype/harfbuzz-buffer.c (_hb_buffer_allocate_ligid): Never return zero, even in case of overflow. * pango/opentype/harfbuzz-impl.h: Define dummy HB_LIKELY() and HB_UNLIKELY(), to be filled later. 2007-10-20 Behdad Esfahbod * examples/cairotwisted.c (curve_length): Implement bezier curve length function that flattens the curve and sum the length of straight lines approximating it. 2007-10-15 Behdad Esfahbod Bug 483600 – Leak of font family name in pango_win32_font_description_from_logfont(w) Patch from Daniel Atallah * pango/pangowin32-fontmap.c (pango_win32_font_description_from_logfont), (pango_win32_font_description_from_logfontw): Free family. 2007-10-15 Behdad Esfahbod Bug 486932 – Apply vkrn GPOS feature in vertical writing * modules/basic/basic-fc.c (basic_engine_shape): Apply vkrn GPOS feature in vertical writing mode. Previously we had no GPOS feature for vertical mode. 2007-10-15 Behdad Esfahbod Bug 481537 – compiler warning fixes Patch from Kjartan Maraas * pango/break.c (pango_get_log_attrs): * pango/pango-attributes.c (pango_attr_list_insert_internal): * pango/pango-layout.c (process_item), (justify_clusters): * pango/pango-markup.c (span_parse_boolean): * pango/pango-ot-ruleset.c (pango_ot_ruleset_finalize), (pango_ot_ruleset_new): * pango/pango-utils.c (pango_scan_int): * pango/pangocairo-font.c (_pango_cairo_font_install): * pango/pangofc-font.c (pango_fc_font_create_metrics_for_context): * pango/pangoft2.c (load_fallback_face): * pango/pangox-fontmap.c (pango_x_get_coverage_win): * pango/pangox.c (itemize_string_foreach): Fix warnings. 2007-10-11 Behdad Esfahbod Bug 485566 – Cache one OpenType Buffer * pango/pango-ot-buffer.c (acquire_buffer), (release_buffer), (pango_ot_buffer_new), (pango_ot_buffer_destroy): * pango/pango-ot-private.h: Cache one HB_Buffer that is acquired using a lock. A new one is created if the shared buffer is locked. The shared buffer is cleared when released. May want to make it free shared buffer if buffer->allocated is too large. Not sure. 2007-10-11 Behdad Esfahbod * pango/opentype/*: Mark internal symbols as HB_INTERNAL and define that to static in harfbuzz.c. * pango/opentype/harfbuzz-buffer-internal.h: New file. 2007-10-11 Behdad Esfahbod * pango/opentype/ftglue.[ch]: Remove FTGLUE_API/APIDEF cruft. 2007-10-11 Behdad Esfahbod * pango/opentype/Makefile.am: Build harfbuzz.c instead of individual source files, to let compiler go wild with optimizations! 2007-10-11 Behdad Esfahbod * pango/opentype/harfbuzz.c: Same here. 2007-10-11 Behdad Esfahbod * pango/opentype/Makefile.am: Don't include harfbuzz-dump.[ch] in libharfbuzz.a. Those are just used by the harfbuzz-dump tool. 2007-10-11 Behdad Esfahbod * pango/opentype/harfbuzz-buffer.c: Some more cleanup. 2007-10-11 Behdad Esfahbod * pango/opentype/harfbuzz-buffer.c: Move some code around. 2007-10-11 Behdad Esfahbod * pango/opentype/harfbuzz-buffer.[ch]: Rename buffer->inplace to buffer->separate_out with the inverted meaning, such that buffer is initialization is memset(0). 2007-10-11 Behdad Esfahbod * pango/opentype/*: Allocate buffer->positions lazily. 2007-10-11 Behdad Esfahbod Bug 485621 – Get rid of freetype memory allocator in harfbuzz * pango/opentype/*: Remove all occurences of FT_Memory. Use malloc/realloc/free directly. * pango/pango-ot*: Update to above. 2007-10-10 Behdad Esfahbod Bug 485559 – Boston Summit HarfBuzz optimizations * pango/opentype/*: HarfBuzz hacking to: - Rename last remaining FT_Err stuff to HB_Err. - Fix a couple invalid table paths to be permissive so fonts work better. Particularly GDEF table for Nafees Nastaliq is loaded and works great now. - Optimize harfbuzz buffer to not copy/swap for simple one-to-one and "copy" GSUB operations. * pango/pango-ot*: Update to FT_Err to HB_Err renaming. 2007-09-21 Behdad Esfahbod * pango/pangofc-fontmap.c: Fix typo in comments. 2007-09-17 Behdad Esfahbod * === Released 1.18.2 === * configure.in: Version 1.18.2 * NEWS: Updated. 2007-09-07 Behdad Esfahbod Bug 474708 – pangocairo leaks memory * pango-view/viewer-pangocairo.c (pangocairo_view_create): Use pango_cairo_font_map_new() instead of pango_cairo_font_map_get_default(), so the font map is freed at the end so we can use valgrind to detect leaks without noise. 2007-09-07 Behdad Esfahbod Part of Bug 474708 – pangocairo leaks memory * pango/pangocairo-font.c (_pango_cairo_font_private_get_hex_box_info): Fix a couple leaks. * pango/pangocairo-atsui.h: * pango/pangocairo-atsuifontmap.c (pango_cairo_atsui_font_map_finalize): * pango/pangocairo-fc.h: * pango/pangocairo-fcfontmap.c (pango_cairo_fc_font_map_finalize): * pango/pangocairo-win32.h: * pango/pangocairo-win32fontmap.c (pango_cairo_win32_font_map_finalize): Remove unused leftover renderer variable. * pango/pangofc-fontmap.c (pango_fc_font_map_finalize): Fix thinko. 2007-09-07 Behdad Esfahbod * pango/pangox-fontcache.c (free_cache_entry), (pango_x_font_cache_free), (pango_x_font_cache_new), (pango_x_font_cache_load): * pango/pangox-fontmap.c (pango_x_font_map_finalize), (pango_x_insert_font): * pango/pangox.c (free_context_info), (pango_x_get_context), (pango_x_font_init), (pango_x_font_get_metrics), (pango_x_insert_subfont), (free_metrics_info), (pango_x_font_finalize): Switch some g_new (*, 1) to g_slice_new ()... I know... 2007-09-07 Behdad Esfahbod Patch from Chris Wilson * pango/pangoft2.c (load_fallback_face): Use g_error() instead of g_warning()+exit(). 2007-09-02 Mathias Hasselmann Bug 472891 – Bad consistency check in pango_get_log_attrs * pango/break.c: Invert the consistency check. 2007-08-29 Behdad Esfahbod Bug 302952 – The placement of a diacritic marks for an arabic ligature is not correct * pango/opentype/harfbuzz-buffer.c (hb_buffer_allocate_ligid): Don't use zero as allocated ligature id. Zero means no ligature id. 2007-08-28 Behdad Esfahbod * pango/pango-ot-ruleset.c (pango_ot_ruleset_init), (pango_ot_ruleset_new): Move ruleset initialization to _init() instead of _new(). 2007-08-28 Behdad Esfahbod Bug 410152 – testboundaries test fails * configure.in: Require libthai >= 0.1.9 2007-08-27 Behdad Esfahbod * === Released 1.18.1 === * configure.in: Version 1.18.1 * NEWS: Updated. 2007-08-24 Behdad Esfahbod Bug 470042 – missing Macedonian OT tag Patch from Denis Jacquerye * pango/pango-ot-tag.c: Add Macedoninan language tag. 2007-08-21 Behdad Esfahbod Bug 468953 – pango-renderer.c: using function without prototype * pango/pango-renderer.c: #include 2007-08-21 Behdad Esfahbod Bug 463430 – Gets stuck while "formatting message" * pango/opentype/harfbuzz-gpos.c (Lookup_PairPos1), (Lookup_PairPos2), (Lookup_PairPos), (Do_ContextPos): * pango/opentype/harfbuzz-gsub.c (Do_ContextSubst): Change type of intermediate index variable from FT_UShort to FT_ULong as it was overlowing with more than 65536 glyphs. 2007-08-20 Behdad Esfahbod * README: Remove reference to required version of glib. It falls out of synch every single time. Local Variables: coding: utf-8 End: vim: encoding=utf-8: