2005-04-28 Tor Lillqvist * pango/pangocairo-win32font.c (pango_cairo_win32_font_get_font_face): Correct parameters passed to MultiByteToWideChar(). Pass -1 as source string length so that the target string gets zero-terminated. Size of target array is in number of WCHARs, not number of bytes. 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. Wed Apr 27 15:45:06 2005 Manish Singh * examples/cairoview.c: Update to new Cairo API for writing out PNGs. 2005-04-28 Changwoo Ryu * modules/hangul/hangul-defs.h: Cleanups. 2005-04-25 Changwoo Ryu * modules/hangul/hangul-fc.c (render_basic): handles zero width chars, patch by Young-Ho Cha. (#157565) Mon Apr 18 15:49:36 2005 Manish Singh * examples/cairoview.c: Update to new Cairo API for setting color and opacity. 2005-04-12 Tor Lillqvist * pango/opentype/Makefile.am: Rename LDADDS to libpango_ot_la_LIBADD to actually make libpango-ot.la link with it. * pango/pangowin32.def: Rename get_scale_factor to get_metrics_factor here, too. (#300222, Ivan Wong) Fri Apr 8 15:30:55 2005 Manish Singh * examples/cairoview.c: #include since the cairo headers don't include it for us anymore. 2005-04-08 Owen Taylor * pango/pangocairo-font.c (_pango_cairo_font_install): Remove stray return. (#173046, Damien Carbery) Thu Apr 7 22:45:32 2005 Manish Singh * configure.in: Test for renamed cairo_ft_scaled_font_lock_face(). 2005-04-07 Owen Taylor * configure.in: Test for renamed cairo_win32_scaled_font_select_font(). * pango/pangocairo-win32font.c: Fix various compilation errors. * pango/pangocairo-fcfont.c pango/pangocairo-win32font.c pango/pangocairo-fontmap.c: Use new matrix API. * pango/pangocairo-fcfont.c pango/pangocairo-win32font.c pango/pangocairo-render.c: Update to new Cairo font API. * pangpopangowin32.h pango/pangowin32-private.h pango/pangowin32.c pango/pangocairo-win32font.c modules/basic/basic-win32.c: Rename get_scale_factor() to get_metrics_factor() to match Cairo. 2005-04-04 Hans Breuer * pango/pangocairo-win32font.c(pango_cairor_win32_font_get_metrics) : variable declaration on the start of the block, not C99 everywhere. * examples/viewer-win32.c : updated to not so recent Pango api changes * pango/makefile.msc : pangocairo build win32 version, not freetype 2005-04-01 Carl Worth * examples/cairosimple.c: (main): Update to track removal of cairo_set_target_png from cairo. 2005-03-24 Theppitak Karoonboonyanan * 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-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) (text_is_simple): Use g_utf8_to_utf16(). 2005-03-18 Hans Breuer * pango/pango.def pango/pangocairo.def : updated externals * pango/pangowin32.c(pango_win32_render_transformed) : matrix elements xy and yx are needed the other way around for XFORM 2005-03-17 Owen Taylor * pango/pangocairo-win32font.c (_pango_cairo_win32_font_new): Set win32font->logfont. (How was this working at all?) 2005-03-15 Owen Taylor * docs/tmpl/main.sgml (pango_unichar_direction): Fix PANGO_DIRECTION_LTR/RTL cut-and-paste. (Tim Janik) 2005-03-15 Owen Taylor * pango/pangofc-fontmap.c: Include the effect of the CTM in the FC_PIXEL_SIZE we set in the FcPattern. (Fixes problems with getting the wrong font when drawing the same font at multiple scales. Reported by Keith Packard.) * pango/pangofc-fontmap.h pango/pangocairo-fcfontmap.c pango/pangocairo-fc.h pango/pangocairo-fontfont.c: Add the PangoFontDescription to create_font() ... we need it to get the right pixel size to combine with the CTM. * pango/pangofc-fontmap.c (pango_fc_fontmap_get_dpi): Extract out the logic for finding the DPI from the size-listing code. (pango_fc_font_map_get_render_key): Handle mix of absolute and not sizes correctly. 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. 2005-03-04 Owen Taylor * NEWS: Updates from stable branch. 2005-03-03 Owen Taylor * modules/indic/indic-ot.[ch] modules/indic-ot-class-tables.c: Split out handling of sinhala al-lakuna character from handling of Virama in the state table to avoid implicit formation of conjucts for Sinhala. (Patch from Harshula, ##161981) * modules/indic/indic-fc.c modules/indic/indic-ot.h: Add a new script flag SF_PROCESS_ZWJ indicating whether zero width characters should be passed to gsub/gpos. * modules/indic/indic-ot-class-tables.c: Set SF_PROCESS_ZWJ for Sinhala. (#161981, Harshula) 2005-03-03 Owen Taylor * pango/pango-fontmap.c (pango_font_map_load_font): Add a g_return_if_fail() if desc doesn't have a family. (#165866, Kees Cook) 2005-03-03 Owen Taylor * pango/pangoxft-render.c (pango_xft_renderer_draw_glyphs): Call XftCharIndex() on the right font. (#163511) 2005-03-03 Owen Taylor * pango/opentype/ftxopen.c (Coverage_Index1, Coverage_Index2, Get_Class2): For all binary searches, handle the case where the number of items is 0. (#162977, Nick Lamb) * pango/opentype/ftxgdef.c (TT_GDEF_Build_ClassDefinition): Handle the case where glyph_count == 0 properly. Fix a problem with cleanups on memory allocation failure. (Get_New_Count, Add_Glyph_Property): Avoid reading off the end of the ClassRangeRecord array. 2005-03-02 Owen Taylor * pango/fonts.c (pango_font_description_from_string_: For family names that add in numbers add a , to distinguish them from family+size (#166540, debugging/testing by Manish Singh) 2005-03-02 Owen Taylor * pango/pango-attributes.c (pango_attr_iterator_get_attrs): Fix various typos in the docs (#163244, Morten Welinder) 2005-03-02 Owen Taylor * pango/pangoxft-font.c (pango_xft_font_get_glyph_extents): Go back to using Xft-reported metrics for all non-transformed fonts. Reporting non-integer glyph metrics for fonts where people have disabled hinting in their config causes various problems. (reported variously, including #167801, Adam Sampson) 2005-03-02 Owen Taylor m [ ChangeLog entry for some changes accidentally committed a while ago ] Redo the handling of absolute sizes for PangoAttribute to work around compatibility problems with GtkHTML which was counting on the details of the implementation of size attributes. (#163154) * pango/pango-attributes.[ch] docs/tmpl/text-attributes.sgml: Split PANGO_ATTR_SIZE into PANGO_ATTR_SIZE and PANGO_ATTR_ABSOLUTE_SIZE, and use that distinction rather than the boolean field in PangoAttrSize to distinguish between attributes created pango_attr_size_new_absolute() and pango_attr_size_new() 2005-03-01 Owen Taylor * pango/pango-layout.c (process_item): Don't break lines on LINE_SEPARATOR in single-paragraph mode. (#168589, Damon Chaplin) 2005-03-01 Owen Taylor * pango/pangoxft-font.c: Fix a typo in the last commit (Manish Singh) 2005-03-01 Owen Taylor * pango/pangoxft-font.c (xft_font_get_font): Delete FC_SPACING value out of pattern before passing it to Xft, to prevent Xft clipping characters and trashing metrics. (#164879, Billy Biggs) 2005-03-01 Owen Taylor * pango/pango-context.c (pango_context_get_metrics): Use the language from the context if %NULL is passed in for @language. (#163472) 2005-03-01 Owen Taylor Build fixes from Andrew P. Lentvorski, Jr, #164655 * pango/pangoft2-render.c: Duplicate the FT_LOAD_TARGET_MONO/FT_LOAD_MONOCHROME back-compat define from pangoft2.c here * examples/Makefile.am (pango_xftview_LDADD): Add X_LIBS to pango_xftview_LDADD since some old versions of xft.pc didn't add -lX11. 2005-03-01 Owen Taylor * configure.in: Use PKG_CHECK_MODULES not AM_PATH_GLIB_2_0 to avoid a problem where older verisons of AM_PATH_GLIB_2_0 silently ignored gmodule-no-export causing mysterious build failures. (#161786) * pango/Makefile.am (DISTCLEANFILES): Move some configure.in output files from CLEANFILES to DISTCLEANFILES. 2005-03-01 Tor Lillqvist * tests/cxx-test.C: Include pangowin32.h first to avoid a namespace collision. (#163584) Fri Feb 25 12:14:24 2005 Manish Singh * pango/pangofc-font.c (pango_fc_font_class_init): map get_font_map to the right function. * pango/pangox.c (pango_x_font_class_init): fill in get_font_map. 2005-02-24 Owen Taylor * pango/pangocairo-win32.h pango/pangocairo-win32font.c pango/pangocairo-win32fontmap.c pango/Makefile.am: PangoCairoFontMap for win32 fonts. * pango/pangocairo-fontmap.c: Use PangoCairoWin32FontMap when available. * pango/pangowin32.h pango/pangowin32-fontmap.h pango/pangowin32.c: Add virtual pango_win32_font_select_font() to prepare a DC for use with a PangoWin32Font, and to release, pango_win32_font_scale_font() to get logical unit => Pango units scale, pango_win32_font_done_font() to release resources. * pango/pangowin32-fontmap.[ch]: Add a find_font() virtual method to allow subclasses that change how PangoFont lookup and creation happens. * pango/pangowin32-fontmap.c: Move initialization into pango_win32_font_map_init() to facilitate derivation. * pango/pangowin2.c pango/pangowin32-fontmap.c pango/pangowin32-private.h: Move PangoWin32Font/PangoWin32FontMap definitions into pangowin32-private.h to allow derivation for PangoCairoWin32Font. * modules/basic/basic-win32.c: Use pango_win32_font_select_font() and friends. * modules/basic/basic-win32.c: Use g_utf8_to_utf16 instead of g_convert for simplicity and speed. * pango/fonts.c (pango_font_get_font_map) pango/pango-font.h pango/pangofc-font.c pango/pangowin32.c pango/pango.c pango/pango.def docs/pango-sections.txt: Add a virtual function to get the fontmap for a font. * pango/pangocairo-render.c: Use pango_font_get_font_map() rather than PangoFcFontMap hack. * pango/pango-types.h: Move the declaration of PangoFontMap here to avoid interactions between pango-font.h and pango-fontmap.h. * pango/pangocairo.h: Remove accidental include of pangofc-fontmap.h. 2005-02-21 Owen Taylor * pango/fonts.c (pango_font_get_glyph_extents): * pango/shape.c (pango_shape): Minor doc fixes. (#167922, #167924, Billy Biggs) 2005-02-06 Owen Taylor * pango/pangocairo.h pango/pangocairo-render.c docs/pango-sections.txt: Rename pango_cairo_show_glyphs() to pango_cairo_show_glyph_string(). Add pango_cairo_{glyph_string,layout_line,layout}_path() * docs/Makefile.am (INCLUDES): Add CAIRO_CFLAGS. 2005-02-06 Hans Breuer * pango/makefile.msc pango/*.def pango/pangocairo.def : updated to build with the new Cairo dependency * pango/Makefile.am : added pangocairo.def to EXTRA_DIST Thu Feb 3 19:00:17 2005 Manish Singh * pango/pangocairo-fc.h: spell _pango_cairo_fc_get_render_key correctly. * pango/pangocairo-fcfont.c: #include cairo-ft.h Thu Feb 3 18:23:27 2005 Manish Singh * configure.in: use CAIRO_LIBS for all libcairo checks, and disable the cairo backend if we don't have Win32 nor FreeType support in cairo. 2005-02-03 Owen Taylor * pango/pangofc-font.c (pango_fc_font_real_get_glyph): Fix unpaired lock/unlock_face(). 2005-02-03 Owen Taylor * configure.in: Bump to 1.9.0. * pango/pangofc-fontmap.h: Document PangoFcFontMap.create_font() 2005-02-03 Owen Taylor * examples/cairosimple.c: Open the file with mode "wb", include cairo-png.h. * examples/xftview.c examples/cairoview.c: Set WM_NORMAL_HINTS to avoid triggering a metacity bug. * examples/cairoview.c: Include cairo-xlib.h. * configure.in: Add checks for the Win32 Cairo backend. (not committing the code yet). * examples/Makefile.am pango/Makefile.am: add CAIRO_CFLAGS. * pango/pangocairo-fc.h pango/pangocairo-fcfont.c pango/pangocairo-fcfontmap.c pango/pangofc-fontmap.[ch]: Rework Cairo/Fontconfig backend to use the current Cairo API. Make some PangoFcFontMap changes to enable that. * pango/pango/pangocairo-private.h pango/pangocairo-render.c: Update for cairo_font_t changes. 2005-01-31 Matthias Clasen * modules/hebrew/hebrew-fc.c (get_cluster_glyphs): Show unknown glyphs; this may lead to overlapping boxes when accents are involved, but it is better than text vanishing without any traces. 2005-01-29 Tor Lillqvist * pango/pango.def: Add missing pango_render_part_get_type. (#165287, Cedric Gustin) 2005-01-25 Tor Lillqvist * pango/pango.def: Add a missing entry point. * modules/basic/Makefile.am (usp10.h): Don't use -p option to cp, can cause "failed to preserve ownership" errors. * modules/*/Makefile.am (INCLUDES): Remove extraneous slash here, too. 2005-01-11 Owen Taylor * modules/basic/Makefile.am (INCLUDES): Remove an extraneous / that was confusing gcc on Win32. 2005-01-10 Owen Taylor * Makefile.am (EXTRA_DIST): Add missing ChangeLog.pre* Sat Jan 8 19:28:17 2005 Owen Taylor * Makefile.am configure.in pangocairo.pc.in pangocairo-uninstalled.pc.in: Add a .pc file for pangocairo. 2005-01-08 Matthias Clasen * pango.pc.in: Require gmodule-no-export-2.0 instead of gmodule-2.0 Sat Jan 8 16:46:37 2005 Owen Taylor * configure.in: Add checks for Cairo * pango/Makefile.am: Add libpangocairo. * pango/pangocairo-font.c pango/pangocairo-fontmap.c pango/pangocairo.h pango/pangocairo-private.h pango/pangocairo-fcfont.c pango/pangocairo-fcfontmap.c pango/pangocairo-fc.h: Start of a Cairo/FreeType backend. * pango/pangofc-fontmap.[ch]: Add a "get_render_key" virtual function to allow subclasses to specialize the details of how caching works. Add a default implementation that's a little more sophisticated than what was there before. * pango/pangoft2-private.h pangofc-font.c pangoft2.c: Move default implementations of has_char(), get_glyph() to the base class. * pango/pangofc-private.h pango/pangoft2-private.h: Move PANGO_UNITS_26_6 and friends to pango/pangofc-private.h. * examples/renderdemo.[ch] examples/pangoft2topgm.c examples/xftview.c: Allow passing in a custom function to transform drawing. * examples/Makefile.am examples/cairoview.c: Add a Cairo/Xlib example program. * examples/cairosimple.c: Simple Cairo example with output to a PNG. * pango/pango-layout.c (pango_layout_line_get_extents): Fix bug where line ink rect was always including 0, 0. Thu Jan 6 12:29:31 2005 Owen Taylor * pango/pango-attributes.c (pango_attr_iterator_get_font): Fix reversed test on attr->absolute that was causing pixels sizes to be used inappropriately. (#163105, Ross Burton) Tue Jan 4 14:14:28 2005 Owen Taylor * pango/break.c (enum): Fix trailing comma in enum (#162618) Tue Jan 4 14:11:43 2005 Owen Taylor * pango/pango-attributes.c (pango_attr_list_splice): Fix doc sentences to parse. (#161812, Morten Welinder) Tue Jan 4 14:05:13 2005 Owen Taylor * pango/pango-renderer.c (pango_renderer_draw_trapezoid): Rename y1 parameters to y1_ to avoid conflicts with the math.h Bessel function. (#161969) Fri Dec 31 10:20:55 2004 Owen Taylor * pango/pangofc-fontmap.c (pango_fc_convert_weight_to_pango): Fix problem where MEDIUM was getting grouped with SEMIBOLD rather than NORMAL. (http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=143832) Wed Dec 22 13:21:01 2004 Owen Taylor * pango/pango-script.c pango/pango-types.h: Fix a couple of documentation typos (#161647, Torsten Schoenfeld) 2004-12-18 Tor Lillqvist * 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. 2004-12-17 Tor Lillqvist * pango/Makefile.am: Make the .la files depend on the corresponding .def files. * pango/pango.def: Add a couple of missing functions. Fri Dec 17 14:37:49 2004 Owen Taylor * pango/pangofc-fontmap.c (pango_fc_convert_weight_to_fc): Use FC_WEIGHT_MEDIUM, not FC_WEIGHT_NORMAL in old-fontconfig case. (#161568, Vincent Noel) Fri Dec 17 12:44:10 2004 Owen Taylor * configure.in: Fix a couple of typos in the handling of tibetan for --with-included-modules. (#161501, Sebastien Bacher) Fri Dec 17 12:28:56 2004 Owen Taylor * pango/pango-layout.c (pango_layout_get_extents_internal): Fix bug in computing logical_rect.x when layout->width == -1. (#161510, Morten Welinder) Thu Dec 16 14:03:32 2004 Owen Taylor * docs/tmpl/pango-renderer.sgml: Add short and long descriptions.