2005-07-26 Owen Taylor * === Released 1.8.2 === * configure.in: Version 1.8.2 * NEWS: Updated * docs/Makefile.am: Exclude pango-color-table.h 2005-07-26 Owen Taylor * pango/opentype/ftxgsub.c, pango/opentype/ftxgpos.c: Skip lookups with lookup index out of range. (Patch from Behdad Esfahbod, #171170) 2005-07-26 Owen Taylor Fixes for signed/unsigned in PangoAttrIterator ((#166700, Morten Welinder) * pango/pango-attributes.c (pango_attr_iterator_range): Clamp results to G_MAXINT to avoid negative numbers from signed/unsigned conversions. * pango/pango-attributes.c: Make PangoAttrIterator start_index/end_index unsigned to match PangoAttribute. Change various local variables to match. * pango/ellipsize.c (advance_iterator_to) pango/pango-attributes.c (pango_attr_iterator_range) pango/pango-glyph-item.c (pango_glyph_item_apply_attrs) pango/pango-layout.c (pango_layout_line_get_empty_extents): Always check the return value from pango_attr_iterator() to deal with potential infinite loops when trying to advance to position G_MAXINT. * pango/pango-layout.c (pango_layout_set_text): Handle the case where the text passed in is longer than than G_MAXINT and length < 0. * pango/pango-attributes.c (pango_attr_list_splice): Be careful about integer overflow - clamp addition. (#163246, Morten Welinder) 2005-07-26 Owen Taylor * modules/indic/indic-ot-class-tables.c (oryaCharClasses): Change U+0B30 from _rv to _rb. Oriya doesn't have a vattu form of ra. (#151393, Gautam Sengupta, fix from Gora Mohanty) * modules/indic/indic-ot-class-tables.c (oryaCharClasses): Change U+B02 from _ma to _mp. Anusvara appears after not above in Oriya. (#311575, Gora Mohanty) * modules/indic/indic-ot-class-tables.c (oryaCharClasses): Classify unicode standard additions U+0B35 (va), U+0B71 (wa) as _ct. (Also #311575) 2005-07-25 Owen Taylor * pango/pango-layout.c (line_set_resolved_dir): Always set line->resolved_dir to one of LTR or RTL. (#171439, Reported by Chris Blizzard) 2005-07-22 Owen Taylor * pango/pango-layout.c: Add some missing statics on functions added in the recent layout iter patch. 2005-07-22 Owen Taylor * pango/opentype/ftglue.c (ftglue_realloc): Remove an unecessary set of block2. 2005-07-22 Owen Taylor Patch from David Turner. Review and testing by Behdad Esfahbod * pango/opentype/ftglue.[ch] Makefile.am: Glue layer that provides implementation of the internal functions that the opentype code expects in terms of publically exported FreeType API. * pango/opentype/ftxgdef.c pango/opentype/ftxgpos.c pango/opentype/ftxgsub.c pango/opentype/ftxopen.c pango/opentype/otlbuffer.c pango/opentype/pango-ot-info.c pango/opentype/pango-ot-ruleset.c: Remove includes of internal headers. Small changes to work with ftglue.[ch] * pango/opentype/fterrcompat.h: Remove: no longer needed. * pango/opentype/ftxgpos.c: Use FT_IS_SFNT(face) rather than poking at FT_MODULE_CLASS (face->driver)->module_name. * pango/opentype/ftxopen.c (Free_FeatureList): Free fl->ApplyOrder. (Found by Behdad) 2005-07-22 Tor Lillqvist * pango/pangowin32.c (pango_win32_render_layout_line): Fix underlining. (#304692) Mention in the doc comment that the DC's text alignment needs to have TA_BASELINE and TA_LEFT for underlining to be correct. 2005-07-21 Owen Taylor * modules/indic/indic-ot.c: Minor formatting tweak to license header. * tests/Makefile.am: Remove references to testiter: it's Cairo dependent, so not added on the maintenance branch. 2005-07-21 Owen Taylor * modules/indic/indic-ot-class-tables.c modules/indic/indic-ot.[ch]: license on these ICU-derived files is X license, not LGPL. * modules/khmer/khmer-fc.c: Add the X license text here in addition to the LGPL. 2005-07-21 Owen Taylor * pango/pangoxft-font.c (_pango_xft_font_new): Force on metrics hinting for all Xft fonts (this fixes font metrics - glyph metrics were fixed earlier). (#307196, Alex Jones) 2005-07-21 Owen Taylor * README: Update information about the location of Xft. (#172637, Karel 'Clock' Kulhavy) 2005-07-21 Owen Taylor * README: Fix URL to tml's download page (#169467, Brandon Bergren) 2005-07-21 Owen Taylor * modules/indic/indic-ot-class-tables.c: Change the char class for U+0A5C from _cn (consonant with nukta) to _ct. (#309459, Sukhjinder Sidhu) 2005-07-21 Owen Taylor * modules/indic/indic-ot-class-tables.c: Enable touching for Sinhala with the ZWJ + al-lakuna combination. (#302577, Harshula) 2005-06-21 Owen Taylor Fix up the operation of PangoLayoutIter, especially for Bidi (#89541, based on a patch from Amit Aronovitch) * pango/pango-layout.c: Many changes to make iteration consistently in visual order. * pango/pango-layout.c (pango_layout_iter_next_char): Iterate through each character in the layout exactly once. (Including a hack to get two iterator positions for \r\n) * pango/pango-layout.c (pango_layout_iter_next_cluster): Only iterate through real clusters: that is, positions in the layout that have glyphs. * tests/testiter.c tests/Makefile.am: Add a (somewhat reworked) test from Amit for the operation of PangoLayoutIter. 2005-07-21 Owen Taylor * pango/pango-layout.c (pango_layout_set_text): Avoid calling memcpy with a NULL argument. (#310021, Morten Welinder) 2005-07-21 Owen Taylor Merges of fixes from Arabic module (#308813, Emil Soleyman-Zomalan) * modules/syriac/syriac-fc.c (syriac_engine_shape): Fix bug where cluster was getting set to 0 for non-spacing marks rather than to the cluster of the base character. (#149126, Behdad Esfahbod) * modules/syriac/syriac-fc.c (syriac_engine_shape): Turn on zero-width-marks setting. [Not clear that this is needed here, since it is mostly set in the Arabic engine to handle legacy fonts, but it shouldn't hurt] 2005-07-21 Owen Taylor Fix up places where there is missing or incomplete Copyright and License information (Reported by William N. Ray, #310072) * pango/opentype/fterrcompat.h: Mark as FreeType/GPL licensed. * pango/opentype/FT-license.txt: Make this the dual-licensing description that covers the FreeType code (FreeType's LICENSE.TXT) rather than the FTL. * pango/opentype/FTL.TXT: Move the FTL (referenced from FT-license.txt) to here. * modules/basic/basic-common.h modules/hebrew/hebrew-shaper.h modules/thai/thai-charprop.c modules/thai/thai-shaper.h tools/gen-script-for-lang.c tests/testcolor.c: Add LGPL header and copyright information. * modules/indic/indic-ot.[ch] modules/indic/indic-ot-class-tables.c modules/thai/thai-ot.[ch]: Add LGPL header. * modules/thai/thai-shaper.c modules/thai/thai-charprop.h: Minor fixes to copyright information. * modules/arabic/arabic-ot.c: Add Freetype license boilerplate. 2005-06-27 Tor Lillqvist * pango/pango.def: Remove pango_script_for_lang. It was never part of the public API, and is now static. * modules/khmer/Makefile.am (INCLUDES): Drop superfluous trailing slash in -I path. 2005-06-24 Owen Taylor * docs/pango_markup.sgml (linkend): Fix a stray newline (#308887, Ryan Lortie) 2005-06-22 Owen Taylor * modules/khmer/khmer-fc.c (khmer_engine_shape): Add back accidentally dropped line (Pointed out by Behdad Esfahbod) 2005-06-21 Behdad Esfahbod * modules/khmer/khmer-fc.c: Fix C89 var after code issues. * modules/khmer/.cvsignore: Copied from other modules. 2005-06-21 Owen Taylor * pango/pangoxft-render.c (get_renderer): Go back to honoring alpha in the XftColor passed in; it was a 1.6 => 1.8 regression. (#169622, based on a patch from Mikael Magnusson) 2005-06-21 Owen Taylor * modules/khmer configure.in modules/Makefile.am modules/makefile.msc: Add a Khmer module by Jens Herden and Javier Sola. (#125605) 2005-06-16 Tor Lillqvist * configure.in: Move the check for native Win32 a bit later, as $host didn't seem to be set up yet at the point where we checked. 2005-06-14 Owen Taylor * modules/indic/indic-ot-class-tables.c (guruCharClasses): Mark U+A33, U+A36 as _cn, not _ct, since they are combinations of other characters with nutka. (#304174, Sukhjinder Sidhu) 2005-06-14 Owen Taylor Misc fixes from Stepan Kasal, #169928 * pangoxft.pc.in: Add requirement on pangoft2 * pangoxft-uninstalled.pc.in: Fix cut-and-paste errors in Name/Description when copying from pangox-uninstalled. * configure.in: Don't call AC_SUBST() unnecessary for XFT_CFLAGS/LIBS. 2005-06-14 Owen Taylor * pango/pango-utils.c (pango_parse_style): Fix some missing case variants in the switch statement. (#169852, Morten Welinder) 2005-06-14 Owen Taylor * pango/pango-script-table.h (struct): Hand edit to fix a bug in the 4.0.0 data tables. (#173096, Sukhjinder Sidhu) * tools/gen-script-table.pl: Some updates to handle newer formats (not actually regenerating tables at the moment, since the changes are large) 2005-06-14 Owen Taylor #307433, Sebastien Bacher * pango/Makefile.am (libpango_1_0_la_SOURCES): Add pango-color-table.h. 2005-06-14 Owen Taylor * pango/opentype/pango-ot-info.c (pango_ot_info_finalize) pango/opentype/pango-ot-ruleset.c (pango_ot_ruleset_finalize): Chain up from finalize. (#307547, Paolo Borelli) * pango/opentype/pango-ot-info.c (pango_ot_info_finalizer): make accidentally public function static. 2005-06-14 Owen Taylor * pango/ellipsize.c (shape_ellipsis): Fix FALSE/TRUE typo that was causing crashes with fonts not containing ".". (#304039, Sebastien Bacher) * pango/pango-context.c (itemize_state_fill_shaper): Allow font to be NULL. 2005-06-14 Owen Taylor * pango/pango-context.c (itemize_state_finish): Fix potential leak of state->base_font. (#168930, Ben Maurer, Aivars Kalvans) 2005-03-18 Hans Breuer Merge from HEAD: * pango/pangowin32.c(pango_win32_render_transformed) : matrix elements xy and yx are needed the other way around for XFORM 2005-04-28 Tor Lillqvist Add support to pangowin32 for TrueType fonts with coverage outside the BMP. Fix handling of surrogate pairs in the Uniscribe shaper. (#302238) * pango/pangowin32-private.h (PangoWin32Face): Rename the unicode_table field to cmap. Keep track of its format (4 or 12). (format_12_cmap): Add struct for a format 12 cmap. * pango/pangowin32.c: Corresponding changes. Rename internal functions a bit. (get_format_12_cmap): New function, reads a format 12 cmap. (font_get_cmap): Look for both format 12 (which is preferred) and format 4 cmaps. (pango_win32_font_get_glyph_index, pango_win32_font_calc_coverage): Handle also format 12 cmaps. * modules/basic/basic-win32.c: Handle surrogate pairs in wchar_t strings properly. (unichar_index): New function. Given a wchar_t string and an index into it, calculate the index of the corresponding Unicode character. Each surrogate pair in the wchar_t is just one Unicode character. (set_up_pango_log_clusters, itemize_shape_and_place): Use unichar_index() instead of direct index into wchar_t string. 2005-04-25 Changwoo Ryu * modules/hangul/hangul-fc.c (render_basic): handles zero width chars, patch by Young-Ho Cha. (#157565) 2005-04-04 Theppitak Karoonboonyanan Merge from HEAD: * modules/thai/thai-fc.c (tis620_1), modules/thai/thai-shaper.c (Mac_shape_table): Added more MacThai PUA glyphs that are not defined in vendor data at Unicode.org, but just available in actual fonts. 2005-03-23 Tor Lillqvist Merge from HEAD: * pango/pango.def: Add missing pango_render_part_get_type. (#165287) 2005-03-20 Tor Lillqvist * modules/basic/basic-win32.c (make_langid): Leave out some languages that don't have any own digits. (itemize_shape_and_place): Force fRTL for each item returned from ScriptItemize() to the bidi embedding parity for the whole run. Pango passes us a run that it correctly has analyzed should be of a certain direction, but ScriptItemize() still might split it into items, some of which have neutral direction. (#170931) (uniscribe_shape, text_is_simple): Use g_utf8_to_utf16(). Merge from HEAD: * pango/pangowin32-private.h * pango/pangowin32.c (pango_win32_font_get_metrics): Cache metrics by language, like the other backends do. Don't try to get the width of the 0..9 digit string if the font doesn't cover digits. * modules/basic/Makefile.am (INCLUDES): Remove extraneous slash that confuses gcc on Win32. Sat Mar 5 13:51:04 2005 Manish Singh * pango/mini-fribidi/fribidi_types.[ch]: const correctness for _pango_fribidi_prop_to_type * tools/Makefile.am: dist gen-script-table.pl and gen-color-table.pl 2005-03-04 Owen Taylor Reduce non-shared data (#168899, inspired by patches from Tommi Komulainen and Ross Burton) * pango/pango-color.c pango/pango-color-table.h tools/gen-color-table.pl: Redo storage of colors to use offsets into a static string rather than embedded strings. (Inspired by a patch from Tommi Komulainen, #168899) * pango/break.c pango/fonts.c pango/pango-color.c pango/pango-layout.c pango/pango-markup.c pango/pango-script-lang-table.h pango/mini-fribidi/fribidi_types.c tools/gen-script-for-lang.c: Add const in various places * modules/arabic/arabic-fc.c modules/hebrew/hebrew-fc.c: modules/indic/{indic-fc.c,indic-ot-class-tables.c, indic-ot.h} modules/syriac/syriac-ot.c (syriac): Further addition of const.