Commit Graph

5770 Commits

Author SHA1 Message Date
Matthias Clasen
7feff029c9 Integrate the ms-windows theme engine (better known as Wimp) into the
2004-08-30  Matthias Clasen  <mclasen@redhat.com>

	Integrate the ms-windows theme engine (better known as Wimp)
	into the autotools build. Wimp (http://gtk-wimp.sourceforge.net/)
	was written by Raymond Penners and Dom Lachowicz. The Wimp 0.6.2
	sources have been added to the GTK+ source tree in
	modules/engines/ms-windows, and there is a ChangeLog detailing
	the history of Wimp. (#109615, Havoc Pennington)

	* configure.in: Generate modules/engines/Makefile and
	modules/engines/ms-windows/Makefile.

	* modules/Makefile.am (SUBDIRS): Add engines.

	* modules/engines/Makefile.am: Compile ms-windows for win32.
2004-08-30 14:20:00 +00:00
Matthias Clasen
5210bf17c6 Make it compile.
2004-08-30  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_delete_surrounding_handler): Make it compile.

2004-08-27  Matthias Clasen  <mclasen@redhat.com>

	Fix #151112, Olexiy Avramchenko:

	* gtk/gtktreeview.c (gtk_tree_view_search_entry_flush_timeout):
	* gtk/gtkiconview.c (scroll_timeout, layout_callback)
	(gtk_icon_view_item_accessible_idle_do_action):
	* gtk/gtkcombobox.c (list_popup_resize_idle, popdown_idle)
	(popup_idle): Protect idle callbacks and timeouts with
	GDK_THREADS_ENTER/_LEAVE.

	* gtk/gtkfilechooserbutton.c (update_dialog_idle): New function to
	call update_dialog() from an idle with the necessary protection.
2004-08-30 13:16:39 +00:00
Matthias Clasen
729aaa06e9 Changes to make sure input methods respect the editability of entries and
Mon Aug 30 01:34:42 2004  Matthias Clasen  <maclas@gmx.de>

	Changes to make sure input methods respect the editability
	of entries and text views. #114173, Noah Levitt.

	* gtk/gtkentry.c (popup_targets_received): Make the Input
	Methods menuitem insensitive if we're not editable.

	* gtk/gtkentry.c (gtk_entry_delete_surrounding_cb):
	* gtk/gtkentry.c (gtk_entry_preedit_changed_cb):
	* gtk/gtkentry.c (gtk_entry_commit_cb): Don't change anything
	if we're not editable.

	* gtk/gtkentry.c (gtk_entry_focus_out):
	* gtk/gtkentry.c (gtk_entry_focus_in): Only send focus_in and
	focus_out to the im context if we're editable.

	* gtk/gtkentry.c (gtk_entry_set_property): Reset the im context
	if the entry just became non-editable.

	* gtk/gtktextview.c (gtk_text_view_delete_surrounding_handler):
	Use gtk_text_buffer_delete_interactive() to not delete
	non-editable portions of text.
2004-08-30 05:39:49 +00:00
Tor Lillqvist
26526ea581 Link with -limm32.
2004-08-30  Tor Lillqvist  <tml@iki.fi>

	* modules/input/Makefile.am (im_ime_la_LIBADD): Link with -limm32.

	* modules/input/gtkimcontextime.c: Use quotes in #includes, to
	find headers when building inside GTK+ sources.
2004-08-30 04:53:23 +00:00
Tor Lillqvist
eb388dfcfe Add drop_failed, like in the X11 backend. Nothing sets it, though.
2004-08-27  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkdnd-win32.c (GdkDragContextPrivateWin32): Add
	drop_failed, like in the X11 backend. Nothing sets it, though.
	(gdk_drag_drop_succeeded): Copy from X11 backend.
2004-08-27 23:38:06 +00:00
Matthias Clasen
a15842e68e Don't crash if model is not set. Noted by Mariano Suarez-Alvarez.
Thu Aug 26 23:58:11 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_key_press): Don't crash
	if model is not set. Noted by Mariano Suarez-Alvarez.
2004-08-27 03:59:05 +00:00
Matthias Clasen
01bc563147 Provide information about how an adjustment change in a range widget
Thu Aug 26 22:44:12 2004  Matthias Clasen  <maclas@gmx.de>

	Provide information about how an adjustment change in a range
	widget happened. Add a "slider-moved" signal which reports how
	a user is interacting with the range, whether they are clicking
	on a stepper or the trough, or dragging the slider.  (#133263,
	Thomas Fitzsimmons)

	* gtk/gtkmarshalers.list: Add signal type BOOLEAN:ENUM,DOUBLE.
	* gtk/gtkrange.c (gtk_range_class_init): Add "change-value"
	signal.
	(gtk_range_internal_set_value): Rename to
	gtk_range_real_change_value.  Add GtkScrollType parameter.  Emit
	the change-value signal when the range's value changes.
	(update_slider_position, gtk_range_scroll_event, step_back,
	step_forward, page_back, page_forward, scroll_begin,
	scroll_end): Change gtk_range_internal_set_value to
	gtk_range_real_change_value.
	* gtk/gtkrange.h (struct _GtkRangeClass): Declare change_value
	function.
2004-08-27 02:54:12 +00:00
Matthias Clasen
24dd1030f0 Build imime.la on Windows.
2004-08-26  Matthias Clasen  <mclasen@redhat.com>

	* modules/input/Makefile.am: Build imime.la on Windows.

	* modules/input/gtkimcontextime.h:
	* modules/input/gtkimcontextime.c:
	* modules/input/imime.c:
	* modules/input/imm-extra.h: Add the IME input method for Win32
	written by Takuro Ashie and Kazuko IWAMOTO. The code was previously
	hosted at http://sourceforge.jp/projects/imime.  (#135195)
2004-08-26 14:29:25 +00:00
Bill Haneman
3124567f18 Fix for #131226, allow selection of singleton list items in multi-select
lists, via keyboard.  [on behalf of Padraig O'Briain]
2004-08-26 14:12:31 +00:00
Matthias Clasen
c429b89d56 Make gdk_window_process_[all]_updates() respect update_freeze_counter
2004-08-26  Matthias Clasen  <mclasen@redhat.com>

	Make gdk_window_process_[all]_updates() respect
	update_freeze_counter  (#144272, Soeren Sandmann)

	* gdk/gdkwindow.c (gdk_window_schedule_update): New function to
	install an idle for gdk_window_update_idle() if one isn't there
	already.
	(gdk_window_process_all_updates):
	(gdk_window_process_updates): Only process the updates if the
	window isn't frozen.
	(gdk_window_invalidate_maybe_recurse): Schedule an update when
	necessary.
	(gdk_window_thaw_updates): Use gdk_window_schedule_update() instead
	of directly installing the idle.
2004-08-26 14:09:08 +00:00
Robert Ögren
eee651cc91 On Win32, make graphical tablets work on multi-monitor systems. (#145467,
2004-08-22  Robert Ögren  <gtk@roboros.com>

	On Win32, make graphical tablets work on multi-monitor systems.
	(#145467, reported by buttknock1@ya...)

	* gdk/win32/gdkinput-win32.c (gdk_input_translate_coordinates):
	Use dimensions of _gdk_parent_root as screen size.
	(gdk_input_get_root_relative_geometry): Get coordinates relative
	to GDK root window instead of Win32 coordinates.
	(_gdk_input_other_event): Updated accordingly.
2004-08-26 00:57:40 +00:00
Manish Singh
800574e35c remove unused gdk_font_charset_for_locale() function.
Wed Aug 25 17:24:17 2004  Manish Singh  <yosh@gimp.org>

        * gdk/x11/gdkfont-x11.c: remove unused gdk_font_charset_for_locale()
        function.

        * gdk/x11/gdkinput-x11.c (_gdk_input_common_init): remove unused
        variables num_extensions and extensions.

        * gtk/gtkhsv.c: remove unused gtk_hsv_get_focus_gc() function.
2004-08-26 00:23:46 +00:00
Manish Singh
95674320d9 initialize path so we don't potentially use an undefined pointer.
Wed Aug 25 17:14:58 2004  Manish Singh  <yosh@gimp.org>

        * gtk/gtktreeview.c (gtk_tree_view_search_activate): initialize
        path so we don't potentially use an undefined pointer.

        * gtk/gtkfilechooserdefault.c (shortcuts_list_create): add G_CALLBACK
        cast for tree_view_keybinding_cb.

        * gtk/gtkfilechooserdefault.c (location_entry_create): cast to
        GTK_FILE_CHOOSER_ENTRY for _gtk_file_chooser_entry_set_file_part()
        calls.

        * gtk/gtkcellrenderercombo.c (gtk_cell_renderer_combo_start_editing):
        cast to GTK_COMBO_BOX for gtk_combo_box_set_active_iter() call.

        * gtk/gtkselection.c (selection_get_text_plain): make len a gsize,
        since that's what g_convert_with_fallback() expects.
2004-08-26 00:20:25 +00:00
Jonathan Blandford
c2008c9a62 activate the typeahead entry on enter.
Wed Aug 25 16:14:34 2004  Jonathan Blandford  <jrb@redhat.com>

        * gtk/gtktreeview.c (gtk_tree_view_search_activate): activate the
        typeahead entry on enter.
2004-08-25 20:15:45 +00:00
Matthias Clasen
58034d80e4 Steal ATTACHED_MENUS list so its tail isn't freed when we re-set it,
2004-08-25  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkmenu.c (gtk_menu_attach_to_widget): Steal ATTACHED_MENUS
	list so its tail isn't freed when we re-set it, noticed
	by Hans Petter Jansson.
2004-08-25 20:06:29 +00:00
Matthias Clasen
c1ce74bbc5 Fix a typo, noticed by Tim Janik.
2004-08-25  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtksizegroup.c (gtk_size_group_add_widget): Fix
	a typo, noticed by Tim Janik.
2004-08-25 20:00:00 +00:00
Jonathan Blandford
50efeb816c Change the Down button to be end-justified, so that clicking on it is a
Wed Aug 25 15:15:56 2004  Jonathan Blandford  <jrb@redhat.com>

        * gtk/gtkpathbar.c (gtk_path_bar_size_allocate): Change the Down
        button to be end-justified, so that clicking on it is a stable
        operation.
2004-08-25 19:19:43 +00:00
Jonathan Blandford
8bc41273f6 Don't handle the event if we have no children.
Tue Aug 24 02:06:37 2004  Jonathan Blandford  <jrb@gnome.org>

        * gtk/gtktreeview.c
        (gtk_tree_view_real_expand_collapse_cursor_row): Don't handle the
        event if we have no children.

        * gtk/gtkfilechooserdefault.c (trap_activate_cb):
        (tree_view_keybinding_cb):Since GtkTreeView has a keybinding
         attached to '/', we need to catch keypresses before the TreeView
         gets them.
        (gtk_file_chooser_default_class_init): add '/' to be a keybinding
        to the C-l dialog.
        (location_entry_create): Clear the text to "" when loading a file.
        This has a much better feel than putting the currently selected
        in.
        * #include <errno.h>
2004-08-25 19:10:38 +00:00
Matthias Clasen
e4ef01a7b4 Use get_file_info() rather than trying get_folder() and checking for an
2004-08-25  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkfilechooserdefault.c (check_is_folder): Use get_file_info() rather
	than trying get_folder() and checking for an error directly because older
	versions of the gnome-vfs backend don't return an error
	immediately.  (#150852, Zack Cerza )
2004-08-25 16:59:57 +00:00
Matthias Clasen
2a1e74ae5e Version bump. 2004-08-25 16:41:47 +00:00
Matthias Clasen
17cf070553 2.5.2 2004-08-25 16:21:15 +00:00
Matthias Clasen
f1d9c777fa Update to 2.5.2 2004-08-25 04:04:32 +00:00
Søren Sandmann
e507eb3429 Fix logical errors in gtk_list_store_move_before/after(). (#150983, patch
Wed Aug 25 00:09:07 2004  Søren Sandmann  <sandmann@redhat.com>

	* gtk/gtkliststore.c (gtk_list_store_move_after): Fix logical
	errors in gtk_list_store_move_before/after(). (#150983, patch by
	Robert Ögren).
2004-08-24 22:37:23 +00:00
Søren Sandmann
eb38c54837 Remove debug spew
Wed Aug 25 00:22:48 2004  Søren Sandmann  <sandmann@redhat.com>

	* gtk/gtksequence.c: Remove debug spew
2004-08-24 22:23:29 +00:00
Søren Sandmann
f7cbfbae15 Just return if the parameters are identical. (#150159, Robert Ögren)
Tue Aug 24 21:46:42 2004  Søren Sandmann  <sandmann@redhat.com>

	* gtk/gtksequence.c (_gtk_sequence_move): Just return if the
	parameters are identical. (#150159, Robert Ögren)
2004-08-24 19:48:38 +00:00
Matthias Clasen
81dba2e0b9 Handle action_group being NULL. (#150869, Tommi Komulainen)
2004-08-24  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkaction.c (connect_proxy, disconnect_proxy): Handle
	action_group being NULL.  (#150869,  Tommi Komulainen)
2004-08-24 14:51:39 +00:00
Matthias Clasen
b97018ad7f Use the correct index variable. (#150941, Tommi Komulainen)
2004-08-24  Matthias Clasen  <mclasen@redhat.com>

	* gdk/gdkimage.c (allocate_scratch_images): Use the correct
	index variable.  (#150941, Tommi Komulainen)
2004-08-24 14:32:15 +00:00
Matthias Clasen
2f2dee4341 Take header height and adjustment into account. (#136496, Pawek Salek)
2004-08-24  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_node_queue_redraw): Take header
	height and adjustment into account.  (#136496, Pawek Salek)
2004-08-24 14:26:47 +00:00
Jonathan Blandford
0297f9a015 add the doc shooter to the docs dir as an uninstalled helper tool.
Mon Aug 23 17:19:19 2004  Jonathan Blandford  <jrb@redhat.com>

        * configure.in:
        * docs/tools/Makefile.am (clean-local): add the doc shooter to the
        docs dir as an uninstalled helper tool.
2004-08-23 21:22:55 +00:00
Matthias Clasen
2d2d3e4b27 Make it compile. 2004-08-23 19:05:04 +00:00
Matthias Clasen
a9585748ec Add a user_time field.
2004-08-23  Matthias Clasen  <mclasen@redhat.com>

	* gdk/x11/gdkwindow-x11.h (struct _GdkToplevelX11): Add a
	user_time field.

	* gdk/x11/gdkwindow-x11.c (gdk_x11_window_set_user_time): Update
	toplevel->user_time.
	(show_window_internal): Update the user time when re-mapping a
	toplevel window.  (#150502, Elijah Newren)
2004-08-23 17:10:34 +00:00
Soeren Sandmann
7d71fa2594 Remove conflict markers.
Mon Aug 23 17:33:52 2004  Soeren Sandmann  <sandmann@redhat.com>

	* ChangeLog: Remove conflict markers.
2004-08-23 15:51:44 +00:00
Matthias Clasen
a578e11346 Fix #150822, reported by Christian Persch
2004-08-23  Matthias Clasen  <mclasen@redhat.com>

	Fix #150822, reported by Christian Persch

	* gtk/gtklabel.c (gtk_label_ensure_layout): Set the layout width
	appropriately when ellipsized.
	(gtk_label_size_allocate): Only set the layout width if there
	is a layout.
2004-08-23 15:37:23 +00:00
Matthias Clasen
31b681948c Support the latest EWMH additions to the _NET_ACTIVE_WINDOW client message
2004-08-23  Matthias Clasen  <mclasen@redhat.com>

	* gdk/x11/gdkwindow-x11.c (gdk_window_focus): Support the latest
	EWMH additions to the _NET_ACTIVE_WINDOW client message
	format.  (#150668, Elijah Newren)
2004-08-23 15:12:04 +00:00
Matthias Clasen
ec066eeef8 Set unused bits in pixel to 1s in case they are used as alpha; copying
Mon Aug 23 01:17:59 2004  Matthias Clasen  <maclas@gmx.de>

	* gdk/gdkrgb.c (gdk_rgb_xpixel_from_rgb_internal): Set unused
	bits in pixel to 1s in case they are used as alpha; copying
	code from gdk_colormap_alloc_colors().  (#150466, Rich Wareham)
2004-08-23 05:19:52 +00:00
Philip Langdale
515c055ccd Two signals (gtk_action_sync_property and gtk_action_sync_sensitive) were
2004-08-22  Philip Langdale  <plangdale@vmware.com>

	* gtk/gtkaction.c (gtk_action_disconnect_proxy): Two signals
	(gtk_action_sync_property and gtk_action_sync_sensitive) were
	not being correctly disconnected, leading to actions continuing
	to affect disconnected proxies. (#150607)
2004-08-22 23:45:36 +00:00
Tor Lillqvist
7ed263a266 Don't show TEMP windows in the Task Manager. Implement by calling
2004-08-22  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkwindow-win32.c (gdk_window_new_internal,
	gdk_window_new, gdk_window_set_skip_taskbar_hint): Don't show TEMP
	windows in the Task Manager. Implement by calling
	gdk_window_set_skip_taskbar_hint(TRUE) on them. (#145481, Tim
	Evans)
2004-08-22 19:16:22 +00:00
Tor Lillqvist
a63a44ff3b Report whole of (primary) monitor, including any taskbars. Excluding the
2004-08-22  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkdisplay-win32.c (enum_monitor, gdk_display_open):
	Report whole of (primary) monitor, including any taskbars.
	Excluding the taskbar area from the "root window" reported to GDK
	doesn't seem to be that useful although gdk/win32 had been doing it
	for a very long time. (#149013, see also #145467 and #148526)
2004-08-22 16:59:14 +00:00
Soeren Sandmann
c49739a0b4 gtk/gtkexpander.c
Sun Aug 22 16:55:15 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkexpander.c
	* gtk/gtkalignment.c:
	* gtk/gtktexttag.c
	Make enums match property names. Found by a script by Tommi
	Komulainen.

	* gtk/gtkpaned.c (gtk_paned_class_init): fix min/max mixup.

Sun Aug 22 16:09:49 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkliststore.h (struct _GtkListStore):
	* gtk/gtkliststore.c (gtk_list_store_init):
	* gtk/gtkliststore.c (gtk_list_store_insert):
	* gtk/gtkliststore.c (gtk_list_store_remove):
	Restore length field; PyGTK and maybe others use it directly.
2004-08-22 14:58:15 +00:00
Soeren Sandmann
34110c427b Restore length field; PyGTK and maybe others use it directly.
Sun Aug 22 16:09:49 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkliststore.h (struct _GtkListStore):
	* gtk/gtkliststore.c (gtk_list_store_init):
	* gtk/gtkliststore.c (gtk_list_store_insert):
	* gtk/gtkliststore.c (gtk_list_store_remove):
	Restore length field; PyGTK and maybe others use it directly.
2004-08-22 14:11:04 +00:00
Soeren Sandmann
53f4405a13 s/CYCLE_HANDLE_FOCUS/CYCLE_CHILD_FOCUS/
Sun Aug 22 15:46:56 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkpaned.c (gtk_paned_class_init):
	s/CYCLE_HANDLE_FOCUS/CYCLE_CHILD_FOCUS/

	* gtk/gtkfontbutton.c (gtk_font_button_class_init):
	s/PROP_SHOW_SIZE/PROP_SHOW_STYLE/

	Both pointed out by Tommi Komulainen.
2004-08-22 14:05:30 +00:00
Soeren Sandmann
b371e7152f Use PROP_MAX_POSITION, not PROP_MIN_POSITION for the max_position
Sun Aug 22 13:44:53 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkpaned.c (gtk_paned_class_init): Use PROP_MAX_POSITION,
	not PROP_MIN_POSITION for the max_position property. Fix pointet
	out by Tommi Komulainen.
2004-08-22 12:10:14 +00:00
Soeren Sandmann
9c34ec2ee4 Normalize the position so we don't create paths with off-list indices.
Sun Aug 22 13:32:33 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkliststore.c (gtk_list_store_insert): Normalize the
	position so we don't create paths with off-list
	indices. (#150320).
2004-08-22 12:03:46 +00:00
Soeren Sandmann
6b4ef37ccc Use the correct tree path (#150289, Morten Welinder).
Sun Aug 22 12:04:59 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkliststore.c (gtk_list_store_sort_iter_changed): Use the
	correct tree path (#150289, Morten Welinder).
2004-08-22 10:31:49 +00:00
Matthias Clasen
07b5626f00 Fix #150406, reported by Fernando San Martín Woerner, patch by Gustavo
Sun Aug 22 00:08:44 2004  Matthias Clasen  <maclas@gmx.de>

	Fix #150406, reported by Fernando San Martín Woerner, patch
	by Gustavo Carneiro.

	* gtk/gtkentrycompletion.c
	(gtk_entry_completion_default_completion_func): Check that
	column is of type G_TYPE_STRING before proceeding.
2004-08-22 04:11:14 +00:00
Matthias Clasen
54938b0c6d Don't use an uninitialized tree iter. (#150414, Torsten Schoenfeld)
Sat Aug 21 23:53:39 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktreestore.c (gtk_tree_store_swap): Don't use an
	uninitialized tree iter.  (#150414, Torsten Schoenfeld)
2004-08-22 03:56:43 +00:00
Matthias Clasen
448f2229a5 Fix #150738, Tomislav Jonjic.
Sat Aug 21 23:29:54 2004  Matthias Clasen  <maclas@gmx.de>

	Fix #150738, Tomislav Jonjic.

	* gtk/gtktoolitem.h (GTK_IS_TOOL_ITEM_CLASS):
	* gtk/gtktoolbutton.h (GTK_IS_TOOL_BUTTON_CLASS):
	* gtk/gtktoggleaction.h (GTK_IS_TOGGLE_ACTION_CLASS):
	* gtk/gtkseparatortoolitem.h (GTK_IS_SEPARATOR_TOOL_ITEM_CLASS):
	* gtk/gtkradiotoolbutton.h (GTK_IS_RADIO_TOOL_BUTTON_CLASS):
	* gtk/gtkradioaction.h (GTK_IS_RADIO_ACTION_CLASS):
	* gtk/gtkuimanager.h (GTK_IS_UI_MANAGER_CLASS):
	* gtk/gtkaction.h (GTK_IS_ACTION_CLASS): Fix macro definitions.
2004-08-22 03:38:42 +00:00
Manish Singh
a1f93eb16c demos/testpixbuf-save.c Get rid of some unnecessary casts.
Wed Aug 18 17:25:26 2004  Manish Singh  <yosh@gimp.org>

        * demos/testpixbuf-save.c
        * demos/gtk-demo/hypertext.c: Get rid of some unnecessary casts.

        * demos/gtk-demo/appwindow.c: Make activate_email and activate_url
        match the arguments for GtkAboutDialogActivateLinkFunc.
2004-08-19 00:25:27 +00:00
Manish Singh
ba6fc3ccd8 Initialize height from fixed_height before we do anything, so it always
Wed Aug 18 16:18:00 2004  Manish Singh  <yosh@gimp.org>

        * gtk/gtktreeview.c (gtk_tree_view_row_inserted): Initialize height
        from fixed_height before we do anything, so it always has a valid
        value.

        * gtk/gtkfilechooserdefault.c (shortcuts_reload_icons): Fix call
        to gtk_tree_model_get (missing "," in param list).
2004-08-18 23:18:15 +00:00
Federico Mena Quintero
65ddedd1ae Merged from 2.4:
2004-08-18  Federico Mena Quintero  <federico@ximian.com>

	Merged from 2.4:

	Fixes #149251:

	* gtk/gtkfilechooserdefault.c: Renamed SHORTCUTS_COL_PATH to
	SHORTCUTS_COL_DATA.  Add SHORTCUTS_COL_IS_VOLUME, to determine
	easily whether the SHORTCUTS_COL_DATA points to a GtkFilePath or a
	GtkFileSystemVolume.
	(shortcuts_model_create): Create a boolean column for
	SHORTCUTS_COL_IS_VOLUME.
	(shortcuts_reload_icons): Simplify with the use of the
	SHORTCUTS_COL_IS_VOLUME column.  Don't leak the pixbuf.
	(shortcuts_insert_path): Add the SHORTCUTS_COL_IS_VOLUME data.
	(shortcuts_free_row_data): New helper function; frees the data
	columns for an iter.
	(shortcuts_remove_rows): Don't take a callback for freeing the
	data; free everything here instead.  Use
	shortcuts_free_row_data().
	(volume_remove_cb): Removed.
	(remove_bookmark_cb): Removed.
	(remove_row_cb): Make this a single generic function to delete
	rows.
	(shortcuts_add_volumes): Use remove_row_cb().
	(shortcuts_add_bookmarks): Likewise.
	(struct _GtkFileChooserDefault): Removed the
	shortcuts_current_folder_is_volume field.
	(shortcuts_add_current_folder): Oops, don't free the volume.
	(remove_current_folder_cb): Removed.
	(shortcut_find_position): Simplify through the use of the
	SHORTCUTS_COL_IS_VOLUME column.
	(remove_selected_bookmarks): Assert that we don't get a volume.
	(shortcuts_reorder): Likewise; also, plug a leak.
	(gtk_file_chooser_default_remove_shortcut_folder): Simplify
	through the use of shortcuts_remove_rows().
	(gtk_file_chooser_default_list_shortcut_folders): Assert that we
	don't get a volume.
	(shortcuts_activate_iter): Simplify.
	(home_folder_handler): Simplify by using
	shortcuts_activate_iter().
	(shortcuts_free): New function; frees all the data columns.
	(gtk_file_chooser_default_finalize): Unref the
	shortcuts_filter_model and the shortcuts model data first.
2004-08-18 16:30:58 +00:00