New Pango and GTK+ 2.0 zipfiles (20020921)
Tor Lillqvist <[email protected]>
| Newsgroups | gmane.comp.video.gimp.windows.devel |
|---|---|
| Message-ID | <[email protected]> |
Links from www.gimp.org/win32/downloads.html. If you just use GIMP, ignore this message. In particular, this version of Pango and GTK+ 2.0 should fix the problems with display of Chinese (and presumably Korean and Japanese) text, and hopefully the font selector crash in a Chinese locale. Also the problem somebody reported that no GDK event was being generated for F10 has been fixed. Here follows ChangeLog entries for GTK+ 2.0 and Pango 1.0 since the previous zipfiles I had available (20020908). First GTK+: 2002-09-21 Tor Lillqvist <[email protected]> * gdk/win32/gdkmain-win32.c (_gdk_windowing_init_check): Silence a gcc warning, use %p to print a HKL. * gdk/win32/gdkevents-win32.c (gdk_event_translate): WM_SYSKEYDOWN, WM_SYSKEYUP: Need to handle F10 specially here in order to be able to handle it normally in the application. Set ignore_wm_char also always when handling WM_SYSKEY{DOWN,UP}, this way we can generate GDK events also for Alt-Fn keys, for instance. * gdk/win32/gdkselection-win32.c (sanitize_utf8): Copy from X11 backend. The old version mishandled consecutive newlines. * tests/testgtkrc: Remove obsolete mention of gtk-engines and Pixmap theme engine on Win32. 2002-09-20 Tor Lillqvist <[email protected]> * gtk/gtkmain.c (gtk_get_default_language): On Win32, look explicitly for LANG, LC_ALL and LC_CTYPE, and if not found, use g_win32_getlocale(). The setlocale() in msvcrt.dll would return a locale name in the form Swedish_Finland for sv_FI. 2002-09-16 Tor Lillqvist <[email protected]> * gdk/gdkfont.h: Delete leftover declarations of the obsolete Win32-only functions gdk_font_full_name_get() and gdk_font_full_name_free(). * gdk/gdk.def: Delete from here, too. * gdk/win32/gdkfont-win32.c (logfont_to_xlfd, gdk_font_full_name_get, gdk_font_full_name_free): Delete implementation, and helper functions. (pattern_match, InnerEnumFontFamExProc, EnumFontFamExProc, gdk_font_list_new, gdk_font_list_free): Delete unused functions. (gdk_text_width, gdk_text_width_wc) Instead of code duplication, let gdk_text_extents() and gdk_text_extents_wc() do the job. * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values): Don't use the above removed functions in debugging output. * gdk/win32/gdkinput-win32.c (gdk_input_wintab_init): Use correct function name in warning messages. 2002-09-14 Sven Neumann <[email protected]> * gdk/gdkpixbuf-drawable.c: fixed my latest change. 2002-09-13 Sven Neumann <[email protected]> * gdk/gdkpixbuf-drawable.c: use the most significant bits of the GdkColor components (#89703). Tue Sep 10 15:39:42 2002 Jonathan Blandford <[email protected]> * gtk/gtkliststore.c (gtk_list_store_finalize): free the root list. * gtk/gtktreestore.c (gtk_tree_store_finalize): free the root nodes. Tue Sep 10 11:06:51 2002 HideToshi Tajima <[email protected]> * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic): (gtk_im_context_xim_get_ic, gtk_im_with_preedit, gtk_im_without_preeedit): filter key release events only when input methods ask for (#81759) Tue Sep 10 09:29:00 2002 Owen Taylor <[email protected]> * gdk/x11/gdkevents-x11.c (gdk_event_translate): Take focus mode into account when tracking FocusIn/Out events, so we don't get confused by focus changes while a keyboard grab is in effect. (Probably fixes #90563) Mon Sep 9 16:16:25 2002 Shivram U <[email protected]> * gtk/gtktextview.c (gtk_text_view_drag_motion): If the end iter is also a part of the selection, then we are in the selection. (#92768) Pango: 2002-09-21 Tor Lillqvist <[email protected]> * pango-zip.sh.in: Distribute specifically pango.aliases and pango.modules, not the whole etc/pango which might contain editor backup files. * pango/pangowin32-private.h * pango/pangowin32*.c: Rename DEBUGGING to PANGO_WIN32_DEBUGGING. Use plain printf instrad of g_print in the PING macro for debugging output (to avoid UTF-8 requirement). * pango/pangowin32.h: Guard against redefinition of _WIN32_WINNT. * pango/pangowin32-private.h: Remove the FS_VIETNAMESE define, not needed. Rename PangoWin32Font::face to win32face. Add enum PangoWin32CoverageLanguageClass, used to classify PangoLanguages that might have locale-specific coverage of fonts (i.e. CJKV). Change PangoWin32Face::coverage into an array, coverages. Move some TrueType macro and struct defines from pangowin32.c here. Rename them a bit to match the names used in the specs better. Add declarations for new functions (see below). * pango/pangowin32.c (pango_win32_get_hfont): Convert LOGFONT::lfFaceName to UTF-8 before printing. (pango_win32_render): Revert the change from 2002-09-05. Characters not in a font are supposed to show up at this stage as invalid glyphs (usually a box). It's up to the higher layers to filter out TABs and other characters that shouldn't be visible. (pango_win32_get_name_header, pango_win32_get_name_record): New functions, to read the name table header and records from a TrueType font. (font_name_in): New function, checks if a font has a name in one of the spoecial-case languages, or actually locales (zh_TW, zh_CN, ja, ko, vi). Checks the TrueType name table. (pango_win32_font_calc_coverage): Take a PangoLanguage parameter, too. Use it to decide whether to hide the Unified CJKV Ideographs block in case the font is not for the specified locale. If so, the coverage for these characters is set to PANGO_COVERAGE_APPROXIMATE. * pango/pangowin32-fontmap.c: Remove PangoWin32FontMap::faces, unused. Remove dead _WE_WANT_GLOBAL_ALIASES_ code. Rename parent_class to font_map_parent_class to match pangox-fontmap.c. (get_family_name, get_family_name_lowercase): New functions. Search for an English name for a TrueType font, in case the font name in LOGFONT::lfFaceName is non-ASCII. (Can one assume that if it is ASCII, it is the English name? Do some TrueType fonts have different names in French, German, etc, and does the system return these if the locale is set to use French, German, etc?) (pango_win32_insert_font): Don't store LOGFONTs that differ only in charset. What charset we specify when calling CreateFontIndirect() is irrelevant, as we are going to use ExtTextOutW() anyway, i.e. Unicode. Use the English family name from get_family_name_lowercase(), not the one returned in the LOGFONT from font enumeration. Bypass the code that sets up the mapping for monospace, serif and sans, and the recignition of plain "courier" for "courier new". We need a pango.aliases anyhow, so let it handle that. (pango_win32_coverage_language_classify): New function. (pango_win32_font_entry_set_coverage, pango_win32_font_entry_get_coverage): Take also a PangoLanguage parameter, use the corresponding entry in the PangoWin32Face::coverages array. * pango/pango-utils.c (pango_get_lib_subdirectory, pango_get_sysconf_subdirectory): Fix doc comment on Win32 behaviour. * examples/Makefile.am (EXTRA_DIST): Don't distribute pangowin32.aliases, which isn't used. * examples/pangowin32.aliases: Add comment that the file is of historical interest only. Could be removed from CVS completely, but I'll keep it for a while because of the useful comments on where to get various non-Latin fonts. Thu Sep 19 15:12:21 2002 Owen Taylor <[email protected]> * pango/pango-utils.c (pango_scan_int): Fix problem where position wasn't updated properly. --tml