2004-04-30  Matthias Clasen  <mclasen@redhat.com>

	* === Released 2.4.1 ===

	* configure.in: Version 2.4.1, interface age 1. 

	* NEWS: Updates

2004-04-29  Federico Mena Quintero  <federico@ximian.com>

	Fixes #140412.

	* gtk/gtkfilechooserdefault.c (remove_selected_bookmarks): New
	function; moved the code over from
	remove_bookmark_button_clicked_cb().
	(remove_selected_bookmarks): Now, getting a non-removable bookmark
	is not an error, as we may be called as a result of hitting the
	Delete key.
	(shortcuts_key_press_event_cb): New handler; delete the bookmark
	if the user presses Backspace, Delete, or KP_Delete.

2004-04-29  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkaction.c (closure_accel_activate): Use
	_gtk_action_emit_activate() instead of directly
	emitting the activate signal.  (#141429, Jody Goldberg)

	* gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): 
	Warn people when the accelerator can not be 
	parsed.  (#141429, Jody Goldberg)

2004-04-29  Matthias Clasen  <mclasen@redhat.com>

	* tests/testentrycompletion.c (main): Add a missing 
	cat.  (#141070, Chris Sherlock)  

	* gtk/gtkrc.c (gtk_rc_check_pixmap_dir): Remove unused
	variable.  (#141022, Chris Sherlock)
	
	* gtk/gtkcombo.c (gtk_combo_popup_list): Add a missing
	cast.  (#141013, Chris Sherlock)

	* gtk/gtkcellview.c (gtk_cell_view_cell_layout_clear): Remove
	unused variable.  (#141011, Chris Sherlock)

2004-04-29  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Plug memory
	leak. (#140775, John Ehresman)

Thu Apr 29 01:09:50 2004  Matthias Clasen  <maclas@gmx.de>

	* gdk/gdkdraw.c (_gdk_drawable_get_scratch_gc): Use depth - 1
	to index the cached gcs, not depth.  (#139494)

2004-04-28  Matthias Clasen  <mclasen@redhat.com>

	* gdk/gdkdraw.c (_gdk_drawable_get_scratch_gc): Docs typo fix.

Sun Apr 25 15:36:02 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbutton.c (gtk_tool_button_set_label_widget): Fix
	cut'n'paste-o from previous commit. (#141046, Torsten Schoenfeld).

2004-04-24  Theppitak Karoonboonyanan  <thep@linux.thai.net>

	Patch to add support for string conversion callbacks to
	GtkIMContextXIM (#101814)

	* modules/input/gtkimcontextxim.c: Set the string conversion callback
	if supported by the XIC.

	(struct _GtkIMContextXIM): Add string_conversion_callback member.

	(struct _GtkXIMInfo, setup_im): Check and keep flag inidicating
	whether string conversion callback is supported.

	(gtk_im_context_get_ic, +set_string_conversion_callback,
	+string_conversion_callback): Also initialize string conversion
	callback, if supported, along with the IC initialization.

	* modules/input/imxim.c: Make "xim" module default for Thai as well.

2004-04-23  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkclipboard.c (gtk_clipboard_wait_for_targets): Correctly
	initialize targets.  (#139883, John Finlay)

	* gdk/gdkdraw.c (gdk_draw_drawable): Small doc improvement. 

	* gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows): 
	Don't recommend gtk_tree_row_reference_new_proxy().  (#138309,
	Tim-Philipp Müller)

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_set_cell_data): 
	Remove an excessive g_return_if_fail().

	* gdk/x11/gdkevents-x11.c (set_user_time): Make set_user_time()
	static.
	* gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): 
	_-prefix calls of gdk_x11_window_set_user_time().

2004-04-22  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkuimanager.c (update_node): Make sure the separators 
	used to demarkate placeholder ends don't show up on 
	show_all().  (#140496, Murray Cumming)

	* gtk/gtkspinbutton.c (spin_button_at_limit): Make spinbuttons
	work with negative increments.  (#137975, Tim Gerla)

Wed Apr 21 21:38:03 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbutton.c (gtk_tool_button_set_label_widget,
	gtk_tool_button_set_icon_widget): Remove the old widget from the
	tool button before overwriting it with the new widget.

	(#140508, Todd Goyen)
	
2004-04-22  Tor Lillqvist  <tml@iki.fi>

	Fix the file chooser on Windows. I can't make it misbehave or
	crash any more now. But presumably there are still corner cases
	not handled. I haven't really checked behaviour of UNC paths, for
	instance.

	* gtk/gtkfilesystemwin32.c: Accept both backslash and slash in
	several places. Use G_IS_DIR_SEPARATOR macro (which could be added
	to GLib in 2.6).

	(gtk_file_system_win32_get_parent): Like the Unix version, assert
	filename is absolute, and avoid one unnecessary string allocation
	and freeing.
	
	(canonicalize_filename,gtk_file_system_win32_parse): Handle drive
	letters more correctly.

	(gtk_file_system_win32_render_icon): Assure correct syntax is used
	for root folder of a drive. (#137962, Morten Welinder)

	(filename_is_some_root): New function that accepts also root
	without any drive specified.

	(filename_is_drive_root): Rename from filename_is_root.

	* gtk/gtkfilechooserentry.c (completion_match_func): Casefold on
	Windows.

2004-04-21  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkentry.c (gtk_entry_completion_timeout): Pop down the 
	completion window if there are no completions anymore.

	* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
	Don't call gtk_tree_view_scroll_to_cell() on an empty tree view. 
	It doesn't like that.  (#140642, Christian Persch)

	* demos/gtk-demo/expander.c (do_expander): A new demo.

	* demos/gtk-demo/Makefile.am (demos): Add expander.c.

2004-04-20  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_allocate_children): Make
	sure anchored children get size allocated, even if the layout
	is valid.  (#122323, Andrew E. Makeev)
	(gtk_text_view_scroll_pages): 
	(gtk_text_view_scroll_hpages): Don't scroll to cursor position
	if we already have pending scrolls. Bandaid fix for #78513.

Mon Apr 19 17:59:17 2004  Owen Taylor  <otaylor@redhat.com>

	* INSTALL.in: Update libpng and libjpeg URLs, remove
	note about building without since that's not the normal
	case.

Sun Apr 11 09:45:11 2004  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkicontheme.c (load_themes): Fix a couple of typos in
	handling of SVG/non-SVG unthemed icons.

2004-04-19  Morten Welinder  <terra@gnome.org>

	* gtk/gtktoolbar.c (gtk_toolbar_focus): Don't leak list of
	children.  (#140523)

2004-04-19  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextbtree.c (_gtk_text_line_previous_could_contain_tag): 
	Don't stop the iteration up to the tag_root too 
	early.  (#109945, Dongho Shin)

Sun Apr 18 17:06:03 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gdk/x11/gdkkeys-x11.c (get_effective_keymap): Make
	gdk_keymap_translate_keyboard_state() handle NULL
	keymaps. (#139715, Torsten Schoenfeld).

Sun Apr 18 16:59:21 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* configure.in: Don't erase GDK_EXTRA_CFLAGS. Fixes bug 139586,
	reported by Pedro RODRIGUEZ, about compilation problems when
	Xcursor is installed in a non-standard location.

Sun Apr 18 16:15:15 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	Support for _NET_WM_USER_TIME (bug 115650). Patch by Elijah
	Newren.
	
	* gdk/x11/gdkwindow-x11.[ch]: Add new internal function
	_gdk_x11_set_user_time() to set the _NET_WM_USER_TIME property.

	* gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add user_time field

	* gdk/x11/gdkdisplay-x11.c: Add _NET_WM_USER_TIME to list of
	precached atoms.
	
	* gdk/x11/gdkinput-x11.c, gdk/x11/gdkevents-x11.c: Set the
	property on user interaction.

2004-04-15  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilesel.c (open_new_dir): Tell the user to use
	G_FILENAME_ENCODING, not G_BROKEN_FILENAMES.  Fixes #114065.

	* gtk/gtkfilechooserdefault.c (split_uris): Use a variant of the
	code from gtkfilesel.c to parse a "text/uri-list" blob.  Fixes
	#140126.

2004-04-15  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 
	* gtk/gtkbutton.c (gtk_button_class_init): Doc fixes.

2004-04-14  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c: 
	* gtk/gtkwidget.c: 
	Make all style properties readonly.

2004-04-14  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcolorsel.c: Add a11y relations between the color
	wheel and the spin buttons.  (#132745, Padraig O'Briain)

	* gtk/gtkiconfactory.c (gtk_icon_set_render_icon): Document
	the meaning of size == -1.

	* gtk/gtkwidget.c (gtk_widget_render_icon): Explicitly accept  
	a size of -1.  (#137436, Brian Cameron)

	* gtk/gtkcombobox.c: Make the arrow and separator regular
	children of an hbox inside the button, and propagate state
	changes from the button to the cell view.  (part of the fix
	for #138650, should also fix #137535)

	* gtk/gtkcellview.c (gtk_cell_view_expose): Pass the PRELIT
	state to gtk_cell_renderer_render() when prelighted. (part 
	of the fix for #138650)

	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): 
	Use PRELIGHT state when appropriate.  (part of the fix for 
	#138650)

	* gtk/gtkcombobox.c (gtk_combo_box_relayout): Don't spit 
	out warnings if called before the combo box is 
	realized.  (#139742, Philip Langdale)

Wed Apr 14 03:45:39 2004  Jonathan Blandford  <jrb@gnome.org>

	* gtk/gtktreeview.c (gtk_tree_view_expose): propagate expose
	events to children.

Wed Apr 14 03:32:58 2004  Jonathan Blandford  <jrb@gnome.org>

	* gtk/gtkpathbar.c (make_directory_button): remove spurious
	gtk_box_pack_start.

Tue Apr 13 16:19:23 2004  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkpathbar.c (make_directory_button): patch from Owen to
	make the buttons sized by a bold label.  This makes the text
	'swim' a little, but stops the buttons from resizing, #137210

2004-04-13  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkuimanager.c (get_child_node): Don't crash if a node 
	has no name.
	(start_element_handler): Accept separators without unique 
	names.  (#133302, Anders Carlsson)

	* gtk/gtkactiongroup.c (gtk_action_group_add_action): Document
	possible accelerator gotcha when using this function.  (#139641, 
	Christian Persch)

	* gtk/gtkuimanager.c (node_remove_ui_reference): Don't leak
	list nodes.  (#138862, Morten Welinder)

Tue Apr 13 12:24:49 2004  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_destroy): remove unused
	variable.
	(gtk_tree_view_button_press): If we activated the row we don't
	want to grab focus back, as moving focus to another widget is
	pretty common, #138458

2004-04-12  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Added
	documentation to all the signals.

2004-04-12  Matthias Clasen  <mclasen@dhcp64-228.boston.redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_unset_model): Don't unref
	model if it is NULL. (#139770)

	* gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Typo fix.

	* gtk/gtkentrycompletion.c (gtk_entry_completion_init): Don't add
	a shadow inside the scrolled window, add it around the vbox.

	* gtk/gtkentryprivate.h: 
	* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
	Return a boolean indicating whether the popup is positioned above 
	or below. Scroll the completions to the beginning or the end, 
	depending on the positioning.

	* gtk/gtkentry.c (gtk_entry_completion_key_press): Make keynav
	wrap around in the entry completion popup, and allow GDK_UP to 
	enter the popup.  (#137440)

2004-04-12  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkentry.c (gtk_entry_size_request): Make sure the style is 
	there before using it.

Sun Apr 11 15:08:45 2004  Jonathan Blandford  <jrb@gnome.org>

	* gtk/gtktreeprivate.h: Moved search entries into priv data.

	* gtk/gtktreeview.c: Prep for type-ahead support.

	(gtk_tree_view_destroy): Destroy the search window explicitly.
	(gtk_tree_view_key_press): Minor change; prep for type-ahead
	(gtk_tree_view_ensure_interactive_directory): New function
	(gtk_tree_view_focus_out): Rework to handle new entry life-cycle.
	(gtk_tree_view_real_start_interactive_search): rework
	(gtk_tree_view_search_dialog_hide): ditto
	(gtk_tree_view_search_delete_event): ditto
	(gtk_tree_view_search_button_press_event): ditto
	(gtk_tree_view_search_key_press_event): ditto
	(gtk_tree_view_search_move): ditto
	(gtk_tree_view_search_init): ditto

	* gtk/gtktreeviewcolumn.c:
	(gtk_tree_view_column_cell_layout_clear): remove unused variable.

	* tests/testfilechooser.c: (main): change

2004-04-11  Hans Breuer  <hans@breuer.org>

	* gdk/win32/gdkspawn-win32.c : workaround for bug #137496,
	the real fix would involve just another small API breakage,
	i.e. gdk_spawn_* using GPid not just gint.

	* gtk/makefile.msc.in : build gtk-win32.res, not gtk.res

2004-04-10  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkkeys-win32.c (gdk_keymap_translate_keyboard_state):
	If both Shift and CapsLock pressed, ignore the shift only for
	letters (that would have been affected by the CapsLock). (#139095)

	* gdk/win32/gdkglobals-win32.c: Disable tablet support by default,
	seems to be even buggier now than it used to be. (#138341)
	Initialize _gdk_input_ignore_wintab to TRUE.

	* gdk/win32/gdkmain-win32.c: Add --use-wintab switch and
	GDK_USE_WINTAB environment variable to turn on tablet support.

2004-04-09  Christian Persch  <chpe@cvs.gnome.org>

	* gtk/gtkuimanager.c: (gtk_ui_manager_insert_action_group),
	(gtk_ui_manager_remove_action_group): Terminate
	g_object_[dis]connect() calls with NULL instead of 0.
	Fixes #138997.

2004-04-09  Guntupalli Karunakar  <karunakar@freedomink.org>

        * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS.

2004-04-07  Federico Mena Quintero  <federico@ximian.com>

	Fix #132500.

	* gtk/gtkfilesystem.c (gtk_file_system_parse): Ensure that the
	passed-in 'str' is not NULL.

	* gtk/gtkfilesystemunix.c (expand_tilde): New helper function;
	expands "~/" or "~foo/" at the beginning of a filename.
	(gtk_file_system_unix_parse): Use expand_tilde() before doing
	anything else.

	* gtk/gtkfilechooserentry.c
	(gtk_file_chooser_entry_maybe_update_directory): Take in a
	force_reload argument.
	(gtk_file_chooser_entry_changed): If gtk_file_system_parse()
	returns an error, set the file_part_pos to -1.
	(load_directory_callback): Only populate the model if the
	file_part_pos is not -1.

2004-04-06  Pablo Saratxaga  <pablo@mandrakesoft.com>

	* configure.in: Added Icelandic (is) to ALL_LINGUAS

2004-04-05  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserdefault.c (location_popup_handler): Use a
	title for SAVE and CREATE_FOLDER modes.  Fixes #137272.

	* gtk/gtkfilesystemunix.c (gtk_file_system_unix_make_path): Look
	for G_DIR_SEPARATOR in the display_name, and err out if it is
	present; use the same error message as Nautilus.  Fixes #136467.

	* gtk/gtkfilechooserdefault.c (file_pane_create): Make the
	new-folder button say "Create Fo_lder" rather than "Create
	_Folder", so that the mnemonic doesn't conflict with the "Save in
	_folder" label.  Fixes #136975.

2004-04-05  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkpathbar.c (_gtk_path_bar_set_path): Ref/sink the
	buttons.  Also, free them correctly upon failure.  Based on a
	patch by Morten Welinder, fixes #137956.

2004-04-05  Anders Carlsson  <andersca@gnome.org>

	* gdk/gdk.c (gdk_arg_context_parse): Handle '--' correctly.

Fri Apr  2 17:57:33 2004  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_row_inserted): set the height
	correctly for fixed height when inserting a node, #138082

2004-04-01  Federico Mena Quintero  <federico@ximian.com>

	Fix #136077.

	* gtk/gtkpathbar.h (struct _GtkPathBarClass): Add a
	"child_is_hidden" boolean argument to the "path-clicked" signal.

	* gtk/gtkpathbar.c (struct _ButtonData): Added a file_is_hidden
	field.
	(make_directory_button): Take a file_is_hidden argument; put it in
	the ButtonData.
	(_gtk_path_bar_set_path): See whether each path component path is
	a hidden file.
	(gtk_path_bar_class_init): Add the file_is_hidden argument to the
	"path-clicked" signal.
	(button_clicked_cb): See if the downwards button represents a
	hidden file for the file_is_hidden argument in the signal
	emission.

	* gtk/gtkmarshalers.list: Added a signal type VOID:POINTER,BOOLEAN.

	* gtk/gtkfilechooserdefault.c
	(gtk_file_chooser_default_select_path): If we fail to switch
	folders, don't try to select the path in the file system model.
	Also, return the result from _gtk_file_system_model_path_do().
	(gtk_file_chooser_default_select_path): Turn on show_hidden in the
	file system model if we are asked to select a hidden file.
	(path_bar_clicked): Show hidden files based on whether the
	immediate downwards folder in the path bar is a hidden file
	itself.
	(struct _GtkFileChooserDefault): Added fields
	browse_files_popup_menu and browse_files_popup_menu_hidden_files_item.
	(create_file_list): Set an object data key of
	"GtkFileChooserDefault" on the tree view so that we can find the
	impl from the popup menu callbacks.  Also, hook up to the
	"button-press-event" and "popup-menu" signals in the file list to
	bring up a popup menu.
	(list_popup_menu_cb): New callback.
	(list_button_press_event_cb): New callback.

	Fix #138763:

	* gtk/gtkfilesystemmodel.c
	(_gtk_file_system_model_new): Oops, connect_object to
	"finished-loading".

2004-03-31  Tor Lillqvist  <tml@iki.fi>

	* configure.in: Move AC_CANONICAL_HOST earlier, before the check
	for native Win32. (#136559, J. Ali Harlow)

	* gdk/win32/gdkdrawable-win32.c (draw_arc): Use X11 semantics for
	angles. Thanks to Tim Newsham.

2004-03-29  Federico Mena Quintero  <federico@ximian.com>

	Fix #137520.

	* gtk/gtkfilesystem.h (struct _GtkFileFolderIface): Added slots
	for an ::is_finished_loading() method and a ::finished_loading()
	signal at the end of the struct.

	* gtk/gtkfilesystem.c (gtk_file_folder_base_init): Create the
	"finished-loading" signal.
	(gtk_file_folder_is_finished_loading): New function.

	* gtk/gtkfilesystemunix.c
	(gtk_file_folder_unix_is_finished_loading): Implement.

	* gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModelClass): New
	slot for a "finished-loading" signal.
	(gtk_file_system_model_class_init): Create the "finished-loading"
	signal.
	(struct _GtkFileSystemModel): New field
	idle_finished_loading_source.  We emit the "finished-loading"
	signal in an idle if the root folder was done loading right in
	_gtk_file_system_model_new(), so that the caller has a chance to
	connect to the signal.
	(_gtk_file_system_model_new): Connect to the normal signals of the
	folder even if the initial _list_children() fails.  Also, see if
	the folder is finished loading; connect to the "finished-loading"
	signal otherwise.
	(gtk_file_system_model_finalize): Remove the idle handler.

	* gtk/gtkfilechooserdefault.c (set_list_model): Set a busy cursor
	and connect to the model's "finished-loading" signal.
	(get_toplevel): New helper function.
	(error_message): Use get_toplevel().
	(trap_activate_cb): Likewise.
	(location_popup_handler): Likewise.
	(set_busy_cursor): New function.
	(browse_files_model_finished_loading_cb): New callback.

2004-03-25  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserdefault.c (check_preview_change): Just use the
	file under the cursor; we don't need the logic from
	GtkFileSelection after all.  Fixes #132255.

2004-03-25  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserdefault.c (location_entry_create): Fill the
	location entry with the display name of the file under the cursor
	for Open mode, or the typed filename in Save mode.

2004-03-24  J. Ali Harlow  <ali@juiblex.co.uk>

	* gtk/gtkfilesystemwin32.c
	(filename_is_root): Bare drive designators (eg., "c:") are
	no longer considered as root filenames.  Fixed #137942

2004-03-24  J. Ali Harlow  <ali@juiblex.co.uk>

	* gtk/gtkfilesystemwin32.c
	(gtk_file_system_win32_create_folder): Invert test for error in
	mkdir.  Fixes #137945

2004-03-24  J. Ali Harlow  <ali@juiblex.co.uk>

	Fixed #138004 using Federico's code from #132327.

	* gtk/gtkfilesystemwin32.c (struct _GtkFileSystemWin32): Add a
	folder_hash field to keep a list of live folder objects.
	(gtk_file_system_win32_init): Create the folder_hash.
	(gtk_file_system_win32_finalize): Destroy the folder_hash.
	(gtk_file_system_win32_get_folder): Ref and return an existing
	folder if we have it around, otherwise return a new folder object.
	(struct _GtkFileFolderWin32): Add a field for the parent file system.
	(gtk_file_folder_win32_finalize): Remove the folder from the file
	system's hash table.
	(gtk_file_system_win32_create_folder):  Emit "files-added" on the
	newly-created folder's parent.  Fixes #138004.

2004-03-24  J. Ali Harlow  <ali@juiblex.co.uk>

	* gtk/gtkfilesystemwin32.c
	(gtk_file_system_win32_get_folder): Test that path is actually
	a directory and throw error if not. Fixed bug #137950

2004-03-22  J. Ali Harlow  <ali@juiblex.co.uk>

	* gtk/gtkfilesystemwin32.c
	(gtk_file_system_win32_volume_get_display_name): Ignore empty
	volume labels; assume that GetVolumeInformation would fail if
	GetVolumeInformationW does; catches a small memory leak;
	pass the buffer size to GetVolumeInformationW in wide
	characters instead of bytes. Fixes bug #137543
	(list_volumes): Cope with the theoretical possibility of
	more than 26 logical drives. Fixes bug #137940
	(bookmarks_serialize): Now actually removes bookmarks.
	Fixes bug #137943

2004-03-22  Guntupalli Karunakar  <karunakar@freedomink.org>

        * configure.in: Added "pa" (Punjabi) to ALL_LINGUAS.

2004-03-21  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtkfilesystemwin32.c
	(gtk_file_system_win32_volume_get_base_path): Include the
	backslash. Otherwise gtk_file_system_win32_path_to_uri() returns
	NULL for a volume base path, as g_filename_to_uri() requires an
	absolute path, and just a drive letter and colon isn't. (#137543)

2004-03-20  Hans Breuer  <hans@breuer.org>

	* gtk/gtkfilesystemwin32.c : applied the undisputable and
	required [due to recent gtkfilesystem internal api semantic 
	changes] part of patches to fix bug #137543 (Tor Lillqvist,
	J. Ali Harlow)

	* gdk/gdkevents-win32.c (handle_configure_event) :
             (gdk_event_translate), WM_WINDOWPOSCHANGED : initialize
	GdkWindowObject::x, y with screen coords to make 
	gdk_window_get_position () return the right thing and thus fix
	drag and drop positioning (e.g. Gimp tabs, fixes bug #137192)

2004-03-19  Federico Mena Quintero  <federico@ximian.com>

	* Revert the patch to #137520, as 2.4.1 is for conservative bug
	fixes only.  The patch is attached to the bug report, for
	reference.

2004-03-19  Morten Welinder  <terra@gnome.org>

	* gtk/gtkfilechooserdefault.c
	(gtk_file_chooser_default_set_current_folder): Test existance of
	the path after checking for locality, if needed.

2004-03-19  Federico Mena Quintero  <federico@ximian.com>

	Fix #137520.

	* gtk/gtkfilesystem.h (struct _GtkFileFolderIface): Added slots
	for an ::is_finished_loading() method and a ::finished_loading()
	signal at the end of the struct.

	* gtk/gtkfilesystem.c (gtk_file_folder_base_init): Create the
	"finished-loading" signal.
	(gtk_file_folder_is_finished_loading): New function.

	* gtk/gtkfilesystemunix.c
	(gtk_file_folder_unix_is_finished_loading): Implement.

	* gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModelClass): New
	slot for a "finished-loading" signal.
	(gtk_file_system_model_class_init): Create the "finished-loading"
	signal.
	(struct _GtkFileSystemModel): New field
	idle_finished_loading_source.  We emit the "finished-loading"
	signal in an idle if the root folder was done loading right in
	_gtk_file_system_model_new(), so that the caller has a chance to
	connect to the signal.
	(_gtk_file_system_model_new): Connect to the normal signals of the
	folder even if the initial _list_children() fails.  Also, see if
	the folder is finished loading; connect to the "finished-loading"
	signal otherwise.
	(gtk_file_system_model_finalize): Remove the idle handler.

	* gtk/gtkfilechooserdefault.c (set_list_model): Set a busy cursor
	and connect to the model's "finished-loading" signal.
	(get_toplevel): New helper function.
	(error_message): Use get_toplevel().
	(trap_activate_cb): Likewise.
	(location_popup_handler): Likewise.
	(set_busy_cursor): New function.
	(browse_files_model_finished_loading_cb): New callback.

Thu Mar 18 12:10:45 2004  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktreeitem.c (gtk_tree_item_forall): Include 
	eventbox for expander. (#137564, reported by
	Jacques Garrigue)

2004-03-18  Guntupalli Karunakar  <karunakar@freedomink.org>

	* mr.po: Added "mr" for Marathi to ALL_LINGUAS.

2004-03-17  Morten Welinder  <terra@gnome.org>

	* gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Free
	volumes not actually put into the shortcut list.

	* tests/prop-editor.c (object_changed): Plug leak.

	* tests/testfilechooser.c (main): Plug some leaks and expose
	others.

	* tests/prop-editor.c (create_prop_editor): Don't leak the tooltip
	object.  Fixed #136652.

	* gtk/gtkfilechooserdefault.c (check_icon_theme): Do nothing if we
	have no screen.  Fixes #137260.
	(shortcuts_add_bookmark_from_path): Simplify using check_is_folder
	thereby fixing leak.  Fixes #137259.

	* gtk/gtkpathbar.c (gtk_path_bar_forall): Make this work when the
	slider buttons have been destroyed.
	(gtk_path_bar_remove): Make this work for slider buttons too.
	Fixes #137257

2004-03-15  Morten Welinder  <terra@gnome.org>

	* gtk/gtkfilechooserdefault.c (shortcuts_add_bookmark_from_path):
	Sanitize and plug leak.
	(check_icon_theme): Only do something if the widget has a screen.

Wed Mar 17 01:20:28 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
	Move the repositioning logic from _gtk_entry_completion() popup
	over here. Fixes #137355, reported by Niklas Knutsson.