Commit graph

15 commits

Author SHA1 Message Date
Alexander Larsson 4e04c0a008 Convert file attributes from list of strings to a bitmask. Patch from
2003-04-02  Alexander Larsson  <alexl@redhat.com>

	* components/notes/nautilus-notes.c:
	* components/tree/nautilus-tree-model.c:
	* components/tree/nautilus-tree-view.c:
	* libnautilus-private/nautilus-directory-async.c:
	* libnautilus-private/nautilus-directory-background.c:
	* libnautilus-private/nautilus-directory-private.h:
	* libnautilus-private/nautilus-directory.c:
	* libnautilus-private/nautilus-directory.h:
	* libnautilus-private/nautilus-file-attributes.h:
	* libnautilus-private/nautilus-file-private.h:
	* libnautilus-private/nautilus-file.c: (rename_callback),
	* libnautilus-private/nautilus-file.h:
	* libnautilus-private/nautilus-icon-factory.c:
	* libnautilus-private/nautilus-icon-factory.h:
	* libnautilus-private/nautilus-link.c:
	* libnautilus-private/nautilus-merged-directory.c:
	* libnautilus-private/nautilus-mime-actions.c:
	* libnautilus-private/nautilus-mime-actions.h:
	* libnautilus-private/nautilus-program-choosing.c:
	* libnautilus-private/nautilus-trash-file.c:
	* libnautilus-private/nautilus-trash-monitor.c:
	* libnautilus-private/nautilus-vfs-directory.c:
	* libnautilus-private/nautilus-vfs-file.c:
	* src/file-manager/fm-directory-view.c:
	* src/file-manager/fm-icon-container.c:
	* src/file-manager/fm-properties-window.c:
	* src/nautilus-applicable-views.c:
	* src/nautilus-information-panel.c:
	* src/nautilus-sidebar-title.c:
	* src/nautilus-window-manage-views.c:
	* src/nautilus-window.c:
	* test/test-nautilus-mime-actions-set.c:
	* test/test-nautilus-mime-actions.c:

	Convert file attributes from list of strings to a bitmask.
	Patch from andersca@codefactory.se.
2003-04-02 11:51:14 +00:00
Michael Meeks 7a030297d9 fix.
2001-11-21  Michael Meeks  <michael@ximian.com>

	* test/test-nautilus-wrap-table.c (main): fix.

	* test/test-nautilus-mime-actions.c (main): upd. init.

	* test/test.c (test_init): upd.
	(test_label_new): kill tile_pixbuf support.
	(test_image_new): ditto.

	* test/test-nautilus-async-activation.c (main): upd.

	* test/Makefile.am: add CORE_CFLAGS, update LDADD.

	* libnautilus-private/nautilus-directory.c
	(nautilus_directory_destroy): rename to
	(nautilus_directory_dispose): this, but leave as a
	gtk object for now, double emission protect, move
	removal from directories list to head & split into:
	(nautilus_directory_finalize): here.

	* libnautilus-private/nautilus-directory-async.c
	(nautilus_directory_async_state_changed): fully remove
	GTK_OBJECT_DESTROYED check.
2001-11-21 08:34:57 +00:00
Darin Adler f6cff97ccd Switch to glib's gettext.
* acconfig.h:
	* configure.in:
	Switch to glib's gettext.

	* components/help/converters/*:
	Remove, since these were moved to libgnome.

	* Many files:
	Get rid of incorrect uses of many locale-specific functions like
	g_strcasecmp and isspace.
2001-11-07 21:43:57 +00:00
Darin Adler 5abcc19954 More GNOME 2 work. We now compile up to libnautilus-private and I'm
* Lots of files:
	More GNOME 2 work. We now compile up to libnautilus-private and
	I'm working my way through the files in there. Also changed all
	the initialize_class and initialize to class_init and init.
2001-10-28 20:21:52 +00:00
Ramiro Estrugo 90d404095e nautilus-extensions -> nautilus-private renaming. 2001-05-04 03:14:43 +00:00
Maciej Stachowiak 2fa1795d4a reviewed by: Darin Adler <darin@eazel.com> and
Robey Pointer  <robey@eazel.com>

	Fix bugs 5528 (oaf command-line options show up in main program
	section, not a separate section) and 5510 (descriptions of
	OAF-specific options in --help are not translated). To do this I
	had to change the way the oaf popt options are processed in all
	the places that do so.

	* components/adapter/main.c: (main):
	* components/hardware/main.c: (main):
	* components/help/hyperbola-main.c: (main):
	* components/image-viewer/Nautilus_View_image.oaf.in:
	* components/image-viewer/nautilus-image-view.c:
	(init_server_factory):
	* components/loser/content/main.c: (main):
	* components/loser/sidebar/main.c: (main):
	* components/mozilla/main.c: (main):
	* components/music/main.c: (main):
	* components/notes/nautilus-notes.c: (main):
	* components/rpmview/main.c: (main):
	* components/services/install/command-line/eazel-alt-install-corba.
	c: (main):
	* components/services/install/nautilus-view/main.c: (main):
	* components/services/login/nautilus-view/main.c: (main):
	* components/services/summary/nautilus-view/main.c: (main):
	* components/services/time/command-line/main.c: (main):
	* components/services/time/nautilus-view/main.c: (main):
	* components/services/trilobite/libtrilobite/trilobite-core-utils.c
	: (trilobite_init):
	* components/shell/shell.c:
	* components/text/Nautilus_View_text.oaf.in:
	* components/text/main.c: (main):
	* components/throbber/main.c: (main):
	* components/tree/main.c: (main):
	* libnautilus/nautilus-view-standard-main.c:
	(nautilus_view_standard_main_multi):
	* src/Nautilus_shell.oaf.in:
	* src/nautilus-main.c: (main):
	* test/test-nautilus-mime-actions-set.c: (main):
	* test/test-nautilus-mime-actions.c: (main): Register oaf options
	with gnomelib_register_popt_options and move oaf_init call to
	before gnome_init to fix the aforementioned bugs.
2001-02-02 03:52:20 +00:00
Darin Adler a8470fdc9b Worked on getting rid of wait_until_ready.
* libnautilus-extensions/nautilus-directory.c: Got rid of include
	of nautilus-wait-until-ready.h.

	* libnautilus-extensions/nautilus-file.c: Got rid of
	nautilus_file_wait_until_ready.

	* libnautilus-extensions/nautilus-mime-actions.c:
	(wait_until_ready_callback),
	(nautilus_mime_actions_wait_for_full_file_attributes):
	Reimplemented so the wait is in here so we can get rid of
	nautilus_file_wait_until_ready.

	* libnautilus-extensions/nautilus-mime-actions.h: Moved
	nautilus_mime_actions_wait_for_full_file_attributes into
	nautilus-wait-until-ready.h.

	* libnautilus-extensions/nautilus-program-chooser.c: Added include
	of nautilus-wait-until-ready.h since this is one of the two files
	that still uses the thing.
	* libnautilus-extensions/nautilus-program-choosing.c: Added include
	of nautilus-wait-until-ready.h since this is one of the two files
	that still uses the thing.

	* libnautilus-extensions/nautilus-wait-until-ready.h: Removed
	nautilsu_file_wait_until_ready and added
	nautilus_mime_actions_wait_for_full_file_attributes.

	* src/file-manager/fm-directory-view.c:
	(switch_location_and_view): Get rid of code that waits for
	attributes, because the code guarantees they will already be read
	at this point.
	(fm_directory_view_destroy): Stop monitoring the file for the open
	with menu.
	(files_changed_callback): Update the menus whenever a file changes
	or our knowledge about it changes.
	(create_open_with_gtk_menu): Use the new monitor call to arrange
	to get the information about the single selected file that we
	need.
	(reset_bonobo_open_with_menu): Use the new monitor call to arrange
	to get the information about the single selected file that we
	need.
	(activate_callback): Remove the hack to work around the
	wait_until_ready calls. Also remove the wait_until_ready in here
	because we now request all the attributes we will be needing in
	the call_when_ready call (that already existed).
	(fm_directory_view_activate_file): Request all the attributes
	needed for determining MIME actions.
	(monitor_file_for_open_with): New function to monitor the stuff we
	need to know for the Open with menu.

	* test/test-nautilus-mime-actions-set.c: (ready_callback), (main):
	Use call_when_ready instead of wait_until_ready.

	* test/test-nautilus-mime-actions.c: (ready_callback), (main): Use
	call_when_ready instead of wait_until_ready.

	* po/ui-extract.pl: Checked in new version from Kenneth.
	* po/update.pl: Kenneth wanted me to update the license.
2000-11-08 01:11:33 +00:00
Maciej Stachowiak 0bda5d31c0 Un-revert my changes from before, fixing the bugs in the process.
* libnautilus-extensions/nautilus-mime-actions.c:
	(nautilus_mime_actions_check_if_minimum_attributes_ready),
	(nautilus_mime_actions_check_if_full_attributes_ready),
	(nautilus_mime_actions_get_minimum_file_attributes),
	(nautilus_mime_actions_get_full_file_attributes),
	(nautilus_mime_actions_wait_for_full_file_attributes),
	(nautilus_mime_get_default_action_type_for_file),
	(nautilus_mime_get_default_action_for_file),
	(nautilus_mime_get_default_application_for_file_internal),
	(nautilus_mime_get_default_application_for_file),
	(nautilus_mime_is_default_application_for_file_user_chosen),
	(nautilus_mime_get_default_component_sort_conditions),
	(nautilus_mime_get_default_component_for_file_internal),
	(nautilus_mime_get_short_list_applications_for_file),
	(nautilus_mime_get_short_list_components_for_file),
	(nautilus_mime_get_short_list_methods_for_file),
	(nautilus_mime_get_all_applications_for_file),
	(nautilus_mime_get_all_components_for_file),
	(nautilus_mime_set_default_application_for_file),
	(nautilus_mime_set_default_component_for_file),
	(nautilus_mime_set_short_list_applications_for_file),
	(nautilus_mime_set_short_list_components_for_file),
	(nautilus_mime_add_application_to_short_list_for_file),
	(nautilus_mime_remove_application_from_short_list_for_file),
	(nautilus_mime_add_component_to_short_list_for_file),
	(nautilus_mime_remove_component_from_short_list_for_file),
	(nautilus_mime_extend_all_applications_for_file),
	(nautilus_mime_remove_from_all_applications_for_file),
	(nautilus_do_component_query):
	* libnautilus-extensions/nautilus-mime-actions.h:
	* libnautilus-extensions/nautilus-program-chooser.c:
	(repopulate_program_list), (is_component_default_for_file),
	(program_file_pair_is_default_for_file),
	(program_file_pair_is_in_short_list_for_file),
	(add_to_short_list_for_file), (remove_from_short_list_for_file),
	(remove_default_for_item), (set_default_for_item):
	* libnautilus-extensions/nautilus-program-choosing.c:
	(any_programs_available_for_file):
	* libnautilus/nautilus-clipboard-ui.xml.h:
	* src/file-manager/fm-directory-view.c: (switch_location_and_view),
	(create_open_with_gtk_menu), (reset_bonobo_open_with_menu),
	(activate_callback):
	* src/file-manager/nautilus-directory-view-ui.xml.h:
	* src/file-manager/nautilus-icon-view-ui.xml.h:
	* src/file-manager/nautilus-search-list-view-ui.xml.h:
	* src/nautilus-applicable-views.c: (nautilus_navigation_info_new):
	* src/nautilus-shell-ui.xml.h:
	* src/nautilus-sidebar.c: (nautilus_sidebar_update_all),
	(nautilus_sidebar_set_uri):
	* src/nautilus-window.c: (nautilus_window_load_content_view_menu):
	* test/test-nautilus-mime-actions-set.c: (main):
	* test/test-nautilus-mime-actions.c: (main): Un-revert my changes
	from before, fixing the bugs in the process.
2000-11-01 01:24:17 +00:00
J Shane Culpepper 6115833650 backing out changes that caused a seroius regression in services.
2000-10-31  J Shane Culpepper  <pepper@eazel.com>

	* libnautilus-extensions/nautilus-mime-actions.c:
	(nautilus_mime_actions_check_if_required_attributes_ready),
	(nautilus_mime_actions_get_required_file_attributes),
	(nautilus_mime_actions_wait_for_required_file_attributes),
	(nautilus_mime_get_default_action_type_for_file),
	(nautilus_mime_get_default_action_for_file),
	(nautilus_mime_get_default_application_for_file_internal),
	(nautilus_mime_get_default_application_for_file),
	(nautilus_mime_is_default_application_for_file_user_chosen),
	(nautilus_mime_get_default_component_for_file_internal),
	(nautilus_mime_get_short_list_applications_for_file),
	(nautilus_mime_get_short_list_components_for_file),
	(nautilus_mime_get_short_list_methods_for_file),
	(nautilus_mime_get_all_applications_for_file),
	(nautilus_mime_get_all_components_for_file),
	(nautilus_mime_set_default_application_for_file),
	(nautilus_mime_set_default_component_for_file),
	(nautilus_mime_set_short_list_applications_for_file),
	(nautilus_mime_set_short_list_components_for_file),
	(nautilus_mime_add_application_to_short_list_for_file),
	(nautilus_mime_remove_application_from_short_list_for_file),
	(nautilus_mime_add_component_to_short_list_for_file),
	(nautilus_mime_remove_component_from_short_list_for_file),
	(nautilus_mime_extend_all_applications_for_file),
	(nautilus_mime_remove_from_all_applications_for_file),
	(nautilus_do_component_query):
	* libnautilus-extensions/nautilus-program-chooser.c:
	(repopulate_program_list), (is_component_default_for_file),
	(program_file_pair_is_default_for_file),
	(program_file_pair_is_in_short_list_for_file),
	(add_to_short_list_for_file), (remove_from_short_list_for_file),
	(remove_default_for_item), (set_default_for_item):
	* libnautilus-extensions/nautilus-program-choosing.c:
	(any_programs_available_for_file):
	* src/file-manager/fm-directory-view.c: (switch_location_and_view),
	(create_open_with_gtk_menu), (reset_bonobo_open_with_menu),
	(activate_callback):
	* src/nautilus-window.c: (nautilus_window_load_content_view_menu):
	* test/test-nautilus-mime-actions-set.c: (main):
	* test/test-nautilus-mime-actions.c: (main):

	backing out changes that caused a seroius regression in services.
2000-10-31 10:04:42 +00:00
Maciej Stachowiak d81e04f3ca Portions of the fix for 2379 (the parts that don't make it crash).
* libnautilus-extensions/nautilus-mime-actions.c:
	(nautilus_mime_actions_check_if_minimum_attributes_ready),
	(nautilus_mime_actions_check_if_full_attributes_ready),
	(nautilus_mime_actions_get_minimum_file_attributes),
	(nautilus_mime_actions_get_full_file_attributes),
	(nautilus_mime_actions_wait_for_full_file_attributes),
	(nautilus_mime_get_default_action_type_for_file),
	(nautilus_mime_get_default_action_for_file),
	(nautilus_mime_get_default_application_for_file_internal),
	(nautilus_mime_get_default_application_for_file),
	(nautilus_mime_is_default_application_for_file_user_chosen),
	(nautilus_mime_get_default_component_sort_conditions),
	(nautilus_mime_get_default_component_for_file_internal),
	(nautilus_mime_get_short_list_applications_for_file),
	(nautilus_mime_get_short_list_components_for_file),
	(nautilus_mime_get_short_list_methods_for_file),
	(nautilus_mime_get_all_applications_for_file),
	(nautilus_mime_get_all_components_for_file),
	(nautilus_mime_set_default_application_for_file),
	(nautilus_mime_set_default_component_for_file),
	(nautilus_mime_set_short_list_applications_for_file),
	(nautilus_mime_set_short_list_components_for_file),
	(nautilus_mime_add_application_to_short_list_for_file),
	(nautilus_mime_remove_application_from_short_list_for_file),
	(nautilus_mime_add_component_to_short_list_for_file),
	(nautilus_mime_remove_component_from_short_list_for_file),
	(nautilus_mime_extend_all_applications_for_file),
	(nautilus_mime_remove_from_all_applications_for_file),
	(nautilus_do_component_query):
	* libnautilus-extensions/nautilus-mime-actions.h:
	* libnautilus-extensions/nautilus-program-chooser.c:
	(repopulate_program_list), (is_component_default_for_file),
	(program_file_pair_is_default_for_file),
	(program_file_pair_is_in_short_list_for_file),
	(add_to_short_list_for_file), (remove_from_short_list_for_file),
	(remove_default_for_item), (set_default_for_item):
	* libnautilus-extensions/nautilus-program-choosing.c:
	(any_programs_available_for_file):
	* src/file-manager/fm-directory-view.c: (switch_location_and_view),
	(create_open_with_gtk_menu), (reset_bonobo_open_with_menu),
	(activate_callback):
	* src/nautilus-applicable-views.c: (nautilus_navigation_info_new):
	* src/nautilus-sidebar.c: (nautilus_sidebar_update_all),
	(nautilus_sidebar_set_uri):
	* src/nautilus-window.c: (nautilus_window_load_content_view_menu):
	* test/test-nautilus-mime-actions-set.c: (main):
	* test/test-nautilus-mime-actions.c: (main): Portions of the fix
	for 2379 (the parts that don't make it crash).
2000-10-31 04:28:54 +00:00
Maciej Stachowiak 6179da4f6f Fixed bugzilla.eazel.com bugs 2222, 3177, 3468, 3650, 3788
(some vestiges of wait_until_ready remain in the farther reaches
	of the UI).

	* libnautilus-extensions/nautilus-mime-actions.h,
	libnautilus-extensions/nautilus-mime-actions.c
	(nautilus_mime_actions_check_if_required_attributes_ready,
	nautilus_mime_actions_get_required_file_attributes,
	nautilus_mime_actions_wait_for_required_file_attributes): New
	functions to help with monitoring or waiting for required
	attributes for the nautilus mime API.
	(nautilus_mime_get_default_action_type_for_file,
	nautilus_mime_get_default_action_for_file,
	nautilus_mime_get_default_application_for_file_internal,
	nautilus_mime_get_default_application_for_file,
	nautilus_mime_is_default_application_for_file_user_chosen,
	nautilus_mime_get_default_component_for_file_internal,
	nautilus_mime_get_default_component_for_file,
	nautilus_mime_is_default_component_for_file_user_chosen,
	nautilus_mime_get_short_list_applications_for_file,
	nautilus_mime_get_short_list_components_for_file,
	nautilus_mime_get_short_list_methods_for_file,
	nautilus_mime_get_all_applications_for_file,
	nautilus_mime_has_any_applications_for_file,
	nautilus_mime_get_all_components_for_file,
	nautilus_mime_has_any_components_for_file,
	nautilus_mime_set_default_action_type_for_file,
	nautilus_mime_set_default_application_for_file,
	nautilus_mime_set_default_component_for_file,
	nautilus_mime_set_short_list_applications_for_file,
	nautilus_mime_set_short_list_components_for_file,
	nautilus_mime_add_application_to_short_list_for_file,
	nautilus_mime_remove_application_from_short_list_for_file,
	nautilus_mime_add_component_to_short_list_for_file,
	nautilus_mime_remove_component_from_short_list_for_file,
	nautilus_mime_extend_all_applications_for_file,
	nautilus_mime_remove_from_all_applications_for_file,
	mime_type_get_supertype): Don't `nautilus_file_wait_until_ready'
	for the required attributes; instead assert (Well, return_if_fail)
	that they are available using
	`nautilus_file_check_if_ready'. Also, use
	`nautilus_file_get_uri_scheme' where possible.

	* libnautilus-extensions/nautilus-directory-async.c
	(mime_list_callback): Correct some coding mistakes.

	* libnautilus-extensions/nautilus-wait-until-ready.h,
	libnautilus-extensions/nautilus-directory.c: Remove
	`nautilus_directory_wait_until_ready'.

	* libnautilus-extensions/nautilus-file.h,
	libnautilus-extensions/nautilus-file.c
	(nautilus_file_get_uri_scheme): new convenience function.

	* libnautilus-extensions/nautilus-program-chooser.c:
	(repopulate_program_list, is_application_default_for_file,
	is_component_default_for_file,
	is_component_in_short_list_for_file,
	is_application_in_short_list_for_file,
	program_file_pair_is_default_for_file,
	program_file_pair_is_in_short_list_for_file,
	add_to_short_list_for_file, remove_from_short_list_for_file,
	remove_default_for_item, set_default_for_item): wait_until_ready
	for required file attributes.

	* libnautilus-extensions/nautilus-program-choosing.c:
	(any_programs_available_for_file): wait_until_ready for required
	file attributes.

	* src/file-manager/fm-directory-view.c: (switch_location_and_view,
	create_open_with_gtk_menu, reset_bonobo_open_with_menu,
	activate_callback): Wait for the right file attributes.

	* src/nautilus-applicable-views.c: (got_file_info_callback),
	(nautilus_navigation_info_new): Wait for the right file
	attributes. (no wait_until_ready).

	* src/nautilus-sidebar.c: (nautilus_sidebar_destroy,
	nautilus_sidebar_update_buttons, nautilus_sidebar_update_all),
	nautilus_sidebar_set_uri): Monitor the file the sidebar is
	displaying, and update when it's attributes change.

	* src/nautilus-window-manage-views.c
	(nautilus_window_set_content_view): Wait for the right file
	attributes. (no wait_until_ready).

	* src/nautilus-window.c: (nautilus_window_destroy,
	view_menu_choose_view_callback, view_menu_vfs_method_callback,
	nautilus_window_real_load_content_view_menu,
	nautilus_window_load_content_view_menu): Wait for the right
	attributes. (no wait_until_ready in this chain).

	* test/test-nautilus-mime-actions-set.c (main): Wait for the right attributes.
	* test/test-nautilus-mime-actions.c (main): Wait for the right attributes.
2000-10-18 21:57:19 +00:00
Maciej Stachowiak 3a1df85362 Fix assorted bugs which made NautilusFile think the list was never
* libnautilus-extensions/nautilus-directory-async.c:
	(cancel_mime_list, set_up_request_by_file_attributes,
	lacks_mime_list, nautilus_directory_invalidate_counts,
	mime_list_callback, mime_list_start): Fix assorted bugs which made
	NautilusFile think the list was never complete.

	* libnautilus-extensions/nautilus-wait-until-ready.h: Include
	<libnautilus-extensions/nautilus-directory.h> and
	<libnautilus-extensions/nautilus-file.h>.

	* libnautilus-extensions/nautilus-file-attributes.h: Rename
	MIME_LIST attroibute to DIRECTORY_ITEM_MIME_TYPES.

	* libnautilus-extensions/nautilus-file.h,
	libnautilus-extensions/nautilus-file.c:
	(nautilus_file_get_directory_item_mime_types): Renamed from
	nautilus_file_get_mime_list.

	* libnautilus-extensions/nautilus-mime-actions.h,
	libnautilus-extensions/nautilus-mime-actions.c
	(nautilus_file_wait_for_metadata,
	nautilus_file_wait_for_mime_action_attributes,
	nautilus_mime_get_default_action_type_for_uri,
	nautilus_mime_get_default_action_for_uri,
	nautilus_mime_get_default_application_for_uri_internal,
	nautilus_mime_get_default_application_for_uri,
	nautilus_mime_is_default_application_for_uri_user_chosen,
	nautilus_mime_get_default_component_for_uri_internal,
	nautilus_mime_get_default_component_for_uri,
	nautilus_mime_is_default_component_for_uri_user_chosen,
	nautilus_mime_get_short_list_applications_for_uri,
	nautilus_mime_get_short_list_components_for_uri,
	nautilus_mime_get_short_list_methods_for_uri,
	nautilus_mime_get_all_applications_for_uri,
	nautilus_mime_has_any_applications_for_uri,
	nautilus_mime_get_all_components_for_uri,
	nautilus_mime_has_any_components_for_uri,
	nautilus_mime_set_default_action_type_for_uri,
	nautilus_mime_set_default_application_for_uri,
	nautilus_mime_set_default_component_for_uri,
	nautilus_mime_set_short_list_applications_for_uri,
	nautilus_mime_set_short_list_components_for_uri,
	nautilus_mime_add_application_to_short_list_for_uri,
	nautilus_mime_remove_application_from_short_list_for_uri,
	nautilus_mime_add_component_to_short_list_for_uri,
	nautilus_mime_remove_component_from_short_list_for_uri,
	nautilus_mime_extend_all_applications_for_uri,
	nautilus_mime_remove_from_all_applications_for_uri,
	mime_type_list_to_hash_table, nautilus_do_component_query): Use
	all the new NautilusFile APIs and stop using NautilusDirectory. No
	longer take NautilusDirectory as a parameter in addition to
	NautilusFile.

	* libnautilus-extensions/nautilus-program-chooser.c:
	(repopulate_program_list, is_application_default_for_uri,
	is_component_default_for_uri, is_component_in_short_list_for_uri,
	is_application_in_short_list_for_uri,
	program_file_pair_is_default_for_file, add_to_short_list_for_file,
	remove_from_short_list_for_file, remove_default_for_item,
	set_default_for_item): Stop passing NautilusDirectory to
	nautilus-mime-actions functions.
	* libnautilus-extensions/nautilus-program-choosing.c:
	(any_programs_available_for_file): Likewise.
	* src/file-manager/fm-directory-view.c (switch_location_and_view,
	files_added_callback, files_changed_callback,
	create_open_with_gtk_menu, reset_bonobo_open_with_menu,
	activate_callback):  Likewise.
	* src/nautilus-applicable-views.c (got_file_info_callback): Likewise.
	* src/nautilus-sidebar.c (nautilus_sidebar_update_buttons): Likewise.
	* src/nautilus-window-manage-views.c
	(nautilus_window_set_content_view): Likewise.
	* src/nautilus-window.c (nautilus_window_load_content_view_menu):
	Likewise.
	* test/test-nautilus-mime-actions-set.c (main): Likewise.
	* test/test-nautilus-mime-actions.c (main): Likewise.
2000-10-17 23:06:47 +00:00
Darin Adler 99785dd779 More work on whittling the state machine down to size.
* README: libunicode, libglade, and eog are no longer required.

	* components/history/nautilus-history-view.c:
	(history_title_changed):
	* libnautilus/nautilus-view-component.idl:
	* libnautilus/nautilus-view.c: (impl_Nautilus_View_title_changed),
	(nautilus_view_initialize_class):
	* libnautilus/nautilus-view.h:
	* src/nautilus-view-frame.c: (nautilus_view_frame_title_changed):
	* src/nautilus-view-frame.h:
	Added title parameter for the title_changed function.

	* src/nautilus-view-frame.c:
	(nautilus_view_frame_report_load_complete): Got rid of extra
	emission of report_load_complete, which is handled by
	view_frame_loaded now.

	* libnautilus-extensions/nautilus-background.c:
	(nautilus_background_initialize_class):
	* libnautilus-extensions/nautilus-entry.c:
	(nautilus_entry_initialize_class):
	* libnautilus-extensions/nautilus-icon-text-item.c:
	(iti_class_init):
	* libnautilus-extensions/nautilus-list.c:
	(nautilus_list_initialize_class):
	* src/nautilus-bookmark-list.c:
	(nautilus_bookmark_list_initialize_class):
	* src/nautilus-navigation-bar.c:
	(nautilus_navigation_bar_initialize_class):
	* src/nautilus-search-bar-criterion.c:
	(nautilus_search_bar_criterion_initialize_class):
	* src/nautilus-sidebar.c: (nautilus_sidebar_initialize_class):
	* src/nautilus-switchable-navigation-bar.c:
	(nautilus_switchable_navigation_bar_initialize_class):
	Use GTK_RUN_LAST instead of GTK_RUN_FIRST.

	* libnautilus-extensions/nautilus-directory-background.c:
	* libnautilus-extensions/nautilus-link-set.c:
	* libnautilus-extensions/nautilus-link.c:
	* src/file-manager/fm-icon-text-window.c:
	* src/file-manager/fm-icon-view.c:
	* src/file-manager/fm-properties-window.c:
	* src/nautilus-complex-search-bar.c:
	* src/nautilus-link-set-window.c:
	* src/nautilus-simple-search-bar.c:
	* src/nautilus-switchable-search-bar.c:
	Add includes needed now that the #include <gnome.h> was removed
	from nautilus-global-preferences.h.

	* libnautilus-extensions/nautilus-string.h:
	* libnautilus-extensions/nautilus-string.c:
	(nautilus_strcmp_case_breaks_ties): Added function, like
	g_strcasecmp, but falls back on strcmp for strings that match
	case-insensitive-wise.
	(nautilus_istr_compare): Use nautilus_strcmp_case_breaks_ties
	instead of nautilus_strcasecmp.

	* libnautilus-extensions/nautilus-file.c:
	(nautilus_file_compare_by_name): Use
	nautilus_strcmp_case_breaks_ties instead of g_strcasecmp.
	(nautilus_file_compare_by_directory_name): Use
	nautilus_strcmp_case_breaks_ties instead of g_strcasecmp.
	(get_automatic_emblems_as_integer): Convert automatic emblems to
	integer form for simple sorting.
	(prepend_automatic_emblem_names): Separate out the code that puts
	on automatic emblem names, and make it put them first, before any
	keyword-based emblems.
	(nautilus_file_compare_by_emblems): Compare the automatic emblems
	first, using the integer form.
	(nautilus_file_compare_by_type): Use
	nautilus_strcmp_case_breaks_ties instead of nautilus_strcmp.
	(nautilus_file_compare_for_sort): Use
	nautilus_strcmp_case_breaks_ties instead of g_strcasecmp.
	(nautilus_file_compare_name): Use nautilus_strcmp_case_breaks_ties
	instead of g_strcasecmp.
	(nautilus_file_is_mime_type): Use nautilus_strcasecmp instead of
	nautilus_strcmp.
	(nautilus_file_get_emblem_names): Use
	prepend_automatic_emblem_names.
	(sort_keyword_list_and_remove_duplicates): Sort with
	nautilus_strcmp_case_breaks_ties instead of
	compare_emblem_names. Automatic emblem names are now dealt with
	elsewhere.

	* libnautilus-extensions/nautilus-icon-container.c:
	(compare_icons_by_name): Use nautilus_strcmp_case_breaks_ties
	instead of nautilus_strcasecmp.

	* libnautilus-extensions/nautilus-glib-extensions.c:
	(nautilus_g_str_list_sort): Use nautilus_str_compare.
	(nautilus_g_str_list_sort_case_insensitive): Use
	nautilus_istr_compare.

	* components/services/vault/command-line/main.c: (main):
	* test/test-nautilus-mime-actions-set.c: (str_to_action_type):
	Use g_strcasecmp, not strcasecmp, for portability.

	* libnautilus-extensions/nautilus-global-preferences.h:
	* libnautilus-extensions/nautilus-global-preferences.c:
	Removed _get_disabled_sidebar_panel_view_identifiers since the
	logic now removes any not in the enabled list instead.

	* libnautilus-extensions/nautilus-view-identifier.h:
	* libnautilus-extensions/nautilus-view-identifier.c:
	(nautilus_view_identifier_list_copy): New function.
	(nautilus_view_identifier_compare): Now sorts properly instead of
	returning 1 for any two identifiers that are !=.

	* nautilus-clean.sh: Removed unadorned gconfd now that it's
	ancient history and because it makes the script seem to fail all
	the time.

	* src/nautilus-window-manage-views.h:
	* src/nautilus-window-manage-views.c:
	(compute_title): Renamed to a shorter name since it's a local function.
	(update_title): Renamed to a shorter name since it's a local
	function and made it do nothing if the title is already correct.
	(nautilus_window_update_internals): Simplified code by using the
	new cached title.
	(nautilus_window_has_really_changed): Removed sidebar panel logic
	that is no longer needed.
	(nautilus_window_free_load_info): Remove some unused fields.
	(nautilus_window_open_location): Removed unused parameter.
	(nautilus_window_open_location_in_new_window): Removed unused
	parameter.
	(load_content_view): Renamed to shorter name since it's a local
	function.
	(handle_view_failure), (cancel_location_change),
	(load_view_for_new_location), (set_view_location_and_selection):
	Broke out big pieces of code used by the state machine. Soon we
	won't have a state machine at all, but we'll still need functions
	like these.
	(nautilus_window_update_state): Removed a lot of the code and
	broke the remaining bits into the above functions.
	(nautilus_window_set_state_info): Removed sidebar management code
	and some now-unused state variables.
	(nautilus_window_stop_loading): Moved this function in here and
	renamed it so the whole state machine is in one place.
	(nautilus_window_set_content_view): Moved this function in here
	and renamed it so the whole state machine is in one place.
	(compare_view_identifier_with_iid),
	(nautilus_window_set_sidebar_panels): Wrote new code to set up the
	sidebar panels based on a list of view identifiers, based on the
	code that was used before when preferences change. Moved here so
	the whole state machine is in one place.

	* src/nautilus-window-toolbars.c: (toolbar_stop_callback): Call
	the new function nautilus_window_stop_loading.

	* src/nautilus-window-private.h:
	* src/nautilus-window.h:
	* src/nautilus-window.c: (nautilus_window_initialize_class):
	Removed the "content_view" argument.
	(nautilus_window_goto_uri): Removed the view frame parameter from
	the open_location call.
	(nautilus_window_constructed): Set up sidebars based on
	preferences when the window is created.
	(nautilus_window_set_arg): Removed the "content_view" argument.
	(nautilus_window_get_arg): Removed the "content_view" argument.
	(view_menu_switch_views_callback): Call the new function
	nautilus_window_set_content_view.
	(chose_component_callback), Call the new function
	nautilus_window_set_content_view.
	(nautilus_window_open_location_callback): Removed the view frame
	parameter from the open_location call.
	(nautilus_window_open_location_in_new_window_callback): Removed
	the view frame parameter from the open_location_in_new_window
	call.
	(nautilus_window_connect_view): Don't connect to
	report_load_progress any more. The view frame now handles this for
	us.
	(nautilus_window_set_content_view_widget): Renamed this to avoid
	confusion with the new nautilus_window_set_content_view which is
	used to change content views, given a new view identifier.
	(update_sidebar_panels_from_preferences): Renamed and changed to
	use the new nautilus_window_set_sidebar_panels call.
2000-10-03 02:02:10 +00:00
Maciej Stachowiak 63abb313ef Rename NAUTILUS_FILE_ATTRIBUTE_FAST_MIME_TYPE to
* libnautilus-extensions/nautilus-file-attributes.h: Rename
	NAUTILUS_FILE_ATTRIBUTE_FAST_MIME_TYPE to
	NAUTILUS_FILE_ATTRIBUTE_MIME_TYPE; add
	NAUTILUS_FILE_ATTRIBUTE_SLOW_MIME_TYPE, for now just a synonym for
	NAUTILUS_FILE_ATTRIBUTE_MIME_TYPE.
	* libnautilus-extensions/nautilus-directory-async.c:
	(set_up_request_by_file_attributes): Handle the new file
	attributes.
	* libnautilus-extensions/nautilus-directory.h: move
	nautilus_directory_wait_until_ready call to
	nautilus-wait-until-ready.h

	* libnautilus-extensions/nautilus-directory.c:
	(nautilus_self_check_directory): Include
	nautilus-wait-until-ready.h, use new attributes.

	* libnautilus-extensions/nautilus-wait-until-ready.h: New header
	for the deprecated wait_until_ready calls.

	* libnautilus-extensions/nautilus-file.c:
	(nautilus_file_wait_until_ready): file equivalent of
	nautilus_directory_wait_until_ready; temporary to help me
	refactor.
	(file_wait_until_ready_callback): helper function.

	* libnautilus-extensions/Makefile.am: Add
	nautilus-wait-until-ready.h

	* libnautilus-extensions/nautilus-icon-factory.c:
	(nautilus_icon_factory_get_required_file_attributes): Use new
	attribute for mime type.

	* libnautilus-extensions/nautilus-mime-actions.h,
	libnautilus-extensions/nautilus-mime-actions.c:
	(nautilus_mime_get_default_action_type_for_uri),
	(nautilus_mime_get_default_action_for_uri),
	(nautilus_mime_get_default_application_for_uri_internal),
	(nautilus_mime_get_default_application_for_uri),
	(nautilus_mime_is_default_application_for_uri_user_chosen),
	(nautilus_mime_get_default_component_for_uri_internal),
	(nautilus_mime_get_default_component_for_uri),
	(nautilus_mime_is_default_component_for_uri_user_chosen),
	(nautilus_mime_get_short_list_applications_for_uri),
	(nautilus_mime_get_short_list_components_for_uri),
	(nautilus_mime_get_short_list_methods_for_uri),
	(nautilus_mime_get_all_applications_for_uri),
	(nautilus_mime_has_any_applications_for_uri),
	(nautilus_mime_get_all_components_for_uri),
	(nautilus_mime_has_any_components_for_uri),
	(nautilus_mime_set_default_action_type_for_uri),
	(nautilus_mime_set_default_application_for_uri),
	(nautilus_mime_set_default_component_for_uri),
	(nautilus_mime_set_short_list_applications_for_uri),
	(nautilus_mime_set_short_list_components_for_uri),
	(nautilus_mime_add_application_to_short_list_for_uri),
	(nautilus_mime_remove_application_from_short_list_for_uri),
	(nautilus_mime_add_component_to_short_list_for_uri),
	(nautilus_mime_remove_component_from_short_list_for_uri),
	(nautilus_mime_extend_all_applications_for_uri),
	(nautilus_mime_remove_from_all_applications_for_uri): All these
	functions now take a NautilusDirectory and a NautilusFile, rather
	than a URI.

	(gnome_vfs_mime_application_has_id),
	(gnome_vfs_mime_id_matches_application),
	(gnome_vfs_mime_application_has_id_not_in_list),
	(string_not_in_list), (extract_prefix_add_suffix),
	(make_oaf_query_with_known_mime_type),
	(make_oaf_query_with_uri_scheme_only), (free_key),
	(server_matches_content_requirements),
	(nautilus_do_component_query), (str_list_difference),
	(strv_concat): Reformatted.

	(get_mime_type_from_file): Changed from get_mime_type_from_uri;
	uses nautilus_file_wait_until_ready instead of synchronous I/O.

	* libnautilus-extensions/nautilus-program-chooser.c:
	(repopulate_program_list), (is_application_default_for_uri),
	(is_component_default_for_uri),
	(is_component_in_short_list_for_uri),
	(is_application_in_short_list_for_uri),
	(program_file_pair_is_default_for_file),
	(add_to_short_list_for_file), (remove_from_short_list_for_file),
	(remove_default_for_item), (set_default_for_item):
	* libnautilus-extensions/nautilus-program-choosing.c:
	(any_programs_available_for_file):
	* libnautilus-extensions/nautilus-wait-until-ready.h:
	* src/file-manager/fm-directory-view.c: (switch_location_and_view),
	(create_open_with_gtk_menu), (reset_bonobo_open_with_menu),
	(activate_callback):
	* src/nautilus-applicable-views.c: (got_file_info_callback),
	(nautilus_navigation_info_new), (nautilus_navigation_info_free):
	* src/nautilus-applicable-views.h:
	* src/nautilus-sidebar.c: (nautilus_sidebar_update_buttons):
	* src/nautilus-theme-selector.c: (add_theme_to_icons):
	* src/nautilus-window.c: (nautilus_window_switch_views),
	(nautilus_window_load_content_view_menu):
	* test/test-nautilus-mime-actions-set.c: (main):
	* test/test-nautilus-mime-actions.c: (main): Deal with above API changes.
2000-09-27 22:00:49 +00:00
Maciej Stachowiak 6a4de846aa Final portion of task 370 (mime write API)
* libnautilus-extensions/nautilus-mime-actions.h: *
	libnautilus-extensions/nautilus-mime-actions.c:
	(nautilus_mime_get_short_list_components_for_uri,
	nautilus_mime_set_default_action_type_for_uri,
	nautilus_mime_set_default_application_for_uri,
	nautilus_mime_set_default_component_for_uri,
	nautilus_mime_set_short_list_applications_for_uri,
	nautilus_mime_set_short_list_components_for_uri,
	nautilus_mime_extend_all_applications_for_uri,
	nautilus_mime_remove_from_all_applications_for_uri): Implemented
	(they write the metadata and everything - happy fun).
	(str_list_difference): Helper function compied from gnome-vfs.

	* test/test-nautilus-mime-actions-set.c: Tests for these
	functions.
	* test/Makefile.am: Build it.
2000-06-02 08:42:36 +00:00