Blob Blame History Raw
2005-08-13  Matthias Clasen  <>

	* Bump version

	* === Released 2.8.0 ===

	* NEWS: Updates

	* Require cairo 0.9.2

2005-08-12  Matthias Clasen  <>

	* gtk/gtkcheckmenuitem.c (gtk_real_check_menu_item_draw_indicator): 
	Remove a line without effect.

	* gtk/gtkicontheme.c: When changing the icon theme, defer
	the resetting of rc styles to an idle, so that it does
	not happen e.g during expose handling (which is problematic,
	since some widgets, like the toolbar, are changing the
	hierarchy in response to style changes).  (#300539, reported
	by many people, analyzed by Owen Taylor)

2005-08-12  Owen Taylor  <>

	* gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_back_pixmap)
	* gdk/win32/gdkwindow-win32.c (gdk_window_set_back_pixmap) 
	* gdk/x11/gdkwindow-x11.c (gdk_window_set_back_pixmap): Warn if
	gdk_drawable_get_colormap (pixmap) is NULL and return.

2005-08-12  Matthias Clasen  <>

	* Bump version to 2.8.0

2005-08-11  Matthias Clasen  <>

	* gtk/gtkfilechooserdefault.c: Work around some problems
	with the gnome-vfs backends which could lead to crashes
	in the bookmark handling.  (#310270, Diego Gonzalez, patch
	by Michael Meeks)

2005-08-11  Kristian Rietveld  <>

	Fix for #312924, by John Finlay.

	* gtk/gtkliststore.c (gtk_list_store_increment_stamp),
	(gtk_list_store_clear): increment stamp on store clearance.

	* gtk/gtktreestore.c (gtk_tree_store_increment_stamp),
	(gtk_tree_store_clear): ditto.

2005-08-11  Kristian Rietveld  <>

	* gtk/gtktreeview.c (gtk_tree_view_size_allocate_columns): queue
	a draw for the entire widget if any column changes width. (Fixes
	#311026, reported by Frederic Crozat).

2005-08-10  J. Ali Harlow  <>

	* Revert to linking against pangowin32 under win32
	platform (Owen Taylor).

2005-08-10  J. Ali Harlow  <>

	* gdk/win32/gdkfont-win32.c (gdk_font_from_description_for_display): Make
	the last change compile.

2005-08-10  Matthias Clasen  <>

	* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_deleted) 
	(gtk_tree_model_filter_remove_node): Remove ambiguities pointed
	out by gcc.

2005-08-10  James Henstridge  <>

	* fix definition of GDK_DEP_CFLAGS so that it
	doesn't cause build failures if $X_PACKAGES is not empty.

2005-08-09  Owen Taylor  <>

	* gdk/gdkwindow.c (gdk_window_ref_cairo_surface): Remove superfluous
	call to gdk_window_get_offsets (). (#313051, Bertram Felgenhauer)

2005-08-09  Owen Taylor  <>

	* Strip out all Xft, FreeType, and pangoxft checking.
	Rewrite X checks to use pkg-config as much as possible.

	* gdk/win32/gdkfont-win32.c (gdk_font_from_description_for_display): Make
	this return Arial always to avoid using PangoWin32FontMap. (X11 backend
	has always been returned "fixed" for a long time)

	* gdk/linux-fb/gdkdrawable-fb2.c: Remove draw_glyphs() implementations,
	fall through to the default implementation in terms of Cairo.

	* gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_text): Use gdk_draw_glyphs()
	on the wrapper rather than gdk_fb_draw_glyphs().

2005-08-09  Mark McLoughlin  <>

	Fixes "notification area leaks space" (bug #312687)

	* gtk/gtksocket-x11.c: (_gtk_socket_windowing_filter_func):
	  gtk/gtkplug.c: (_gtk_plug_add_to_socket): don't pass a 
	detail to g_signal_emit_by_name()

2005-08-09  Matthias Clasen  <>

	* NEWS: Updates

2005-08-09  Matthias Clasen  <>

	* gtk/gtksizegroup.c (get_size_groups, set_size_groups): Use
	g_quark_from_static_string here. 

2005-08-08  Christian Persch  <>

	* gtk/gtkmenutoolbutton.c: (gtk_menu_tool_button_state_changed),
	(gtk_menu_tool_button_class_init), (popup_menu_under_arrow),

	Deactivate the menu when the button becomes insensitive, and remove
	dead code. Fixes bug #312920.

2005-08-08  Matthias Clasen  <>

	* gdk/gdk.symbols: Make the last change compile.

2005-08-08  Christian Persch  <>

	* gtk/gtkmenutoolbutton.c:
	(button_state_changed_cb), (menu_position_func),

	Use ->priv instead of GTK_MENU_TOOL_BUTTON_GET_PRIVATE.
	Surviving part of bug #310589.

2005-08-07  Matthias Clasen  <>

	* gdk/gdk.symbols: Add the gdk_display variable.

	* gdk/
	* gtk/ Also check exported variables.

Fri Aug  5 16:54:19 2005  Søren Sandmann  <>

	* gtk/gtkmenutoolbutton.c
	(gtk_menu_tool_button_construct_contents): Set the relief of the
	arrow button to the value returned by
	gtk_tool_item_get_relief_style(). Patch from Benjamin Berg.
	Bug 312695.

2005-08-04  Sunil Mohan Adapa  <>

	* Re-added "te" to ALL_LINGUAS after
	correcting the problem.

2005-08-04  Matthias Clasen  <>

	* Require cairo 0.6

2005-08-04  Christian Persch  <>

	* Remove "te" since it breaks the build.

2005-08-04  Sunil Mohan Adapa  <>

	* Added "te" to ALL_LINGUAS.

2005-08-04  Tor Lillqvist  <>

	* Reflect the change of the default theme's name to
	"Raleigh". Include the MS-Windows theme's gtkrc file. Include the
	theme engine DLLs.

2005-08-02  Matthias Clasen  <>

	* Bump version

	* === Released 2.7.5 ===

	* Bump version

	* NEWS: Updates

2005-08-01  Matthias Clasen  <>

	* gtk/gtkfixed.c (gtk_fixed_put): Fix a typo, spotted by
	David Odin.

	* gtk/ (install-data-local): 
	* gtk/gtksettings.c (gtk_settings_class_init): Rename the 
	default theme to "Raleigh".  (#312254, Thomas Wood)

	* gtk/gtkdnd.c (set_icon_stock_pixbuf): Create the icon window
	with the correct dimensions.  (#312256, Mike Morrison)

	* gtk/gtktextbuffer.h: 
	* gtk/gtk.symbols: Remove G_GNUC_NULL_TERMINATED here
	as well.

	* gtk/gtkuimanager.c (update_node): Update tooltips when 
	reconnecting toolitems.  (#312173, Alex Graveley)

	* gdk/x11/gdkxftdefaults.c: Define the hint styles to make
	building against fc < 2.2.92 work.  (#311839, Damien Carbery)

	* gdk/x11/gdkevents-x11.c (gdk_check_wm_desktop_changed): Make
	tracking the on_all_desktops state work better.

	* gdk/x11/gdkwindow-x11.c (gdk_x11_window_move_to_current_desktop): 
	Don't do anything if the window is on all desktops.  (#311803,
	Elijah Newren)

2005-08-01  Dom Lachowicz <>

	* modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Part of #168326

2005-08-01  Matthias Clasen  <>

	* gtk/gtkclipboard.c (gtk_clipboard_set_image) 
	(gtk_clipboard_set_text): Don't leak atom names.  (#311933,
	Peter Zelezny)

	* gtk/gtkmain.c (do_post_parse_initialization): Call
	gettext_initialization() here as well.  (#311612, Dan Winship)

2005-08-01  Tor Lillqvist  <>

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_urgency_hint):
	Implement using FlashWindowEx(). (#309423)

2005-07-30  Hans Breuer  <>

	* gtk/ tests/makefile.msc : updated

2005-07-30  Johan Dahlin  <>

	* gtk/gtkctree.c (gtk_ctree_class_init): Do not use | 
	G_PARAM_STATIC_NAME in the type field, makes subclassing possible.

2005-07-29  Claudio Saavedra  <>

	* docs/reference/gtk/migrating-GtkAction.sgml: Declaring the 
	GtkActionEntry arrays static const. Fixes #301612.

2005-07-29  J. Ali Harlow  <>

	* gtk/ Include gtkwin32embed.h in EXTRA_DIST
	unconditionally. Fixes #311972.

2005-07-28  Federico Mena Quintero  <>

	* perf/README: Update for the new API of the profiler.

	* perf/gtkwidgetprofiler.[ch]: New files with a widget profiler
	object.  This is the old content of timers.[ch] turned into a nice
	object, with signals for creation and reporting.  The profiler
	needs to maintain some state when reusing the widget, so it's
	useful to turn it into a real object.

	Break down timing show_all into GTK_WIDGET_PROFILER_REPORT_MAP and

	* perf/main.c: Refactor to use GtkWidgetProfiler.

	* perf/appwindow.c (content_area_new): Make this just create a
	notebook, instead of a complex arrangement of panes.

	* perf/widgets.h: New header file for all the "create a widget"
	utility functions.

	* perf/treeview.c: New file.  Moved the tree view part from
	appwindow.c over to here; GtkTreeView really needs its own tests.
	(tree_view_new): Set the shadow type to IN.

	* perf/textview.c: Likewise moved over from appwindow.c, but for
	(text_view_new): Set the shadow type to IN.

	* perf/ (testperf_SOURCES): Add the new source files;
	remove appwindow.h and timers.[ch].

	* perf/timers.[ch]: Removed.

	* perf/appwindow.h: Removed.

2005-07-29  Tor Lillqvist  <>

	* gdk/win32/gdkevents-win32.c: Remove ifdeffed out code relating
	to the gdk-ping message. Use the global _gdk_display instead of
	calling gdk_display_get_default() or gdk_drawable_get_display()
	which would return _gdk_display anyway.
	(append_event, apply_filters, gdk_event_translate): Drop any
	GdkDisplay parameter as we only have one display anyway. Use
	_gdk_display where needed.
	(gdk_event_apply_filters): Delete, move the code into its only
	caller, apply_filters().
	(generate_button_event): Factor out code from two places in
	(gdk_event_translate): Call generate_button_event() in place of
	inline code.

	* gdk/win32/gdkevents-win32.c (generate_grab_broken_event): New
	static function to generate and append the GDK_GRAB_BROKEN events.
	(gdk_pointer_grab, gdk_keyboard_grab): Generate grab broken events
	when overriding a grab inside the application, like in the X11
	backend. Final bits of the fix for #107320, hopefully.
	(print_event): Handle also GDK_SETTING, GDK_OWNER_CHANGE and
	(gdk_event_translate): Call generate_grab_broken_event() in place
	of inline code.
	* gdk/win32/gdkdrawable-win32.c (blit_inside_drawable): Rename
	from blit_inside_window(), as it now does blitting inside a
	bitmap, too. No code change, still just call BitBlt().
	(_gdk_win32_blit): Check for source equalling destination
	first. (#169508, #131977) 
	Do away with the superfluous local draw_impl variable, the
	parameter to this function is already a GdkDrawableImplWin32*, no
	need to copy and cast it.

2005-07-28  Robert Ögren  <>

	Avoid spurious core pointer events when the tablet pen is lifted.

	* gdk/win32/gdkinput-win32.c (set_ignore_core): New static function,
	handles delayed unsetting of _gdk_input_ignore_core.
	(_gdk_input_other_event): Call set_ignore_core instead of setting
	_gdk_input_ignore_core directly.

2005-07-28  Dom Lachowicz <>

	* modules/engines/ms-windows/*: Re-sync with gtk-wimp CVS. Notable
	changes include: menu/toolbars have a gradient applied to them; better
	handling of menu/toolbar shadows, tracking theme settings;
	sliders/scales now use XP theming; status bar grippies drawn properly;
	convincing toolbar grippies are drawn for the Win2k theme; notebook
	tabs now have that orange stripe across their top; a host of scrollbar
	bugs are fixed
2005-07-27  Tor Lillqvist  <>

	* gdk/win32/gdkmain-win32.c (_gdk_win32_psstyle_to_string): Handle

	* gdk/win32/gdkmain-win32.c (gdk_screen_get_height_mm): Fix for
	multi-monitor cases. (#311677, Tim Evans)

2005-07-26  Owen Taylor  <>

	* gtk/gtknotebook.c (gtk_notebook_page_allocate): Fix to be
	monotonic in the original size (#308145, Morten Welinder)

2005-07-26  Elijah Newren  <>

	Revert part of patch from #166379; don't have gtk_window_present()
	change a window's desktop, but rather leave it up to the WM.
	* gtk/gtkwindow.c (gtk_window_present_with_time): Don't change a
	window's workspace

2005-07-26  Tor Lillqvist  <>

	* gtk/gtkplug-win32.c: Declare GetAncestor() and define GA_PARENT
	if missing (MSVC6). (#311633)

2005-07-26  Federico Mena Quintero  <>

	* perf/: New directory with the start of a framework for testing
	performance in GTK+.

	* (SRC_SUBDIRS): Added the perf directory.

	* (AC_OUTPUT): Generate perf/Makefile.

2005-07-26  Matthias Clasen  <>

	* gtk/gtkfilechooserdefault.c: Fix up includes on Win32.  
	(#311630, Kazuki Iwamoto)

	* gtk/gtkimcontextsimple.c: Add ISO_Level3_Shift to 
	the list of keysyms to ignore for composition, since
	AltGr keys produce it in some keyboard layouts.  (#307283)

	* gtk/gtkwidget.h: 
	* gtk/gtk.symbols: Remove G_GNUC_NULL_TERMINATED from
	gtk_widget_new as well, pointed out by Kjartan Maraas.

2005-07-25  Matthias Clasen  <>

	* gtk/gtkhsv.c (paint_triangle): Pad out the full width, in 
	an attempt to work around bug #311225. 

	* gtk/gtktreemodelsort.c: Trivial doc fixes.

	* gtk/gtktreesortable.c: Talk about comparison functions, not
	sort functions in some places.  (#311398, Fabrice Bauzac)

	* gtk/gtk.symbols: 
	* gtk/gtkobject.[hc]: 
	* gtk/gtkfilechooserdialog.[hc] 
	* gtk/gtkdialog.[hc]: Remove the G_GNUC_NULL_TERMINATED marker
	from a number of varargs functions where we allow to omit the
	varargs completely.  (#311465, Callum McKenzie)

2005-07-22  Matthias Clasen  <>

	* === Released 2.7.4 === 

	* NEWS: Updates

	* gtk/gtkmessagedialog.c (gtk_message_dialog_format_secondary_markup): 
	Point out escaping oversight.  (#311260, Owen Taylor)

2005-07-21  Matthias Clasen  <>

	* gtk/gtkcombobox.c (gtk_combo_box_list_destroy): Cleanup
	a possible resize idle.  (#311141, Robert Ögren)

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_changed): 
	(gtk_tree_model_sort_sort_level): Ref the level while using it,
	otherwise it may get nuked by gtk_tree_model_sort_increment_stamp.
	(gtk_tree_model_sort_row_deleted): Don't leak the root level 
	here.  (#300089, James Bramford, Markku Vire)

2005-07-21  Federico Mena Quintero  <>

	* gtk/gtkfilechooser.c (gtk_file_chooser_set_filename): Clarify
	the usage of this function.
	(gtk_file_chooser_set_uri): Likewise.
	(gtk_file_chooser_set_current_name): Likewise.

	* gtk/gtkfilechooserdefault.c (set_file_system_backend):
	Instrument this function for profiling as well.
	(gtk_file_chooser_default_init): Likewise; just to have a marker
	of where instance initialization begins.

2005-07-21  Owen Taylor  <>

	* gtk/gtkwidget.c (update_pango_context): Fix a couple of leaks.

2005-07-21  Christian Rose  <>

	* Added "hy" to ALL_LINGUAS.

2005-07-21  Matthias Clasen  <>

	* NEWS: Updates

	* gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Be
	a bit more careful to not shrink the label to a negative
	width.  (#311175, Thomas Vander Stichele)

	* gtk/gtk.symbols: mark gtk_socket_steal as deprecated.

	* Bump the cairo requirement.

2005-07-19  Owen Taylor  <>

	* gtk/gtksettings.c gtk/gtkwidget.c: Change machinery for
	following font rendering xsettings to set cairo font
	options on PangoContext

	* gdk/x11/gdkxftdefaults.c gdk/x11/gdkevents-x11.c gdkscreen-x11.h
	gdkprivate-x11.h: Get default values for rendering options
	(such as antialiasing, dpi) from the Xft resources for the
	display, borrowing a bit of code from Xft.

	* gtk/gtksettings.c (gtk_settings_class_init): Fix docs for
	values of gtk-xft-hintstyle.

2005-07-21  Tor Lillqvist  <>

	Make GtkPlug/Socket cross-platform: Add Win32 implementation,
	splice out X11 implementation to separate files. (#58541)
	* gtk/gtk.symbols: Make GtkPlug/Socket API available with all

	* gtk/ Changes to build GtkPlug/Socket with all

	* gtk/gtksocket.c
	* gtk/gtkplug.c: Splice out backend-dependend parts to separate
	files, see below.

	* gtk/gtksocketprivate.h
	* gtk/gtkplugprivate.h: New files. Declare the backend-specific
	functions, and the private backend-independent functions they call
	back to.

	* gtk/gtksocket-stub.c
	* gtk/gtkplug-stub.c
	* gtk/gtksocket-x11.c
	* gtk/gtkplug-x11.c
	* gtk/gtksocket-win32.c
	* gtk/gtkplug-win32.c
	* gtk/gtkwin32embed.h
	* gtk/gtkwin32embed.c: New files, containing the backend-specific
	parts of GtkPlug/Socket.

	* gtk/gtkxembed.h
	* gtk/gtkxembed.c (_gtk_xembed_message_name): New function, used
	in error messages and debugging output.
	* gtk/gtkwindow.c (gtk_window_show): No need for ifdef, can now
	use GTK_IS_PLUG() with all backends.

	* tests/testsocket_common.c: Make it work on Win32, too.

2005-07-21  Tor Lillqvist  <>

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Use
	wide-char API when available. (#311079, Peter Zelezny)

2005-07-21  Matthias Clasen  <>

	* gtk/gtkwidget.c (gtk_widget_modify_bg, gtk_widget_modify_base): 
	Add hints on how to handle "no window" widgets.  (#136347)

2005-07-20  Keith Packard  <>

	* gdk/x11/gdkdrawable-x11.c: (gdk_x11_ref_cairo_surface):

	Follow change in cairo API to add Screen* to

2005-07-20  Matthias Clasen  <>

	* gtk/gtkicontheme.c (load_svg_at_size): Explicitly use the 
	svg loader, if available. This should help with the fact that
	svg is not reliably sniffable with the current gdk-pixbuf sniffing

	* gtk/gtkstyle.c (gtk_default_draw_expander): Make sure expanded
	expanders are not fuzzy.  (#310172, reported by Alexander Larsson,
	patch by Owen Taylor)

	* gtk/gtkdnd.c (gtk_drag_begin_internal): Don't fail if we
	can't get a keyboard grab.  (#168351)

	* gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_[sg]et_property):

2005-07-19  Federico Mena Quintero  <>

	* gtk/gtkfilechooserdefault.c: Added a few utility functions for
	profiling; instrument the code, make it conditional.

2005-07-19  Kristian Rietveld  <>

	* gtk/gtkentry.c (gtk_entry_move_forward_word): don't iterate
	past the end of the string, so pango_layout_get_cursor_pos() won't
	complain. (#309211, Tommi Komulainen).

2005-07-19  Tor Lillqvist  <>

	* gtk/gtkmain.c (check_sizeof_GtkWindow, check_sizeof_GtkBox):
	Don't bother mentioning the -fnative-struct (used by GCC 2) switch
	in the error message any longer.

2005-07-18  Matthias Clasen  <>

	* gdk/gdkpixbuf-render.c: Small formatting fixes in doc comments. 

	* gtk/gtkcombobox.c (gtk_combo_box_model_row_deleted) 
	(gtk_combo_box_model_row_inserted): Remove useless calls
	to gtk_tree_row_reference_inserted/deleted, since we
	don't use manual row references here. 

	* gtk/gtkmain.c (gtk_parse_args, gtk_init_with_args): Call
	gettext_initialization before checking gtk_initialized, otherwise
	there are scenarios where it is not called at all. For an
	example, see tests/testfilechooserbutton.c.  (#310323, 
	Arkady L. Shane)

2005-07-18  Tor Lillqvist  <>

	* gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get): Be sure to remove
	any possible leftover clipping region in the DC if we don't want
	any clipping. Thanks to Robert Ögren. (#309823)

	* (GDK_EXTRA_LIBS): [Win32] Bypass libtool, use
	-Wl,-luuid. This avoids a libtool warning as libuuid is static.

2005-07-18  Matthias Clasen  <>

	* gtk/gtkcombobox.c (gtk_combo_box_set_focus_on_click): Propagate
	the focus-on-click value to the button.  (#310543, Christian Persch)

	* gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a note
	about the need to handle expose events. We really need a chapter
	on the GTK+ drawing model that we can refer to here... (#310765,
	Steve Chaplin)

2005-07-16  Tor Lillqvist  <>

	* (GDK_EXTRA_LIBS): [Win32] Put -luuid back, it is
	needed in case one builds without the ie55 stuff. (#310582)

2005-07-15  Matthias Clasen  <>
	* Bump version

	* === Released 2.7.3 ===
	* gdk/gdkdraw.c (gdk_draw_drawable): Add better docs.  
	(#310192, Owen Taylor)

2005-07-15  Matthias Clasen  <>

	* NEWS: Updates

	* gtk/gtkentry.c (gtk_entry_move_forward_word): 
	(gtk_entry_move_backward_word): Don't treat whitespace as
	words for keynav, pointed out by Owen Taylor.

2005-07-15  Federico Mena Quintero  <>

	* gtk/gtkfilechooserdefault.c
	(should_respond_after_confirm_overwrite): Take the parent folder
	path instead of the display name, to avoid doing duplicated work
	in gtk_file_chooser_default_should_respond().

2005-07-15  Federico Mena Quintero  <>

	* gtk/gtkfilechooserdefault.c
	(confirm_dialog_should_accept_filename): Take the display name of
	the folder as well so that we can present a better message.  Use a
	stock cancel button, "_Replace", and GTK_STOCK_SAVE_AS.
	(gtk_file_chooser_default_should_respond): Pass the file part and
	folder display name directly to the function above.  Oops, only do
	the confirmation dialog if the file exists.

2005-07-15  Federico Mena Quintero  <>

	* gtk/gtkfilechooserdefault.c
	(confirm_dialog_should_accept_filename): Use header capitalization
	for the buttons, per the HIG.

	* gtk/gtk.symbols: Add the new functions.

	* tests/testfilechooser.c (confirm_overwrite_cb): Add a test for
	the confirm-overwrite signal.

	* gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Remove the
	stub documentation for the "confirm-overwrite" signal.
	(gtk_file_chooser_set_do_overwrite_confirmation): Add "Since: 2.8"
	to the docs.
	(gtk_file_chooser_get_do_overwrite_confirmation): Likewise.

2005-07-14  Federico Mena Quintero  <>

	Add overwrite confirmation for SAVE mode.  Fixes bug #152850:

	* gtk/gtkfilechooser.h: Add prototypes for
	(GtkFileChooserConfirmation): New enum for the result of the
	"confirm-overwrite" signal.

	* gtk/gtkmarshalers.list: Add ENUM:VOID.

	* gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Add a
	"do-overwrite-confirmation" boolean property.
	(gtk_file_chooser_set_do_overwrite_confirmation): Implement.
	(gtk_file_chooser_get_do_overwrite_confirmation): Implement.
	(confirm_overwrite_accumulator): New accumulator for the signal.

	* gtk/gtkfilechooserutils.h (GtkFileChooserProp): Add

	* gtk/gtkfilechooserutils.c
	(_gtk_file_chooser_install_properties): Override the
	do-overwrite-confirmation property.

	* gtk/gtkfilechooserprivate.h (struct _GtkFileChooserIface): Add a
	confirm_overwrite signal to the vtable.

	* gtk/gtkfilechooserdefault.c
	(gtk_file_chooser_default_set_property): Handle the new property.
	(gtk_file_chooser_default_get_property): Likewise.
	(get_selected_file_info_from_file_list): New helper function; code
	taken from list_selection_changed().
	(list_selection_changed): Use get_selected_file_info_from_file_list().
	(should_respond_after_confirm_overwrite): New function.
	(gtk_file_chooser_default_should_respond): Confirm when necessary.

2005-07-14  Matthias Clasen  <>

	* gtk/gtk.symbols: Add new exported symbols.

2005-07-14  Tor Lillqvist  <>

	* gtk/gtkfilesystemwin32.c (filename_get_info): Implement getting
	the MIME type of a file. Look it up in the Registry. Bug reported
	by Hans Oesterholt.

2005-07-14  Tor Lillqvist  <>

	* (GDK_EXTRA_LIBS): Don't need -luuid on Win32. It
	was some leftover, and in fact occasionally caused issues with
	libtool as it made its way into the file and
	that way into the .la files of all libraries that depend on
	GDK. (This happened only when building from CVS and not using a
	full "make install" which would run the script.)

2005-07-14  Matthias Clasen  <>

	* gdk/x11/gdkevents-x11.c (set_screen_from_root): Don't assert if 
	the xrootwin is invalid.  (#309997, Barbie LeVille)
	(gdk_event_translate): Ignore events with an invalid root field.

	* Set interface age to 0.

	* gtk/gtkimmodule.h: Move G_BEGIN_DECLS to the right spot, noticed
	by Akira Tagoh.

2005-07-14  Kristian Rietveld  <>

	* gtk/gtktreeviewcolumn.[ch] (gtk_tree_view_column_queue_resize): new
	function (fixes #169961, reported by Morten Welinder).

2005-07-14  Kristian Rietveld  <>

	* gtk/gtktreeview.[ch] (gtk_tree_view_get_visible_range): new
	function. (fixes #105252, suggestion from Mikael Hallendal).

2005-07-13  Manish Singh  <>

	* demos/gtk-demo/iconview_edit.c: remove unused variable.

2005-07-13  Kristian Rietveld  <>

	* gtk/gtktreemodel.[ch] (gtk_tree_row_reference_get_model): new
	function. (#160879, Stefan Kost).

2005-07-13  Kristian Rietveld  <>

	* gtk/gtktreeview.c (gtk_tree_view_bin_expose): paint a flat box
	on the area the treeview got allocated extra vertically (fixes
	#142063, reported by Brian Bober).

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
	make this function calculate real_cell_area and real_background_area
	correctly. (fixes #309249, reported by Bernd Demian).

2005-07-13  Matthias Clasen  <>

	* gtk/gtkcalendar.c (calendar_realize_arrows): Fix an 
	unintentional case of width-for-height... (#310133, Luis Villa)

2005-07-13  Kristian Rietveld  <>

	* gtk/gtktreeview.c (gtk_tree_view_new_column_width): let's take
	the MIN of width and max_width here, not width and max_width != -1.
	(fixes #144480, reported by Mikael Magnusson).

2005-07-13  Matthias Clasen  <>

	* gtk/gtkicontheme.c (load_themes): Don't keep the caches
	for unthemed directories in a separate list, instead append
	them at the end of the dir_mtimes list, so that we can check
	them for staleness like the other caches.  (#310221, Mark 

	* Check that we have a new enough Cairo.

2005-07-13  Robert Ögren  <>

	Fix handling of Aiptek and Aiptek-like graphical tablets such as Trust
	on Windows. (#167004, thanks to	"pnohant" for testing)

	Code cleanup: Remove the unused and unmaintained code for using a
	non-system tablet context (USE_SYSCONTEXT ifdef:s), suggested
	by Tor Lillqvist.

	* gdk/win32/gdkinput-win32.c (_gdk_input_wintab_init_check): Handle
	tablet drivers that don't support WTI_DDCTXS/WTI_DSCTXS gracefully.
	Sligthly reorganize and simplify the code to support this.
	(_gdk_input_wintab_init_check, _gdk_input_other_event): Remove
	USE_SYSCONTEXT ifdef:s and the code for the case it was not defined.
	(gdk_input_window_find_within): Removed.

2005-07-13  Matthias Clasen  <>

	* gdk/win32/bdfcursor.c: Add Copyright/License information.
2005-07-13  Kristian Rietveld  <>

	* gtk/gtktreeview.c (validate_row): when !separator, don't add
	the focus_line_width to width/height (happens in
	_column_cell_get_size), but do add the vertical-separator to height,
	we weren't taking this into account before.

	* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
	take vertical-separator into account. (#309137, Ross Burton).

2005-07-13  Matthias Clasen  <>

	* tests/treestoretest.c: 
	* tests/testxinerama.c: 
	* tests/testtreeview.c: 
	* tests/testtreefocus.c: 
	* tests/testtreeflow.c:
	* tests/testtreeedit.c: 
	* tests/testtreecolumns.c: 
	* tests/testtext.c: 
	* tests/testtextbuffer.c: 
	* tests/testspinbutton.c: 
	* tests/testsocket_common.c: 
	* tests/testsocket_child.c: 
	* tests/testsocket.c: 
	* tests/testmultiscreen.c: 
	* tests/testmultidisplay.c: 
	* tests/testmerge.c: 
	* tests/testmenus.c: 
	* tests/testmenubars.c: 
	* tests/testicontheme.c: 
	* tests/testfilechooser.c: 
	* tests/testentrycompletion.c: 
	* tests/testdnd.c: 
	* tests/testcombochange.c: 
	* tests/testactions.c: 
	* tests/testcombo.c: 
	* tests/simple.c: 
	* gtk/gtktextutil.c: 
	* gtk/gtktexttypes.h: 
	* gtk/gtktexttypes.c: 
	* gtk/gtktexttagprivate.h: 
	* gtk/gtktextsegment.h: 
	* gtk/gtktextiterprivate.h: 
	* gtk/gtktextchildprivate.h: 
	* gtk/gtktextbtree.h: Add Copyright/License information.

	* gtk/gtkicontheme.c (gtk_icon_theme_get_default) 
	(gtk_icon_theme_get_for_screen): Add a warning about
	unreffing icon themes.  (#310163, Rodney Dawes)

2005-07-13  Kristian Rietveld  <>

	* gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach): quit
	maintaining the iter on every iteration, only get the iter when
	we are about to call the foreach_func. Gives us a 10x speedup,
	since maintaining iters is a lot more expensive than maintaining
	paths. We lose a bit of sanity checking though. Thanks go to
	Billy Biggs for pointing this out.

2005-07-12  Matthias Clasen  <>

	* tests/testcairo.c (draw): Fix the same confusion here, too.

	* gdk/gdkgc.c (make_stipple_tile_surface): Fix 
	cairo_content_t <-> cairo_format_t confusion.  (#310086,
	Carlos Garnacho Parro)

	* gtk/gtkfilesystemunix.c 
	(gtk_file_system_unix_volume_get_display_name): Follow
	the Nautilus change and rename "Filesystem" to "File System",
	string change.  (#310047, Vincent Noel)
2005-07-12  Matthias Clasen  <>

	* demos/gtk-demo/iconview.c: Rename this demo.

	* demos/gtk-demo/iconview_edit.c: Add a demo for icon view
	editing and drag-and-drop.

	* demos/gtk-demo/ Accept dashes in demo titles.

2005-07-12  Matthias Clasen  <>

	* gtk/theme-bits/decompose-bits.c: 
	* gtk/gtkfilechooserembed.c: 
	* gtk/gtktextmarkprivate.h: 
	* gtk/gtktexttagtable.h: 
	* gtk/gtktexttagtable.c: 
	* gtk/gtkrc.key.emacs: Add Copyright/License information.

	* gdk/linux-fb/gdkrender-fb.c: 
	* gdk/linux-fb/gdkpango-fb.c: 
	* gdk/linux-fb/gdkdrawable-fb2.c: 
	* gdk/linux-fb/gdkgc-fb.c: 
	* gdk/linux-fb/gdkfbswitch.c: Add Copyright/License information.

	* gdk/gdkwindow.h: 
	* gdk/gdkvisual.h: 
	* gdk/gdkselection.h: 
	* gdk/gdkselection.c: 
	* gdk/gdkregion.h: 
	* gdk/gdkproperty.h: 
	* gdk/gdkpixmap.h: 
	* gdk/gdkpixbuf.h: 
	* gdk/gdkkeyuni.c: 
	* gdk/gdkintl.h: 
	* gdk/gdkinput.h: 
	* gdk/gdkimage.h: 
	* gdk/gdkgc.h: 
	* gdk/gdkfont.h: 
	* gdk/gdkevents.h: 
	* gdk/gdkdnd.h: 
	* gdk/gdkcursor.h: 
	* gdk/gdkcolor.h: Add Copyright/License information.

2005-07-11  Matthias Clasen  <>

	* modules/input/imm-extra.h: Add Copyright/License information.

2005-07-11  Matthias Clasen  <>

	* gtk/gtktexttag.c (gtk_text_tag_class_init) 
	(gtk_text_tag_set_property): Remove the runtime warning about 
	the invisible property, add a warning about possible remaining
	problems to the documentation of the property.  (#66194)

	* gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Don't
	ever go unconditionally to the buffer ends; that doesn't work
	if the initial or final portion of the buffer are invisible.

2005-07-11  Kristian Rietveld  <>

	* gtk/gtktreeview.c (gtk_tree_view_class_init): add binding entry
	for ctrl + backspace (move focus to parent without affecting
	(gtk_tree_view_real_select_cursor_parent): implement ctrl+backspace
	and simplify the function a bit. (#309296, Kathy Fernandes).

2005-07-11  Matthias Clasen  <>

	Make gtk_window_present() move the window to the current
	desktop, instead of letting the WM change the current
	desktop to where the window is.  (#166379, Elijah Newren)
	* gdk/gdk.symbols: 
	* gdk/x11/gdkx.h: 
	* gdk/x11/gdkwindow-x11.c (gdk_x11_window_move_to_current_desktop): 
	New function to move a window to the current desktop.
	* gtk/gtkwindow.c (gtk_window_present_with_time): Move the
	window to the current desktop before giving it focus.  

2005-07-11  Matthias Clasen  <>

	When dragging text, use a drag icon showing the (ellipsized)
	text that is being dragged: (#161132, Kevin Duffus, patch
	by Carlos Garnacho Parro)
	* gtk/gtktextutil.h: 
	* gtk/gtktextutil.c (_gtk_text_util_create_drag_icon): Add
	a function to create a pixmap for use when dragging text.

	* gtk/gtktextview.c (gtk_text_view_start_selection_dnd): 
	* gtk/gtklabel.c (gtk_label_motion): 
	* gtk/gtkentry.c (gtk_entry_motion_notify): Use a drag icon
	showing the text being dragged.  

2005-07-11  Matthias Clasen  <>

	* gtk/gtkentry.c (gtk_entry_move_forward_word) 
	(gtk_entry_move_backward_word): Match the text view change
	to allow selecting whitespace with double-click.

	* gtk/gtktextview.c (extend_selection): Make double-clicking
	between words select whitespace.  (#309860, Mike Miller, patch
	by Paolo Borelli)

	* gtk/gtkiconview.c: Documentation improvements.  (#309946, 
	Torsten Schoenfeld)

2005-07-10  Kristian Rietveld  <>

	* gtk/gtktreeview.c (gtk_tree_view_move_cursor_page_up_down): remove
	unneeded check for negative window_y.

2005-07-10  Kristian Rietveld  <>

	* gtk/gtktreeview.c (gtk_tree_view_search_key_press_event): also move
	to the next match when ctrl+g is pressed. (#156657, Matt T. Proud).

2005-07-10  Kristian Rietveld  <>

	* gtk/gtktreeview.c (gtk_tree_view_move_cursor_page_up_down): rework
	function to make page up/down behave the same as in GtkTextView.
	(Fixes #101220, Owen Taylor).

2005-07-09  Kristian Rietveld  <>

	Fix #305737, patch from Tomislav Jonjic. This makes the
	gtk_tree_store_insert* family of functions emit row_has_child_toggled
	when needed (they didn't do that before).

	* gtk/gtktreestore.c (gtk_tree_store_insert): emit
	row_has_child_toggled when needed,
	(gtk_tree_store_insert_before): fix a possible memleak,
	emit row_has_child_toggled when needed,
	(gtk_tree_store_insert_after): ditto.

2005-07-09  Kristian Rietveld  <>

	* gtk/gtktreeview.c (gtk_tree_view_real_expand_row): when
	open_all is TRUE, traverse the newly built tree to emit
	row_expanded for the subitems. (rev 1.444, patch in #172319
	broke this). Fixes #305582, reported by Billy Biggs.

2005-07-09  Tor Lillqvist  <>

	* Look for windres on Win32. Drop build/* from

	* Drop build from SUBDIRS. 

	* gdk/win32/rc/
	* gdk/
	* gtk/ Don't use the scripts in build/win32 to compile
	the rc files into resource object files. (This means we lose the
	build number increment magic, but I doubt it was that useful
	anyway.) Instead use windres directly. To pass a normal .o file
	produced by windres through libtool, which would want a .lo file,
	pass it directly to the linker using a -Wl option.

	* gdk/win32/rc/
	* gtk/ Replace BUILDNUMBER with 0.

2005-07-08  Kristian Rietveld  <>

	Fixes #165034, reported by Jorn Baayen.

	* gtk/gtkrbtree.[ch] (_gtk_rbtree_set_fixed_height): add a
	mark_valid parameter (so we can mark all nodes as valid when we
	are setting them to the fixed height).

	* gtk/gtktreeview.c (initialized_fixed_height_mode): mark all
	nodes as valid when setting the fixed height,
	(do_validate_rows): update call to _set_fixed_height,
	(gtk_tree_view_row_inserted): mark node as valid when fixed
	height mode is enabled and a height has been set,
	(gtk_tree_view_build_tree): if fixed height mode is enabled,
	mark new nodes as valid in addition to setting the height.

2005-07-08  Matthias Clasen  <>

	* Bump version
	* === Released 2.7.2 ===

	* NEWS: Updates

	* gtk/gtkcelllayout.c (gtk_cell_layout_pack_start): 
	(gtk_cell_layout_pack_end): Add a note about reusing cell

	* gtk/gtkdnd.c (gtk_drag_update_cursor): Pass a GdkDragAction to
	gtk_drag_get_cursor.  (#309784, Sebastien Bacher)

2005-07-08  Tor Lillqvist  <>

	* gtk/gtkfilesel.c: Use g_get_host_name().

2005-07-07  Matthias Clasen  <>

	(#162979, Paul Cornett)

	* gtk/gtkhscale.c (gtk_hscale_new_with_range): 
	(gtk_vscale_new_with_range): Add some additional docs on 
	precision here too.  (#309238, Steve Chaplin)

	* gdk/x11/gdkmain-x11.c (generate_grab_broken_event): Don't
	generate events on destroyed windows.

	Implement Drag-and-Drop to the file list.  (#145121, Sven Neumann)
	* gtk/gtkfilechooserdefault.c (file_list_drag_data_received_cb) 
	(file_list_drag_drop_cb, file_list_drag_motion_cb): New functions
	to handle drag-and-drop on the file list.
	(create_file_list): Set up drag-and-drop handlers on the file list.

2005-07-07  Matthias Clasen  <>

	Fix #157787, reported by Jonathan Blandford: 
	* gtk/gtkfilechooserdefault.c 
	(gtk_file_chooser_default_set_current_folder): Don't leave a 
	"trail" behind when set_current_folder is called explicitly.
	(gtk_file_chooser_default_update_current_folder): New function
	that is called to update the current folder in response to
	user actions.

	* gtk/gtkpathbar.c (_gtk_path_bar_set_path): Add a boolean
	keep_trail argument, and don't leave a "trail" behind unless
	it is set.

2005-07-06  Manish Singh  <>

	* demos/gtk-demo/menus.c: change_orientation() should return void,
	remove unused variable in do_menus().

2005-07-06  Tor Lillqvist  <>

	* gdk/win32/gdkcursor-win32.c
	(gdk_win32_icon_to_pixbuf_libgtk_only): Don't create the GdkPixbuf
	until we know that we have something to put in it.

2005-07-05  Matthias Clasen  <>

	* gtk/gtkspinbutton.c (gtk_spin_button_new_with_range): Add some
	additional docs on precision.  (#309238, Steve Chaplin)

	* modules/input/imime.c: Fix includes.  (#309462, Kazuki IWAMOTO)

2005-07-05  Matthias Clasen  <>

	* doc/tools/widgets.c: Actually generate a file-button

2005-07-06  Tor Lillqvist  <>

	* gdk/win32/gdkcursor-win32.c: Add comment about the current named
	cursor implementation, and what it maybe really should do.
	(gdk_win32_icon_to_pixbuf_libgtk_only): New function, code moved
	here from gtk/gtkfilesystemwin32.c:extract_icon().
	(gdk_cursor_get_image): Use

	* gdk/gdk.symbols
	* gdk/win32/gdkwin32.h: Declare gdk_win32_icon_to_pixbuf_libgtk_only().

	* gtk/gtkfilesystemwin32.c (extract_icon): Use

2005-07-05  Matthias Clasen  <>

	* gtk/gtkmenu.c (gtk_menu_grab_notify): Take window
	groups into account.  (#309473, Diego Gonzalez)

	* gtk/gtkwindow.[hc]: Add a non-exported function to
	get the grab widget of a window group.

2005-07-05  Kristian Rietveld  <>

	* gtk/gtktreeview.c (gtk_tree_view_bin_expose): in the
	'main' expose loop, add back the calls to _set_cell_data
	removed earlier. (#309221, Matthias Clasen).

2005-07-05  Matthias Clasen  <>

	* demos/gtk-demo/menus.c: Demonstrate vertical menubars.

	* gtk/gtk.symbols:
	* gtk/gtkaboutdialog.[hc]: Add a wrap-license property
	with getter and setter.  (#165012, Christian Rose,
	based on a patch by Christian Persch)

2005-07-05  Matthias Clasen  <>

	* gdk/ Distribute the keyname-table.h header 
	and the files that are used to construct it.  (#309421,
	J. Ali Harlow)

2005-07-04  Matthias Clasen  <>

	* gtk/gtkmenubar.c (gtk_menu_bar_set_pack_direction) 
	(gtk_menu_bar_set_child_pack_direction): Queue a resize
	on the contained menuitems as well.  

	* demos/gtk-demo/appwindow.c: Break some overlong lines. 

2005-07-03  Hans Breuer  <>

	* **/makefile.msc[.in] : updated
	* gtk/gtkiconcache.c : <io.h> for open()
	* gtk/gtkstyle.c : use G_PI instead of M_PI

	* gdk/win32/gdkcursor-win32.c : implement gdk_cursor_new_from_name()
	by mapping the lower case win32 api name to the respective cursor.
	E.g. pass "wait" to get the IDC_WAIT cursor. Also allows to load
	cursors from named resources in the executable.
	(gdk_cursor_get_image) : just return NULL for now.

	* gdk/win32/gdkgeometry-win32.c : implement gdk_window_move_region()
	by delegation to ScollWindowEx(), untested.

	* gdk/win32/gdkwindow-win32.c : stub for gdk_window_set_urgency_hint()

2005-07-03  Matthias Clasen  <>

	* gtk/gtkimagemenuitem.c: Hmm, when committing my vertical
	menubar patch, I forgot the GtkImageMenuItem changes. And I
	managed to do 2 releases without noticing that...

	* gtk/gtksettings.c (gtk_settings_class_init): Correct the 
	blurb for the icon-sizes setting. String change.  
	(#309355, Benjamin Berg)

2005-07-01  Matthias Clasen  <>

	* Bump version.

	* === Released 2.7.1 ===
	* NEWS: Updates

2005-07-01  Matthias Clasen  <>

	* gtk/gtkfilesel.c (cmpl_init_state): Prevent an infinite
	loop when G_FILENAME_ENCODING is invalid.  (#309280, Padraig Brady)

Thu Jun 30 14:17:24 2005  Manish Singh  <>

	* gdk/x11/gdkprivate-x11.h: declare _gdk_xgrab_check_button_event.

	* gtk/gtkbutton.c: fix signature of gtk_button_grab_broken.

2005-06-30  Matthias Clasen  <>

	* gdk/x11/gdkvisual-x11.c (gdk_visual_decompose_mask): Avoid
	infinite loop if a mask is zero.  (#309222, David Saxton)

	* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_fetch_child): 
	Clarify the code, gcc 4 complains about predecrement in MAX().

	* modules/input/gtkimcontextxim.c (gtk_im_context_xim_finalize): Don't
	prematurely unregister callbacks. 

	* NEWS: Updates

2005-06-29  Matthias Clasen  <>

	* gtk/gtkbutton.c (gtk_button_grab_broken): Handle broken

	* gtk/gtkrange.c (gtk_range_grab_broken): Handle broken 

	* gdk/gdkevents.h: Add a boolean to specify wether the broken
	grab was implicit.

	* gdk/x11/gdkdisplay-x11.c (gdk_display_pointer_is_grabbed): 
	As the documentation states, don't return TRUE for
	implicit grabs.

	* gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add
	a boolean field to store wether a pointer grab is implicit.

	* gdk/x11/gdkmain-x11.c (_gdk_xgrab_check_button_event): 
	Track implicit grabs.

	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Call
	_gdk_xgrab_check_button_event for button events.

2005-06-28  Matthias Clasen  <>

	* gtk/gtkiconview.c (gtk_icon_view_calculate_item_size2): 
	Make sure that cell boxes are always completely inside
	the item area. 

2005-06-27  Matthias Clasen  <>

	* demos/gtk-demo/main.c (create_tree): Make the list of
	demos scrollable.

	* gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
	Fix positioning at the end of the line for lines ending
	in invisible characters.
	(gtk_text_layout_get_line_display): Set display->layout 
	to a PangoLayout, even for totally invisible lines. 

	* gtk/gtkmenushell.c (gtk_menu_shell_grab_broken): Ignore
	GrabBroken events which are caused by overgrabbing inside
	the application; menus rely on these for their operation.
	* gdk/gdkevents.h (struct _GdkEventGrabBroken): Add a 
	grab_window field.

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): Set
	grab_window to NULL when generating GrabBroken events for
	WM_KILLFOCUS messages.

	* gdk/x11/gdkmain-x11.c (_gdk_xgrab_check_unmap) 
	(_gdk_xgrab_check_destroy): Set grab_window to NULL when
	generating GrabBroken events when the grab window becomes
	unviewable or is destroyed.

	* gdk/x11/gdkmain-x11.c (gdk_pointer_grab, gdk_keyboard_grab): 
	Generate GrabBroken events when overriding a grab inside
	the application. In this case, set grab_window to the new
2005-06-27  Matthias Clasen  <>

	* gtk/gtkbutton.c (gtk_real_button_activate): Continue
	to activate even if we can't grab the keyboard.
	(gtk_button_finish_activate): Only ungrab when we have
	a keyboard grab.  (#172998, William Jon McCann)

2005-06-27  Matthias Clasen  <>

	* modules/input/gtkimcontextxim.c (gtk_im_context_xim_finalize): 
	Avoid a segfault. (#309054)

2005-06-27  Matthias Clasen  <>

	* gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add
	fields for grab timestamps.

	* gdk/x11/gdkmain-x11.c (gdk_pointer_grab, gdk_keyboard_grab): 
	Store grab timestamps when grabbing.
	* gdk/x11/gdkdisplay-x11.c (gdk_display_keyboard_ungrab) 
	(gdk_display_pointer_ungrab): Don't unset the grab_window
	if the timestamps indicate that the ungrab will fails.

	* gtk/gtkmenu.c (gtk_menu_grab_notify): Cancel menus when 
	they are grab-shadowed by something thats not a 
	submenu.  (#145416, Euan MacGregor)

2005-06-27  Owen Taylor  <>

	* gtk/gtk[hv]ruler.c (gtk_[hv]ruler_draw_ticks): 
	Fix indentation.

2005-06-27  Kjartan Maraas  <>

	* gtk/gtkhruler.c: (gtk_hruler_draw_ticks): Fix leaks
	* gtk/gtkvruler.c: (gtk_vruler_draw_ticks): Same
	Closes bug #308953.

2005-06-27  Matthias Clasen  <>

	* gtk/gtkiconcache.c (_gtk_icon_cache_new_for_path): Use

	* Require GLib 2.7.1

2005-06-26  Matthias Clasen  <>

	* modules/input/gtkimcontextxim.c (gtk_im_context_xim_finalize): 
	Unregister XIM callbacks here.  (#309054)

	* modules/input/gtkimcontextxim.h: Small cleanup.

	* gtk/gtkmenu.c (gtk_menu_paint): Pay attention to the
	scroll offset when drawing the box.  (#308834, Tom von 

2005-06-26  Tor Lillqvist  <>

	* gdk/
	* gtk/ Current GNU tools do understand the PRIVATE
	keyword, so no need to remove those entries from the import
	library. libtool installs the .dll.a import library itself, so no
	need to do it here. Install the .def file.

Sun Jun 26 00:04:36 2005  Manish Singh  <>

	* gdk/gdkevents.c (gdk_event_get_time, gdk_event_get_state): add
	GDK_GRAB_BROKEN to the switch cases.

	* gtk/gtkmenushell.c (gtk_menu_shell_grab_broken): remove unused

	* gtk/gtkpaned.c (gtk_paned_grab_broken): return TRUE.

2005-06-26  Matthias Clasen  <>

	* gtk/gtktreeview.c (gtk_tree_view_grab_broken): Stop column
	header drag operations if the grab is broken.

	* gtk/gtkhsv.c (gtk_hsv_grab_broken): Stop the drag if
	the grab is broken.

	* gtk/gtkcombobox.c (gtk_combo_box_popdown): Don't do 
	explicitly ungrab pointer and keyboard. We're unmapping
	the grab window anyway. 
	(gtk_combo_box_popup): Handle grab failures.

2005-06-25  Matthias Clasen  <>

	* gdk/x11/gdkmain-x11.c (gdk_keyboard_grab, gdk_pointer_grab):
	Don't emit grab-broken for overgrabbing, until we figure
	out how to do that without breaking the menu code.

2005-06-25  Matthias Clasen  <>

	Add a GrabBroken event to GDK, and a grab-broken-event
	signal to GtkWidget.  (#107320, Simon Cooke, initial patch 
	by John Ehresman)

	* gdk/gdkevents.h: Add a GDK_GRAB_BROKEN event type,
	define a GdkEventGrabBroken event struct.

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): 
	Generate GrabBroken events in response to WM_KILLFOCUS.

	* gdk/x11/gdkmain-x11.c: Generate GrabBroken events
	when a grab is broken by the window becoming unviewable,
	or by another grab from the same client.
	* gtk/gtkwidget.h (GtkWidgetClass): Add grab_broken_event.

	* gtk/gtkwidget.c (gtk_widget_event_internal): Translate
	GrabBroken events into grab_broken_event signals.

	* gtk/gtkmain.c (gtk_main_do_event): Propagate GrabBroken

	* gtk/gtkmenushell.c (gtk_menu_shell_grab_broken): Deactivate
	the menu when the grab is broken.

	* gtk/gtkcolorsel.c (gtk_color_selection_grab_broken): Stop 
	the color picker if the grab is broken.

	* gtk/gtkpaned.c (gtk_paned_grab_broken): Stop the drag if
	the grab is broken.

2005-06-25  Matthias Clasen  <>

	Add some new stock items.  (#166480, Kristof Vansant)
	* gtk/stock-icons/stock_fullscreen_16.png: 
	* gtk/stock-icons/stock_fullscreen_24.png: 
	* gtk/stock-icons/stock_leave_fullscreen_16.png: 
	* gtk/stock-icons/stock_leave_fullscreen_24.png: 
	* gtk/stock-icons/stock_info_16.png: 
	* gtk/stock-icons/stock_info_24.png: New icons.

	* gtk/stock-icons/ Add new icons.

	* gtk/gtkstock.h: Define names for the new icons.

	* gtk/gtkstock.c (builtin_items): Register new stock items.
	* gtk/gtkiconfactory.c (get_default_icons): Register new 
	stock icons.

2005-06-24  Owen Taylor  <>

	* gdk/gdkrgb.c (gdk_rgb_select_conv): Fix up selection of
	conversion functions for MSB machines: convert_0888[_br]
	now work on bytes so are endian independent. 
	(Reported by David Zeuthen)

2005-06-24  Matthias Clasen  <>

	* gtk/gtktextview.c (gtk_text_view_scroll_hpages): Don't
	jump to the next line if we are at the end of the line.  
	(gtk_text_view_move_cursor_internal): Make movement by
	paragraphs up/down symmetric.  (#307055, Behnam Esfahbod)

2005-06-23  Tor Lillqvist  <>

	Improve and simplify line segment rendering on Win32, especially
	the implementation of GDK_CAP_NOT_LAST, and dashed lines. Fixes
	bugs #306396 and #308413.

	* gdk/win32/gdkprivate-win32.h (GdkGCWin32): Save the GdkGC's
	line_style, cap_style and join_style as such in the
	GdkGCWin32. Don't need to keep the pen_double_dash flag, we can
	check the line_style.

	* gdk/win32/gdkgc-win32.c (fixup_pen): New internal function. Sets
	up the GDI pen type, style, end cap and join attributes to use
	based on the pen width, GDK line style, end cap style, and join

	For a narrow (zero-width) GDK pen with the GDK_CAP_NOT_LAST end
	cap style, which typically are used for XOR drawing where it is
	essential that the last pixel is not drawn, use a GDI cosmetic
	pen. Only for a cosmetic pen does GDI not draw the last pixel. I
	deduced this by experimetation, the documentation is rather vague.

	For other GDK pens use a geometric GDI pen. If the width is 0 or 1
	and the GDK end cap style is GDK_CAP_BUTT, and the line style is
	GDK_LINE_SOLID, use PS_ENDCAP_ROUND. This ensures that also
	single-pixel length lines are drawn. (For sngle-pixel width lines
	roundness as such is of course irrelevant.) For dashed lines, use

	For wide lines use PS_ENDCAP_FLAT, _ROUND or _SQUARE,

	For one pixel on-off dashed lines, use PS_ALTERNATE, it seems to
	work better than PS_USERSTYLE. For other dashed lines, use
	PS_USERSTYLE and the dashes as set by the user (or the default
	four-pixel on-off style).

	(gdk_win32_gc_values_to_win32values, gdk_win32_gc_set_dashes):
	Call fixup_pen() to do the pen settings after modifying some of
	the GDK GC attributes that affect pens.

	* gdk/win32/gdkdrawable-win32.c (render_line_horizontal,
	render_line_vertical, draw_segments): Check GdkGCWin32::line_style
	instead of the the removed pen_double_dash member. Don't use
	PATCOPY unconditionally in the PatBlt() call, use a raster op
	code that depends on the GC function in use.

	(draw_rectangle, draw_segments, draw_lines): Be more careful in
	deciding when to do the manual dash rendering.

	(draw_segments): Don't do any manual "last point" drawing at
	all. The above changes takes care of narrow line segments being
	drawn correctly in most cases, at least on NT-based Windows.

2005-06-23  Matthias Clasen  <>

	* gtk/gtkfilesystemunix.c (gtk_file_system_unix_get_folder): 
	Fix an error in the cache timeout logic.  (#166601, Morten

	* gtk/gtktreeview.c (gtk_tree_view_key_press): Change the
	keynav for header reordering and resizing to Alt-arrows and
	Shift-Alt-arrows, following a proposal by the keynav 
	authority. (#308666, Calum Benson)

	* gtk/gtkiconcache.c (_gtk_icon_cache_new_for_path): Remove
	a leftover debugging envvar.  

2005-06-23  Owen Taylor  <>

	* gdk/gdkcairo.c (gdk_cairo_set_source_pixbuf): Fix the
	big endian case for 3-channel source. (Reported by
	David Zeuthen)

2005-06-23  Matthias Clasen  <>

	* gtk/gtkbutton.c (gtk_button_construct_child): Don't
	trigger warnings if there are extra references to the
	hbox.  (#308677, Dan Winship)

	* gtk/gtkfilesystemunix.c (bookmark_list_write): Use
	g_file_set_contents().  (#308722, Morten Welinder)

2005-06-22  Matthias Clasen  <>

	* gdk/x11/gdkdnd-x11.c (xdnd_finished_filter): Set the
	time field in the event.  (#308573, Morten Welinder)

	* gtk/gtkfilesystemunix.c: Remove gratitious differences
	between the stable branch and HEAD, which sneaked in with
	the bookmark renaming.  

2005-06-22  Kjartan Maraas  <>

	* gtk/gtkhsv.c: (gtk_hsv_expose): Don't leak the cairo context
	Closes bug #308581.

2005-06-21  Matthias Clasen  <>

	* gtk/gtkarrow.c:
	* gtk/gtkimage.c:
	* gtk/gtklabel.c:
	* gtk/gtkpixmap.c: Modify all of the GtkMisc widgets to round down
	on centering calculations to match the behaviour of other parts
	of GTK+. (#307419, Ryan Lortie)

2005-06-21  Matthias Clasen  <>

	* gtk/gtkdnd.c (gtk_drag_source_set): Connect to 
	button-release-event as well, to handle touchscreen 
	scenarios better.  (#171490, Markku Vire)

	* gtk/*.h: Trivial cleanups. (#169647, #303455, 
	Fabricio Barros Cabral, Benoit Carpentier)

	* gdk/gdk.symbols: 
	* gdk/gdkwindow.h: 
	* gdk/x11/gdkgeometry-x11.c (gdk_window_move_region): New
	function which can be used to implement scrolling in 
	non-window widgets.  (#135165, Søren Sandmann)

2005-06-20  Matthias Clasen  <>

	* gtk/gtkiconcache.c: Handle MAP_FAILED.  (#308449, Georg

2005-06-20  Matthias Clasen  <>

	* Bump version number.

	* === Released 2.7.0 ===

2005-06-20  Matthias Clasen  <>

	* gtk/gtk.symbols:
	* gtk/gtkwindow.h:
	* gtk/gtkwindow.c (gtk_window_present_with_time): Variant of
	gtk_window_present which takes a timestamp.  (#166379, Elijah Newren)

2005-06-19  Matthias Clasen  <>
	* gtk/gtk.symbols: Add a forgotten symbol

	* NEWS: Updates

2005-06-19  Kristian Rietveld  <>

	* gtk/gtktreeview.c (gtk_tree_view_clamp_node_visible): added a
	check which avoids processing updates on bin_window and scrolling
	if the node is already visible. (#170600, Billy Biggs).

2005-06-19  Kristian Rietveld  <>

	* gtk/gtktreeview.c (validate_visible_area): only keep the
	row at the same position if the full row is visible. (#304623,
	Jorn Baayen).

2005-06-19  Kristian Rietveld  <>

	* gtk/gtktreeview.c (gtk_tree_view_size_allocate): set dy to zero
	if treeview's height is smaller than the current page_size (just
	like we do elsewhere).

2005-06-19  Kristian Rietveld  <>

	Make mousewheel scrolling possible in typeahead mode, suggestion
	from Reinout van Schouwen (#307898).

	* gtk/gtktreeview.c (gtk_tree_view_ensure_interactive_directory):
	connect treeview search window to scroll_event signal,
	(gtk_tree_view_search_scroll_event): implement.

2005-06-19  Kristian Rietveld  <>

	* gtk/gtktreeview.c (gtk_tree_view_search_button_press_event): pass
	the event on to treeview, so it has a change of selecting a row, etc.
	(#169677, Kirk Bridger).

2005-06-19  Kristian Rietveld  <>

	This commit includes a fix for #169463, Stefan Kost.

	* gtk/gtkcellrendererprogress.c (gtk_cell_renderer_progress_get_size):
	when cell_area is set, return cell_area width/height as width/height,
	so the focus rectangle will be drawn correctly.

	* gtk/gtktreeview.c (gtk_tree_view_bin_expose): drop unneeded get
	of focus-line-width property,
	(validate_row): take focus_line_width into account.

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
	also take focus_line_width into account when calculating the cell_area
	y and height (before, we only took it into account when calculating
	x and width).

2005-06-19  Matthias Clasen  <>

	* gtk/gtk.symbols:
	* gtk/gtksizegroup.[hc]: Add an ignore-hidden property
	with getter and setter.  (#171612, Christian Neumair)

2005-06-18  Matthias Clasen  <>

	* gtk/gtkuimanager.c (gtk_ui_manager_add_ui): Make this 
	work for inserting before/after an existing menuitem or
	toolitem.  (#155946, Christian Persch)

	* tests/testmerge.c (delayed_toggle_dynamic): Test the 
	"insert after" functionality of gtk_ui_manager_add_ui.

	* gtk/gtkuimanager.c: Allow to construct menu tool buttons.
	(#300678, Sven Neumann)
	* demos/gtk-demo/appwindow.c: Demonstrate menu tool buttons
	constructed with GtkUIManager.

	* gtk/gtk.symbols: 
	* gtk/gtkimage.h: 
	* gtk/gtkimage.c (gtk_image_clear): Make this function
	public.  (#64792, Havoc Pennington)

2005-06-18  Kristian Rietveld  <>

	* gtk/gtktreeview.c (gtk_tree_view_bin_expose): undo merging
	of the separate loop setting cell data with cell drawing loop
	(introduced in revision 1.280), since this breaks focus handling
	wrt special cells.

Sat Jun 18 04:22:51 2005  Manish Singh  <>

	* gdk/gdkcursor.h: remove GDK_CURSOR and GDK_IS_CURSOR, instance
	checks don't work on boxed types.

	* gdk/x11/gdkcursor-x11.c: 
	* gdk/gdkcursor.c: make return_if_fail checks != NULL instead of
Sat Jun 18 04:21:58 2005  Manish Singh  <>

	* gtk/gtktreeview.c (do_presize_handler): remove unused variable

2005-06-18  Matthias Clasen  <>

	* gtk/gtkcellrenderertoggle.c:
	* gtk/gtktextview.c:
	* gtk/gtktreeview.c: Typo fixes in comments.

	* gtk/gtkpaned.c (gtk_paned_add): Barf if more than
	2 children are added.  (#308111, Morten Welinder)

	* gtk/gtkcalendar.c (gtk_calendar_init): _NL_FIRST_WEEKDAY is
	1-based.  (#163842, Pierre Ossman)

2005-06-17  Kristian Rietveld  <>

	Fix #160281, testcase from Peter Bloomfield.

	* gtk/gtktreeview.c (do_presize_handler): always size request
	and update adjustments in fixed height mode,
	(gtk_tree_view_build_tree): if a fixed height is set, set this
	height on newly added nodes.

2005-06-17  Tor Lillqvist  <>

	* gdk/win32/gdkdnd-win32.c (gdk_dropfiles_filter): Set the actions
	and suggested_action fields in the GdkDragContext to
	GDK_ACTION_COPY. Otherwise apps that check the suggested_action
	field, like eog, won't accept dropped files.

2005-06-17  Matthias Clasen  <>

	Support the ICCCM urgency hint.  (#61858, Havoc Pennington)
	* gtk/gtk.symbols: 
	* gtk/gtkwindow.[hc]: Add a GtkWindow::urgency-hint property
	with getter and setter.

	* gdk/gdk.symbols: 
	* gdk/gdkwindow.h: 
	* gdk/x11/gdkwindow-x11.c (gdk_window_set_urgency_hint): 
	Add a setter for the urgency hint.

	* gdk/x11/gdkwindow-x11.h (struct _GdkToplevelX11): Store
	urgency hint here.

	* gdk/x11/gdkwindow-x11.c (update_wm_hints): Set the urgency
	hint in the WM_HINTS property when appropriate.

2005-06-17  Matthias Clasen  <>

	* gdk/gdkcursor.h: Define GDK_IS_CURSOR() and GDK_CURSOR().

	* gdk/x11/gdkcursor-x11.c: 
	* gdk/gdkcursor.c: Improve some return_if_fail checks,
	and add the missing non-Xcursor fallback for 
	_gdk_x11_cursor_update_theme(), noticed by Jeroen 

	* gtk/gtkbutton.c (gtk_button_class_init): Document
	several button signals as not useful.

	* gtk/gtkentrycompletion.c (gtk_entry_completion_complete): 
	Resize the popup if necessary.  (#308076, Vincent Noel)

	* gtk/gtkwindow.c (gtk_window_real_set_focus): Queue a
	draw on the old and new focus widgets, if their defaultness
	changes.  (#305607, Billy Biggs)

2005-06-17  Kristian Rietveld  <>

	* gtk/gtktreeview.c (validate_visible_area): make sure the row
	above 'above_path' is always in a validated state, so it does
	not mess up scrolling. (#303319, testcase from Billy Biggs).

2005-06-17  Matthias Clasen  <>

	* gdk/x11/gdkprivate-x11.h: 
	* gdk/x11/gdkcursor-x11.c: Handle cursor theme changes
	for cached cursors which are not associated with a window
	at the time of the theme change, by storing a serial
	number in each cursor, and updating the theme_serial 
	counter whenever the cursor theme changes.
	* gdk/x11/gdkcursor-x11.c (_gdk_x11_cursor_update_theme): 
	Private function to update a cursor to the current
	cursor theme if necessary.

	* gdk/x11/gdkmain-x11.c (gdk_pointer_grab): 
	* gdk/x11/gdkwindow-x11.c (gdk_window_set_cursor): Call
	_gdk_x11_cursor_update_theme() here.

2005-06-17  Owen Taylor  <>

	* gdk/gdkcairo.c (gdk_cairo_set_source_pixbuf): Fix

2005-06-17  Kristian Rietveld  <>

	* gtk/gtktreeview.c (validate_visible_area): don't try to update
	the top_row rowref ourselves here, but just have _dy_to_top_row()
	do it,
	(gtk_tree_view_scroll_to_cell): handle scrolling via
	validate_visible_area() if the treeview is not visible or needs
	reallocation. (#165246, Nickolay V. Shmyrev).

2005-06-17  Kristian Rietveld  <>

	Fixes #307914 (Alexander Larsson), fixing some breakage caused
	by my previous commit.

	* gtk/gtktreeview.c (validate_visible_area): force dy to be zero
	when it fits on a single page,
	(scroll_sync_handler): same here.

Thu Jun 16 15:33:42 2005  Manish Singh  <>

	* gdk/x11/gdkcursor-x11.c (update_cursor): remove unused variable.

	* gdk/x11/gdkwindow-x11.c (_gdk_x11_window_get_cursor): use

	* gtk/gtkdnd.c (gtk_drag_get_cursor): initialize hot_x and hot_y
	for all cases.

	* gtk/gtkfilechooserdefault.c (button_new): gtk_button_set_image
	takes a GtkWidget, not a GtkImage.

2005-06-16  Matthias Clasen  <>

	* gtk/gtkfilechooserdefault.c (button_new): Simplify
	the code and respect the show-button-images setting.
	(#307941, Vincent Noel)

	* gtk/gtkdnd.c: Update the RGBA cursor if an
	icon is set after the cursor has been constructed.
	Also handle repeated setting of icons correctly.

2005-06-16  Matthias Clasen  <>

	* gtk/gtkbutton.c (gtk_button_set_image): Add some more
	docs.  (#307818, Christian Persch)

2005-06-15  Matthias Clasen  <>

	* gdk/gdkwindow.c (gdk_window_process_updates_internal):
	Initialize all fields of the expose event.  (#151693,
	Jim Evins)

2005-06-15  Matthias Clasen  <>

	* gdk/x11/gdkcursor-x11.c (gdk_cursor_get_image): Get
	red and blue in place.

	* gtk/gtkwindow.c (gtk_window_parse_geometry): Fox doc
	formatting, pointed out by Kjartan Maraas.

	* gtk/gtksettings.c: Add two new settings, 
	gtk-cursor-theme-name and gtk-cursor-theme-size to
	control the cursor theme.

	* gdk/x11/gdkevents-x11.c: Add two new X settings,
	Gtk/CursorThemeName and Gtk/CursorThemeSize, and map
	these to the gtk settings.

	* tests/testgtk.c (create_cursors): Add a cursor theme

	* gdk/x11/gdkwindow-x11.[hc]: Keep a reference to the 
	GdkCursor and add a private getter for it, so that we can 
	update the cursor when the cursor theme changes.
	* gdk/gdk.symbols: 
	* gdk/x11/gdkx.h: 
	* gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): 
	New function to change the cursor theme.

	* gdk/x11/gdkwindow-x11.c: Remove a lot of pointless
	g_return_if_fail() non-NULL checks.

2005-06-15  Matthias Clasen  <>

	* gdk/ Use uniq to filter out duplicates.
	* gdk/gdk.symbols: Fix a define.

2005-06-14  Matthias Clasen  <>

	* gtk/gtkwindow.c (gtk_window_parse_geometry):
	Fix up the example.  (#307699, Michal Suchanek)

2005-06-14  Matthias Clasen  <>

	* gtk/gtkcalendar.c: Update num_marked_dates as we
	used to do.  (#307689, Thorsten Schoenfeld)
2005-06-14  Federico Mena Quintero  <>

	Merged from gtk-2-6:

	Fix #302087:

	* gtk/gtkfilechooserdefault.c (list_selection_changed): Emit
	"selection-changed" and do the normal housekeeping even if we are
	in SAVE mode and there is nothing selected.  We didn't emit that
	signal if we were in SAVE mode and unselect_all() got called.
	(gtk_file_chooser_default_unselect_all): Call
	pending_select_paths_free() so that we cancel any asynchronous
	(gtk_file_chooser_default_set_current_name): Likewise.

2005-06-14  Federico Mena Quintero  <>

	Merged from gtk-2-6:

	Fixes #307640:

	* gtk/gtkfilechooserdefault.c
	(gtk_file_chooser_default_should_respond): Oops, I broke SAVE
	mode.  If the parent path is a folder, only create a subfolder if
	we are in CREATE_FOLDER mode; if we are in SAVE mode, just return
	and respond.  Also, pick up the case where the user types
	"dirname/" instead of "dirname".
	(check_save_entry): Make the return type void.  Add some return
	parameters so that we can do more thorough checking.
	(gtk_file_chooser_default_get_paths): If the file part is empty
	and we are in SAVE mode, return an empty selection.

2005-06-15  Kristian Rietveld  <>

	Patch for #163214 (reported by Tommi Komulainen) and fixes some
	other scrolling/validation related bugs along the why.

	* gtk/gtktreeview.c (gtk_tree_view_size_request): run
	do_validate_rows once and don't queue a size request there,
	(gtk_tree_view_size_allocate): don't update vadj value without
	reason, sync top_row/dy after the window sizes and adjustments
	are in sync again,
	(validate_visible_area): always update dy when scrolling,
	manually set top_row here after changing the vadj (don't depend
	on _adjustment_changed and top_row/dy sync to do this), since we
	now always set top_row here correctly, we can always free
	scroll_to_path at the end which avoids infinite expose loops,
	(do_validate_rows): add queue_resize boolean, remove top_row/dy
	sync here, we cannot do it safely at this place since the
	window sizes and adjustments are out of sync,
	(validate_rows), (validate_rows_handler): update call to

2005-06-14  Matthias Clasen  <>

	* gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_name): Add a 
	stub for the no-Xcursor case. (noticed by Luis Villa)

	Use named cursors for the DND cursors, the names are "dnd-none",
	"dnd-copy", "dnd-link", "dnd-move" and "dnd-ask". Also use an RGBA 
	cursor instead of cursor+window when possible. This saves 
	roundtrips during the drag operation, and makes translucent icons 
	* gtk/gtkdndcursors.h: New file, containing inlined pixbufs
	for the default dnd cursors.

	* gtk/gtkdnd.c (struct _GtkDragSourceInfo): Store the cursors
	used during the drag here, also store the icon pixbuf here. 

	* gtk/gtkdnd.c (drag_cursors): Store the cursor names here. Also
	switch the default cursors from xbm to inlined pixbufs. 

	* gtk/gtkdnd.c (gtk_drag_get_cursor): This function now takes the
	GtkDragSourceInfo as well, since it has to composite the 
	drag-specific cursors. The cursors combined from the image of
	the themed cursor and the icon_pixbuf stored in the info.

	* gtk/gtkdnd.c (gtk_drag_begin_internal): Don't set the default
	icon if there is an icon_pixbuf, which will be composited into
	the cursor later.

	* gtk/gtkdnd.c (set_icon_stock_pixbuf): If appropriate, store
	the pixbuf in the info struct for later compositing into the
	cursor instead of creating an icon window.
	* gtk/gtkdnd.c (gtk_drag_drop_finished): If we used an
	RGBA cursor for the drag, and need to display the cancel
	animation, construct the icon window here.

	* gtk/gtkdnd.c (gtk_drag_source_info_destroy): Unref the 
	drag-specific cursors and the icon_pixbuf when done with
	the drag.

2005-06-14  Matthias Clasen  <>

	* gtk/gtkcolorsel.c (make_picker_cursor): Use a named cursor
	with the name "color-picker", when available.

	* gdk/gdk.symbols: 
	* gdk/gdkcursor.h: 
	* gdk/x11/gdkcursor-x11.c (gdk_cursor_get_image) 
	(gdk_cursor_new_from_name): New functions to construct named
	cursors and to get the image used for a cursor.  

2005-06-13  Matthias Clasen  <>

	* gtk/gtkpathbar.[hc]: Rework the way in which rerooting of the
	path bar is done, implementing the following principles:
	(#137289, patch by Benjamin Otte)
	1. Re-root only if $HOME is an ancestor of the current path.

	2. When re-rooting, make sure the Left arrow appears in the path 
	bar, so that you can navigate up from $HOME to /.  In that case, 
	make sure the Right arrow doesn't appear if the sub-hierarchy from 
	$HOME to the cwd fits in the window.

	3. Make sure that hitting Alt-Up takes you always one folder up, 
	even when the path bar is re-rooted.

	* gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
	Try harder not to modify readonly strings. (#307541, Torsten Schoenfeld)

	* gtk/gtkfilechooserbutton.c (model_update_current_folder): 
	Free the data of the row before overwriting it.  (#307490,
	Kjartan Maraas)

2005-06-13  Kjartan Maraas  <>

	* gtk/gtkcalendar.c: (calendar_paint_arrow): Don't
	leak the cairo context. Closes bug #307426.

2005-06-13  Matthias Clasen  <>

	Make invisible text work a bit better (#66194, patch by
	Jeroen Zwartepoorte)
	* gtk/gtk.symbols:
	* gtk/gtktextiter.[hc]: Add function to move by
	visible lines.

	* gtk/gtktextview.c (gtk_text_view_move_cursor_internal): 
	Skip invisible text when moving by paragraphs.

	* gtk/gtktextlayout.c (gtk_text_layout_move_iter_visually): 
	Skip invisible lines here too.

2005-06-12  Matthias Clasen  <>

	* gtk/gtkselection.c (gtk_target_list_add_image_targets): 
	Don't leak the format names.  (#307190, Morten Welinder)

2005-06-12  Kjartan Maraas  <>

	* gdk/x11/gdkasync.c: (send_event_handler): Plug
	a leak. Closes bug #307281.

2005-06-12  Matthias Clasen  <>

	* gtk/gtkcalendar.c (calendar_paint_header): 
	(gtk_calendar_size_request): Allow localization of the
	format in which the year is displayed.  (#135451, Paisa 

	* gdk/*.h: Cleanup.  (#169648, Fabricio Barros Cabral)

	* gdk/gdkcairo.c: Small doc additions.

	* gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row): 
	Check start_button_mask before starting a drag.  (#149058, 
	Andreas Volz)

	* gtk/gtkfilesystemunix.c: Support .hidden files.  (#129170,
	Sayamindu Dasgupta, patch by Jan Arne Petersen)

2005-06-11  Matthias Clasen  <>

	* NEWS: Updates.

	* gtk/gtkwidget.c (gtk_widget_set_app_paintable): More docs
	provided by Owen Taylor.

	* gtk/gtk.symbols: 
	* gtk/gtkiconview.h: 
	* gtk/gtkiconview.c (gtk_icon_view_get_visible_range): 
	Add a function to determine what parts of the model are
	visible.  (#306726, Jonathan Blandford)

	* gtk/gtkfilesystemunix.c (create_file_info): Treat backup
	files the same way as hidden files, to be closer to what
	Nautilus does.  (#136196, Sean Middleditch)

2005-06-10  Matthias Clasen  <>

	* gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
	Don't modify strings returned from gettext().

Fri Jun 10 19:06:03 2005  Manish Singh  <>

	* gtk/gtktextdisplay.c (render_para): don't use deprecated
	gdk_gc_unref function.

2005-06-10  Matthias Clasen  <>

	Allow setting paragraph background.  (#81045, Gustavo
	Carneiro, patch by Jeroen Zwartepoorte)
	* gtk/gtktextlayout.c (set_para_values): Propagate 
	pg_bg_color to the display struct.
	(gtk_text_layout_free_line_display): Free it here.

	* gtk/gtktextdisplay.c (render_para): If pg_bg_color
	is set, draw a rectangle in that color behind
	the paragraph.

	* gtk/gtktexttag.c (gtk_text_tag_class_init): Add 
	paragraph-background, paragraph-background-gdk and
	paragraph-background-set properties.
	(set_pg_bg_color): A setter for paragraph-background.

	* gtk/gtktextlayout.h (struct _GtkTextLineDisplay): Add

	* gtk/gtktexttag.h (struct _GtkTextAttributes): Add
	(struct _GtkTextTag): Add pg_bg_color_set.

2005-06-10  Kjartan Maraas  <>

	* gdk/gdkcairo.c: (gdk_cairo_set_source_pixbuf): Destroy the
	cairo surface when done with it. Plugs a fairly large leak in
	some cases.
	==6014== 1999824 (115640 direct, 1884184 indirect) bytes in
	826 blocks are definitely lost in loss record 25239 of 25250
	Like this from nautilus.

2005-06-10  Michael Natterer  <>

	* gtk/gtk.symbols
	* gtk/gtkaction.[ch] (gtk_action_get_accel_closure): new function
	to get an action's accel_closure (Fixes #141750 and #148106).

2005-06-10  Matthias Clasen  <>

	* gdk/ Generate N_() calls for
	translatable key names.

	* gdk/keynames.txt: Mark some key names as translatable.
	* gdk/keyname-table.h: Regenerated.

	* gtk/gtkaccellabel.c (gtk_accel_label_class_init): Add
	some context to the msg ids for keyboard modifiers and
	key names.
	(_gtk_accel_label_class_get_accelerator_label): Try to
	translate key names.  (#300224, Christian Rose)

2005-06-10  Federico Mena Quintero  <>

	Merged from gtk-2-6:

	Fixes #162358:

	* gtk/gtkfilechooserdefault.c (update_chooser_entry): Don't return
	immediately if we are in CREATE_FOLDER mode, so that we can fill
	the entry with the newly-selected folder.
	(gtk_file_chooser_default_set_property): Warn against turning on
	multiple selection for CREATE_FOLDER mode, or about setting that
	action while multiple selection is on.
	(update_chooser_entry): Change the entry's contents as well if we
	are in CREATE_FOLDER mode.  If nothing is selected, clear the
	chooser entry.
	(trap_activate_cb): Don't trap enter/space if modifiers are
	pressed.  This lets one use Ctrl-space to toggle rows in multiple
	selection mode.
	(gtk_file_chooser_default_should_respond): Clean up the if-chain
	mess of special cases by using an array to determine what to do.
	Also, for the save-entry case in CREATE_FOLDER mode, actually fix
	the bug where the file chooser would switch to an existing folder
	rather than confirming with it, and create the folder ourselves.
	(error_creating_folder_over_existing_file_dialog): New function.

	* gtk/gtkfilechooserentry.c (check_completion_callback): Only
	insert the common prefix if we are in an "open" mode.  Use a
	helper function.
	(append_common_prefix): New helper function; code moved over from
	(find_common_prefix): New helper function.
	(gtk_file_chooser_entry_focus): Append the common prefix if the
	user requests it explicitly.

2005-06-10  Matthias Clasen  <>

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_expand): 
	* gtk/gtktoolbar.c (gtk_toolbar_get_show_arrow): 
	* gtk/gtktextview.c (gtk_text_view_get_iter_at_position): 
	* gtk/gtkstock.c (gtk_stock_set_translate_func): 
	* gtk/gtkspinbutton.c (gtk_spin_button_get_adjustment): 
	* gtk/gtkscrolledwindow.h: 
	* gtk/gtkmenushell.c (gtk_menu_shell_get_take_focus): 

	* gtk/gtkiconview.c (gtk_icon_view_set_margin): 
	* gtk/gtkicontheme.c (gtk_icon_info_load_icon): 
	* gtk/gtkcalendar.c (gtk_calendar_thaw): Doc fixes.

2005-06-09  Matthias Clasen  <>

	* gdk/x11/gdkwindow-x11.c: Small markup fixes.

	* gtk/gtkwidget.c (gtk_widget_set_app_paintable): Add docs.
	(#306212, Steve Chaplin, docs provided by Billy Biggs)

	* gtk/gtktextbtree.c (_gtk_text_btree_char_is_invisible): Small 
	cleanup.  (#305539, Paolo Borelli)

2005-06-09  Rodrigo Moya <>

	* added cairo to list of $GTK_PACKAGES.

2005-06-09  Matthias Clasen  <>

	* gdk/x11/gdkdnd-x11.c (motif_drop_start, xdnd_drop_filter): Update
	the user time on the window when a drop happens.  (#169364, Alexander
	Hunziker, patch by Elijah Newren)

	* gdk/x11/gdkwindow-x11.c: Small markup fixes.

	* gtk/gtk.symbols: 
	* gtk/gtkiconview.h: 
	* gtk/gtkiconview.c (gtk_icon_view_scroll_to_path): New function
	to scroll to a path.  (#306838, Jonathan Blandford)

2005-06-08  Matthias Clasen  <>

	* gtk/gtkiconview.c (gtk_icon_view_set_cursor): Scroll to the
	item.  (#306839, Jonathan Blandford)

	* gtk/gtktreemodel.c (gtk_tree_path_new_from_string): Check for
	negative before appending the index, to avoid double error
	message.  (#306393, Morten Welinder)

	* gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search): 
	Don't crash if search_window is NULL.  (#304914, Victor Osadci,
	testcase by Olaf Vitters)

	* gtk/gtkimage.c: Make the file property readable.  
	(#170674, Lorenzo Gil Sanchez)

2005-06-08  Matthias Clasen  <>

	* gtk/gtkfilesystem.c (gtk_file_info_get_display_key): Use

2005-06-07  Kjartan Maraas  <>

	* gtk/gtkfilechooserbutton.c: (update_label_and_image):
	Merge leak fix from stable. Bug 306754.

2005-06-05  Tor Lillqvist  <>

	* gdk/win32/gdkscreen-win32.c
	(_gdk_windowing_substitute_screen_number): Return NULL unless
	screen number is zero. We have only one screen on Win32.
	(gdk_screen_make_display_name): Call gdk_display_get_name() and
	return that.
	* modules/engines/
	* modules/input/ Decide whether to build the
	ms-windows theme engine based on the GDK backend, not based on
	platform. (I.e., if building for Cygwin with the X11 backend, we
	shouldn't build the ms-windows engine, but if building for Cygwin
	but with the Win32 backend, we should.) Ditto for the IME
	(Windows) input module. (#305832)

2005-06-04  Tor Lillqvist  <>

	* gdk/win32/gdkcursor-win32.c
	* gdk/win32/gdkwindow-win32.c
	* gdk/win32/gdkprivate-win32.h: Support full-colour cursors.
	Support cursors with alpha on XP. Use code in common with the
	support for alpha icons that already was present. (#306101, Tim

	* modules/engines/ms-windows/msw_style.c: Render insensitive icons
	in a way that more closely matches Windows. (#305986, Tim Evans).

	* modules/engines/ms-windows/ (LDADDS): Link with

2005-06-03  Dom Lachowicz <>

	* modules/engines/ms-windows/msw_style.c: Re-sync with gtk-wimp
	* modules/engines/ms-windows/xp_theme.c: Ditto
	* modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Ditto

Thu May 26 16:43:27 2005 Manish Singh  <>

	* gtk/gtkentrycompletion.h: Add declarations for

2005-05-26  Matthias Clasen  <>

	* gtk/gtk.symbols: 
	* gtk/gtkentrycompletion.c: Add a property to suppress the
	popup for single matches.  (#154711)

	* gtk/gtkentry.c (gtk_entry_completion_timeout): Respect it here.

	* gtk/gtkfilechooserentry.c (_gtk_file_chooser_entry_set_action): 
	Use it here.

	* gtk/gtktextbtree.c (_gtk_text_btree_tag): Queue the 
	redisplay after modifying the tag in the btree, otherwise 
	we end up showing the old tags until the next redraw comes 
	around.   (#143537, Gary Kramlich, Peter Wainwright)

	* gtk/gtkcombobox.c (gtk_combo_box_list_auto_scroll): Make 
	autoscrolling work at the bottom of the screen.

2005-05-26  Maciej Katafiasz  <>

	* docs/reference/gtk/tmpl/gtkentry.sgml:
	Point to GtkTextView instead of GtkText. Fixes bug #305535

2005-05-26  Sven Neumann  <>

	* gtk/gtkselection.c (gtk_selection_data_set_pixbuf): use a less
	aggressive PNG compression level (bug #305340).

2005-05-26  Tor Lillqvist  <>

	* gdk/win32/gdkdrawable-win32.c (_gdk_win32_blit): If blitting
	from the root window, take the multi-monitor offset into
	account. (#305511)

2005-05-25  Matthias Clasen  <>

	* demos/gtk-demo/appwindow.c (do_appwindow): Set the window
	icon by name.

	* gtk/gtkfilesystem.c (gtk_file_folder_is_finished_loading): 
	Remove another C99ism.

	* gtk/gtktreeview.c (gtk_tree_view_bin_expose): Draw the 
	background of rows insensitive when the treeview is insensitive.
	(pointed out by Billy Biggs)

	* demos/gtk-demo/clipboard.c: Demonstrate image copy-and-paste
	and DND, and clipboard persistency.

	* gtk/gtkselection.c (gtk_target_list_add_image_targets): 
	Make sure png comes first, otherwise dnd may use bmp by
	default, loosing transparency.

2005-05-25  Michael Natterer  <>

	* gtk/gtktextview.c (blink_cb): block the text_layout's "changed"
	handler when changing cursor visibility because it would expose
	the whole paragraph where the cursor is. Instead, expose the
	cursors' areas manually. (#173047).

	(text_window_invalidate_cursors): new function which exposes the

	* gtk/gtkstyle.c (draw_insertion_cursor): added comment that the
	same cursor size calculation is in text_window_invalidate_cursors().

2005-05-25  Matthias Clasen  <>

	* demos/gtk-demo/editable_cells.c (create_items_model): Also
	demonstrate GtkCellRendererProgress.

	* demos/gtk-demo/ (demos): 
	* demos/gtk-demo/combobox.c: Add a demo showing combo box 

	* demos/gtk-demo/ (demos): 
	* demos/gtk-demo/pickers.c: Add a demo showing all picker widgets.

2005-05-24  Matthias Clasen  <>

	* demos/gtk-demo/iconview.c (do_iconview): Fix a typo.

2005-05-24  Tor Lillqvist  <>

	* gdk/win32/gdkproperty-win32.c (gdk_screen_get_setting): Handle
	gtk-alternative-button-order (setting it to TRUE).

2005-05-23  Matthias Clasen  <>

	* gtk/gtktreeview.c (gtk_tree_view_search_init): Remove
	an unused variable.  (#305130, Jaap A. Haitsma)

	* gtk/gtkfilechooserdefault.c (filter_create): Don't grab
	the focus away from the file list when operating the filter
	combo with the pointer.  (#304844, Sven Neumann)

2005-05-23  Tor Lillqvist  <>

	* gdk/win32/gdkkeys-win32.c (handle_special): Map VK_APPS to
	GDK_Menu. (#172383, Ivan Wong)

	* gdk/win32/gdkkeys-win32.c (handle_dead): If the keysym isn't one
	of the special cases this function takes care of, use it as
	such. This takes care of for instance the Bengali Virama, see bug

2005-05-20  Matthias Clasen  <>

	* gtk/gtkimcontextsimple.c (check_table): Avoid a possible
	buffer overrun.  (#142444, Leonard Michlmayr)

	* gtk/gtkfilesystem.c: Remove C99-isms (#304879, 
	Kazuki IWAMOTO)

2005-05-18  Matthias Clasen  <>

	* gtk/gtkfilechooser.c (gtk_file_chooser_remove_shortcut_folder_uri): 
	Use the correct function to conver the uri to a path.  (#304565,
	Ismael Juma)

	* gtk/gtkfilechooserbutton.c (dialog_response_cb): Handle the
	Cancel button properly.  (#304234, Sven Neumann)

2005-05-18  Anders Carlsson  <>

	* gtk/gtktextview.c: (gtk_text_view_flush_scroll),
	(gtk_text_view_update_adjustments), (gtk_text_view_value_changed):
	* gtk/gtktextview.h:
	If the horizontal adjustment changes because of a change in the
	layout width, then do a complete redraw. This is because there
	might be right-aligned or centered text that needs to be redrawn.

2005-05-18  Matthias Clasen  <>
	* gtk/gtkwidget.c (gtk_widget_add_events): Try harder to set
	the event masks of descendent windows.  (#169821, Tommi Komulainen)

	* gtk/gtktreeview.c (gtk_tree_view_get_drop_column) 
	(gtk_tree_view_set_column_drag_info): Fix some errors in the
	handling of drop columns.  (#143355, John Finlay)

	* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): 
	Remove the no longer needed workaround.

	* gtk/gtkwidget.c (widget_add_child_draw_rectangle): Only collect
	allocations of mapped children.

	* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): 
	Add a bug reference.

2005-05-18  Tor Lillqvist  <>

	* gdk/win32/gdkevents-win32.c
	* gdk/win32/gdkkeys-win32.c
	* gdk/win32/gdkprivate-win32.h: Check the KF_EXTENDED bit in
	lParam of WM_KEY* messages to distinguish between left and right
	Control and Alt keys. Unfortunately, the right Shift key doesnt
	set KF_EXTENDED, so to distinguish between left and right Shift
	keys, check the scan code. (#304584)

2005-05-18  Matthias Clasen  <>

	* gdk/x11/gdkproperty-x11.c (gdk_property_get): Warn if
	length overflows.  (#161520, Ian Wienand)

	* gtk/gtktoolbutton.c (gtk_tool_button_set_icon_name): Fix
	parameter names to make gtk-doc happy.

	* gtk/gtkscale.c (gtk_scale_class_init): Fix the default
	values of draw-value and value-pos to be the values we
	actually use in _init. (#304547, Mikael Hallendal)

	* gtk/gtkcellrendererpixbuf.c: Support named icons in
	cells by adding a icon-name property. (#165777, Anders

	* gtk/gtk.symbols:
	* gtk/gtktoolbutton.h: 
	* gtk/gtktoolbutton.c (gtk_tool_button_set_icon_name) 
	(gtk_tool_button_get_icon_name): Support named icons in 
	tool buttons by adding a icon-name property. (#116577, 
	Christian Neumair)

	* gtk/gtk.symbols: 
	* gtk/gtkdnd.h: 
	* gtk/gtkdnd.c (gtk_drag_source_set_icon_name) 
	(gtk_drag_set_icon_name): New functions to support themed 
	drag icons.  (#116577, Christian Neumair)

2005-05-17  Owen Taylor  <>

	* gdk/x11/gdkdrawable-x11.c (gdk_x11_ref_cairo_surface): 
	Update to changed cairo interface.

	* gdk/x11/gdkdrawable-x11.[ch]:
	Add _gdk_x11_drawable_update_size()
	* gdk/x11/gdkwindow-x11.c (gdk_window_resize) 
	* gdk/x11/gdkevents-x11.c (gdk_event_translate): 
	Call _gdk_x11_drawable_update_size().

2005-05-17  Matthias Clasen  <>

	* gtk/gtktextview.c (cursor_blinks): Don't blink the cursor
	if the text view is not editable.  

	* gtk/gtkcombobox.c (gtk_combo_box_list_button_released): Keep
	the popup posted if the button is released over the cellview.
	This matches the behaviour of other combo box implementations.  
	* gdk/gdkwindow.c (gdk_window_set_bg_pattern): Adjust offsets
	when recursing.  (#153682, Felipe Heidrich)

2005-05-16  Matthias Clasen  <>

	* gtk/gtkscale.c (gtk_scale_class_init): Don't bind GDK_Page_Up 
	and GDK_Page_Down twice.  (#168333, Hazael Maldonado Torres)

	* gtk/gtkentry.c (cursor_blinks): Don't blink the cursor if 
	the entry is not editable.  (#304171, Nikos Kouremenos)
	* gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_constructor): 
	Make sure the action of the button and the dialog are in sync,
	when the dialog is provided by the app.  (#303987, David A Knight)

	* gdk/gdkpango.c (gdk_pango_renderer_get_default): Fix a typo
	in the docs.  (#303940, Masao Mutoh)

	* (GTK_DOC_CHECK): Check for gtk-doc 1.4.

	* gtk/gtktoggleaction.c (connect_proxy): Be more careful when
	casting.  (#304089, Philip Langdale)

	* gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Only shrink
	the label if we need to.  (#169390, Felix Riemann)

Sat May 14 00:07:46 2005  Manish Singh  <>

	* gdk/gdkdraw.c
	* gdk/gdkpango.c: #include gdkcairo.h for gdk_cairo_create()

	* gtk/gtkiconview.c (gtk_icon_view_create_drag_icon): actually
	call gdk_cairo_set_source_color() with a color.

	* gtk/gtkimage.c (gtk_image_expose): remove unused stock_id variable.

	* tests/testiconview.c (main): cast args of drag functions to the
	appropriate type.

2005-05-13  Owen Taylor  <>

	* gdk/x11/gdkdrawable-x11.c: Update for cairo-xlib API change.

	* gdk/x11/gdkpixmap-x11.[ch] gdk/gdk.symbols: Export 
	gdk_pixmap_impl_x11_get_type(), needed in gdkdrawable-x11.c.
2005-05-11  Owen Taylor  <>

	* tests/testgtk.c (on_alpha_window_expose): Fix to use
	gdk_cairo_create(). (create_alpha_window): Hook up "response"
	to close the window.

2005-05-11  Owen Taylor  <>

	* gtk/gtkcolorbutton.c: Use a GtkAlignment rather than a GtkDrawingArea
	to draw the swatch in to avoid having an extraneous window.
	* gtk/gtkcolorsel.c (color_sample_draw_sample): Actually se tthe
	color when !has_opacity.

2005-05-10  Owen Taylor  <>

	* gdk/gdkcairo.[ch] gdk/gdkcolor.[ch] gdk/ Add source
	files for Cairo convenience functionality.

	* gdk/gdkcairo.h (gdk_cairo_rectangle, gdk_cairo_region): Add a
	convenience functions to add GdkRectangle, GdkRegion to a cairo path.

	* gdk/gdkwindow.c gdk/gdkgc.c gtk/gtkcolorsel.c gtk/gtkiconview.c 
	gtk/gtkstyle.c: Use gdk_cairo_rectangle/region().

	* gdk/gdkcairo.[ch] gdk/gdkdrawable.h gdk/gdkdraw.c: Rename
	gdk_drawable_create_cairo_context() to gdk_cairo_create().

	* gdk/gdkcairo.c gdk/gdkpixbuf.h gdk/gdkpixbuf-render.c:
	Rename gdk_pixbuf_set_as_cairo_source() to 

	* gdk/gdkdraw.c gdk/gdkpango.c gtk/gtkcolorsel.c gtk/gtkhruler.c
	gtk/gtkhsv.c gtk/gtkiconview.c gtk/gtkstyle.c gtk/gtkvruler.c:
	Adjust for renames.

	* gdk/gdk.symbols: Update.

	* gtk/gtkwidget.c (gtk_widget_queue_shallow_draw): Fix 
	coordinate system problem that was causing the wrong portions
	to be invalidated.

	* gtk/gtkcellrenderer.c (gtk_cell_renderer_render)
	gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render)
	gtk/gtkcellrendererprogress.c (gtk_cell_renderer_progress_render)
	gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render)
	gtk/gtkcellview.c (gtk_cell_view_expose)
	gtk/gtkdnd.c (gtk_drag_highlight_expose)
	gtk/gtkentry.c (gtk_entry_draw_text) 
	gtk/gtktextview.c (text_window_invalidate_rect): Some cairoization.

	* gtk/gtkcalendar.[ch]: Beat into something roughly resembling
	GTK+ style ... use instance-private data and standard names for
	private structure, etc. Move function docs inline.

	* gtk/gtkcalendar.[ch]: Switch to drawing everything in
	expose. Switch drawing to Cairo.

	* gtk/gtkcalendar.c (gtk_calendar_freeze): Deprecate

2005-05-10  Tor Lillqvist  <>

	* gdk/win32/gdkproperty-win32.c (gdk_screen_get_setting): Check
	that GDK_IS_SCREEN(screen) (like the X11 backend does), not screen
	== gdk_screen_get_default(), as that might return NULL when this
	function is called.

2005-05-09  Matthias Clasen  <>

	* gtk/gtkalignment.c (gtk_alignment_size_allocate): Flip the
	padding in RTL mode.  (#303572, Maciej Katafiasz)

2005-05-09  Owen Taylor  <>

	* gdk/gdkrgb.c (gdk_rgb_convert_0888_br, gdk_rgb_convert_8880_br): 
	Fill in unused bits so they can be used for the depth-32 target case.
	Rewrite so that that gives a marginal speedup rather than a
	marginal slowdown. (on x86)

	* gdk/gdkscreen.h gdk/x11/gdkscreen-x11.[ch] gdk/x11/gdkvisual-x11.c:
	Add gdk_screen_get_rgba_colormap/visual to get a visual for
	windows with an alpha channel, if one exists.

	* gdk/win32/gdkscreen-win32.c gdk/linux-fb/gdkscreen-fb.c:
	Stub out gdk_screen_get_rgba_colormap/visual.

	* gdk/x11/gdkcolor-x11.c (gdk_colormap_alloc_colors): computation of
	"unused" wasn't right for depth == 32, since it depended on
	shifting by 32.

	* gdk/gdkrgb.c: Fill in alpha bits with 1s. (Based on patch from
	Keith Packard,

	* gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_get_picture):
	Implement again, without using Xft.

	* tests/testgtk.c: Add a test for windows with an alpha channel.

2005-05-09  Matthias Clasen  <>

	* Revert accidental commit.

2005-05-08  Matthias Clasen  <>

	* gdk/gdkcolor.c (gdk_cairo_set_source_color): 
	* gdk/gdkimage.h: 
	* gdk/gdkdraw.c: 
	* gdk/gdkcolor.h: 
	* gdk/gdkcursor.h: 
	* gdk/x11/gdkcolor-x11.c: Small documentation additions.

2005-05-07  Matthias Clasen  <>

	* gtk/gtkscrolledwindow.h: 
	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_get_hscrollbar): 
	(gtk_scrolled_window_get_cscrollbar): Change the return 
	type to GtkWidget*, proposed by Owen Taylor. 

	* gdk/x11/gdkscreen-x11.c (gdk_screen_get_width_mm) 
	(gdk_screen_get_height_mm): Fix typos in the docs.  (#303389,
	Masao Mutoh)

2005-05-07  Matthias Clasen <>

	* gtk/gtkiconview.c: Fix a copy-and-paste accident, spotted
	by Owen Taylor.

2005-05-07  Owen Taylor  <>

	* gdk/gdkgc.c (gc_get_foreground): Get the foreground color, not
	the background color.

2005-05-07  Owen Taylor  <>

	* gdk/gdkpixbuf-render.c gdk/gdkpixbuf.h (gdk_pixbuf_set_as_cairo_source): 
	Change prototype to match cairo_set_source_surface().

	* gdk/gdkdraw.c gdk/gdkgc.c gdk/gdkpixbuf-render.c gdk/gdkwindow.c
	gtk/gtkhsv.c tests/testcairo.c.

2005-05-06  Federico Mena Quintero  <>

	Merged from gtk-2-6:

	* gtk/gtkfilesystemunix.c (fill_in_mime_type): Don't fill the mime
	types if this is an AFS directory.
	(fill_in_names): If we are in an AFS directory, set the MIME type
	blindly to "x-directory/normal".

2005-05-06  Matthias Clasen  <>

	* gtk/gtknotebook.c (gtk_notebook_insert_page_menu): Always
	initialize child-visible to FALSE, otherwise we may end up
	with the wrong page visible initially.  (#302283, Patrik Fimml)

	* gtk/gtktreeview.c (gtk_tree_view_draw_arrow): Make expanders
	appear insensitive in insensitive treeviews. 

2005-05-05  Matthias Clasen  <>

	* gtk/gtktoolbar.c: Fix a typo in the docs.  (#303024, 
	Morten Welinder)

2005-05-06  Matthias Clasen  <>

	* gtk/gtk.symbols:
	* gtk/gtkiconview.[hc]: Add DND support similar to the DND
	support in the tree view.  (#150270)

2005-05-05  Matthias Clasen  <>

	* gtk/gtktreednd.h: 
	* gtk/gtkwidget.h: Small cleanups.

	* gtk/gtktreeview.c (gtk_tree_view_get_dest_row_at_pos): Fix
	a typo.

2005-05-04  Owen Taylor  <>

	* gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.h: Fix a bug
	in focus tracking when we move between has_pointer_focus and 
	has_focus_window directly. (#109246, Billy Biggs, Niko Tyni 
	and others)

	* gdk/x11/gdkevents-x11.c: Also fix some confusion that could
	happen in the case of no window manager + keyboard grabs, by
	moving to a more consistent model of when we pay attention to
	mode=NotifyGrab/NotifyUngrab events.
	* docs/focus_tracking.txt: Extensive writeup about how to track
	focus under X11.

Wed May  4 13:21:41 2005  Søren Sandmann  <>

	* tests/testcairo.c (draw): Replace cairo_show_surface() uses with

2005-05-04  Tor Lillqvist  <>

	* gdk/win32/gdkdrawable-win32.c (generic_draw, blit_from_pixmap)
	* gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values,
	_gdk_win32_gc_new, _gdk_windowing_gc_set_clip_region,
	gdk_win32_hdc_get): Minor fixes to make Win32 backend compile

2005-05-03  Matthias Clasen  <>

	* gtk/gtkfilesystem.c: 
	* gtk/gtkcelleditable.c: 
	* gtk/gtktreemodel.c: Avoid getting the interface struct
	twice in the same function.  (#300513, Billy Biggs)

	* gtk/gtkscrolledwindow.h:
	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_get_vscrollbar): 
	* gtk/gtk.symbols: Add getters for the scrollbars.  (#167181,
	Billy Biggs)	

	* gtk/gtkdialog.h: 
	* gtk/gtkdialog.c (gtk_dialog_get_response_for_widget): 
	Make this function public.  (#170748, Morten Welinder)

2005-05-02  Federico Mena Quintero  <>

	Merged from gtk-2-6:

	Fixes #301068:

	* gtk/gtkfilesystemunix.c (struct _GtkFileSystemUnix): Add fields
	to store struct stat for /afs and /net, and boolean fields to say
	whether these are valid.
	(struct _GtkFileFolderUnix): Added a boolean is_network_dir field.
	(gtk_file_system_unix_get_folder): Fill in the is_network_dir
	field of the folder structure.
	(fill_in_names): If the folder is a network directory, create a
	fake struct stat for its entries.
	(fill_in_stats): Don't stat() the children of network directories.

	* gtk/gtkfilechooserdefault.c (list_mtime_data_func): If the mtime
	is 0, use "Unknown" for the cell's displayed text.

2005-04-28  Owen Taylor  <>

	* gtk/gtkwidget.c: Add a draw-border style property to allow
	themes to draw outside the widget's allocation.

	* gdk/gdkwindow.c gtk/gtkstyle.c: Remove some save/restore pairs
	that were working around the clip-leakage bug in Cairo.

	* gtk/gtkstyle.c: Use cairo_fill_preserve() rathe than

	* gdk/gdkgc.c gdk/gdkinternals.h: Add _gdk_gc_update_context()
	That updates a Cairo context to match a GC.

	* gdk/gdkdraw.c: Use _gdk_gc_update_context() to add support
	for tiles/stipples/clipping to gdk_draw_glyphs(), 

	* gdk/gdkpango.c: Use _gdk_gc_update_context() instead of internal
	implementation of stipples. Use one cairo_t across the entire
	drawing operation. Replace cairo_matrix_create() with 
	stack-allocated matrices.

	* gdk/gdkgc.c gdk/gdkinternals.h gdk/x11/gdkgc-x11.c 
	gdk/win32/gdkgc-win32.c: Save various aspects of the 
	GC state (fill, tile, stipple, foreground, background, clip region)
	in instance-private-data for future use. Add getters.
	Get rid of _gdk_windowing_gc_get_foreground() function implemented 
	by the backends.

	* gdk/gdkgc.c gdk/gdkinternals.h gdk/x11/gdkgc-x11.c
	gdk/win32/gdkgc-win32.c gdk/linux-fb/gdkgc-fb.c: Add
	_gdk_gc_init() to do initial setup of the GC from values;
	fixes some problems from drawable redirection.

	* gdk/gdkgc.c gdk/gdkinternals.h gdk/x11/gdkgc-x11.c
	gdk/win32/gdkgc-win32.c gdk/linux-fb/gdkgc-fb.c: Move 
	gdk_gc_copy() and gdk_gc_set_clip_{region,rectangle}() into 
	the generic code, add _gdk_windowing_gc_copy(), 
	_gdk_windowing_gc_set_clip_region() to do backend specific

	* gdk/x11/{gdkprivate-x11.h,gdkgc-x11.c.c,gdkdrawable-x11.c}
	Don't duplicate state that now is stored by the generic code.

	* gdk/gdk.symbols Update

2005-05-02  Matthias Clasen  <>

	* tests/testiconview.c: Test cell renderers.

	* gtk/gtk.symbols: Add new functions.

	* gtk/gtkiconview.[hc]: Implement GtkCellLayout and use
	cell renderers for drawing and editing. (#148144, #160242)

2005-05-02  Matthias Clasen  <>

	* gtk/gtkcellrenderertext.c (get_size): Return a sufficient
	width for cases where pango_layout_get_pixel_extents() returns
	a rectangle with nonzero x. 

	* gtk/gtkselection.c: Small doc fixes.

	* gtk/gtkmenushell.c (gtk_menu_shell_set_take_focus): 
	(gtk_menu_shell_get_take_focus): Fix up the docs a bit.

2005-05-02  Michael Natterer  <>

	* gtk/gtkmain.c (do_post_parse_initialization): return silently if
	"gtk_initialized" is TRUE. Re-enables calling GTK's init functions
	multiple times when using gtk_get_option_group(), just as one can
	call gtk_init() multiple times without doing any harm.

2005-05-01  Matthias Clasen  <>

	* gtk/gtktextview.c (gtk_text_view_expose_event): Propagate
	the event to unanchored children in the text window.  
	(#302494, Stephen Kennedy)

2005-04-30  Tor Lillqvist  <>

	* gdk/win32/gdkdnd-win32.c (gdk_dropfiles_filter): Take
	multi-monitor offset into account. (#302525)

2005-04-29  Matthias Clasen  <>

	* gtk/gtkradioaction.c: Make the docs build.  (#302230,
	Ali Akcaagac)

	* gtk/gtkiconview.c (gtk_icon_view_map): Get rid of this
	function, instead show the bin_window when it is created.

	* gtk/gtkradiobutton.c (gtk_radio_button_focus): Don't 
	grab focus to unrealized widgets.  (#302240, Philip Langdale)

	* gtk/gtktreeview.c (gtk_tree_view_state_changed): Set
	background upon state changes.  (#301651, Billy Biggs)
	(gtk_tree_view_get_path_at_pos): Take RTL into account
	when iterating over the columns.  (#302163)
	* Check for nm.

	* gtk/ Use $(NM), not nm directly. (#301299, 
	Nguyen Thai Ngoc Duy)

	* gtk/gtkiconview.c (gtk_icon_view_move_cursor_start_end): Use
	the internal unselect_all function, since we need the unselection
	to happen even in browse mode.  (#300995, Mathias Hasselmann)

	* gtk/gtkuimanager.c (update_node): Use g_object_notify() instead
	of triggering a ::notify by re-setting the property.  (#300982,
	Sven Neumann)

	* gtk/gtkaction.c (connect_proxy): Use gtk_action_sync_tooltip().

	* gtk/gtkiconview.c (gtk_icon_view_scroll_to_item): Also
	scroll horizontally when necessary, and keep the northwest
	corner of the item visible.  (#300913, Mathias Hasselmann)

	* tests/testiconview.c: Add some more tests.

	* gtk/gtkiconview.c (gtk_icon_view_select_path): Don't crash
	if the path does not point to a row in the model.  (#300909,
	Mathias Hasselmann)
	(gtk_icon_view_rows_reordered): Re-layout here.  (#301009, 
	Mathias Hasselmann)

	* tests/testtext.c: Add some more attribute tests.

	* gtk/gtktexttag.c (gtk_text_tag_class_init): Correct the documentation
	of the rise property. String change, but it is more important to
	be correct than to be translated.  (#301740)

2005-04-25  Tor Lillqvist  <>

	* gtk/gtkfilesystemwin32.c
	(gtk_file_system_win32_volume_get_display_name): Get volume name
	also on Win9x. (#301798, Daniel Atallah)
	(canonicalize_filename): Add explicit braces to silence compiler

2005-04-22  Tor Lillqvist  <>

	* gtk/gtkmain.c: Initailize gettext before use. Calling
	bindtextdomain() and bind_textdomain_codeset() in
	do_post_parse_initialization() is too late. Put the calls in a new
	function gettext_initialization(), and call that from
	gtk_init_with_args() and gtk_parse_args(). Fixes #170948 for
	GTK+'s part, but the same problem occurs also at least in
	atk. Thanks to Robert Ögren, Daniel Atallah and Kevin Stange.

2005-04-19  Ivan, Wong Yat Cheung  <>

	* gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Match
	character height instead of cell height. Fix #301228.

2005-04-18  Federico Mena Quintero  <>

	Merged from gtk-2-6:

	* gtk/gtkfilechooserdefault.c (remove_selected_bookmarks): Remove
	obsolete assertion that the selected row can't be a volume; this
	is handled by the "removable" column now.  Fixes #301017.

2005-04-18  Owen Taylor  <>

	* gtk/gtkstyle.c gtk/gtkcolorsel.c gtk/gtkhsv.c gtk/gtkiconview.c
	* gdk/gdkcolor.c gdk/gdkwindow.c gdk/gdkpixbuf-render.c
	gdk/gdkpango.c tests/testcairo.c: Update to new Cairo API for
	setting color and opacity. (#301066, Vincent Noel)
2005-04-15  Federico Mena Quintero  <>

	Merged from gtk-2-6:

	* gtk/gtkfilechooserdefault.c (pending_select_paths_process):
	Patch from Christian Neumair <>; only select the
	first row if we are in OPEN mode.  The only other case we were
	letting pass through was SELECT_FOLDER, but selecting the first
	row when changing folders confuses people when folders are
	actually being selected.  Fixes #171885.

2005-04-13  Matthias Clasen  <>

	* gtk/gtkimage.c (gtk_image_calc_size, gtk_image_expose): 
	Revert the fix for #169870, adjust the documentation instead. 

	* gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): 
	Revert the fix for #170727.	

2005-04-11  Ivan, Wong Yat Cheung  <>

	Fix #300218:

	* gdk/win32/gdkselection-win32.c (gdk_selection_convert): Fix

	* gtk/updateiconcache.c: Guard inclusion of unistd.h and

2005-04-09  Matthias Clasen  <>

	* gdk/x11/gdkinput-xfree.c:
	* gdk/x11/gdkinput-none.c:
	* gdk/gtk.symbols: Some more fixes necessary to 
	make building with gcc 4 work.

	Add 16x16 versions of the zoom icons and of 
	GTK_STOCK_INDEX. Some of the images were taken from 
	the hicolor icon theme, and were originally created 
	by Jakub Steiner and Tuomas Kuosmanen. 	(#167515, 
	Vincent Noel)
	* gtk/stock-icons/stock_index_16.png:
	* gtk/stock-icons/stock_zoom_1_16.png:
	* gtk/stock-icons/stock_zoom_fit_16.png:
	* gtk/stock-icons/stock_zoom_in_16.png:
	* gtk/stock-icons/stock_zoom_out_16.png: New images.
	* gtk/stock-icons/ Add the new images. 

	* gtk/gtkimage.c (gtk_image_calc_size, gtk_image_expose): 
	Don't display too many broken images.  (#169870, Roman
	Kagan, patch by Ivan Wong)

	* gtk/gtkwidget.c (gtk_widget_unparent): Remove debugging
	output.  (#300013, Tommi Komulainen)

2005-04-08  Matthias Clasen  <>

	* gtk/gtkimage.c (gtk_image_expose, gtk_image_calc_size): 
	If a stock_id is unknown, display the missing image. (#169870,
	Steven Walter)

	* gtk/gtkiconcache.c (icon_name_hash): Use the same function 
	as in updateiconcache.c.  (spotted by Morten Welinder)

2005-04-08  Carl Worth  <>

	* gdk/gdkpango.c: (emboss_context): Simplify matrix manipulation
	now that cairo exposes the cairo_matrix_t structure.
	* gdk/gdkpixbuf-render.c: (gdk_pixbuf_set_as_cairo_source): Track
	cairo API change in signedness of data argument.

2005-04-08  Matthias Clasen  <>

	* gtk/gtkcombobox.c (gtk_combo_box_popdown): Make this
	work when called from gtk_combo_box_destroy().  (#172999,
	Christian Persch)

2005-04-08  Matthias Clasen  <>

	Fix double-click to autosize treeview columns. This was
	probably broken since 2.2 ! (#169675)
	* gtk/gtktreeview.c (gtk_tree_view_button_press): Leave the
	"user-resized" state of the column on a double-click to
	(gtk_tree_view_button_press, gtk_tree_view_motion_resize_column): 
	Enter the "user-resized" state of the column only if a drag
	actually changes the column width, not on any click.

2005-04-07  Matthias Clasen  <>

	* gtk/gtkmenu.c (gtk_menu_paint): Allow setting background
	images on menus.  (#169532, Benjamin Otte)
	* gtk/updateiconcache.c (write_card16, write_card32): Avoid
	unaligned access.  (#172947)

	* gtk/gtkfilechooserdefault.c (file_list_build_popup_menu): 
	Consistently use the term "Bookmarks" in the UI.  (#166906,
	Sebastian Bacher)

	Some fixes from Morten Welinder (#172947):
	* gtk/updateiconcache.c (icon_name_hash): Make this compiler- 
	and platform-independent.
	(is_cache_up_to_date): Don't compare mtimes is a stat call failed.
	(build_cache): Error out if a stat fails.  

2005-04-07  Matthias Clasen  <>

	* gtk/gtktreeview.c (gtk_tree_view_set_expander_column): Add 
	a hint about hiding expanders.

	* gtk/updateiconcache.c (is_cache_up_to_date): Return 
	TRUE if the cache is newer than the directory.  (#172852,
	Jacob Kroon)

	* Replace an explicit pkg-config by 
	$PKG_CONFIG.  (#168074, Hans-Wolfgang Loidl)
	* gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
	Ignore regions which fall completely outside the line.  
	(#165862, Felipe Heidrich)

2005-04-06  Matthias Clasen  <>

	* gtk/gtktreeview.c (gtk_tree_view_set_search_column): Document
	-1 as possible value.  
	(gtk_tree_view_enable_model_drag_dest): Pass the target list 
	to the underlying dnd implementation, otherwise we miss the 
	target info in the drag-data-received signal.  (#164085, Jorn

2005-04-06  Matthias Clasen  <>

	* gtk/gtktreeview.c (gtk_tree_view_motion_resize_column) 
	(gtk_tree_view_bin_expose): Avoid a few unnecessary calls
	to gdk_window_get_pointer(). (#168015, Billy Biggs)

	* po/.cvsignore, po-properties/.cvsignore: Remove  (#171092, Stepan Kasal)

	* gtk/gtkrc.c (gtk_rc_parse_style): Don't modify 
	scanner->value, copy it first.  (#165693, Tommi Komulainen)

2005-04-05  Matthias Clasen  <>

	* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_grab_focus): 
	* gtk/gtkcombobox.c (gtk_combo_box_grab_focus): Implement
	grab_focus for GtkComboBox and GtkComboBoxEntry.  (#171912,
	Gustavo Carneiro)

	* gtk/gtkicontheme.c: Store icon caches along with the
	mtimes of the toplevel directories. The previous
	mechanism of a hashtable-per-theme caused duplicate icon
	caches for the same toplevel directory to be created.  

2005-04-05  Matthias Clasen  <>

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_build_level): 
	Fix a typo in a warning.

	* gtk/gtkaboutdialog.c (gtk_about_dialog_init): Protect
	the license and credits buttons from being affected by 
	gtk_widget_show_all().  (#172724)

2005-04-05  Matthias Clasen  <>

	* gtk/gtkmenushell.c (gtk_menu_shell_activate_item): Keep a 
	reference to the item.  (#167920, Hazael Maldonado Torres)

	* gtk/gtktreeview.c (gtk_tree_view_set_search_column): Add some
	more docs on interactive search.

2005-04-05  Tor Lillqvist  <>

	* gdk/win32/gdkvisual-win32.c (_gdk_visual_init): Handle 16 colour
	display mode. For some reason, in this mode GetDeviceCaps(BITSPIXEL)
	returns 1 (but GetDeviceCaps(NUMCOLORS)	does return 16). (#143415)

	* gdk/win32/gdkvisual-win32.c (_gdk_visual_init): Don't force
	24bpp GdkVisual on 32bpp displays. (#140706)

Mon Apr  4 19:13:23 2005  Jonathan Blandford  <>

	Fix for #172319, Tristan Van Berkom:
	* gtk/gtktreeview.c (gtk_tree_view_expand_all): change to use
	gtk_tree_view_real_expand_row() instead of doing this by hand.

2005-04-04  Johan Dahlin  <>

	* gtk/gtktextbuffer.c: (gtk_text_buffer_class_init),
	(gtk_text_buffer_set_property), (gtk_text_buffer_get_property),
	(gtk_text_buffer_set_text): Add GtkTextBuffer::text (#172631)

Mon Apr  4 14:33:55 2005  Manish Singh  <>

	* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_get_active_text):
	cast combo->priv->entry to GTK_ENTRY()

	* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
	cast completion->priv->tree_view to GTK_TREE_VIEW()

2005-04-04  Matthias Clasen  <>

	* gtk/gtktextbuffer.c: Some trivial doc fixes.

	* gtk/gtkwidget.c (gtk_widget_set_redraw_on_allocate): Improve 
	the wording of the doc comment.  (#172422, Vincent Untz)

2005-04-04  Owen Taylor  <>

	* gtk/gtkstyle.c (gtk_default_draw_expander): Covert expander
	drawing to Cairo. Also always draw the entire triangle instead
	of just drawing the center for prelight. (Fixes inconsistent
	drawing in GtkTreeView.)

2005-04-04  Johan Dahlin  <>

	* gtk/gtk.symbols: Remove symbols accidentally added.
	* gtk/gtkentryprivate.h: Add boolean property popup_set_width
	* gtk/gtktoggletoolbutton.c: (gtk_toggle_tool_button_class_init):
	Use object_class instead of gobject_class

Mon Apr  4 12:14:35 2005  Søren Sandmann  <>

	* gtk/gtkmenu.c (gtk_menu_handle_scrolling): Translate x, y into
	widget coordinates instead of root coordinates. Patch from Jorn
	Baayen. (#172236)

2005-04-04  Matthias Clasen  <>

	* gtk/gtktoolbar.c: Add a tooltips property.

	* gtk/gtkradiomenuitem.c (gtk_radio_menu_item_class_init): 
	* gtk/gtkruler.c (gtk_ruler_class_init): Add docs.

	* gtk/gtktoggletoolbutton.c: Add an active property.

2005-04-04  Matthias Clasen  <>

	Allow completion popups to be wider than the entry. (#131916, 
	Ross Burton)
	* gtk/gtkentrycompletion.[hc]: Add a boolean popup-set-width property.

	* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
	Don't force the popup to have the same width as the entry if 
	popup-set-width is FALSE.

	* gtk/gtk.symbols: Add new functions.

2005-04-04  Matthias Clasen  <>

	* gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): 
	Use gtk_accel_map_change_entry(), so that reusing the same
	action name works.  (#170727, Paolo Borelli)

2005-04-04  Tor Lillqvist  <>

	* gdk/win32/gdkmain.c (_gdk_win32_cf_to_string): New debugging
	function, to log a clipboard format name symbolically.
	(_gdk_win32_data_to_string): Also new, to log random data bytes.

	Implement delayed rendering on Win32, specifically for transfering
	images through the clipboard from GTK+ apps to other
	apps (#168173, implementation by Ivan Wong):

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): 

	* gdk/win32/gdkprivate-win32.h
	* gdk/win32/gdkglobals-win32.c: Add _format_atom_table,
	_delayed_rendering_data and _image_bmp.

	* gdk/win32/gdkmain-win32.c: Initialize _image_bmp.

	* gdk/win32/gdkproperty-win32.c (gdk_property_change):
	Accept formats other than GDK_TARGET_STRING or _utf8_string, and
	assume they are handled through delayed rendering.

	* gdk/win32/gdkselection-win32.c (gdk_selection_convert):
	Return all available formats (including those registered by GTK+
	apps) on request_targets.
	(gdk_selection_property_get): We should append a zero byte like
	X11 does.
	(gdk_win32_selection_add_targets): New function, for
	gtkselection's use. Win32 requires that the clipboard owner
	registers all valid formats even if the owner wants delayed
	(_gdk_win32_selection_convert_to_dib): New function. Convert
	images to DIB using gdk-pixbuf.

	* gdk/win32/gdkwin32.h: Declare gdk_win32_selection_add_targets().

	* gtk/gtkselection.c (gtk_selection_add_target,
	gtk_selection_add_targets): Call gdk_win32_selection_add_targets()
	to register target formats.

	* gdk/gdk.symbols: Add gdk_win32_selection_add_targets().

2005-04-03  Hans Breuer  <>

	[merged from gtk-2-6 branch]
	* gdk/win32/gdkdrawable-win32.c : let dash_offset shift the start of
	the line pattern not the start of the line. Fixes bug #171641.

	* gtk/ : follow .symbols changes

	* gdk/win32/gdkwindow-win32.c : declare and resolve GetAncestor()
	dynamically. (It is not available in _WIN_VER <= 0x0400)

	* gdk/win32/makefile.msc : removed gdkpango-win32.obj

	* gtk/gtkhsv.c gtk/gtkstyle.c : use G_PI instead of M_PI

	[also applied to gtk-2-6 branch]
	* gdk/makefile.msc gdk-pixbuf/makefile.msc : handle gdk*alias.def

	* gdk/ : add gtkmnemonichash.obj

	* test/testgtk.c(set_parent_signal) : use g_message instead of
	g_print to keep the 'testgtk --bench=all' output clean

2005-04-03  Matthias Clasen  <>

	* gtk/gtkruler.c: Add a "metric" property.

	* gtk/gtkradiomenuitem.c: Add a "group" property like
	the one found in radio buttons.

	* gtk/gtkradiobutton.c (gtk_radio_button_class_init): Fix
	a typo in the docs.
	(gtk_radio_button_set_group): Add change notification.
2005-04-01  Matthias Clasen  <>

	* gtk/gtkselection.c: Move documentation inline, document
	if add_target functions append or prepend.  (#172350, 
	Jon-Kare Hellan)

2005-04-01  Matthias Clasen  <>

	Make gtk_combo_box_get_active_text do the right thing for
	GtkComboBoxEntry (#171373, Robert Staudinger)
	* gtk/gtkcombobox.h: Add a get_active_text vfunc.
	* gtk/gtkcombobox.c (gtk_combo_box_real_get_active_text): And
	implement it here.

	* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_get_active_text): 
	Implement get_active_text by always returning the content of 
	the entry.

2005-03-31  Sven Neumann  <>

	Merged from gtk-2-6:

	* gtk/gtkbutton.c
	* gtk/gtkiconview.c: fixed gtk-doc comments.

2005-03-31  Michael Natterer  <>

	Allow to pop up menus without grabbing the keyboard. Useful for
	stuff like virtual keyboards. Fixes bug #159890

	* gtk/gtk.symbols
	* gtk/gtkmenushell.[ch]: added boolean property "take-focus"
	and public API gtk_menu_shell_set/get_take_focus().

	* gtk/gtkmenu.c (gtk_menu_popup)
	(popup_grab_on_window): don't grab the keyboard if take_focus
	is FALSE.

	* gtk/gtkmenuitem.c (_gtk_menu_item_popup_submen): propagate the
	parent menu_shell's take_focus property to the submenu which is
	about to be popped up.

2005-03-30  Federico Mena Quintero  <>

	Merged from gtk-2-6:

	Fix #170755:

	* gtk/gtktreeview.c (gtk_tree_view_row_changed): Only stop editing
	if the row which changed is the same as the row being edited.

2005-03-30  Matthias Clasen  <>

	* gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search): 
	Make enable_search control only typeahead, not C-f.  (#170435,
	Sven Neumann)
	(gtk_tree_view_start_interactive_search): Pass keybinding == TRUE.

	* gdk/gdkpixbuf.h: Include cairo.h

	* gtk/gtkclipboard.c (gtk_clipboard_set_can_store): 
	Don't accept n_targets == -1.
	(clipboard_unset): unref the old_data, not the
	user_data which we have just cleared.  (#172038, Sven

	* gtk/gtkcombobox.c (gtk_combo_box_popup): Don't 
	segfault if somebody tries to popup an unrealized
	combo box.  (#172031, Felipe Heidrich)

2005-03-30  Tor Lillqvist  <>

	* gdk/win32/gdkevents-win32.c (build_pointer_event_state): The
	state field should represent the state before the event, like on
	X11. (#169753)
	(gdk_event_translate): Fix event filter handling. If an event
	filter (global, client message filter, of window-specific) returns
	GDK_FILTER_CONTINUE, continue as if nothing happened. If it
	from gdk_event_translate() which means that DefWindowProc() will
	not be called.
	(gdk_event_translate): Fix client message handling. Append a
	GDK_CLIENT_EVENT unless there is a filter that matches and returns
	something other than GDK_FILTER_CONTINUE. (#135552)

2005-03-29  Matthias Clasen  <>

	* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_set_visible_func): 
	Document the need to refilter if parameters of the visibility function
	change.  (#169516, Olivier Sessink)	

Mon Mar 28 15:13:42 2005  Søren Sandmann  <>

	* gdk/gdkwindow.c (gdk_window_invalidate_maybe_recurse): Don't
	invalidate areas that are covered by mapped input-output child
	windows. Bug 141380.

2005-03-28  Jeroen Zwartepoorte  <>

	* gtk/gtkfilechooserdefault.c: (update_preview_widget_visibility): Make
	the preview label ellipsize so the dialog layout stays constant.

2005-03-28  Matthias Clasen  <>

	* gtk/gtktreeview.c (gtk_tree_view_key_press): Don't pop up
	the context menu of the search entry if it is not visible.
	(#169534, Billy Biggs)

2005-03-27  Tor Lillqvist  <>

	* Apparently AC_LIBTOOL_WIN32_DLL isn't deprecated
	after all, and in fact necessary with HEAD libtool.

2005-03-26  Matthias Clasen  <>

	* gtk/*.c: 
	* gdk/gdkdisplaymanager.c: 
	Use canonical names for g_object_notify() as well. 

2005-03-24  Tor Lillqvist  <>

	* (GTK_EXTRA_CFLAGS): Include the -mms-bitfields flag
	in GTK_EXTRA_CFLAGS on Win32, so that it gets included in the
	gtk+-2.0.pc file and automatically used by dependents. MSVC users
	who use pkg-config will have to manually edit it out from
	gtk+-2.0.pc, sorry. Maybe pkg-config should be enhanced to support
	some kind of conditionals in .pc files?

2005-03-23  Matthias Clasen  <>

	* gtk/gtkfilechooserbutton.c (update_combo_box): Remove
	a call whose result was unused and leaked.  (#170776,
	Kjartan Maraas)

	Some cleanups to the GtkDialog code:  (#170746, 
	Morten Welinder)
	* gtk/gtkdialog.c (action_widget_activated): Simplify,
	use _gtk_dialog_get_response_for_widget.
	(gtk_dialog_add_action_widget): Use the correct signal
	id for non-buttons.
	(gtk_dialog_set_default_response): Use get_response_data.
	(gtk_dialog_run): Don't disconnect the signals if the
	dialog was destroyed while running.

Tue Mar 22 14:16:31 2005  Manish Singh  <>

	* gtk/gtkfilesystem.c (gtk_file_system_set_bookmark_label):
	Use g_return_if_fail, not g_return_val_if_fail.

2005-03-22  Matthias Clasen  <>

	Implement bookmark renaming  (#136216, Sean Middleditch)
	* gtk/gtkfilesystem.h (struct _GtkFileSystemIface): Add 
	get_bookmark_label and set_bookmark_label vfuncs.

	* gtk/gtkfilesystem.h:
	* gtk/gtkfilesystem.c (gtk_file_system_set_bookmark_label): 
	(gtk_file_system_get_bookmark_label): Wrappers for the

	* gtk/gtk.symbols: Add new exported symbols.

	* gtk/gtkfilesystemunix.c (gtk_file_system_unix_set_bookmark_label): 
	(gtk_file_system_unix_get_bookmark_label): Implementations
	for the Unix backend.

	* gtk/gtkfilechooserdefault.c: Add a context menu to
	the bookmarks pane, and allow to rename bookmarks.

2005-03-22  Matthias Clasen  <>

	* gtk/gtkpathbar.c (gtk_path_bar_unmap): 
	* gtk/gtkspinbutton.c (gtk_spin_button_unmap): 
	* gtk/gtknotebook.c (gtk_notebook_unmap): 
	* gtk/gtkrange.c (gtk_range_unmap): Stop scrolling when
	the widget is unmapped.  (#168791, Ryan Lortie)

2005-03-21  Matthias Clasen  <>

	* gtk/gtkprivate.h: Define macros GTK_PARAM_READABLE,
	their G_ counterparts, but also mark the name, nick
	and blurb as static.

	* gtk/*.c: Mark param spec strings as static, using
	the new macros.

	* gtk/gtkspinbutton.h: Fix a typo.

2005-03-21  Matthias Clasen  <>

	* gtk/gtkcellrendererprogress.c: 
	* gtk/gtkcellrendererpixbuf.c: 
	* gtk/gtkcellrenderercombo.c: 
	* gtk/gtkcellrenderer.c: 
	* gtk/gtkcalendar.c: 
	* gtk/gtkbutton.c: 
	* gtk/gtkbox.c: 
	* gtk/gtkbbox.c: 
	* gtk/gtkaspectframe.c: 
	* gtk/gtkarrow.c: 
	* gtk/gtkalignment.c: 
	* gtk/gtkactiongroup.c: 
	* gtk/gtkaction.c:
	* gtk/gtkaccellabel.c: 
	* gtk/gtkaboutdialog.c: Mark param spec strings as static.

	* gdk/gdkpango.c (gdk_pango_renderer_class_init): 
	* gdk/gdkdisplaymanager.c (gdk_display_manager_class_init): Mark
	param spec strings as static.

2005-03-21  Tor Lillqvist  <>

	* modules/engines/ms-windows/*.c: Silence gcc warnings (unused
	variables, unhandled enum value in switch). Use g_object_unref()
	instead of deprecated gdk_gc_unref() and gdk_drawable_unref().

	* modules/engines/ms-windows/xp_theme.c (xp_theme_map_gtk_state): 
	Add missing "case" keyword.

	* modules/engines/ms-windows/ Link with -lgdi32

2005-03-20  Tor Lillqvist  <>

	* gdk/win32/gdkdisplay-win32.c (gdk_display_get_name): Return the
	Terminal Services session number, window station name (always
	"WinSta0" in interactive processes), and desktop name (typically
	"Default"), concatenated with backslash separators.
	(gdk_display_open): Accept only NULL or the string
	gdk_display_get_name() returns as display name.

2005-03-20  Matthias Clasen  <>

	Make PLT-reduction work with gcc4, and don't include
	everything in gdkalias.h:
	* gtk/grk.symbols: Group symbols by header and source file.
	* gtk/ Protect definitions by the same 
	preprocessor symbols used to guard the headers. Move
	the alias declarations to a separate file which is 
	produced when calling -def
	* gdk/ (gtkaliasdef.c): Add a rule to generate 
	this file.
	* gtk/*.c: Include gtkalias.h after the other headers, 
	include gtkaliasdef.c at the bottom.
	* gtk/*.h: Small cleanups.

Fri Mar 18 23:59:49 2005  Soeren Sandmann  <>

	* gtk/gtkmenutoolbutton.c (arrow_button_button_press_event_cb):
	Make right-clicks not pop up the menu.

2005-03-18  Owen Taylor  <>

	* gdk/x11/gdkdrawable-x11.c (_gdk_x11_drawable_finish): 
	Call cairo_surface_finish()

	* gdk/gdkinternals.c gdk/x11/gdkdrawable-x11.c: Remoev

2005-03-18  Tor Lillqvist  <>

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): On
	WM_MOUSEMOVE, don't check if this process owns the active
	window. This makes cross-application widget embedding work better.
	On WM_MOVE, don't bother checking for window visibility.

	* gdk/win32/gdkim-win32.c: Remove bogus empty doc comment. Remove
	unused variables. Add some casts to silence gcc.

2005-02-24  Owen Taylor  <>

	* gdk/gdkwindow.c: Use cairo_set_device_offset().

	* gdk/win32/gdkdrawable-win32.[ch] gdk/win32/gdkwindow-win32.c
	Add_gdk_win32_drawable_acquire/release_dc() to get a DC for the 
	drawable. Add _gdk_drawable_win32_finish() to clean up resources
	when a drawable is destroyed.

	* gdk/win32/gdkgc-win32.c gdk/win32/gdkdrawable-win32.c
	(blit_from_pixmap) gdk/win32/gdkprivate-win32.h : Use 
	acquire/release_dc when getting a DC to use with a GC or for 
	blitting from a pixmap.

	* gdk/win32/gdkdrawable-win32.[ch]: Implement ref_cairo_surface()

	* gdk/win32/gdkpango-win32.c gdk/win32/gdkdrawable-win32.c
	Remove gdk_screen_get_pango_context(), draw_glyph[_transformed]

	* gdk/win32/gdkdrawable-win32.c: Remove 

2005-03-17  Owen Taylor  <>

	* gdk/gdkpango.c: Fix get_stipple_surface to actually work, set
	EXTEND_REPEAT on the stipple pattern.

2005-03-17  Matthias Clasen  <>

	* gtk/gtklabel.c (gtk_label_set_markup): Fix formatting
	in example in the docs.  (#170611, Jianfei Wang)

	* gtk/gtkiconview.c (gtk_icon_view_size_allocate): Clamp
	adjustment values on resize.  (#170567, Tomislav Jonjic)

	* gtk/gtkicontheme.c (theme_lookup_icon): Don't crash
	if there is no cache.  (#170652, Diego Gonzalez)
	* gtk/gtkentrycompletion.c (gtk_entry_completion_real_insert_prefix): 
	Make inline completion insert the prefix at the
	right spot.  (#170146, Doug Quale)

2005-03-17  Tor Lillqvist  <>

	* gdk/gdkkeynames.c: gdk_key is a typedef, not a struct tag.

2005-03-16  Matthias Clasen  <>

	* gtk/gtkprogressbar.c (gtk_progress_bar_get_ellipsize): 
	Typo fix in the docs.
	* gtk/gtkmenutoolbutton.c (gtk_menu_tool_button_set_arrow_tooltip): 
	Typo fix in the docs.

	* gtk/gtkiconview.c (gtk_icon_view_set_columns) 
	(gtk_icon_view_get_columns, gtk_icon_view_set_item_width) 
	(gtk_icon_view_get_item_width, gtk_icon_view_set_spacing) 
	(gtk_icon_view_get_spacing, gtk_icon_view_set_row_spacing) 
	(gtk_icon_view_get_row_spacing, gtk_icon_view_get_margin) 
	(gtk_icon_view_set_margin): Add docs.
	* gtk/gtkcellview.c (gtk_cell_view_get_displayed_row): 
	Add docs.

2005-03-15  Owen Taylor  <>

	* gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkpixmap.c gdk/gdkwindow.c 
	gdk/x11/gdkdrawable-x11.c gdk/x11/gdkpixmap-x11.c gdk/x11/gdkwindow-x11.c
	gdk/gdkinternals.h: Switch set_cairo_target() virtual function to

	* gdk/gdkdrawable.h gdk/gdkdraw.h: Switch set_cairo_target() virtual
	function to create_cairo_context()

	* gdk/gdkwindow.c: Clear double buffer pixmaps with Cairo.

	* gdk/x11/gdkwindow-x11.c: Keep all components in GdkWindowObject.bg_color,
	not just the pixel.

	* tests/testcairo.c: Update for create_cairo_context()

	* gdk/gdkdraw.c (gdk_draw_trapezoids, gdk_draw_glyphs[_transformed]):
	Reimplement in terms of Cairo, bypass the vtable entries.

	* gdk/x11/gdkdrawable-x11.[ch] gdk/x11/gdkdisplay-x11.[ch]
	gdk/x11/gdkgc-x11.c gdk/x11/gdkpango-x11.c
	gdk/x11/gdkprivate-x11.h gdk/x11/ Remove
	implementation of draw_trapezoids / draw_glyphs[_transformed].

	* gdk/gdkpango.c: Switch GdkPangoRenderer to use Cairo

	* gdk/gdkpango.c gdk/x11/gdkpango-x11.c: Move
	gdk_pango_context_get_for_screen() into the backend independent code.

	* gdk/x11/gdkdrawable-x11.[ch]: Remove Xft use, use RENDER directly
	for drawing images.

	* gdk/gdkdrawable.h gdk/x11/gdkdrawable-x11.c: Remove

	* gdk/gdkpixbuf.h gdk/gdkpixbuf-render.c: Add 

	* gdk/gdk.symbols: Update

	* gtk/gtkcolorsel.c gtk/gtkhsv.c gtk/gtkiconview.c gtk/gtkruler.[ch]
	gtk/gtk[hv]ruler.c: Convert to Cairo rendering.

	* gtk/gtkstyle.c (gtk_default_draw_check, gtk_default_draw_focus,
	gtk_default_draw_option): Switch to Cairo. Simplify the checkbutton,
	radio button style for now to get something more scalable.

	*  gtk/gtksettings.c: #if 0 out the code to use PangoXft for hinting/
	antialiasing/dpi settings.

2005-03-16  Matthias Clasen  <>

	* demos/gtk-demo/editable_cells.c: Also demonstrate
	GtkCellRenderer::editing-started and separators.

Tue Mar 15 20:34:33 2005  Manish Singh  <>

	* gdk/x11/gdkinput-xfree.c: #include gdkaliasdef.c here too.

2005-03-15  Matthias Clasen  <>

	Make PLT-reduction work with gcc4, and don't include
	everything in gdkalias.h:

	* gdk/gdk.symbols: Group symbols by header and source file.
	* gdk/ Protect definitions by the same
	preprocessor symbols used to guard the headers. Move
	the alias declarations to a separate file which is
	produced when calling -def
	* gdk/ (gdkaliasdef.c): Add a rule to generate this
	* gdk/*.c, gdk/x11/*.c: Include gdkalias.h after the other
	headers, include gdkaliasdef.c at the bottom.

2005-03-16  Tor Lillqvist  <>

	* gdk/win32/gdkdisplay-win32.c (_win32_on_clipboard_change): Print
	debugging output only if asked for, not always.

	* gdk/win32/*.c: Use the %+d%+d format for coordinate pairs in
	debugging printout instead of +%d+%d. Misc other additions and
	cosmetic improvements to debugging printouts. Use API_CALL() and
	GDI_CALL() macros in more places.

	* gdk/win32/gdkwindow-win32.c (gdk_window_move, gdk_window_resize,
	gdk_window_move_resize): To detect child windows, check whether
	the real parent is not the desktop window, instead of relying on
	the GDK window type being GDK_WINDOW_CHILD. Foreign GtkPlug
	windows have a GDK window type GDK_WINDOW_FOREIGN, but are still
	de facto child windows.

	* gdk/win32/gdkprivate-win32.h
	* gdk/win32/*.c: Drop global variable _gdk_root_window, just call
	GetDesktopWindow(). Rename the GdkWindow* _gdk_parent_root to

	* gdk/win32/gdkwindow-win32.h (GdkWindowImplWin32): Add
	toplevel_window_type field.

	* gdk/win32/gdkwindow-win32.c: As there is only one root window in
	GDK on Win32, we can compare directly to _gdk_root instead of
	checking the window type.
	(gdk_window_reparent): When reparenting a child of the desktop
	clear out the window decorations. Correspondingly, when
	reparenting to the desktop, add decorations. As in the X11
	backend, save the window type of a toplevel window when
	reparenting, in case it is reparented back to toplevel.

2005-03-15  Matthias Clasen  <>

	* gtk/gtkradioaction.c (gtk_radio_action_get_group): Add an
	example for manually setting up a group of actions.

	* gtk/gtkentrycompletion.c (gtk_entry_completion_class_init): 
	Document that inline completion requires text-column to be set.
	(gtk_entry_completion_compute_prefix): Return NULL if text-column
	is not set.

	* gtk/gtkentry.c (check_completion_callback): Call 
	gtk_entry_completion_complete() before inserting the prefix,
	otherwise the prefix may depend on (random) state of the
	filter model.  

2005-03-15  Anders Carlsson  <>

	* docs/iconcache.txt:
	Update spec.
	* gtk/gtkiconcache.c: (find_image_offset),
	(_gtk_icon_cache_get_icon_flags), (_gtk_icon_cache_add_icons),
	(_gtk_icon_cache_get_icon), (_gtk_icon_cache_get_icon_data):
	* gtk/gtkiconcache.h:
	Update to be able to fetch pixbuf data and icon metadata.
	* gtk/gtkicontheme.c: (theme_lookup_icon), (gtk_icon_info_free),
	Use new cache functions.
	* gtk/updateiconcache.c: (foreach_remove_func), (load_icon_data),
	(maybe_cache_image_data), (scan_directory), (write_pixdata),
	(get_image_meta_data_size), (get_image_pixel_data_size),
	(get_image_data_size), (get_single_node_size), (get_bucket_size),
	(write_bucket), (main):
	Update to write pixbuf data as well as information from .icon
2005-03-15  Tor Lillqvist  <>

	* gdk/win32/gdkmain-win32.c (_gdk_win32_key_to_string): New
	debugging function. As GetKeyNameText() returns a localized key
	name we need to convert it to UTF-8.

	* gdk/win32/gdkprivate-win32.h: Declare it.

	* gdk/win32/gdkevents-win32.c: Use it.

	* gdk/win32/gdkwindow-win32.c (gdk_window_new_internal): Fix
	handling of children of foreign windows. They should be child
	windows from Windows's perspective, even if they are toplevel GDK

2005-03-13  Ivan, Wong Yat Cheung  <>

	* gdk/win32/gdkgeometry-win32.c (gdk_window_scroll): A further fix
	for big window support. Now also the test in testgtk works.

2005-03-11  Matthias Clasen  <>

	* gtk/gtkaboutdialog.c (add_credits_page): Don't crash on
	style changes.  (#169334, Yury Puzis)

	* gtk/gtkicontheme.c (gtk_icon_theme_set_custom_theme): Fix
	the doc comments.  (#169967, Masao Mutoh)

2005-03-12  Ivan, Wong Yat Cheung  <>

	Big window fix for Win32. Big windows are still emulated within
	16-bit coordinate limits, though. Big windows now work on NT-based
	Windows. (#169989)

	* gdk/win32/gdkgc-win32.c (_gdk_win32_gdkregion_to_hrgn): Use
	32-bit coordinates.

	* gdk/win32/gdkgeometry-win32.c: Largely rewrite.

	* gdk/win32/gdkwindow-win32.c: Minor related changes.
2005-03-10  Matthias Clasen  <>

	* gtk/gtkliststore.c (gtk_list_store_insert_with_valuesv): 
	Fix a doc typo.  (#169873, Johan Dahlin)

	* gtk/gtkdialog.c (gtk_dialog_map): Don't
	try to focus the default_widget if there is 
	none.  (#169881, Thomas Leonard)

Wed Mar  9 19:20:44 2005  Manish Singh  <>

	* Remove inadvertent gail references, require
	Pango 1.9.0

2005-03-09  Matthias Clasen  <>

	* Require GLib 2.7.0

2005-03-09  Matthias Clasen  <>

	* gtk/gtkwidget.h (struct _GtkWidget): Typo fixes in comments.
	(#169728, Morten Welinder, Owen Taylor)

	* gtk/gtkwidget.c (gtk_widget_add_mnemonic_label): Fix a typo
	in the docs.  (#169729, Morten Welinder)

	* gtk/gtkimage.c (gtk_image_class_init): Fix a typo.

	* gtk/gtkiconview.c (gtk_icon_view_set_model): Queue a resize 
	when the model is unset.  (#169528, Tomislav Jonjic)

2005-03-09  Matthias Clasen  <>

	* gtk/gtkviewport.c (gtk_viewport_class_init): 
	* gtk/gtkuimanager.c (gtk_ui_manager_class_init): 
	* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_class_init): 
	* gtk/gtktipsquery.c (gtk_tips_query_class_init): 
	* gtk/gtktext.c (gtk_text_class_init): 
	* gtk/gtkstatusbar.c (gtk_statusbar_class_init): 
	* gtk/gtkspinbutton.c (gtk_spin_button_class_init): 
	* gtk/gtktoggleaction.c (gtk_toggle_action_class_init): 
	* gtk/gtkoptionmenu.c (gtk_option_menu_class_init): 
	* gtk/gtkoldeditable.c (gtk_old_editable_class_init): 
	* gtk/gtkmessagedialog.c (gtk_message_dialog_class_init): 
	* gtk/gtktoolbutton.c (gtk_tool_button_class_init): 
	* gtk/gtktoolitem.c (gtk_tool_item_class_init): 
	* gtk/gtkimage.c (gtk_image_class_init): 
	* gtk/gtkruler.c (gtk_ruler_class_init): 
	* gtk/gtkiconview.c (gtk_icon_view_class_init): 
	* gtk/gtkprogressbar.c (gtk_progress_bar_class_init): 
	* gtk/gtkprogress.c (gtk_progress_class_init): 
	* gtk/gtkmenu.c (gtk_menu_class_init): 
	* gtk/gtkscale.c (gtk_scale_class_init): 
	* gtk/gtkpaned.c (gtk_paned_class_init): 
	* gtk/gtkhandlebox.c (gtk_handle_box_class_init): 
	* gtk/gtkfontbutton.c (gtk_font_button_class_init): 
	* gtk/gtkfontsel.c (gtk_font_selection_class_init): 
	* gtk/gtkfilesel.c (gtk_file_selection_class_init): 
	* gtk/gtkentrycompletion.c (gtk_entry_completion_class_init): 
	* gtk/gtkcurve.c (gtk_curve_class_init): 
	* gtk/gtkcombo.c (gtk_combo_class_init): 
	* gtk/gtkcombobox.c (gtk_combo_box_class_init): 
	* gtk/gtkcolorbutton.c (gtk_color_button_class_init): 
	* gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): 
	* gtk/gtkmenuitem.c (gtk_menu_item_class_init): 
	* gtk/gtkcheckbutton.c (gtk_check_button_class_init): 
	* gtk/gtktogglebutton.c (gtk_toggle_button_class_init): 
	* gtk/gtkcellview.c (gtk_cell_view_class_init): 
	* gtk/gtktoolbar.c (gtk_toolbar_class_init): 
	* gtk/gtkmenubar.c (gtk_menu_bar_class_init): 
	* gtk/gtkclist.c (gtk_clist_class_init): 
	* gtk/gtkctree.c (gtk_ctree_class_init): 
	* gtk/gtkcolorsel.c (gtk_color_selection_class_init): 
	* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_class_init): 
	* gtk/gtkcellrenderercombo.c (gtk_cell_renderer_combo_class_init): 
	* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_class_init): 
	* gtk/gtkcalendar.c (gtk_calendar_class_init): 
	* gtk/gtkbbox.c (gtk_button_box_class_init): 
	* gtk/gtktable.c (gtk_table_class_init): 
	* gtk/gtkaspectframe.c (gtk_aspect_frame_class_init): 
	* gtk/gtkframe.c (gtk_frame_class_init): 
	* gtk/gtkaction.c (gtk_action_class_init): 
	* gtk/gtkaccellabel.c (gtk_accel_label_class_init): 
	* gtk/gtkaboutdialog.c (gtk_about_dialog_class_init): 
	* gtk/gtkdialog.c (gtk_dialog_class_init): More of the same.

2005-03-08  Matthias Clasen  <>

	* gtk/gtktextbuffer.c (gtk_text_buffer_class_init): 
	* gtk/gtkrange.c (gtk_range_class_init): 
	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init): 
	* gtk/gtktexttag.c (gtk_text_tag_class_init): 
	* gtk/gtktextview.c (gtk_text_view_class_init): 
	* gtk/gtkscrollbar.c (gtk_scrollbar_class_init): 
	* gtk/gtknotebook.c (gtk_notebook_class_init): 
	* gtk/gtkentry.c (gtk_entry_class_init): 
	* gtk/gtkexpander.c (gtk_expander_class_init): 
	* gtk/gtkarrow.c (gtk_arrow_class_init): 
	* gtk/gtkalignment.c (gtk_alignment_class_init): 
	* gtk/gtkbutton.c (gtk_button_class_init): 
	* gtk/gtklabel.c (gtk_label_class_init): 
	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): 
	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
	* gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 
	* gtk/gtktreeview.c (gtk_tree_view_class_init): 
	* gtk/gtkbox.c (gtk_box_class_init): 
	* gtk/gtkwindow.c (gtk_window_class_init, gtk_window_class_init): 
	* gtk/gtkcontainer.c (gtk_container_class_init): 
	* gtk/gtkwidget.c (gtk_widget_class_init): 
	* gtk/gtkobject.c (gtk_object_class_init): Use canonical names
	when registering param specs.

	* demos/gtk-demo/editable_cells.c: Use GtkCellRendererCombo
	(#169607, Mark McLoughlin)
	* gtk/gtk.symbols: Add the new attributes here, too.

	* gtk/gtkwidget.h: 
	* gtk/gtktreeview.h: 
	* gtk/gtktreeviewcolumn.h: 
	* gtk/gtktextbuffer.h: 
	* gtk/gtkobject.h: 
	* gtk/gtkfilechooserdialog.h: 
	* gtk/gtkdialog.h: 
	* gtk/gtkcontainer.h: 
	* gtk/gtkcelllayout.h: 
	* gtk/gtkaboutdialog.h: Use G_GNUC_NULL_TERMINATED where
	appropriate.  (#165682, Marc Meissner)

2005-03-07  Matthias Clasen  <>

	Convert the gdk keyval-keyname tables to a big string
	+ offsets. (#168901)
	* gdk/ Perl script inspired by
	pango/tools/ to create the 
	gdk_keys_by_keyval and gdk_keys_by_name tables as lists
	of offsets pointing into a big const string.
	* gdk/keynames.txt: List of keyval-keyname pairs.
	* gdk/keyname-table.h: Generated tables.

	* gdk/gdkkeynames.c: Include keyname-table.h and don't
	generate the inverse table at runtime.

2005-03-07  Matthias Clasen  <>

	* gtk/gtkstyle.c: Document which parameters may be NULL.  
	(#166855, Frank Naumann)

2005-03-07  Matthias Clasen  <>

	* AUTHORS: Add original authors of incorporated software.

Thu Mar  3 16:59:44 2005  Manish Singh  <>

	* URL escape the '+' in gtk+ in the bugzilla URL.

2005-03-03  Matthias Clasen  <>

	* gtk/gtksettings.c (gtk_settings_get_property): 
	* gtk/gtkrc.c (gtk_rc_parse_assignment): Don't leak 
	the values here.  (#169047, Philip Langdale)

	* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): 
	Don't warn if a stock icon cannot be found.  (#168830,
	Sven Neumann)

2005-03-03  Matthias Clasen  <>

	* gtk/gtkwidget.c (gtk_widget_reparent_subwindows): 
	Avoid warnings if gtk_widget_reparent() is called at
	unusual times.  (#168966, Christian Persch)

Tue Mar  1 14:04:08 2005  Manish Singh  <>

	* gdk/x11/gdkproperty-x11.c (virtual_atom_check_init): Cast to avoid
	const warnings on data structure seeding.

Tue Mar  1 13:53:56 2005  Manish Singh  <>

	* gtk/xdgmime/xdgmime.[ch]: revert previous change, maintain ABI.

2005-03-01  Matthias Clasen  <>

	* gtk/gtkmenutoolbutton.c (button_state_changed_cb): 
	Fix prelighting.  (#157392, Vincent Noel, patch by
	Christian Persch)

	* gtk/gtkicontheme.c (theme_lookup_icon): Make 
	icon data caching work again.  (#168851, Alexander Larsson)

	* gdk-pixbuf/gdk-pixbuf.c:
	* gdk-pixbuf/
	Revert the previous change, since it breaks
	bin compat.

2005-03-01  Matthias Clasen  <>

	* gdk/gdkkeyuni.c
	* gdk/gdkpixbuf-drawable.c
	* gdk/gdkrgb.c
	* gdk/x11/gdkdnd-x11.c
	* gdk/x11/gdkevents-x11.c
	* gdk/x11/gdkproperty-x11.c
	* gdk/x11/gdkvisual-x11.c
	* gdk-pixbuf/gdk-pixbuf.c
	* gdk-pixbuf/
	* gtk/gtkaction.c
	* gtk/gtkbindings.c
	* gtk/gtkcolorbutton.c
	* gtk/gtkcombo.c
	* gtk/gtkcontainer.c
	* gtk/gtkfilechooserdefault.c
	* gtk/gtkfilesel.c
	* gtk/gtkgamma.c
	* gtk/gtkiconview.c
	* gtk/gtkinputdialog.c
	* gtk/gtkitemfactory.c
	* gtk/gtkmenu.c
	* gtk/gtktextview.c
	* gtk/gtktooltips.c
	* gtk/gtktreedatalist.c
	* gtk/gtkuimanager.c
	* gtk/tree_minus.xpm
	* gtk/tree_plus.xpm
	* gtk/xdgmime/xdgmime.c
	* gtk/xdgmime/xdgmime.h: 
	Move constant data to .rodata.

2005-02-27  Matthias Clasen  <>

	* gtk/gtkaction.c (connect_proxy): Improve the handling
	of buttons as action proxys.  (#165534, Milosz Derezynski)

	* gtk/gtklabel.c (gtk_label_size_request): Fix a typo.
	(#168646, Vincent Untz)

	* gtk/gtkfilechooserdefault.c (save_folder_combo_create): 
	Unset "focus-on-click" for the save folder combo.  (#168688,
	Sven Neumann)

2005-02-25  Matthias Clasen  <>

	* demos/testpixbuf.c (main): Remove a C++ comment.  (#168531, 
	Paul Cornett)

	* gtk/gtkcombobox.c (gtk_combo_box_menu_fill_level): Don't leak a 
	path here.  (#168443, Morten Welinder)

2005-02-24  Robert Ögren  <>

	Implement better handling of Wintab tablet context overlap on
	Win32. (#167298)

	* gdk/win32/gdkinput-win32.c (_gdk_input_set_tablet_active): New
	function that brings any tablet contexts to the top of the overlap
	* gdk/win32/gdkinput-win32.h: Declare _gdk_input_set_tablet_active ()
	* gdk/win32/gdkevents-win32.c (gdk_event_translate):
	Call _gdk_input_set_tablet_active when a window is activated (on

2005-02-24  Matthias Clasen  <>

	* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_select_path): 
	Don't leak parent_path.  (#168435, Morten Welinder)

Thu Feb 24 14:20:16 2005  Søren Sandmann  <>

	* gtk/gtkstyle.c: Add

	g_return_if_fail (style->depth == gdk_drawable_get_depth(window));

	all over the place.

2005-02-24  Matthias Clasen  <>

	* gtk/gtkcombobox.c: Consistently use gtk_tree_row_reference_valid().
	(gtk_combo_box_model_row_deleted): Update the displayed row in 
	the cell_view.  (#167842, Gustavo Carneiro)

2005-02-24  Matthias Clasen  <>

	Fix #167259, reported by  Christian Persch:
	* gtk/gtkwidget.c (gtk_widget_unparent): Unmap the reparented 
	widget, even if we avoid the unrealizing. 
	(gtk_widget_reparent_subwindows): Make reparenting work for
	!NO_WINDOW widgets which have other windows which are siblings
	of widget->window (as e.g. GtkSpinButton).

2005-02-24  Matthias Clasen  <>

	* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_changed): 
	Don't emit a warning if a parent node is filtered out. (#164726,
	Olivier Sessink)

2005-02-23  Matthias Clasen  <>

	* gtk/gtklabel.c (gtk_label_style_set): Revert the last 
	change, since gtk_widget_set_style_internal() already
	queues a resize.

2005-02-23  Matthias Clasen  <>

	* gtk/gtklabel.c (gtk_label_style_set): Queue a resize, since
	fonts may have changed.  (#164128, Phil Blundell)

	* gtk/gtkaboutdialog.c (gtk_about_dialog_init) 
	(gtk_about_dialog_new): Move initialization code from _new to 
	_init.  (#168249, Murray Cumming) 

Wed Feb 23 17:34:01 2005  Jonathan Blandford  <>

	* gtk/gtktreeview.c (gtk_tree_view_node_queue_redraw): Patch from (Jorn Baayen) to notice changes to fixed-height

2005-02-23  Tor Lillqvist  <>

	* gdk/win32/gdkkeys-win32.c (update_keymap): Workaround for bug in
	MapVirtualKey(VK_DIVIDE, 0) in some Windows versions. (#142998)

Tue Feb 22 13:49:09 2005  Manish Singh  <>

	* gtk/updateiconcache.c: #include <config.h>

2005-02-22  Federico Mena Quintero  <>

	Merged from gtk-2-6:

	Fix #164940, patch by Ben Maurer and Tommi Komulainen.

	* gdk/gdkrgb.c (gdk_rgb_convert_565_d): Constify the "dmp" variable.
	(gdk_rgb_convert_565_d): Likewise.
	(DM_565): Made a static const precomputed array to avoid
	allocating it at runtime.
	(gdk_rgb_preprocess_dm_565): #ifdef out.

2005-02-20  Matthias Clasen  <>

	* gtk/gtkwindow.c: 
	* gtk/gtkclipboard.c: Fix links to specs
	in the documentation.

	* gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render_with_trapezoids): 
	Set have_render_with_trapezoids to GDK_YES when we have 
	a new enough Render extension.  (#167965,Billy Biggs) 

	* gtk/gtkwindow.c (gtk_window_present): Use the timestamp of
	the last user interaction when focusing the window.  (#166379, 
	Elijah Newren)

Thu Feb 17 14:58:16 2005  Manish Singh  <>

	* gtk/gtkuimanager.c (start_element_handler): make sure expand
	is initialized, cast to GTK_SEPARATOR_TOOL_ITEM.

Thu Feb 17 14:52:57 2005  Manish Singh  <>

	* gtk/gtkcombobox.c: Pass gtk_widget_get_toplevel() a GTK_WIDGET.

2005-02-16  Matthias Clasen  <>

	* docs/iconcache.txt: Add some information about the
	icon cache format (since I can't locate it at

	Fixes for #143829, Tommi Komulainen, Christian Persch:
	* gtk/gtktreeview.c (gtk_tree_view_destroy): Remove the
	typeselect_flush_timeout when destroying the widgets
	it is operating on.  
	(gtk_tree_view_ensure_interactive_directory): Add the 
	popup to the window group of the toplevel it belongs to.

	* gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget) 
	(gtk_combo_box_popup): Do the same here. 

2005-02-14  Matthias Clasen  <>

	* Kill --enable-ansi  (#164394)

2005-02-11  Matthias Clasen  <>

	* gtk/gtkpathbar.c (gtk_path_bar_finalize): Stop scrolling 
	when the pathbar goes away.  (#167094, Rodney Dawes)
	(change_icon_theme): Use GTK_ICON_SIZE_MENU here as 
	well  (Vincent Noel)

2005-02-11  Matthias Clasen  <>

	Support vertical menubars  (#166632): 
	* gtk/gtkenums.h (GtkPackDirection): New enumeration for pack 
	directions, with values for left-to-right, right-to-left, 
	top-to-bottom and bottom-to-top.

	* gtk/gtk.symbols: 
	* gtk/gtkmenubar.h: 
	* gtk/gtkmenubar.c: Add two properties, pack-direction and
	child-pack-direction, which specify how children and 
	grandchildren of a menubar are packed, with getters and setters. 

	* gtk/gtkmenubar.c (gtk_menu_bar_set_property): 
	(gtk_menu_bar_get_property): Implement set_property and get_property.

	* gtk/gtkmenubar.c (gtk_menu_bar_size_request): 
	(gtk_menu_bar_size_allocate): Take pack direction into account.

	* gtk/gtkmenubar.c (gtk_menu_bar_move_current): Implement 
	move_current here move all the menubar-specific direction 
	tweaking from the generic menushell implementation here.

	* gtk/gtkmenu.c (gtk_menu_move_current): Move  menu-specific 
	direction tweaking from the generic menushell implementation here.

	* gtk/gtkmenuitem.c (gtk_menu_item_size_request): 
	(gtk_menu_bar_size_allocate): Take pack direction into account.

	* gtk/gtkimagemenuitem.c (gtk_image_menu_item_size_request) 
	(gtk_image_menu_item_toggle_size_request): Take child pack 
	direction into account and pack the image vertically if

	* gtk/gtkmenushell.c (gtk_menu_shell_real_select_item):
	Set the submenu direction to left-right for menuitems in 
	vertical menubars.
	(gtk_real_menu_shell_move_current): Simplify by moving
	direction tweaking to menu- and menubar-specific 
	implementations. Take pack direction into account when
	doing fallbacks.

	* tests/testmenubars.c: Test menubars in various packing
	direction combinations.

	* tests/ (noinst_PROGRAMS): Add testmenubars.

2005-02-11  Matthias Clasen  <>

	Complete the fix for #165770, Vincent Noel:
	* gtk/gtkfilechooserbutton.c (FALLBACK_ICON_SIZE): Make the
	fallback size be 16, to be equal to the default for
	GTK_ICON_SIZE_MENU (in gtkiconfactory.c:init_icon_sizes()).
	(change_icon_theme): Use GTK_ICON_SIZE_MENU instead of

2005-02-09  Matthias Clasen  <>

	* gtk/gtkmenushell.c (gtk_real_menu_shell_move_current): Fix RTL
	keynav for going from menubar to menu.

2005-02-08  Christian Rose  <>

	* Added "xh" to ALL_LINGUAS.

2005-02-08  Matthias Clasen  <>

	* gtk/gtkuimanager.c (start_element_handler): Accept 
	the "expand" attribute and set a flag in the node if it
	is set to "true".
	(update_node): If the expand flag is set, make separator
	toolitems non-drawn and expanding.  (#166489, Christian Persch)

2005-02-05  Hans Breuer  <>

	* gdk/makefile.msc gdk/win32/makefile.msc gtk/ :
	build with Cairo dependency. The patch to acually use Cairo
	on win32 will be on gtk-devel-list soon.
	* tests/makefile.msc : add testcairo building

	* gtk/stock-icons/makefile.msc : split command line into two to
	work with the shells default

Fri Feb  4 14:16:31 2005  Manish Singh  <>

	* gtk/gtkaccelgroup.c (substitute_underscores): remove unused

	* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
	Add some extra parens for bitop order of operations disambiguiation.

	* gtk/gtkstock.c: Fix const confusion, make our own copy of the 
	domain when setting a translate function.

	* tests/testcombo.c: removed unused variable.

2005-02-04  Matthias Clasen  <>

	* gtk/gtkstock.c (gtk_stock_lookup): Handle item->translation_domain
	being NULL.  (#166179, Diego Gonzalez)

2005-02-04  Owen Taylor  <>

	* Revert gtk_binary_version to 2.4.0. Fix
	up comment to talk only about backwards compat, not
	forward/backwards compat. (#166293, reported by Vincent Noel)

2005-02-04  Matthias Clasen  <>

	* gtk/gtkpaned.c (gtk_paned_compute_position): Work better
	when there is not enough space. This avoids a nasty size
	allocation loop in the file chooser.  (#154007, reported 
	by Milosz Derezynski, patch by Robert Ögren)

2005-02-04  Matthias Clasen  <>

	* gtk/gtkentry.c (gtk_entry_create_layout): Avoid spurious
	selection of RTL direction if the widget does not have 
	focus.  (#164125, Frederic Crozat)

Thu Feb  3 19:15:55 2005  Manish Singh  <>

	* gdk/x11/gdkdrawable-x11.c: #include cairo-xlib.h

2005-02-03  Owen Taylor  <>

	* gdk/gdkdrawable.[ch] gdkpixmap.c gdkwindow.c: Add

	* tests/testtreeflow.c (enum): Use grand not rand as a variable
	name because one of the cairo headers is pulling in stdlib.h.

	* tests/testcairo.c tests/ Add a simple cairo based

	* Bump release to 2.7.0, gtk_binary_version to 2.7.0.

 	* Require libpangocairo for all backends.

2005-02-03  Tor Lillqvist  <>

	* modules/input/gtkimcontextime.c (get_pango_attr_list): Use the
	wide character version of ImmGetCompositionString() here,
	too. (#165278, Takuro Ashie)

2005-02-03  Matthias Clasen  <>

	* gtk/gtkmenu.c (gtk_menu_handle_scrolling): Don't do
	one roundtrip per motion event.  (#166173, pointed out
	by Chris Lee, patch by Søren Sandmann)

	* gtk/gtk.symbols: 
	* gtk/gtkstock.h: 
	* gtk/gtkstock.c (gtk_stock_set_translate_func): 
	New function which allows to change the function used for
	translation stock labels, on a per-domain basis. Use this
	functionality to switch the GTK+ stock items to use Q_()
	prefixed msgids.  (#166179, Funda Wang)
	* gdk/gdkkeynames.c: Make the gdk_key array const (#166075,
	Tommi Komulainen)

2005-02-02  Federico Mena Quintero  <>

	Merged from gtk-2-6:

	* gtk/gtkfilechooserdefault.c (pending_select_paths_process):
	Don't select the first row if the chooser is not mapped.  This
	happens when it's acting on behalf of GtkFileChooserButton.  Also,
	don't select the first row if we are in SAVE or CREATE_FOLDER
	modes --- I had missed that (see the ChangeLog entry from
	2005-01-18).  Fixes #165264.

2005-02-02  Tor Lillqvist  <>

	Implement lazy extended input initialization on Win32, by Robert
	Ögren. Fixes #163163, possibly #162334. Lazy initialization would
	be a good idea in any case even if it didn't fix any visible
	problems, though.

	The Wacom tablet driver seems to get confused if Wintab is
	initialized but no window is shown before the process exits. This
	is the case for some GIMP plug-ins, for instance. 

	* gdk/win32/gdkinput-win32.c (_gdk_input_wintab_init_check): Made
	non-static (and renamed).
	(_gdk_input_init): Don't call _gdk_input_wintab_init_check().

	* gdk/win32/gdkinput-win32.h: Declare _gdk_input_wintab_init_check().

	* gdk/win32/gdkinput.c (gdk_devices_list,
	gdk_display_list_devices, gdk_input_set_extension_events): Call
	_gdk_input_wintab_init_check() here instead.

2005-02-02  Ivan, Wong Yat Cheung  <>

	* gdk/win32/gdkselection.c: Use a FIFO list for storing GdkSelProp
	of a single window so that gtk_clipboard_request_contents() can be
	called inside a GtkClipboardReceivedFunc(). (#163844)

2005-02-01  Matthias Clasen  <>

	* gtk/gtkicontheme.c (gtk_icon_theme_init): Look for icons
	in XDG_DATA_DIRS/pixmaps.  (#165950, Thomas Zajic)

	* gtk/gtkwindow.c (gtk_window_set_icon_name): Set info->icon_list
	to NULL after freeing it.  (#165800, Damon Chaplin)

2005-02-01  Michael Natterer  <>

	* depend on stable pango-1.8, not unstable 1.7

2005-02-01  Federico Mena Quintero  <>

	Merged from gtk-2-6:

	* gtk/gtkfilechooserdefault.c
	(browse_files_model_finished_loading_cb): Don't
	g_assert_not_reached() if we are in any other state.  Another code
	path may have triggered a folder reload.  Fixes #165556.

2005-02-01  Federico Mena Quintero  <>

	Merged from gtk-2-6:

	Fix #165770:

	* gtk/gtkfilechooserdefault.c (FALLBACK_ICON_SIZE): Make the
	fallback size be 16, to be equal to the default for
	GTK_ICON_SIZE_MENU (in gtkiconfactory.c:init_icon_sizes()).
	(change_icon_theme): Use GTK_ICON_SIZE_MENU instead of

2005-02-01  Matthias Clasen  <>

	* */*.c: Fix many instances of "the the" in docs and
	comments.  (#165815, Masao Mutoh)

	* gtk/updateiconcache.c (main): Add a --quiet option.

2005-02-01  Tor Lillqvist  <>

	* gdk/win32/gdkkeys-win32.c (handle_special, set_shift_vks,
	reset_after_dead, handle_dead): New functions, code blocks
	refactored out of update_keymap(). No functionality change.

	(update_keymap): Use ToUnicodeEx() when available (on NT-based
	Windows) instead of ToAsciiEx(). Makes keyboard input work in
	Unicode-only input locales that don't have any ANSI codepage, for
	instance Hindi and Bengali. Use _gdk_input_codepage only on
	Win9x. (#165723)

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): On
	WM_INPUTLANGCHANGE, use GetLocaleInfo() instead of
	TranslateCharsetInfo() to get the input locale's corresponding
	codepage, if any.

2005-01-31  Matthias Clasen  <>

	* modules/input/gtkimcontextxim.c: Use NULL, not 0 to terminate 
	NULL-terminated va lists.  (#165683)

2005-01-29  Matthias Clasen  <>

	* gtk/gtkseparatortoolitem.c (gtk_separator_tool_item_set_draw): 
	Typo fix.  (#165581, Masao Mutoh)

Thu Jan 27 14:25:45 2005  Manish Singh  <>

	* README.cvs-commits: update ancient IRC info.

2005-01-27  Federico Mena Quintero  <>

	Merged from gtk-2-6:

	* gtk/gtkfilechooserdefault.c
	(gtk_file_chooser_default_select_path): Oops, don't assert that we
	can't reach the end of the function; this happens if we are still
	loading but don't need a path change.  Fixes #165213.

2005-01-27  Matthias Clasen  <>

	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): 
	Make wrapping work in RTL mode.  

	* gtk/gtkaboutdialog.c: Some visual tweaks to the about dialog,
	obey HIG spacing a bit more, add a hand cursor when over the
	link button.  (#163979, Jorn Baayen)

2005-01-26  Matthias Clasen  <>

	* gtk/gtkentrycompletion.c (gtk_entry_completion_class_init): 
	Don't allow -1 as minimum-key-length.
	(gtk_entry_completion_set_model): Add missing notification.
	(gtk_entry_completion_set_minimum_key_length): Add missing
	notification, allow setting minimum-key-length to 0.  (#165194,
	Vincent Ladeuil)

2005-01-26  Matthias Clasen  <>

	* gtk/gtkaboutdialog.c (display_license_dialog): Make sure
	the license dialog is initially displayed without a horizontal
	(gtk_about_dialog_class_init): Document the fact that the 
	license text is not wrapped.  (#165012, Christian Rose)

2005-01-25  Matthias Clasen  <>

	* gtk/gtkbutton.c (gtk_button_set_image): Fix docs.  (#165180,
	Jeff Franks)

	* gdk/x11/gdkwindow-x11.c (gdk_window_configure_finished): Fix 
	docs.  (#165163, Jeff Franks)
	* gtk/gtkimage.c (gtk_image_get_property): Use the correct setter
	for a string GValue.  (#165203, Damon Chaplin)

2005-01-24  Matthias Clasen  <>

	* gdk/x11/gdkdisplay-x11.c (_gdk_windowing_set_default_display): 
	Initialize user_time from DESKTOP_STARTUP_ID.  (#165131,
	Elijah Newren)

2005-01-24  Federico Mena Quintero  <>

	* gtk/gtkfilechooserdefault.c: Removed leftover comments.

2005-01-24  Federico Mena Quintero  <>

	Merged from gtk-2-6:

	Fix #147785 and clean up the loading code:

	* gtk/gtkfilechooserdefault.c (LoadState): Make the set of states
	(gtk_file_chooser_default_init): Start in the LOAD_EMPTY state.
	(struct _GtkFileChooserDefault): Added a pending_select_paths
	(load_remove_timer): Add the new states.
	(load_setup_timer): Likewise.
	(load_timeout_cb): Likewise.  Switch to the LOAD_LOADING state.
	(browse_files_model_finished_loading_cb): Switch to the
	(enum PendingOp): Removed.
	(struct _GtkFileChooserDefault): Removed the pending_op and
	pending_select_path fields.
	(pending_select_paths_free): New utility function.
	(pending_select_paths_add): New utility function.
	(gtk_file_chooser_default_finalize): Call
	(pending_op_queue): Removed.
	(pending_op_process): Removed.
	(pending_select_paths_process): New function.
	(browse_files_model_finished_loading_cb): Call
	(center_selected_row_foreach_cb): Handle multiple selection by
	only centering the first row.
	(get_is_file_filtered): Constify.
	(gtk_file_chooser_default_select_path): Queue into a list of paths
	to select if we are not finished loading.
	(show_and_select_paths): New utility function.
	(up_folder_handler): Use pending_select_paths_add().
	(gtk_file_chooser_default_should_respond): Do not call
	pending_op_queue(); free the pending_selected_paths instead.
	(gtk_file_chooser_default_initial_focus): Don't queue a pending
	operation, and don't select the first row unconditionally --- this
	will happen when the folder is done loading.
	(shortcuts_row_activated_cb): Free the pending_select_paths.
	(pending_select_paths_store_selection): New utility function.
	(gtk_file_chooser_default_map): Call
	pending_select_paths_store_selection() to save the selection
	before reloading the folder.
	(select_func): Umm?  Call gtk_tree_selection_select_iter().  Don't
	move the cursor here; it will be done when processing the pending paths.

	* tests/testfilechooser.c (main): Add a button to the command
	window to unmap and remap the file chooser.

2005-01-24  Matthias Clasen  <>

	* docs/tutorial/gtk-tut.sgml:
	* docs/tutorial/gtk_tut.sgml:
	* docs/reference/gtk/tmpl/gtkliststore.sgml:
	* gtk/gtkactiongroup.c:
	* gtk/gtksizegroup.c:
	* gtk/gtksizegroup.h:
	* gtk/gtktogglebutton.c: Replace "effect" by "affect" where
	appropriate.  (#165108, Dan Winship)

2005-01-24  Matthias Clasen  <>

	* gtk/gtkwidget.c (gtk_widget_class_init): Document 
	GtkWidget::style-set.  (#164222, Alex Graveley)
2005-01-22  Matthias Clasen  <>

	* gdk/gdkdisplay.h (gdk_display_add_client_message_filter_full): 
	Remove the accidentally added prototype for this unimplemented 
	function.  (#164893, Jeff Franks)

	* gtk/gtktreeview.c (gtk_tree_view_leave_notify): Avoid spurious
	drags.  (#164884)

2005-01-23  Tor Lillqvist  <>

	* gdk/win32/gdkkeys-win32.c (update_keymap): Handle Greek tonos
	dead accent key. (#164859, reported and fix verified by Daniel

	* gtk/gtkimcontextsimple.c (gtk_compose_seqs): Handle
	GDK_Greek_accentdieresis (tonos and dialytika) combining with iota
	and upsilon.

	* gtk/gtkfilesystemwin32.c (gtk_file_system_win32_volume_get_display_name): 
	Don't call GetVolumeInformation() for network drives. They might
	be disconnected, and calling GetVolumeInformation() will then
	cause long delays. (#164448, reported by Dave Neary.) It seems to
	be very hard to reliably find out whether a network drive is
	connected or not, so it's easier to just not try getting the
	volume name for them. See the bug report for discussion.

	Make volume name display formats translatable.

	Fix for #163702, from Ivan Wong: 
	* gdk/win32/gdkprivate-win32.h 
	* gdk/win32/gdkglobals-win32.c: New flag _ignore_destroy_clipboard.
	* gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle
	WM_DESTROYCLIPBOARD. Unless _ignore_destroy_clipboard, generate a

	* gdk/win32/gdkselection-win32.c
	(gdk_selection_owner_set_for_display): Set _ignore_destroy_clipboard
	when emptying the clipboard ourselves.

	(gdk_selection_send_notify_for_display): Remove the artifical
	GDK_SELECTION_CLEAR event generation.

2005-01-21  Matthias Clasen  <>

	* gtk/gtkwidget.c (gtk_widget_get_accessible): More details
	provided by Bill Haneman.

2005-01-20  Matthias Clasen  <>

	* gtk/gtkwidget.c (gtk_widget_get_accessible): Add docs.  (#164725,
	George Kraft IV)

	* gtk/gtkdialog.c (gtk_dialog_map): Don't loop forever
	here, even if the only focusable widgets are labels.

2005-01-20  Matthias Clasen  <>

	Support tinting in GtkCellRendererPixbuf (#162903, Jorn Baayen):
	* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_class_init) 
	Add a follow-state property which when TRUE causes the pixbuf
	to be tinted according to state.

	* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): 
	Use follow-state and colorize the pixbuf when appropriate.	
2005-01-20  Matthias Clasen  <>

	Support wrapping in GtkCellRendererText  (#163608):
	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
	Add wrap-mode and wrap-width properties which cause a 
	text cell to break to a specified width when set.

	* gtk/gtkcellrenderertext.c (get_layout): Use wrap-mode
	and wrap-width when they are set.

2005-01-20  Matthias Clasen  <>

	* gtk/gtkmodules.c (load_module): Don't reverse the order
	of modules when putting them in gtk_modules.  (#162676, Dennis
	Cranston, patch by Remus Draica)

	* gtk/gtktreeview.c (gtk_tree_view_search_move): Don't crash 
	if the tree is empty.  (#164669, Priit Laes)

Wed Jan 19 18:57:02 2005  Manish Singh  <>

	* gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): Call
	GDK_DISPLAY_XDISPLAY with a display, not a window. Clean up the
	function a bit too.

Wed Jan 19 17:17:31 2005  Manish Singh  <>

	* gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): Squash
	strict aliasing warning in _NET_VIRTUAL_ROOTS code.

2005-01-19  Tor Lillqvist  <>

	* gdk/win32/gdkkeys-win32.c (update_keymap,
	gdk_keymap_translate_keyboard_state): Handle keyboards with
	ShiftLock (and not CapsLock) correctly. (#161814)

2005-01-19  Matthias Clasen  <>

	* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_should_respond):
	In save mode, don't return paths containing nonexisting 
	directories.  (#162443, Jean Marie Favreau)

	* gtk/gtkobject.c (gtk_object_add_arg_type): Use GLib limit 
	macros to avoid sparse warnings. Pointed out by Kjartan Maraas.

	* gdk/x11/gdkdisplay-x11.c: Precache the _NET_VIRTUAL_ROOTS

	* gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): 
	Support _NET_VIRTUAL_ROOTS.  (#163910, Carsten Haitzler)
	* gdk/gdk.symbols: 
	* gdk/x11/gdkx.h: 
	* gdk/x11/gdkdisplay-x11.c (gdk_x11_display_get_user_time): 
	Add a function to obtain the last user interaction 
	time.  (#163119, Elijah Newren)

Tue Jan 18 13:56:09 2005  Manish Singh  <>

	* gtk/gtkfilechooserdefault.c (pending_op_queue): Actually assign

Tue Jan 18 13:46:46 2005  Manish Singh  <>

	* gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render_with_trapezoids):
	disambiguate nested if/else.

2005-01-18  Federico Mena Quintero  <>

	Merged from gtk-2-6:

	* gtk/gtkfilechooserdefault.c (pending_op_queue): Don't queue an
	operation to select the first file if we are in SAVE or
	CREATE_FOLDER modes.  Executing that operation would overwrite the
	contents of the save-name entry.

2005-01-18  Matthias Clasen  <>

	* gdk/gdkdisplay.h: 
	* gdk/x11/gdkwindow-x11.c (gdk_display_warp_pointer): 
	* gdk/win32/gdkwindow-win32.c (gdk_display_warp_pointer): Add
	pointer warping to GDK.  (#160437)

	* gtk/gtkcolorsel.c (key_press): Use gdk_display_warp_pointer.

2005-01-18  Matthias Clasen  <>

	* gtk/gtkstyle.c (gtk_default_draw_check) 
	(gtk_default_draw_option, gtk_default_draw_handle): Add some
	more NULL checks, patch by Michael Natterer.

Tue Jan 18 10:55:47 2005  Søren Sandmann  <>

	* gtk/gtkstyle.c (gtk_default_draw_handle): Check for NULL detail
	and NULL widget.

	* gtk/gtkstyle.c (gtk_default_draw_box): Check for NULL detail and
	NULL widget.  (#164477, Michael Natterer)

2005-01-18  Matthias Clasen  <>

	Avoid X errors when running against servers which
	implement XRender < 0.4.  (#164427, Albert Chin)
	* gdk/x11/gdkprivate-x11.h:
	* gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render_with_trapezoids): 
	New function to check for trapezoid support in XRender.
	(gdk_x11_draw_trapezoids, _gdk_x11_drawable_draw_xtrapezoids): 
	Use it here.
	* gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add a 
	separate have_render_with_trapezoids field.

	* gdk/x11/gdkdisplay-x11.c (gdk_display_open): Initialize it.

2005-01-17  Matthias Clasen  <>

	* gtk/gtkiconview.c: Remove debug output. (#164376, Jens Finke)

Mon Jan 17 16:44:36 2005  Jonathan Blandford  <>

	* docs/ (EXTRA_DIST): add tree-column-sizing.png to

2005-01-17  Matthias Clasen  <>

	* gtk/gtkfilechooserdefault.c (shortcuts_add_bookmarks): Save
	and restore the selected row in the bookmark list and the
	save folder combo.  (#164290)

2005-01-16  Matthias Clasen  <>

	* gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_new_with_backend):
	Fix argument order in docs.  

2005-01-15  Matthias Clasen  <>

	* gtk/gtktextview.c (gtk_text_view_check_keymap_direction): 
	* gtk/gtkentry.c (gtk_entry_create_layout): Prefer LTR over RTL 
	if the keymap is neutral.  (#164125, Phil Blundell)

2005-01-14  Matthias Clasen  <>

	* gtk/gtktreeview.c (gtk_tree_view_set_search_column): Allow to
	reset the property to its default value -1. 
	(gtk_tree_view_get_search_column): Return the default value in
	the g_return_val_if_fail() check.  (#163864, Richard Hult)

	* gtk/gtkcellrendererprogress.c (gtk_cell_renderer_progress_set_value): 
	Add a translator hint.  (#163889)

	* Check for _NL_TIME_FIRST_WEEKDAY too, since it
	is an enum value, not a define. Pointed out by Tommi Komulainen.
	* gtk/gtkcalendar.c (gtk_calendar_init): Adapt.

2005-01-13  Matthias Clasen  <>

	* Check for nl_langinfo()
	* gtk/gtkcalendar.c (gtk_calendar_init): Use nl_langinfo() when it's
	available to determine first day of week   (#163842, Vincent Untz)

	* gtk/gtkuimanager.c (gtk_ui_manager_get_widget): Add hints about 
	the lifecycle of widgets.  (#159503, Christian Persch)

	* demos/gtk-demo/main.c (create_text): Use monospace for the 
	source code view.  (#163526, Theerud Lawtrakul)

	* gtk/gtkaboutdialog.c (gtk_about_dialog_init): Use R as mnemonic
	for the Credits button to avoid duplicate.  (#163465, Tim-Philipp 
	* Add an OS_LINUX conditional.

	* gdk/ (TESTS):
	* gdk-pixbuf/ (TESTS):
	* gtk/ (TESTS): Only run abicheck on Linux.  (#163917,
	Roger Leigh)

2005-01-13  Matthias Clasen <>

	* gtk/gtktreeview.c: (gtk_tree_view_class_init),
	(gtk_tree_view_set_headers_clickable): Make the headers-visible
	property readwrite instead of just writable, and remove the
	g_return_if_fail check that there is a model when setting this
	property. Also improve the blurb.  (#163851, Richard Hult)

2005-01-12  Owen Taylor <>

	initialization of gdktarget, that was causing it to be
	evaluated before host was set. Simplify --with-gdktarget help

	* gtk/ Use grep | head -n 1 instead of grep -m 1 
	which doesn't work with slightly older versions of GNU grep 
	in install-libtool-import-lib rule.
2005-01-12  Tor Lillqvist  <>

	Fix for #162790, by Iwan Wong:
	* gdk/win32/gdkdrawable-win32.c: Implement dashed lines
	correctly. Simplify the interface to render_line_horizontal() and
	render_line_vertical(). Need to draw lines "manually" also on
	NT-based Windowses if we have a dash offset or are drawing
	double-dashed lines.

	* gdk/win32/gdkprivate-win32.h: Keep also the dash offset,
	double-dash flag, and a brush for the background colour (used by
	the odd dashes in the double-dash line style) in the GdkGCWin32

	* gdk/win32/gdkgc-win32.c: Set up above new fields.

2005-01-10  Federico Mena Quintero  <>

	Fix #162617.

	* gtk/gtkfilesystemunix.c (STAT_NEEDED_MASK): Take out
	GTK_FILE_INFO_IS_HIDDEN; we don't need to stat() to know this.
	(gtk_file_system_unix_get_folder): Make error reporting more
	accurate.  Don't bail out if we can't read the directory.
	(fill_in_stats): Don't return an error; just assume we don't have
	stat info for this folder's files.
	(fill_in_names): Don't create the hash table for the names if we
	can't open the directory.
	(gtk_file_folder_unix_list_children): Don't emit the
	"finished-loading" signal --- we don't do asynchronous loads, so
	we are always finished loading.
	(gtk_file_folder_unix_get_info): Use helper functions; handle the
	case where we can't stat '/'.
	(get_icon_type_from_path): Don't call fill_in_stats() here; only
	use the info we have.
	(fill_in_mime_type): Don't return an error.  Don't do anything if
	we don't have the stat info.

2005-01-10  Owen Taylor  <>

	* (EXTRA_DIST): Adding missing ChangeLog.pre*

2005-01-10  Matthias Clasen  <>

	* gtk/gtkaccelgroup.c (gtk_accel_group_class_init): Document
	signals.  (#163319, Murray Cumming)

2005-01-09  Tor Lillqvist  <>

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Set current
	cursor also when changing the cursor of a window that is the first
	ancestor of the window containing the pointer that has a cursor
	defined. (#163035, Ivan Wong)

2005-01-09  Anders Carlsson <>

	* gtk/gtkcellrenderertext.c: (get_size):
	* gtk/gtklabel.c: (gtk_label_size_request):
	* gtk/gtkprogressbar.c: (gtk_progress_bar_size_request):
	Don't pass NULL to pango_context_get_metrics. Use 
	pango_context_get_language instead, which is way faster.
2005-01-08  Matthias Clasen  <>

	* Bump version

	* === Released 2.6.1 ===
	* Require gmodule-no-export-2.0

2005-01-07  Tor Lillqvist  <>

	* gdk/win32/gdkselection-win32.c (_gdk_selection_property_store):
	Fix braino. (#163232, Arnaud Charlet)

2005-01-06  Matthias Clasen  <>

	* gtk/gtkiconview.c: Make markup_column work, and fix some
	layout issues when either icon or text is missing.  (#163065)

2005-01-06  Federico Mena Quintero  <>

	* gtk/gtkfilechooserdefault.c (file_list_build_popup_menu): Add an
	"Open _Location" item.  Fixes #148839.

2005-01-06  Matthias Clasen  <>

	* Fix a typo.  (#163128, kentaro fukuchi)

2005-01-06  James M. Cape  <>

	* gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_new)
	(gtk_file_chooser_button_new_with_backend): Use default title if
	NULL is passed.

	* docs/reference/gtk/tmpl/gtkfilechooserbutton.sgml: Make examples
	match API.

2005-01-05  Federico Mena Quintero  <>

	Fix #161409:

	* gtk/gtkfilechooserdefault.c (shortcuts_row_activated_cb): Queue
	a pending operation to select the first row.

2005-01-05  Federico Mena Quintero  <>

	* gtk/gtkpathbar.c (_gtk_path_bar_set_path): Don't call
	button_data_free() explicitly; the button is weak-reffed and the
	callback will free the button data.  Fixes #163010.
	(_gtk_path_bar_set_path): Don't ref/sink the button.  And for the
	failure case, call gtk_widget_destroy() on it.

	* gtk/gtkfilechooserdefault.c (check_is_folder): Use
	gtk_file_system_get_folder() again (see the ChangeLog entry from
	2004-08-25).  We can't first get the parent folder and then
	request the info for the path in question, as the parent folder
	may not be readable.  See bug #162617.
	(gtk_file_chooser_default_set_current_folder): Assert that the
	passed-in path is not null.
	(shortcuts_find_current_folder): Likewise.
	(shortcuts_add_current_folder): Likewise.
	(set_list_model): Likewise.
	(gtk_file_chooser_default_map): Only reload the current folder if
	it exists.
	(bookmarks_check_add_sensitivity): Check for the current folder
	being NULL.
	(browse_files_select_first_row): Don't set the cursor if there is
	no model loaded.

2005-01-05  Matthias Clasen  <>

	* gtk/gtkfilechooserdefault.c: Don't construct errors from 
	the GTK_FILE_SYSTEM_ERROR domain. Partial fix for #162911.
	(get_file_info, check_is_folder): Translate errors from
	the filesystem into the GTK_FILE_CHOOSER_ERROR domain. Rest
	of the fix for #162911, noticed by Murray Cumming.

Wed Jan  5 11:42:49 2005  Søren Sandmann  <>

	* gtk/gtkviewport.c (gtk_viewport_realize):
	* gtk/gtktextview.c ((text_window_realize): Set the background of
	the windows to None instead of adding EXPOSURE_MASK, as suggested
	by Owen in #162112.

	* gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Update 
	the user time when receiving a WM_DELETE message.  (#162980, 
	Elijah Newren)
Tue Jan  4 16:52:14 2005  Jonathan Blandford  <>

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event):
	only reorder on button 1, part of #141937

Tue Jan  4 11:36:43 2005  Søren Sandmann  <>

	Bug 162112.
	* gtk/gtktextview.c (text_window_realize): Add GDK_EXPOSURE_MASK
	to win->window's event_mask

	* gtk/gtkviewport.c (gtk_viewport_realize): Add GDK_EXPOSURE_MASK
	to viewport->view_window.

2005-01-04  Matthias Clasen  <>

	* demos/testpixbuf.c (main): Remove the size_prepared callback,
	to test incremental display.
	(new_testrgb_window): Return the drawing area, not the window,
	since we want to queue draws on the drawing area.

2005-01-03  Matthias Clasen  <>

	* examples/*: Re-extract.

	* docs/tutorial/gtk-tut.sgml: Small corrections.
	* docs/tutorial/gtk-tut.sgml: Some updates for the drawing
	section.  (#161414, Robert Ancell)

	* docs/tutorial/gtk-tut.sgml: Make it build.

	* gtk/gtkdialog.c (gtk_dialog_run): Some clarification
	regarding modality.  (#112903, Dave Bordoley)

	* gtk/gtkfixed.c (gtk_fixed_set_has_window): 
	Add a little motivation.  (#145556, Tommi Komulainen)

	* docs/tutorial/gtk-tut.sgml: Clarify section on 
	g_signal_connect_swapped.   (#120543, David Bourguignon)

	Make gtk_icon_theme_load_icon() work independent of
	icon factory initialization.  (#162791, Tristan Van Berkom)
	* gtk/gtkiconfactory.[hc]: Rename ensure_default_icons to
	_gtk_icon_factory_ensure_default_icons, and make it non-static.

	* gtk/gtkicontheme.c (find_builtin_icon): ..and call it here.

2005-01-02  Matthias Clasen  <>

	* gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_remove_shortcut_folder): 
	Don't add a shortcut here.  (#162752, Tor Lillqvist)

2005-01-02  Tor Lillqvist  <>

	* gtk/ (libgtk_target_ldflags): Add -lole32, needed for
	CoTaskMemFree in get_special_folder() below.

	* gtk/gtkfilesystem.h: Implement case-insensitive path compare on
	Win32 using _gtk_file_system_win32_path_compare().

	* gtk/gtk.symbols: Add _gtk_file_system_win32_path_compare.

	* gtk/gtkfilechooserbutton.c (model_add_special)
	* gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Use
	_gtk_file_system_win32_get_desktop() to get correct Desktop folder
	on Win32. (#144003)

	* gtk/gtkfilesystemwin32.c: Remove unnecessary includes. Do
	consider all drives "mounted", including floppies. Trying to
	inspect the contents of a nonexistent floppy will cause errors
	later that are handled normally, no need to avoid them
	completely. Keep the drive type in the GtkFileSystemVolume.
	Support UNC paths. (#161797, #137874) Fix error message
	capitalizations as in gtkfilesystemunix.c.

	(gtk_file_system_win32_init): Start one timeout per

	(gtk_file_system_win32_finalize): Remove the timeout.

	(get_special_folder): Copied from GLib.

	(_gtk_file_system_win32_get_desktop): New function, uses

	(gtk_file_system_win32_list_volumes): Don't start a timeout at
	each call to this function. Don't assume A: and B: are floppies.

	(gtk_file_system_win32_get_volume_for_path): Don't assume all
	volumes are drive roots, i.e. support share roots of UNC paths

	(gtk_file_system_win32_get_folder): Don't assume errno is set
	after g_file_test() returns FALSE. It isn't on Win32 (and even on
	Unix I don't think one should assume anything about errno after

	(gtk_file_system_win32_volume_get_is_mounted): Always return TRUE.

	(gtk_file_system_win32_volume_get_display_name): Don't call
	GetVolumeInformation() on drives A: or B: if they are removable,
	as they might then be floppies, causing an unnecessary
	delay. (#157820)

	(gtk_file_system_win32_volume_render_icon): Use network icon for
	unrecognized drive types.

	(canonicalize_filename, gtk_file_system_win32_parse): Don't get
	confused by UNC paths.

	(bookmarks_serialize): Use _gtk_file_system_win32_path_compare()
	for case-insensitive UTF-8 path comparison.

	(extract_icon): Use SHGetFileInfo() which is faster than
	ExtractAssociatedIcon(). Icon extraction is still slow, though,
	needs work.

	(win32_pseudo_mime_lookup): Don't use the same icon for all
	shortcuts or executables. Cache only other file type icons.

	(gtk_file_system_win32_render_icon): Use network stock icon for
	remote drives and UNC server share roots. Compare home directory
	case-insensitively. Do lookup icons also for executable files,
	after all, it's these files that can have individual icons in the
	first place. Yes, it can be slow. Needs work.

	(filename_is_drive_root): Require also the slash after the colon.

	(filename_is_server_share): New function.

	(_gtk_file_system_win32_path_compare): New function, does
	case-folded UTF-8 comparison.

	* gtk/gtkfilesystemwin32.h: Declare

2005-01-01  Matthias Clasen  <>

	* gtk/gtkbutton.c (gtk_button_set_image): Allow unsetting the
	custom image by passing NULL.
	(gtk_button_init): Initialize image_is_stock to TRUE, fixing
	a problem with changing stock labels.  (#162273, Marcin 

2005-01-01  Tor Lillqvist  <>

	* gtk/gtkmodules.c (get_module_path)
	* gtk/gtkrc.c (gtk_rc_make_default_dir, gtk_rc_get_im_module_file,
	gtk_rc_get_theme_dir, gtk_rc_add_initial_default_files): With
	g_getenv() now returning UTF-8 on Win32, no need to call

2004-12-31  Matthias Clasen  <>

	* gtk/gtkkeyhash.c (_gtk_key_hash_lookup_keyval) 
	(_gtk_key_hash_lookup): Don't sort a list of values as if
	it was a list of entries. This fixes crashes during mnemonic
	activation in the presence of multiple keymaps. (#162488, 
	Christian Persch)

2004-12-30  Matthias Clasen  <>

	* gtk/gtkcombobox.c (gtk_combo_box_button_state_changed): Fix
	state propagation when making an insensitive combo box sensitive
	again.  (#162524, Carlos Garnacho Parro)

	* gtk/gtkfilechooserdefault.c: Use secondary text for error 

	* gtk/gtkfilesystemunix.c: Clean up some cases of errno handling
	(#162496, noted by Tor Lillqvist), and use g_filename_display_name()
	for error messages. Also mark some error messages for translation,
	fix capitalization of error messages.

	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property): 
	Use g_value_get_boolean() for ellipsize_set.  (#162447, 
	Brian Tarricone)

2004-12-30  Tor Lillqvist  <>

	* gtk/gtkicontheme.c (gtk_icon_theme_init): Use /usr/share/pixmaps
	only on Unix.

2004-12-28  Matthias Clasen  <>

	* gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Inherit
	submenu direction from the parent menu.

	* gtk/gtkmenushell.c (gtk_menu_shell_select_submenu_first): 
	Return a boolean indicating whether an item in the submenu
	was selected.
	(gtk_real_menu_shell_move_current): When going in child 
	direction, don't get stuck at completely insensitive 
	submenus.  (#162055, Billy Biggs)	

2004-12-27  Matthias Clasen  <>

	Make the clipboard image API more robust (#162357, 
	Torsten Schoenfeld):
	* gtk/gtkclipboard.c (clipboard_image_received_func): Don't
	ref the pixbuf if it is NULL.

	* gtk/gtkselection.c (gtk_selection_data_set_pixbuf): 
	NULL-terminate the varargs in the call to 
	(gtk_selection_data_get_pixbuf): Only use a pixbuf loader 
	if there is data to load.

2004-12-27  Matthias Clasen  <>

	* gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): 
	Set x_root and y_root in button and motion events from 
	extended input devices.  (#148715, Robert Ögren)

	* gtk/gtktreeview.c (gtk_tree_view_class_init): Fix a 
	typo.  (#162339, Alessio Dessi)

	* gtk/gtkadjustment.c (gtk_adjustment_class_init): Document
	properties as new since 2.4.  (#156101, Billy Biggs)

	* Add a warning about the linux-fb 
	target.  (#155488, Zeeshan Ali)

	* gtk/gtkmain.c (gtk_init_with_args): Typo fix.  (#162278,
	Torsten Schoenfeld)

2004-12-26  Matthias Clasen  <>

	* gtk/gtkfilechooser.c (gtk_file_chooser_set_action): 
	Typo fix.  (#162219, Masao Mutoh)
	Another typo.  (#162218, Masao Mutoh)

2004-12-23  Matthias Clasen  <>

	* gtk/gtkliststore.c (gtk_list_store_iter_children): 
	Return TRUE if there are children.  (#162134, Iñigo Serna,
	patch by John Finlay)

	* gtk/gtkcombobox.c (gtk_combo_box_button_state_changed): 
	Transfer state from the button to the cell view to get
	prelighting right.  (#156327, Ricardo Veguilla)

Wed Dec 22 14:22:19 2004  Søren Sandmann  <>

	* tests/testtoolbar.c (timeout_cb): Add sensitivity-changing
	timeout. Written by Christian Persch.

Wed Dec 22 14:14:02 2004  Søren Sandmann  <>

	Bug #161561
	* gdk/x11/gdkwindow-x11.c (tmp_{re,un}set_bg): Only set/reset the
	background for windows that get expose events. 

	* gdk/gdkwindow.c (gdk_window_process_updates_internal): Remove
	hack to repaint !expose windows.

Wed Dec 22 11:35:41 2004  Søren Sandmann  <>

	Bug #147497, make menu items activate immediately when you release
	the button.
	* gtk/gtkmenu.c (gtk_menu_enter_notify, menu_motion_notify): Make
	items activate immediately.

	* gtk/gtkmenu.c (definitely_within_item): New function
	* gtk/gtkmenu.c (check_threshold): New function

2004-12-22  Matthias Clasen  <>

	* gtk/gtklabel.c (gtk_label_setup_mnemonic): Don't forget to
	null the mnemonic_menu when unsetting a mnemonic, reported
	by Owen Taylor.

2004-12-21  Matthias Clasen  <>

	* gtk/gtkliststore.c (generate_order): Generate the order the
	way it is supposed to be, order[new_pos] == old_pos.
	(gtk_list_store_reorder): Invert the order before using it.

2004-12-22  Matthias Clasen  <>

	Fix sorting of list stores.  (#161886, Marcin Krzyzanowski)

	* gtk/gtkliststore.c (generate_order): Generate the order the
	way it is supposed to be, order[new_pos] == old_pos.
	(gtk_list_store_reorder): Invert the order before using it.

	* gtk/gtkiconview.c (gtk_icon_view_rows_reordered): Adapt to the
	list store fix.

Wed Dec 22 01:24:01 2004  Jonathan Blandford  <>

	* gtk/queryimmodules.c (main): print out the version and binary
	name in the header comment.  Problem reported by Seth Nickell.

2004-12-20  Matthias Clasen  <>

	* gtk/gtkliststore.c (gtk_list_store_sort_iter_changed): Pass a
	root path to gtk_tree_model_rows_reordered().  (#161720,
	Marcin Krzyzanowski)

	* gtk/gtkactiongroup.c (gtk_action_group_translate_string): Don't 
	translate NULL messages.  (#161789, Morten Welinder)

	* gtk/gtkmessagedialog.c (setup_primary_label_font): Don't show
	the secondary label on show_all().  (#161707, Christian Persch)

2004-12-19  Tor Lillqvist  <>

	* gdk/win32/gdkdnd-win32.c (resolve_link, gdk_dropfiles_filter):
	Use wide character API when available. Use UTF-8 for filenames.

	* gdk/win32/gdkselection-win32.c (_gdk_dropfiles_store): Include
	the string's trailing zero byte in the property's length, just for

2004-12-18  Matthias Clasen  <>

	* gtk/gtkfilechooserentry.c (check_completion_callback) 
	(load_directory_callback): Add missing GDK_THREADS_ENTER/LEAVE.

	* gtk/gtkfilechooserdefault.c (edited_idle_cb) 
	(shortcuts_drag_outside_idle_cb): Add missing 
	* gtk/gtkfilechooserdefault.c (selection_check_foreach_cb): 
	(list_select_func): Don't call gtk_file_info_get_is_folder()
	on NULL. 

	* gtk/gtkaboutdialog.c (gtk_about_dialog_get_logo_icon_name): 
	(gtk_about_dialog_init): Add missing initializations.  (#161646,
	Torsten Schoenfeld)