1. 23 Feb, 2001 1 commit
    • Darin Adler's avatar
      reviewed by: John Sullivan <sullivan@eazel.com> · 764d936a
      Darin Adler authored
      	Fix bug 6859 (GTK signal macros don't work in non-GCC compilers
      	for void return types).
      
      	* libnautilus-extensions/nautilus-gtk-macros.h:
      	Replaced old macros that accidentally relied on gccisms with
      	new ones that are portable to other compilers.
      
      		NAUTILUS_CALL_PARENT_CLASS is replaced by
      			NAUTILUS_CALL_PARENT
      		    and NAUTILUS_CALL_PARENT_WITH_RETURN_VALUE.
      
      		NAUTILUS_CALL_VIRTUAL is replaced by
      			NAUTILUS_CALL_METHOD
      		    and NAUTILUS_CALL_METHOD_WITH_RETURN_VALUE
      
      	* components/adapter/nautilus-adapter-control-embed-strategy.c:
      	(nautilus_adapter_control_embed_strategy_destroy):
      	* components/adapter/nautilus-adapter-embed-strategy.c:
      	(nautilus_adapter_embed_strategy_destroy),
      	(nautilus_adapter_embed_strategy_get_widget),
      	(nautilus_adapter_embed_strategy_get_zoomable):
      	* components/adapter/nautilus-adapter-embeddable-embed-strategy.c:
      	(nautilus_adapter_embeddable_embed_strategy_destroy):
      	* components/adapter/nautilus-adapter-factory-server.c:
      	(nautilus_adapter_factory_server_destroy):
      	* components/adapter/nautilus-adapter-file-load-strategy.c:
      	(nautilus_adapter_file_load_strategy_destroy):
      	* components/adapter/nautilus-adapter-load-strategy.c:
      	(nautilus_adapter_load_strategy_destroy),
      	(nautilus_adapter_load_strategy_load_location),
      	(nautilus_adapter_load_strategy_stop_loading):
      	* components/adapter/nautilus-adapter-progressive-load-strategy.c:
      	(nautilus_adapter_progressive_load_strategy_destroy):
      	* components/adapter/nautilus-adapter-stream-load-strategy.c:
      	(nautilus_adapter_stream_load_strategy_destroy):
      	* components/adapter/nautilus-adapter.c:
      	(nautilus_adapter_destroy):
      	* components/hardware/nautilus-hardware-view.c:
      	(nautilus_hardware_view_destroy):
      	* components/history/nautilus-history-view.c:
      	(nautilus_history_view_destroy):
      	* components/loser/content/nautilus-content-loser.c:
      	(nautilus_content_loser_destroy):
      	* components/loser/sidebar/nautilus-sidebar-loser.c:
      	(nautilus_sidebar_loser_destroy):
      	* components/music/nautilus-music-view.c:
      	(nautilus_music_view_destroy):
      	* components/rpmview/nautilus-rpm-verify-window.c:
      	(nautilus_rpm_verify_window_destroy):
      	* components/rpmview/nautilus-rpm-view.c:
      	(nautilus_rpm_view_destroy):
      	* components/sample/nautilus-sample-content-view.c:
      	(nautilus_sample_content_view_destroy):
      	* components/services/install/nautilus-view/nautilus-service-instal
      	l-view.c: (nautilus_service_install_view_destroy),
      	(nautilus_service_install_view_finalize):
      	* components/services/inventory-view/nautilus-inventory-config-page
      	.c: (nautilus_inventory_config_page_destroy):
      	* components/services/inventory-view/nautilus-inventory-view.c:
      	(nautilus_inventory_view_destroy):
      	* components/services/login/nautilus-view/nautilus-change-password-
      	view.c: (nautilus_change_password_view_destroy):
      	* components/services/nautilus-dependent-shared/eazel-services-foot
      	er.c: (footer_destroy):
      	* components/services/nautilus-dependent-shared/eazel-services-head
      	er.c: (header_destroy):
      	* components/services/summary/nautilus-summary-view.c:
      	(nautilus_summary_view_destroy):
      	* components/services/time/nautilus-view/trilobite-eazel-time-view.
      	c: (trilobite_eazel_time_view_destroy):
      	* components/text/nautilus-text-view.c:
      	(nautilus_text_view_destroy):
      	* components/throbber/nautilus-throbber.c:
      	(nautilus_throbber_destroy), (nautilus_throbber_map),
      	(nautilus_throbber_size_allocate):
      	* components/tree/nautilus-tree-change-queue.c:
      	(nautilus_tree_change_queue_destroy):
      	* components/tree/nautilus-tree-expansion-state.c:
      	(nautilus_tree_expansion_state_destroy):
      	* components/tree/nautilus-tree-model.c:
      	(nautilus_tree_model_destroy):
      	* components/tree/nautilus-tree-node.c:
      	(nautilus_tree_node_destroy):
      	* components/tree/nautilus-tree-view.c:
      	(nautilus_tree_view_destroy):
      	* help/nautilus-quick-reference/.cvsignore:
      	* help/nautilus-quick-reference/C/.cvsignore:
      	* libnautilus-extensions/nautilus-background-canvas-group.c:
      	(nautilus_background_canvas_group_update),
      	(nautilus_background_canvas_group_draw),
      	(nautilus_background_canvas_group_render):
      	* libnautilus-extensions/nautilus-background.c:
      	(nautilus_background_destroy):
      	* libnautilus-extensions/nautilus-bookmark.c:
      	(nautilus_bookmark_destroy):
      	* libnautilus-extensions/nautilus-caption.c:
      	(nautilus_caption_destroy), (nautilus_font_picker_show_all):
      	* libnautilus-extensions/nautilus-clickable-image.c:
      	(nautilus_clickable_image_destroy),
      	(nautilus_clickable_image_realize),
      	(nautilus_clickable_image_expose_event):
      	* libnautilus-extensions/nautilus-debug-drawing.c:
      	(debug_pixbuf_viewer_destroy):
      	* libnautilus-extensions/nautilus-directory-metafile-monitor.c:
      	(destroy):
      	* libnautilus-extensions/nautilus-directory.c:
      	(nautilus_directory_destroy),
      	(nautilus_directory_get_name_for_self_as_new_file),
      	(nautilus_directory_are_all_files_seen),
      	(nautilus_directory_contains_file),
      	(nautilus_directory_call_when_ready),
      	(nautilus_directory_cancel_callback),
      	(nautilus_directory_file_monitor_add),
      	(nautilus_directory_file_monitor_remove),
      	(nautilus_directory_force_reload),
      	(nautilus_directory_is_not_empty):
      	* libnautilus-extensions/nautilus-druid-page-eazel.c:
      	(nautilus_druid_page_eazel_destroy),
      	(nautilus_druid_page_eazel_finalize),
      	(nautilus_druid_page_eazel_size_allocate),
      	(nautilus_druid_page_eazel_size_request):
      	* libnautilus-extensions/nautilus-ellipsizing-label.c:
      	(real_size_request), (real_size_allocate), (real_style_set):
      	* libnautilus-extensions/nautilus-entry.c:
      	(nautilus_entry_destroy), (nautilus_entry_key_press),
      	(nautilus_entry_motion_notify), (nautilus_entry_set_selection),
      	(nautilus_entry_insert_text), (nautilus_entry_delete_text),
      	(nautilus_entry_selection_clear):
      	* libnautilus-extensions/nautilus-file.c: (destroy),
      	(nautilus_file_monitor_add), (nautilus_file_monitor_remove),
      	(nautilus_file_get_date), (nautilus_file_get_where_string),
      	(nautilus_file_get_directory_item_count),
      	(nautilus_file_get_deep_counts), (nautilus_file_get_file_type),
      	(nautilus_file_check_if_ready), (nautilus_file_call_when_ready),
      	(nautilus_file_cancel_call_when_ready):
      	* libnautilus-extensions/nautilus-font-factory.c: (destroy):
      	* libnautilus-extensions/nautilus-font-picker.c:
      	(nautilus_font_picker_destroy):
      	* libnautilus-extensions/nautilus-horizontal-splitter.c:
      	(nautilus_horizontal_splitter_destroy),
      	(nautilus_horizontal_splitter_button_press):
      	* libnautilus-extensions/nautilus-icon-canvas-item.c:
      	(nautilus_icon_canvas_item_destroy),
      	(nautilus_icon_canvas_item_update):
      	* libnautilus-extensions/nautilus-icon-container.c: (destroy),
      	(size_allocate), (realize), (unrealize), (button_press_event),
      	(button_release_event), (motion_notify_event), (key_press_event):
      	* libnautilus-extensions/nautilus-icon-factory.c:
      	(nautilus_icon_factory_destroy):
      	* libnautilus-extensions/nautilus-image-table.c:
      	(nautilus_image_table_destroy),
      	(nautilus_image_table_expose_event),
      	(nautilus_image_table_realize), (nautilus_image_table_unrealize),
      	(nautilus_image_table_remove):
      	* libnautilus-extensions/nautilus-image.c:
      	(nautilus_image_destroy):
      	* libnautilus-extensions/nautilus-keep-last-vertical-box.c:
      	(nautilus_keep_last_vertical_box_size_allocate):
      	* libnautilus-extensions/nautilus-label.c:
      	(nautilus_label_destroy), (nautilus_label_size_request),
      	(nautilus_label_size_allocate), (label_paint_pixbuf_callback):
      	* libnautilus-extensions/nautilus-labeled-image.c:
      	(nautilus_labeled_image_destroy):
      	* libnautilus-extensions/nautilus-list-column-title.c:
      	(nautilus_list_column_title_finalize):
      	* libnautilus-extensions/nautilus-list.c: (nautilus_list_destroy),
      	(nautilus_list_button_press), (nautilus_list_button_release),
      	(nautilus_list_key_press), (nautilus_list_style_set),
      	(nautilus_list_realize), (nautilus_list_unrealize), (draw_rows),
      	(draw_all), (nautilus_list_draw), (nautilus_list_expose),
      	(nautilus_list_resize_column), (nautilus_list_set_cell_contents),
      	(set_list_cell), (nautilus_list_track_new_column_width),
      	(nautilus_list_motion), (nautilus_list_clear), (insert_row):
      	* libnautilus-extensions/nautilus-merged-directory.c:
      	(merged_destroy):
      	* libnautilus-extensions/nautilus-metafile-factory.c: (destroy):
      	* libnautilus-extensions/nautilus-metafile.c: (destroy):
      	* libnautilus-extensions/nautilus-preferences-box.c:
      	(nautilus_preferences_box_destroy):
      	* libnautilus-extensions/nautilus-preferences-pane.c:
      	(nautilus_preferences_pane_destroy):
      	* libnautilus-extensions/nautilus-scalable-font.c:
      	(nautilus_scalable_font_destroy):
      	* libnautilus-extensions/nautilus-string-picker.c:
      	(nautilus_string_picker_destroy):
      	* libnautilus-extensions/nautilus-tabs.c: (nautilus_tabs_destroy):
      	* libnautilus-extensions/nautilus-text-caption.c:
      	(nautilus_text_caption_destroy):
      	* libnautilus-extensions/nautilus-trash-directory.c:
      	(trash_destroy):
      	* libnautilus-extensions/nautilus-trash-file.c: (trash_destroy):
      	* libnautilus-extensions/nautilus-undo-context.c: (destroy):
      	* libnautilus-extensions/nautilus-undo-manager.c: (destroy):
      	* libnautilus-extensions/nautilus-vfs-directory.c: (vfs_destroy):
      	* libnautilus-extensions/nautilus-vfs-file.c: (vfs_destroy):
      	* libnautilus-extensions/nautilus-viewport.c:
      	(nautilus_viewport_destroy), (nautilus_viewport_realize):
      	* libnautilus-extensions/nautilus-volume-monitor.c:
      	(nautilus_volume_monitor_destroy):
      	* libnautilus-extensions/nautilus-wrap-table.c:
      	(nautilus_wrap_table_destroy):
      	* libnautilus/nautilus-undo-transaction.c:
      	(nautilus_undo_transaction_destroy):
      	* libnautilus/nautilus-view.c: (nautilus_view_destroy):
      	* src/file-manager/fm-desktop-icon-view.c:
      	(fm_desktop_icon_view_destroy), (real_update_menus),
      	(real_merge_menus):
      	* src/file-manager/fm-directory-view.c:
      	(text_attribute_names_changed_callback),
      	(image_display_policy_changed_callback),
      	(directory_view_font_family_changed_callback),
      	(click_policy_changed_callback),
      	(smooth_graphics_mode_changed_callback),
      	(fm_directory_view_destroy),
      	(fm_directory_view_file_limit_reached),
      	(fm_directory_view_bump_zoom_level),
      	(fm_directory_view_zoom_to_level),
      	(fm_directory_view_restore_default_zoom_level),
      	(fm_directory_view_can_zoom_in), (fm_directory_view_can_zoom_out),
      	(fm_directory_view_get_background_widget),
      	(fm_directory_view_get_selection), (reveal_newly_added_folder),
      	(fm_directory_view_get_emblem_names_to_exclude),
      	(fm_directory_view_merge_menus), (fm_directory_view_select_all),
      	(fm_directory_view_set_selection),
      	(fm_directory_get_selected_icon_locations),
      	(fm_directory_view_reveal_selection),
      	(fm_directory_view_is_read_only), (fm_directory_view_is_empty),
      	(fm_directory_view_supports_creating_files),
      	(fm_directory_view_accepts_dragged_files),
      	(fm_directory_view_supports_properties),
      	(fm_directory_view_supports_zooming),
      	(fm_directory_view_update_menus):
      	* src/file-manager/fm-icon-view.c: (fm_icon_view_destroy),
      	(fm_icon_view_clean_up), (fm_icon_view_get_directory_sort_by),
      	(fm_icon_view_set_directory_sort_by),
      	(fm_icon_view_get_directory_sort_reversed),
      	(fm_icon_view_set_directory_sort_reversed),
      	(fm_icon_view_get_directory_auto_layout),
      	(fm_icon_view_set_directory_auto_layout),
      	(fm_icon_view_get_directory_tighter_layout),
      	(fm_icon_view_set_directory_tighter_layout),
      	(fm_icon_view_supports_auto_layout),
      	(fm_icon_view_start_renaming_item), (fm_icon_view_merge_menus),
      	(fm_icon_view_update_menus):
      	* src/file-manager/fm-list-view.c: (fm_list_view_adding_file),
      	(fm_list_view_removing_file), (fm_list_view_file_still_belongs),
      	(get_number_of_columns), (get_link_column),
      	(get_default_sort_attribute), (get_column_specification):
      	* src/file-manager/fm-properties-window.c: (real_shutdown),
      	(real_destroy), (real_finalize):
      	* src/file-manager/fm-search-list-view.c: (real_destroy),
      	(real_add_file), (real_adding_file), (real_removing_file),
      	(real_merge_menus), (real_update_menus):
      	* src/nautilus-about.c: (nautilus_about_destroy):
      	* src/nautilus-application.c: (nautilus_application_destroy),
      	(nautilus_application_startup):
      	* src/nautilus-complex-search-bar.c:
      	(nautilus_complex_search_bar_destroy):
      	* src/nautilus-desktop-window.c: (destroy), (realize):
      	* src/nautilus-location-bar.c: (destroy):
      	* src/nautilus-navigation-bar.c:
      	(nautilus_navigation_bar_get_location),
      	(nautilus_navigation_bar_set_location):
      	* src/nautilus-property-browser.c:
      	(nautilus_property_browser_destroy):
      	* src/nautilus-search-bar-criterion.c:
      	(nautilus_search_bar_criterion_destroy):
      	* src/nautilus-shell.c: (destroy):
      	* src/nautilus-sidebar-tabs.c: (nautilus_sidebar_tabs_destroy),
      	(nautilus_sidebar_tabs_size_allocate):
      	* src/nautilus-sidebar-title.c: (nautilus_sidebar_title_destroy),
      	(nautilus_sidebar_title_size_allocate):
      	* src/nautilus-sidebar.c: (nautilus_sidebar_destroy),
      	(nautilus_sidebar_size_allocate), (nautilus_sidebar_realize):
      	* src/nautilus-simple-search-bar.c:
      	(nautilus_simple_search_bar_destroy):
      	* src/nautilus-switchable-navigation-bar.c:
      	(nautilus_switchable_navigation_bar_destroy):
      	* src/nautilus-switchable-search-bar.c:
      	(nautilus_switchable_search_bar_destroy):
      	* src/nautilus-theme-selector.c: (nautilus_theme_selector_destroy):
      	* src/nautilus-view-frame.c: (nautilus_view_frame_destroy),
      	(nautilus_view_frame_finalize), (nautilus_view_frame_map):
      	* src/nautilus-window.c: (nautilus_window_destroy),
      	(nautilus_window_realize), (nautilus_window_size_request),
      	(nautilus_window_add_current_location_to_history_list),
      	(nautilus_window_show):
      	* src/nautilus-zoom-control.c: (nautilus_zoom_control_destroy),
      	(nautilus_zoom_control_size_allocate):
      	Use the macros by their new names.
      
      	* RENAMING: Updated for some name changes and name change ideas.
      
      	* user-guide/C/.cvsignore:
      	* user-guide/C/html/.cvsignore:
      	* user-guide/C/img/.cvsignore:
      	* user-guide/C/sgml/.cvsignore:
      	Added missing cvsignores.
      764d936a
  2. 22 Feb, 2001 1 commit
    • John Sullivan's avatar
      reviewed by: Darin Adler <darin@eazel.com> · 21173338
      John Sullivan authored
      	Fixed bug 3321 (Finalize contents of Help menu for 1.0).
      	Actually there's still an open issue about the Customer
      	Service item, which I've left in for now.
      
      	* src/nautilus-shell-ui.xml: Added Quick Reference, removed
      	License, put About last after a separator.
      
      	* src/nautilus-window-menus.c:
      	(help_menu_nautilus_quick_reference_callback): New callback.
      	(help_menu_nautilus_license_callback): Removed this.
      	(nautilus_window_initialize_menus): Install callback for
      	Quick Reference, remove for License.
      
      
      	Also removed the space from "tool bar" everywhere, per the
      	final decision of Vera & Rhoda. I grepped and replaced
      	everywhere for "tool bar", "Tool Bar", "TOOL_BAR", and
      	"tool_bar".
      
      	* components/loser/content/nautilus-content-loser-ui.xml:
      	* components/loser/sidebar/nautilus-sidebar-loser-ui.xml:
      	* components/mozilla/bonobo-extensions.c:
      	* components/sample/nautilus-sample-content-view-ui.xml:
      	* libnautilus-extensions/nautilus-bonobo-extensions.c:
      	* libnautilus-extensions/nautilus-global-preferences.c:
      	(global_preferences_install_descriptions),
      	(global_preferences_install_defaults),
      	(global_preferences_install_visibility),
      	(global_preferences_create_dialog):
      	* libnautilus-extensions/nautilus-global-preferences.h:
      	* src/nautilus-service-ui.xml:
      	* src/nautilus-shell-ui.xml:
      	* src/nautilus-window-menus.c:
      	(view_menu_show_hide_toolbar_callback),
      	(nautilus_window_update_show_hide_menu_items),
      	(help_menu_nautilus_quick_reference_callback),
      	(nautilus_window_initialize_menus):
      	* src/nautilus-window-toolbars.c: (set_up_special_bonobo_button),
      	(set_up_toolbar_images), (theme_changed_callback),
      	(set_up_back_or_forward_toolbar_item),
      	(nautilus_window_initialize_toolbars):
      	* src/nautilus-window.c: (nautilus_window_constructed),
      	(nautilus_window_hide_toolbar), (nautilus_window_show_toolbar),
      	(nautilus_window_toolbar_showing), (nautilus_window_show):
      	* src/nautilus-window.h:
      	Made toolbar one word.
      21173338
  3. 19 Feb, 2001 1 commit
  4. 03 Feb, 2001 1 commit
    • Darin Adler's avatar
      reviewed by: John Sullivan <sullivan@eazel.com> · 0605af88
      Darin Adler authored
      	Fixed bug 6163 (Need NautilusViewFrame ::
      	report_location_changed). This is re-adding a feature we also had
      	long ago, where a view reports a location change, but does not
      	want the location change to come back to it in the form of a
      	load_location call.
      
      	* src/nautilus-applicable-views.h:
      	* src/nautilus-applicable-views.c:
      	(get_view_result_from_gnome_vfs_result), (got_file_info_callback),
      	(got_minimum_file_info_callback),
      	(nautilus_determine_initial_view),
      	(nautilus_determine_initial_view_cancel): Changed this entire file
      	to have a much easier-to-understand API.
      
      	* src/nautilus-view-frame-private.h:
      	* src/nautilus-view-frame-corba.c: (free_location_plus_callback):
      	Change existing structure so it can be used for the location-change
      	case, which includes a title too.
      	(open_force_new_window): Use new structure.
      	(report_location_change): Implement new call.
      	(impl_Nautilus_ViewFrame_open_location_force_new_window): Use new
      	structure.
      	(impl_Nautilus_ViewFrame_report_location_change): Implement new
      	call.
      
      	* libnautilus/nautilus-view-component.idl: Add the new call.
      	* libnautilus/nautilus-view.h:
      	* libnautilus/nautilus-view.c:
      	(nautilus_view_report_location_change): Add the new call.
      
      	* src/nautilus-view-frame.h:
      	* src/nautilus-view-frame.c:
      	(nautilus_view_frame_initialize_class): Add new signal.
      	(nautilus_view_frame_report_location_change): Implement new call.
      
      	* src/nautilus-window-private.h:
      	* src/nautilus-window-manage-views.h:
      	* src/nautilus-window-manage-views.c: (update_for_new_location):
      	Got rid of obsolete assert. Also, no longer clear the selection.
      	The selection is set properly earlier, and clearing it at this
      	point serves no purpose.
      	(location_has_really_changed): Call free_location_change to share
      	more code. Also no reason to free "pending_ni" any more, because
      	we don't keep it around in the success case.
      	(load_new_location_in_one_view): New name.
      	(load_new_location_in_sidebar_panels): New name. Also take a
      	parameter of a view to skip.
      	(load_new_location_in_all_views): New function.
      	(set_to_pending_location_and_selection): New name, and removed
      	code to handle the case where there is no pending location, since
      	that doesn't happen. Also take a parameter of a view to skip. Also
      	broke out the guts into load_new_location_in_all_views.
      	(free_location_change): Free things by their new names. There's
      	also less to free now.
      	(cancel_location_change): Key off pending_location instead of
      	pending_ni. Also save code by using new function that skips a
      	view.
      	(determined_initial_view_callback): Changed name, and use new
      	interface. No longer need "end_reached" trick, because the new
      	interface handles that.
      	(begin_location_change): Made a static after moving all the
      	functions that use it in here. Also moved some of the reload
      	code out into nautilus_window_reload.
      	(report_location_change_callback): New function. Does all the
      	steps neede for a location change in place.
      	(nautilus_window_back_or_forward), (nautilus_window_reload): Moved
      	these two functions in here from nautilus-window.c so we could
      	make begin_location_change more private.
      
      	* src/nautilus-window.h:
      	* src/nautilus-window.c: (nautilus_window_go_to): Changed the name.
      	(nautilus_window_get_location): New function for callers that used
      	to get the location field directly.
      	(go_to_callback): Changed name.
      
      	* src/nautilus-desktop-window.c: (nautilus_desktop_window_new):
      	* src/nautilus-location-bar.c: (drag_data_received_callback):
      	* src/nautilus-shell.c: (open_window), (save_window_states),
      	(restore_window_states):
      	* src/nautilus-window-menus.c: (services_button_callback),
      	(help_menu_nautilus_manual_callback),
      	(help_menu_nautilus_license_callback),
      	(help_menu_nautilus_feedback_callback),
      	(activate_bookmark_in_menu_item):
      	* src/nautilus-window-service-ui.c: (goto_services_summary),
      	(goto_online_storage), (goto_software_catalog),
      	(goto_services_support):
      	* src/nautilus-window.c: (location_change_at_idle_callback),
      	(nautilus_window_constructed), (view_as_menu_vfs_method_callback),
      	(nautilus_window_go_web_search), (nautilus_window_go_home):
      	Use nautilus_go_to under its new name.
      
      	* src/nautilus-shell.c: (restore_window_states): Use
      	nautilus_istr_has_prefix instead of g_strncasecmp. Also did other
      	code cleanup.
      
      	* libnautilus-extensions/nautilus-gtk-extensions.h: Added a new
      	marshal function that I needed.
      
      	* libnautilus-extensions/nautilus-thumbnails.c: Added a FIXME.
      
      	* libnautilus-extensions/nautilus-view-identifier.h:
      	* libnautilus-extensions/nautilus-view-identifier.c:
      	(nautilus_view_identifier_copy),
      	(nautilus_view_identifier_compare): Use const.
      
      	* src/nautilus-application.c: (nautilus_application_startup): Only
      	check for root if we are actually running nautilus, not if we are
      	just killing off an existing copy.
      	(confirm_ok_to_run_as_root): Changed name of the function and
      	improved the wording of the message and button. Also added an
      	environment variable you can set to get rid of this. (Probably
      	should have been a preference instead, but I am officially being
      	lazy about this.)
      
      	Fixed bug that was revealed by the change in the loading sequence
      	I made. John didn't review this part:
      
      	* libnautilus-extensions/nautilus-directory-private.h:
      	* libnautilus-extensions/nautilus-directory-async.c:
      	(load_directory_state_destroy), (load_directory_done):
      	Separate out code to free the partly-done state so it can
      	be used in the cancel case.
      	(dequeue_pending_idle_callback): Ref the directory object
      	so that we won't get messed up if the callback destroys it.
      	(directory_load_cancel): Separated out the old part of
      	file_list_cancel so that we can cancel the idle part too
      	when we want to.
      	(file_list_cancel): Use the new calls to cancel the idle
      	part of directory loading.
      	(directory_load_done): Use directory_load_cancel instead of
      	file_list_cancel.
      	(nautilus_directory_stop_monitoring_file_list): Use
      	directory_load_cancel instead of file_list_cancel.
      	(nautilus_directory_async_state_changed): Added state variables to
      	protect cases where we re-enter this function.
      0605af88
  5. 31 Jan, 2001 1 commit
    • Darin Adler's avatar
      reviewed by: John Sullivan <sullivan@eazel.com> · ce4e7c67
      Darin Adler authored
      	Fix bug 6147 (selected icons flash unselected/selected rapidly):
      
      	* src/nautilus-window-manage-views.c: (change_selection): Don't
      	send out selection change notices to the view that reported the
      	selection change.
      	(change_selection_callback): Pass in view that requested the
      	change so we can know not to send a selection change to that view.
      	* src/file-manager/fm-directory-view.c:
      	(fm_directory_view_send_selection_change): Clear flag that says we
      	have a selection change for the shell.
      	(selection_changed_callback): Add code to indicate this selection
      	change is due to the shell, so we don't tell the shell about
      	something it just told us.
      	(done_loading): Set flag so we don't tell the shell about selection
      	changes that are part of the first load of the directory.
      	(display_selection_info_idle_callback): Only send a selection change
      	to the shell if the change was initiated here. Also remove the code
      	that ref's the NautilusView object -- wasn't helping.
      	(update_menus_timeout_callback), (display_pending_idle_callback),
      	(display_pending_timeout_callback): Remove the code that ref's the
      	NautilusView object -- wasn't helping.
      	(fm_directory_view_notify_selection_changed): Propagate flag that
      	tells the idle code we have made the change to the selection and
      	the shell should be notified.
      
      	Fix bug 6158 (nautilus --quit shouldn't check for
      	~/.nautilus/first-time-wizard-flag).
      
      	* src/nautilus-main.c: (main): Don't do the first-time druid check
      	when the --quit or --restart option is used.
      
      	Fix bug 803 (All metafile tags should be lower case).
      
      	* libnautilus-extensions/nautilus-metadata.h: Use lower-case for
      	metadata tags.
      	* libnautilus-extensions/nautilus-directory-metafile.c:
      	(create_metafile_root), (get_file_node),
      	(nautilus_directory_rename_file_metadata),
      	(nautilus_directory_copy_file_metadata),
      	(nautilus_directory_set_metafile_contents): Change metadata tags
      	to be lower-case.
      	* libnautilus-extensions/nautilus-directory.c:
      	(nautilus_self_check_directory): Use lower-case in metadata
      	self-test for clarity.
      	* libnautilus-extensions/nautilus-file.c:
      	(nautilus_file_get_keywords), (nautilus_file_set_keywords): Change
      	metadata tags to be lower-case.
      
      	* data/top/.nautilus-metafile.xml
      	* icons/ardmore/ardmore.xml:
      	* icons/arlo/arlo.xml:
      	* icons/arlo/i-directory.xml:
      	* icons/arlo/i-regular.xml:
      	* icons/crux_eggplant/crux_eggplant.xml:
      	* icons/crux_eggplant/i-directory.xml:
      	* icons/crux_eggplant/i-regular.xml:
      	* icons/default.xml:
      	* icons/gnome/gnome.xml:
      	* icons/i-directory-accept.xml:
      	* icons/i-directory.xml:
      	* icons/i-regular.xml:
      	* icons/villanova/villanova.xml:
      	Change XML to use lower-case.
      
      	* libnautilus-extensions/nautilus-link-set.c: (create_new_link):
      	Use lower-case for link XML tags.
      	* libnautilus-extensions/nautilus-link.c:
      	(nautilus_link_local_create), (nautilus_link_local_set_link_uri),
      	(nautilus_link_local_set_type),
      	(nautilus_link_local_get_link_uri),
      	(nautilus_link_local_get_link_type),
      	(nautilus_link_get_link_uri_given_file_contents): Use lower-case
      	for link XML tags.
      
      	* src/nautilus-sidebar-title.c:
      	(nautilus_sidebar_title_select_text_color),
      	(nautilus_sidebar_title_theme_changed): Use lower-case for theme
      	XML tags.
      	* components/throbber/nautilus-throbber.c:
      	(get_bonobo_properties), (nautilus_throbber_initialize),
      	(nautilus_throbber_load_images),
      	(nautilus_throbber_button_press_event): Change theme XML tags to be
      	lower-case.
      	* libnautilus-extensions/nautilus-icon-container.c:
      	(start_rubberbanding): Use lower-case for theme XML tags.
      	(nautilus_icon_container_initialize): Fix comment.
      	(update_label_color), (nautilus_icon_container_theme_changed): Use
      	lower-case for theme XML tags.
      	* libnautilus-extensions/nautilus-icon-factory.c: (set_theme): Use
      	lower-case for theme XML tags.
      	(get_themed_icon_file_path): Use lower-case for icon XML file
      	tags.
      	(icon_theme_changed_callback): Use lower-case for theme XML tags.
      	* src/nautilus-sidebar-tabs.c:
      	(nautilus_sidebar_tabs_load_theme_data), (get_text_offset): Use
      	lowe-case for theme XML tags.
      	* src/nautilus-sidebar.c: (nautilus_sidebar_update_appearance):
      	Use lower-case for theme XML tags.
      	* src/nautilus-window-toolbars.c: (get_file_name_from_icon_name):
      	Use lower-case for theme XML tags.
      	* src/nautilus-zoom-control.c: (draw_number): Use lower-case for
      	theme XML tags.
      
      	Change code that used GSList when it should use GList. We use
      	GList so that we can share utility functions. It's arbitrary. We
      	could have decided to use all GSList instead, but we chose GList
      	(because of its name, initially).
      
      	* components/tree/nautilus-tree-expansion-state.c:
      	(expansion_state_load_callback),
      	(nautilus_tree_expansion_state_load_table_from_gconf),
      	(hash_table_get_keys_callback), (hash_table_get_keys),
      	(nautilus_tree_expansion_state_save_table_to_gconf): Update to use
      	GList instead of GSList.
      	* libnautilus-extensions/nautilus-gconf-extensions.h:
      	* libnautilus-extensions/nautilus-gconf-extensions.c:
      	(nautilus_gconf_handle_error), (nautilus_gconf_set_string_list),
      	(nautilus_gconf_get_string_list): Change to work with GList
      	instead of GSList to match the rest of Nautilus, so that the lists
      	can be manipulated with all the GList utility functions.
      	* libnautilus-extensions/nautilus-glib-extensions.h:
      	* libnautilus-extensions/nautilus-glib-extensions.c:
      	(nautilus_round): Changed name from nautilus_g_round -- "g" for
      	"gratuitous".
      	(nautilus_g_list_from_g_slist), (nautilus_g_slist_from_g_list):
      	Added utility functions to help make GSLists from GLists and vice
      	versa. Useful when dealing with functions that yield/expect
      	GSLists.
      	* libnautilus-extensions/nautilus-icon-text-item.c: (iti_destroy),
      	(iti_update), (iti_paint_text), (iti_draw), (iti_render),
      	(iti_event): Use nautilus_round by its new name.
      	* libnautilus-extensions/nautilus-preferences.h:
      	* libnautilus-extensions/nautilus-preferences.c:
      	(nautilus_preferences_set_string_list),
      	(nautilus_preferences_get_string_list),
      	(nautilus_preferences_default_set_string_list),
      	(nautilus_preferences_default_get_string_list): Change to use
      	GList instead of GSList.
      	* libnautilus-extensions/nautilus-search-uri.c:
      	(free_tokenized_uri), (tokenize_uri), (get_translated_criterion),
      	(get_nth_criterion_prefix), (parse_uri): Change to use GList
      	instead of GSList.
      	* src/nautilus-application.h:
      	* src/nautilus-application.c:
      	(nautilus_application_get_window_list): Renamed from
      	nautilus_application_windows and changed to use GList instead of
      	GSList.
      	(nautilus_application_destroyed_window),
      	(nautilus_application_create_window), (volume_unmounted_callback):
      	Change to use GList instead of GSList.
      	* src/nautilus-shell.c: (save_window_states),
      	(restore_window_states): Use GList instead of GSList.
      	* src/nautilus-window-manage-views.c: (just_one_window): Use GList
      	instead of GSList.
      	(open_location_prefer_existing_window_callback): Use GList instead
      	of GSList.
      	* src/nautilus-window.c: (nautilus_forget_history): Use GList
      	instead of GSList and the new name for
      	nautilus_application_get_window_list.
      
      	Other changes.
      
      	* src/nautilus-shell.c: (display_caveat_first_time): Turn off the
      	caveat -- we're close enough to 1.0.
      
      	* libnautilus-extensions/nautilus-view-identifier.c:
      	(nautilus_view_identifier_new_from_oaf_server_info): Use free_deep
      	call.
      
      	* libnautilus/nautilus-view-standard-main.h: Use
      	BEGIN/END_GNOME_DECLS.
      
      	* src/file-manager/fm-desktop-icon-view.c: Remove unneeded
      	include.
      ce4e7c67
  6. 30 Jan, 2001 1 commit
    • Darin Adler's avatar
      reviewed by: Maciej Stachowiak <mjs@eazel.com> · e37c17c0
      Darin Adler authored
      	Fixed bug 2131 (Change Nautilus to use OAF asynchronous activation
      	interface). In making view activation work right, I also
      	eliminated the state machine that was almost gone from
      	NautilusWindow. There's still some additional simplification we
      	can do, but it's simpler than it was. At the same time, made sure
      	all incoming CORBA calls are deferred until idle time. This is
      	most of what the old state machine was accomplishing, believe it
      	or not, although it didn't do it 100%.
      
      	Also fixes bug 2457 (Silent error loading content view), bug 2461
      	(progress from old and new content view sometimes confused), and
      	bug 6109 (Assertion hit on clicking the refresh button many times
      	very quickly). Perhaps others too, we need to test some old bugs
      	to see if they have changed behavior.
      
      	* libnautilus-extensions/nautilus-bonobo-extensions.c:
      	(activation_handle_done), (activation_idle_callback),
      	(activation_cancel), (oaf_activation_callback),
      	(nautilus_bonobo_activate_cancel): Change implementation so that
      	the actual callback happens at idle time, since CORBA callbacks
      	can happen at almost any time.
      
      	* libnautilus/Makefile.am:
      	* libnautilus/nautilus-idle-queue.h:
      	* libnautilus/nautilus-idle-queue.c: (execute_queued_functions),
      	(nautilus_idle_queue_new), (nautilus_idle_queue_add),
      	(nautilus_idle_queue_destroy): Factored out the idle queueing that
      	I added to NautilusView so we can use it on the NautilusViewFrame
      	side too.
      
      	* libnautilus/nautilus-view.c: (queue_incoming_call),
      	(nautilus_view_initialize), (nautilus_view_destroy): Change to use
      	the new NautilusIdleQueue so we can share code.
      
      	* src/nautilus-view-frame-private.h:
      	* src/nautilus-view-frame-corba.c: (list_free_deep_callback),
      	(free_location_and_selection_callback), (open_in_this_window),
      	(open_prefer_existing_window), (open_force_new_window),
      	(report_selection_change), (report_status),
      	(report_load_underway), (report_load_progress),
      	(report_load_complete), (report_load_failed), (set_title),
      	(impl_Nautilus_ViewFrame_open_location_in_this_window),
      	(impl_Nautilus_ViewFrame_open_location_prefer_existing_window),
      	(impl_Nautilus_ViewFrame_open_location_force_new_window),
      	(impl_Nautilus_ViewFrame_report_selection_change),
      	(impl_Nautilus_ViewFrame_report_status),
      	(impl_Nautilus_ViewFrame_report_load_underway),
      	(impl_Nautilus_ViewFrame_report_load_progress),
      	(impl_Nautilus_ViewFrame_report_load_complete),
      	(impl_Nautilus_ViewFrame_report_load_failed),
      	(impl_Nautilus_ViewFrame_set_title): Deal with all incoming CORBA
      	calls through the idle queue.
      
      	* src/nautilus-view-frame.h: Moved all the fields into
      	details. Renamed client_loaded to view_loaded. Renamed load_client
      	to load_view. Eliminated load_client_sync. Renamed get_iid to
      	get_view_iid. Eliminated get_is_underway. Added
      	get_is_view_loaded.
      	* src/nautilus-view-frame.c:
      	(nautilus_view_frame_queue_incoming_call): Simple cover for
      	putting an incoming CORBA call on the idle queue.
      	(nautilus_view_frame_initialize_class): Change client_loaded
      	signal name to view_loaded.
      	(nautilus_view_frame_initialize): Allocate the idle queue.
      	(stop_activation): New function that stops a load_view that is
      	underway.
      	(destroy_view): Use the "view" field to tell if a view was
      	loaded. The old code used the "iid" field, but now we set that
      	even before the load is completed.
      	(nautilus_view_frame_destroy): Destroy the idle queue. Also put
      	the view into "failed" state once it's destroyed so additional
      	calls are harmless.
      	(nautilus_view_frame_finalize): Check that we're in the failed
      	state.
      	(emit_zoom_parameters_changed): New function so we can share more
      	code.
      	(view_frame_activated): Emit the zoom_parameters_changed signal
      	here since a new view should always should get this signal.
      	(view_frame_underway): Make this do nothing in the failed case
      	instead of complaining.
      	(view_frame_loaded): Make this do nothing in the failed case
      	instead of complaining.
      	(view_frame_failed): Stop whatever's in progress when the view
      	fails. Also, allow calling this on a view that's already failed.
      	(check_if_view_is_gone): Consolidate the calls to
      	deregister_dead_components so we don't need an explicit call here.
      	(emit_zoom_parameters_changed_callback),
      	(zoom_parameters_changed_callback),
      	(emit_zoom_level_changed_callback), (zoom_level_changed_callback):
      	Redo these so they queue onto the idle queue, since they are
      	triggered by incoming CORBA calls that can happen at any time.
      	(create_corba_objects): Factor out the part of the code that makes
      	the CORBA objects. Make error handling more complete and keep
      	around pointers to the Bonobo objects for various parts of the
      	aggregate so we can connect the appropriate signal handlers.
      	(attach_view): Change code so it no longer connects signals to the
      	BonoboObjectClient, since the signals won't go out on that
      	GtkObject. Connect to the exception signals for all objects in the
      	aggregate (any failure means "view failed"). Also connect to the
      	"destroy" signal for one object (doesn't matter which since the
      	entire aggregate goes away at once) and to the zoom-related
      	signals. Report errors with signals rather than returning a
      	boolean.
      	(activation_callback): Add code to handle failure case.
      	(nautilus_view_frame_load_view): Renamed. Got rid of "sync."
      	version.
      	(nautilus_view_frame_stop): Stop OAF activation of the view if
      	it's in progress.
      	(nautilus_view_frame_selection_changed): Make it a quiet no-op to
      	send a selection change notice if no view is loaded. This helps
      	keep the code simple for sidebars. Later we may make the view
      	frame responsible for sending the selection on once the view is
      	loaded.
      	(nautilus_view_frame_title_changed): Same change as for selection,
      	same idea.
      	(nautilus_view_frame_get_is_zoomable),
      	(nautilus_view_frame_get_zoom_level),
      	(nautilus_view_frame_set_zoom_level),
      	(nautilus_view_frame_get_min_zoom_level),
      	(nautilus_view_frame_get_max_zoom_level),
      	(nautilus_view_frame_get_has_min_zoom_level),
      	(nautilus_view_frame_get_has_max_zoom_level),
      	(nautilus_view_frame_get_is_continuous),
      	(nautilus_view_frame_get_preferred_zoom_levels),
      	(nautilus_view_frame_zoom_in), (nautilus_view_frame_zoom_out),
      	(nautilus_view_frame_zoom_to_fit): Since a failed view has a
      	zoomable_frame field set to NULL, got rid of all the explicit
      	failure-case code for these functions.
      	(nautilus_view_frame_get_view_iid): Renamed from get_iid.
      	(nautilus_view_frame_report_load_underway),
      	(nautilus_view_frame_report_load_complete),
      	(nautilus_view_frame_report_load_failed): Moved the "quiet"
      	handling of failed views down into the underlying functions, so
      	these no longer need explicit failure-case code.
      	(nautilus_view_frame_set_label): It's OK to allow this even for a
      	failed view.
      	(nautilus_view_frame_map): Use a kept-around reference to the
      	control frame instead of relying on query_local_interface.
      	(nautilus_view_frame_get_is_view_loaded): Add this so callers can
      	tell when a sidebar view is not yet loaded. Might not need this
      	when we clean things up more, but it's no big deal either way.
      
      	* src/nautilus-window-manage-views.c: (update_title): No need to
      	send the title change to the new content view -- it gets a title
      	change once it comes up "for real".
      	(set_displayed_location): Handle location of NULL here so we don't
      	need to worry about it elsewhere.
      	(check_bookmark_location_matches): Remove "uri" from name.
      	(location_has_really_changed): Now that the state machine is gone,
      	it's easy to see that this is never called with pending_ni equal
      	to cancel_tag, so remove the code for that and add an assert.
      	(set_view_location_and_selection): New name for what was called
      	update_view.
      	(set_sidebar_panels_location_and_selection): Cover since this loop
      	occurs in two places.
      	(update_for_new_location_and_selection): New name for what was
      	called set_view_location_and_selection. Since it's now clear this
      	can't be called with new_content_view equal to NULL, remove the
      	code to handle that (fixes bug 2457).
      	(load_content_view): Use async. view loading here. Get rid of
      	"Avoid being fooled by extra done notifications from the last
      	view. This is a HACK because the state machine SUCKS." by
      	eliminating the "cv_progress_done" and "cv_progress_error" flags
      	altogether. In the case where we reuse the same view, just call
      	update_for_new_location_and_selection -- the old code set
      	"view_activation_complete", but I eliminated that flag.
      	(handle_view_failure): Remove the old view using
      	nautilus_window_set_content_view_widget instead of having
      	duplicate code here. Use a call to cancel_location_change instead
      	of setting the "reset_to_idle" and "cv_progress_error" flags
      	(both gone now).
      	(free_location_change): No need to clean up "error_views" any
      	more, because that field is gone.
      	(end_location_change): New helper to stop the throbber from
      	throbbing and then free the location change state.
      	(cancel_location_change): Get rid of special case for NULL
      	location now that set_displayed_location can handle it.
      	(nautilus_window_end_location_change_callback): Remove
      	"superstitiously" added call to update_state and call
      	load_content_view_for_new_location directly.
      	(nautilus_window_begin_location_change): Use a call to
      	cancel_location_change to deal with the possibility that we may
      	have a change already in progress.
      	(nautilus_window_stop_loading): Use cancel_location_change to stop
      	the loading.
      	(nautilus_window_set_content_view): Remove calls to update_state
      	-- there's no state to update any more.
      	(nautilus_window_set_sidebar_panels): Do an async. load here and
      	finish the setup in the view_loaded callback.
      	(failed_callback): Do a handle_view_failed right here, now that we
      	have no state machine to satisfy.
      	(load_underway_callback): Change code to handle the two
      	interesting cases separately without a state machine. When the new
      	content view says "underway", it's time for
      	location_has_really_changed. When an existing content view says
      	"underway", we restart the throbber (fixes 1/2 of bug 2461).
      	(load_complete_callback): Since view frames now ensure we get an
      	underway call before a complete call, we can simplify the
      	logic. If the main content view says "complete", it's time to stop
      	the throbber (fixes other 1/2 of bug 2461).
      	(view_loaded_callback): Renamed the client_loaded callback. Also
      	made it update location and selection for sidebar panels when they
      	are loaded. Also made it update the title for any view when it's
      	loaded.
      
      	* src/nautilus-window.h:
      	* src/nautilus-window.c: (nautilus_window_synch_view_as_menu):
      	Handle case of NULL content view.
      	(nautilus_window_set_content_view_widget): Destroy the view when
      	it's going away instead of removing it from the parent. Also make
      	this function handle the NULL case so we can use it to remove the
      	old view, not just to add the new one.
      
      	* libnautilus-extensions/nautilus-bonobo-extensions.h: Whitespace
      	tweak.
      
      	* src/nautilus-sidebar.c:
      	(nautilus_sidebar_active_panel_matches_id): Update for
      	nautilus_view_frame_get_view_iid name change.
      e37c17c0
  7. 26 Jan, 2001 2 commits
    • Darin Adler's avatar
      reviewed by: John Sullivan <sullivan@eazel.com> · 2717a5cd
      Darin Adler authored
      	Some preparation work for doing async. activation. This amounts
      	to another pass cleaning up the legendary "state machine" as well
      	as some other cleanups in the async. activation code.
      
      	* libnautilus-extensions/nautilus-bonobo-extensions.h:
      	* libnautilus-extensions/nautilus-bonobo-extensions.c:
      	(oaf_activation_callback), (nautilus_bonobo_activate_from_id),
      	(nautilus_bonobo_activate_cancel): Fix interface of activation to
      	be cleaner. Also handle case where callback is called right away.
      
      	Add queuing to NautilusView so that all incoming CORBA calls are
      	dispatched at idle time. This can fix some otherwise-difficult
      	re-entrancy problems. The widget destroy call can still come in at
      	any time though. Also this same fix may be needed for the
      	NautilusViewFrame side.
      
      	* libnautilus/nautilus-view.h:
      	* libnautilus/nautilus-view.c: (execute_queued_calls): Function
      	to dequeue and execute calls.
      	(dequeue_calls_at_idle): Cover to call it at idle time.
      	(discard_queued_calls): Discard calls without executing them, for
      	use at destroy time.
      	(queue_incoming_call): Simple cover to queue and schedule an
      	idle-time dequeue pass.
      	(nautilus_g_list_from_uri_list): Need to make a full copy, not
      	a shallow copy, now that we are queuing things for a hile.
      	(call_load_location), (call_stop_loading),
      	(call_selection_changed), (call_title_changed),
      	(call_history_changed): Simple functions that get queued.
      	(list_deep_free_cover): GDestroyNotify-compatible function for one
      	destroy case.
      	(history_dup): Function to copy the history list, since that is
      	now queued instead of used right away.
      	(impl_Nautilus_View_load_location),
      	(impl_Nautilus_View_stop_loading),
      	(impl_Nautilus_View_selection_changed),
      	(impl_Nautilus_View_title_changed),
      	(impl_Nautilus_View_history_changed): Change these all to queue
      	the incoming call instead of doing work right away.
      	(nautilus_view_destroy): Discard the queue.
      
      	* src/nautilus-view-frame-corba.c:
      	(impl_Nautilus_ViewFrame_open_location_force_new_window),
      	(impl_Nautilus_ViewFrame_report_selection_change): These calls now
      	use the deep copy, since the shallow one is no longer available.
      	This is good since we probably will be doing queuing here later,
      	so we'll need the deep copy.
      
      	* src/nautilus-view-frame.h:
      	* src/nautilus-view-frame.c:
      	(nautilus_view_frame_initialize_class): Set up a map default signal
      	handler to activate the control. This is better than the old way,
      	where we had an explicit call to do it.
      	(nautilus_view_frame_destroy_client): Remove unused
      	CORBA_Environment.
      	(view_frame_activated): Remove unneeded ACTIVATING state. Also
      	send the client_loaded signal in here, so you can't "forget".
      	(view_frame_wait), (view_frame_underway),
      	(view_frame_wait_is_over), (view_frame_loaded),
      	(view_frame_failed): Remove unneeded ACTIVATING state.
      	(check_if_view_is_gone): Simplify logic and make sure to check the
      	value of the exception and not just the function result.
      	(attach_client): Fix CORBA_Exception that was allocated twice and
      	that could also be allocated and not freed in some cases.
      	(activation_callback), (nautilus_view_frame_load_client_async):
      	Better names, use new API, still not tested.
      	(nautilus_view_frame_load_client): Get rid of function result and
      	use unified interface for telling about success and failure so that
      	sync. and async. interfaces will be the same.
      	(nautilus_view_frame_stop): Renamed this single function, which
      	will soon stop either activation that's in process or loading
      	that's in process with a single call. For now it's just the same
      	as the old stop_loading call.
      	(nautilus_view_frame_map): New override to activate the control.
      	This replaces the old explicit activate call.
      	(send_history), (nautilus_view_frame_get_is_underway): Remove
      	unneeded ACTIVATING state.
      
      	* src/nautilus-window.h:
      	* src/nautilus-window-manage-views.c:
      	(location_has_really_changed): Assume that new_content_view is not
      	NULL. The old code was trying to be inappropriately "general".
      	(disconnect_destroy_unref_view): Remove now-unused function.
      	(load_content_view): Don't use a return value any more, since it's
      	important to set up new_content_view before any signals happen.
      	Get rid of code that handles failure right at the start, since
      	we now get all failures through the signal handler.
      	(handle_view_failure): Add FIXME comments. Minor refactoring.
      	(cancel_location_change): Eliminated now-uneeded views_shown and
      	view_bombed_out booleans.
      	(load_view_for_new_location): New load_content_view doesn't return
      	a value any more.
      	(update_state): Changed this to be a loop instead of returning a
      	boolean and always being called in a loop. Also simplified logic
      	so that views_shown and view_bombed_out aren't needed any more.
      	(nautilus_window_end_location_change_callback): Use update_state
      	directly instead of calling the old clunky change_state cover.
      	(nautilus_window_begin_location_change): Use update_state directly
      	instead of calling the old clunky change_state cover.
      	(stop_loading): Call the new simple nautilus_view_frame_stop
      	instead of nautilus_view_frame_stop_loading.
      	(natuilus_window_stop_loading): Use update_state directly instead
      	of calling the old clunky change_state cover.
      	(nautilus_window_set_content_view): Use update_state directly instead
      	of calling the old clunky change_state cover.
      	(nautilus_window_set_sidebar_panels): Handle failures with
      	callback instead of looking at return value (which no longer
      	exists).
      	(client_loaded_callback): Add this new callback that's done when
      	the view is activated and ready to go.
      	(failed_callback): Use update_state directly instead of calling
      	the old clunky change_state cover.
      	(load_underway_callback): Use update_state directly instead of
      	calling the old clunky change_state cover.
      	(load_complete_callback): Use update_state directly instead of
      	calling the old clunky change_state cover.
      
      	* src/nautilus-window.c:
      	(nautilus_window_set_content_view_widget): Get rid of explicit
      	activation, no longer needed now that NautilusViewFrame handles it
      	directly.
      
      	* test/test-nautilus-async-activation.c: (activation_callback),
      	(main): Change to use new async. API.
      
      	* user-guide/gnufdl/.cvsignore: Add to ignore some missing files.
      2717a5cd
    • John Sullivan's avatar
      reviewed by: Darin Adler <darin@eazel.com> · e0adba1c
      John Sullivan authored
      	Fixed bug 5569 (Desktop should not show up in history list)
      
      	I also prevented Control-B on the desktop from adding the
      	desktop to the Bookmarks list.
      
      	* src/file-manager/nautilus-desktop-icon-view-ui.xml:
      	overrode command "Add Bookmark" to be insensitive.
      
      	* src/nautilus-window.h: Declare function pointer for
      	add_current_location_to_history_list.
      
      	* src/nautilus-window-private.h: Declare private function
      	nautilus_window_add_current_location_to_history_list.
      
      	* src/nautilus-window.c:
      	(nautilus_window_initialize_class),
      	(real_add_current_location_to_history_list): Fill in
      	add_current_location_to_history_list function pointer
      	with simple function.
      	(nautilus_window_add_current_location_to_history_list):
      	wrapper for calling the new virtual function.
      	(nautilus_forget_history):
      	Call nautilus_window_add_current_location_to_history_list
      	where it was doing the work directly, to get the indirection.
      
      	* src/nautilus-window-manage-views.c: (update_for_new_location):
      	Call nautilus_window_add_current_location_to_history_list
      	where it was doing the work directly, to get the indirection.
      
      	* src/nautilus-desktop-window.c:
      	(nautilus_desktop_window_initialize_class),
      	(real_add_current_location_to_history_list): Override
      	add_current_location_to_history_list to do nothing.
      e0adba1c
  8. 24 Jan, 2001 1 commit
    • Darin Adler's avatar
      reviewed by: Pavel Cisler <pavel@eazel.com> · 921b14a9
      Darin Adler authored
      	Fix bug 5797 (Critical received when double-clicking on throbber):
      
      	* src/nautilus-window-private.h:
      	* src/nautilus-window.c: (location_change_at_idle_callback):
      	Callback to do actual location change at idle time instead of
      	right inside the property bag callback from the throbber.
      	(throbber_location_change_request_callback): Use the new idle
      	approach instead of changing the location right away.
      	(nautilus_window_destroy): Cancel the idle if it's still
      	outstanding.
      
      	* libnautilus-extensions/nautilus-file.c:
      	(nautilus_file_get_string_attribute_with_default): Mark a string
      	for translation.
      	(get_description): Mark some warning strings for translation since
      	they are warnings we think real users might see.
      
      	* applets/launcher/.cvsignore:
      	* applets/preferences-applet/.cvsignore:
      	Ignore some files.
      921b14a9
  9. 18 Jan, 2001 3 commits
    • Andy Hertzfeld's avatar
      now that the bonobo problems are resolved, we can go back to the · b8710572
      Andy Hertzfeld authored
      
      	now that the bonobo problems are resolved, we can go back to
      	the componentized throbber.
      
      	* src/Makefile.am:
      	* src/nautilus-window-toolbars.c:
      	(nautilus_window_initialize_toolbars):
      	* src/nautilus-window.c: (throbber_location_changed_callback),
      	(nautilus_window_constructed), (nautilus_window_destroy),
      	(nautilus_window_allow_stop):
      	* src/nautilus-window.h:
      b8710572
    • Andy Hertzfeld's avatar
      backed out the Bonobo component throbber temporarily due to Bonobo · 252f7dcd
      Andy Hertzfeld authored
      
      	backed out the Bonobo component throbber temporarily due
      	to Bonobo problems and restored the old one; hopefully, the
      	new one will come back soon.
      
      	* src/Makefile.am:
      	* src/nautilus-window-toolbars.c:
      	(nautilus_window_initialize_toolbars):
      	* src/nautilus-window.c: (nautilus_window_constructed),
      	(nautilus_window_destroy), (nautilus_window_allow_stop):
      	* src/nautilus-window.h:
      
      	fixed bug 5393, custom emblems arent scaling properly, by
      	* libnautilus-extensions/nautilus-icon-container.c:
      	(nautilus_icon_container_update_icon):
      	* libnautilus-extensions/nautilus-icon-factory.c:
      	(get_themed_icon_file_path), (load_pixbuf_svg),
      	(load_specific_icon):
      252f7dcd
    • Ramiro Estrugo's avatar
      reviewed by: Pavel Cisler <pavel@eazel.com> · d927dfd2
      Ramiro Estrugo authored
      	Lots of bug fixes:
      
      	2848 - User level agnostic config settings have nowhere to live.
      	2654 - Need default values even for non user level preferences.
      	3414 - Show more preferences at higher user levels.
      	3415 - Make preference the same for all levels at which it is not visible
      	3416 - Make preference changes affect all levels at which they are visible
      	4357 - Web search URL setting should be reset upon Nautilus update
      	5160 - Tree view doesnt exist when starting nautilus as a beginner
      	5234 - Sidebar panel preferences are not properly separated among user levels
      
      	* components/mozilla/mozilla-preferences.cpp:
      	Update for gnome vfs proxy changes.  Proxy host and port are now
      	stored in separate gconf settings.
      
      	* libnautilus-extensions/Makefile.am:
      	* libnautilus-extensions/nautilus-enumeration.h:
      	* libnautilus-extensions/nautilus-enumeration.c:
      	(nautilus_enumeration_new), (nautilus_enumeration_free),
      	(nautilus_enumeration_insert),
      	(nautilus_enumeration_get_nth_entry),
      	(nautilus_enumeration_get_nth_description),
      	(nautilus_enumeration_get_nth_value),
      	(nautilus_enumeration_get_num_entries),
      	(nautilus_self_check_enumeration):
      	New files.  An enumeration data structure.
      
      	* components/tree/nautilus-tree-expansion-state.c:
      	No longer need to give the full path to a gconf setting.
      
      	* components/tree/nautilus-tree-view.c:
      	(filtering_changed_callback), (nautilus_tree_view_initialize):
      	* libnautilus-extensions/nautilus-directory-async.c:
      	(can_use_public_metafile),
      	(get_filter_options_for_directory_count):
      	* libnautilus-extensions/nautilus-file-operations.c:
      	(confirm_empty_trash):
      	* libnautilus-extensions/nautilus-file.c:
      	(nautilus_file_should_get_top_left_text):
      	* libnautilus-extensions/nautilus-font-factory.c:
      	(nautilus_font_factory_get_font_from_preferences):
      	Update for preferences api changes.
      
      	* libnautilus-extensions/nautilus-gconf-extensions.h:
      	* libnautilus-extensions/nautilus-gconf-extensions.c:
      	(global_client_free), (nautilus_gconf_client_get_global),
      	(nautilus_gconf_handle_error), (nautilus_gconf_set_boolean),
      	(nautilus_gconf_get_boolean), (nautilus_gconf_set_int),
      	(nautilus_gconf_get_int), (nautilus_gconf_set_string),
      	(nautilus_gconf_get_string), (nautilus_gconf_set_string_list),
      	(nautilus_gconf_get_string_list), (nautilus_gconf_is_default),
      	(nautilus_gconf_monitor_directory):
      	New files.  Useful gconf extensions; make peeking and poking
      	settings a little easier.
      
      	* libnautilus-extensions/nautilus-icon-container.c:
      	(button_press_event):
      	* libnautilus-extensions/nautilus-icon-canvas-item.c:
      	(in_single_click_mode):
      	Update for preferences api changes.
      
      	* libnautilus-extensions/nautilus-icon-factory.c:
      	(icon_theme_changed_callback),
      	(should_display_image_file_as_itself):
      	Update for preferences api changes.  Also no longer need to define
      	a default theme.
      
      	* libnautilus-extensions/nautilus-lib-self-check-functions.h:
      	Add entries for enumeration and preferences.  Remove preference
      	entry.  Note plural vs not.
      
      	* libnautilus-extensions/nautilus-preference.c:
      	* libnautilus-extensions/nautilus-preference.h:
      	Retire these 2.  No longer use a GtkObject to store each
      	preference.  We simply use the string name instead.
      
      	* libnautilus-extensions/nautilus-preferences-box.h:
      	* libnautilus-extensions/nautilus-preferences-box.c:
      	(nautilus_preferences_box_add_pane),
      	(nautilus_preferences_box_update):
      	New function.  Should be called when user level changes so that
      	the box updates its panes.
      
      	* libnautilus-extensions/nautilus-preferences-dialog.h:
      	* libnautilus-extensions/nautilus-preferences-dialog.c:
      	(nautilus_preferences_dialog_initialize),
      	(nautilus_preferences_dialog_destroy),
      	(nautilus_preferences_dialog_get_prefs_box),
      	(nautilus_preferences_dialog_update),
      	(user_level_changed_callback):
      	Keep track of user level changes.
      	New function to update the dialog when user level changes.
      
      	* libnautilus-extensions/nautilus-preferences-group.h:
      	* libnautilus-extensions/nautilus-preferences-group.c:
      	(nautilus_preferences_group_initialize),
      	(nautilus_preferences_group_destroy),
      	(nautilus_preferences_group_add_item): Collect the group's items
      	in a list.  Update to user a string to represent a preference
      	instead of a GtkObject.
      	(nautilus_preferences_group_update): New function.  Updates the
      	group's items to respect preferences visibility based on the user
      	level.
      	(nautilus_preferences_get_num_visible_items):  New function.
      	Return the number of currently visible items.
      
      	Collect the group's items in a list.   Update to user a string to
      	represent a preference instead of a GtkObject.
      
      	* libnautilus-extensions/nautilus-preferences-item.h:
      	* libnautilus-extensions/nautilus-preferences-item.c:
      	(preferences_item_construct), (preferences_item_create_enum),
      	(preferences_item_create_short_enum),
      	(preferences_item_create_boolean),
      	(preferences_item_create_editable_string),
      	(preferences_item_create_integer),
      	(preferences_item_create_font_family),
      	(preferences_item_create_theme),
      	(enum_radio_group_changed_callback),
      	(editable_string_changed_callback), (integer_changed_callback),
      	(nautilus_preferences_item_get_name):
      	New function to fetch the item's preference name.
      	Add a new kind of preference - INTEGER.  Update for string
      	vs. GtkObject preferences representation changes.
      
      	* libnautilus-extensions/nautilus-preferences-pane.h:
      	* libnautilus-extensions/nautilus-preferences-pane.c:
      	(nautilus_preferences_pane_update):
      	New function.  Updates the pane's groups to respect preferences
      	visibility based on the user level.
      
      	* libnautilus-extensions/nautilus-preferences.h:
      	* libnautilus-extensions/nautilus-preferences.c:
      	(preferences_get_path), (preferences_get_defaults_path),
      	(preferences_get_visibility_path),
      	(preferences_get_user_level_key),
      	(preferences_preference_is_internal),
      	(preferences_preference_is_user_level), (preferences_key_make),
      	(preferences_key_make_for_default),
      	(preferences_key_make_for_default_getter),
      	(preferences_key_make_for_visibility),
      	(preferences_global_client_remove_notification),
      	(preferences_global_client_get),
      	(preferences_preference_is_default),
      	(preferences_make_user_level_filtered_key),
      	(nautilus_preferences_get_visible_user_level),
      	(nautilus_preferences_set_visible_user_level),
      	(nautilus_preferences_set_boolean),
      	(preferences_key_make_for_getter),
      	(nautilus_preferences_get_boolean), (nautilus_preferences_set_int),
      	(nautilus_preferences_get_int), (nautilus_preferences_set),
      	(nautilus_preferences_get), (nautilus_preferences_set_string_list),
      	(nautilus_preferences_get_string_list),
      	(nautilus_preferences_get_user_level),
      	(nautilus_preferences_set_user_level),
      	(nautilus_preferences_default_set_int),
      	(nautilus_preferences_default_get_int),
      	(nautilus_preferences_default_set_boolean),
      	(nautilus_preferences_default_get_boolean),
      	(nautilus_preferences_default_set_string),
      	(nautilus_preferences_default_get_string),
      	(nautilus_preferences_default_set_string_list),
      	(nautilus_preferences_default_get_string_list),
      	(preferences_callback_entry_invoke_function),
      	(preferences_something_changed_notice),
      	(preferences_global_table_check_changes_function),
      	(preferences_user_level_changed_notice),
      	(preferences_entry_add_callback),
      	(preferences_entry_remove_callback),
      	(preferences_callback_entry_free),
      	(preferences_callback_entry_free_func), (preferences_entry_free),
      	(preferences_entry_free_func), (preferences_global_table_free),
      	(preferences_global_table_get_global),
      	(preferences_global_table_lookup),
      	(preferences_global_table_insert),
      	(preferences_global_table_lookup_or_insert),
      	(nautilus_preferences_add_callback),
      	(preferences_while_alive_disconnector),
      	(nautilus_preferences_add_callback_while_alive),
      	(nautilus_preferences_remove_callback),
      	(nautilus_preferences_enumeration_insert),
      	(nautilus_preferences_enumeration_get_nth_entry),
      	(nautilus_preferences_enumeration_get_nth_description),
      	(nautilus_preferences_enumeration_get_nth_value),
      	(nautilus_preferences_enumeration_get_num_entries),
      	(nautilus_preferences_set_description),
      	(nautilus_preferences_get_description),
      	(nautilus_preferences_get_user_level_name_for_display),
      	(nautilus_preferences_get_user_level_name_for_storage),
      	(preferences_user_level_check_range),
      	(nautilus_preferences_monitor_directory),
      	(nautilus_preferences_is_visible),
      	(nautilus_self_check_preferences):
      	Many changes.  Redid to support the preferences system described
      	in bugs 3414, 3415 and 3416.
      
      	* libnautilus-extensions/nautilus-smooth-widget.c:
      	(preferences_get_is_smooth):
      	* libnautilus-extensions/nautilus-sound.c:
      	(kill_sound_if_necessary), (nautilus_sound_initialize),
      	(nautilus_sound_kill_sound), (nautilus_sound_register_sound),
      	(nautilus_sound_can_play_sound):
      	* libnautilus-extensions/nautilus-theme.c:
      	(nautilus_theme_get_theme), (nautilus_theme_get_theme_data),
      	(nautilus_theme_get_image_path):
      	Update for preferences api changes.
      
      	* libnautilus-extensions/nautilus-user-level-manager.c:
      	* libnautilus-extensions/nautilus-user-level-manager.h:
      	Retire.  No longer needed.  User level things are handled in
      	nautilus-preferences.[ch] now.  The current user level design is
      	much simpler and does no require its own GtkObject.
      
      	* src/file-manager/fm-desktop-icon-view.c:
      	(update_home_link_and_delete_copies), (real_update_menus):
      	* src/file-manager/fm-directory-view.c: (open_location),
      	(confirm_delete_from_trash), (real_update_menus),
      	(fm_directory_view_activate_files), (filtering_changed_callback):
      	* src/file-manager/fm-icon-text-window.c:
      	(changed_attributes_option_menu_callback),
      	(fm_get_text_attribute_names_preference_or_default):
      	* src/file-manager/fm-icon-view.c: (should_preview_sound),
      	(fm_icon_view_update_click_mode),
      	(fm_icon_view_update_smooth_graphics_mode):
      	* src/file-manager/fm-list-view.c:
      	(fm_list_view_update_click_mode):
      	* src/file-manager/fm-properties-window.c:
      	(create_permissions_page):
      	* src/nautilus-application.c: (desktop_changed_callback):
      	* src/nautilus-complex-search-bar.c:
      	(nautilus_complex_search_bar_get_location):
      	* src/nautilus-first-time-druid.c: (user_level_selection_changed),
      	(make_hbox_user_level_radio_button), (set_up_user_level_page):
      	* src/nautilus-main.c: (main):
      	* src/nautilus-property-browser.c:
      	(nautilus_property_browser_update_contents):
      	* src/nautilus-sidebar.c: (nautilus_sidebar_sidebar_panel_enabled),
      	(toggle_sidebar_panel), (nautilus_sidebar_size_allocate):
      	* src/nautilus-switchable-search-bar.c:
      	(nautilus_switchable_search_bar_new),
      	(nautilus_search_uri_to_search_bar_mode):
      	Update for preferences api changes.
      
      	* src/nautilus-window-manage-views.c:
      	(position_and_show_window_callback),
      	(nautilus_window_end_location_change_callback):
      	Update for preferences api changes.  Also, no longer need to pass
      	in a default location to the preferences getter.
      
      	* src/nautilus-window-menus.c: (user_level_customize_callback),
      	(switch_to_user_level), (refresh_bookmarks_menu),
      	(user_level_changed_callback), (add_user_level_menu_item),
      	(nautilus_window_initialize_menus), (update_user_level_menu_items),
      	(convert_user_level_to_path):
      	A lot of simplification.  The "Edit Settings..." menu item no
      	longer changes it wording based on the user level.  We know allow
      	it to edit settings on all user levels, since we have the ability
      	to hide preferences at higher user levels.  No longer need to
      	update the preferences dialog or its title.
      
      	* src/nautilus-window.c: (nautilus_window_constructed),
      	(nautilus_window_close), (nautilus_window_go_web_search),
      	(nautilus_window_go_home), (nautilus_window_show):
      	Update for preferences api changes.
      
      	* libnautilus-extensions/nautilus-global-preferences.h:
      	Update all the preferences defines to not include a full gconf
      	path.  We dont need to do this anymore to get non user level
      	coupled prefernces.
      
      	* libnautilus-extensions/nautilus-global-preferences.c:
      	(compare_view_identifiers), (global_preferences_create_dialog),
      	(nautilus_global_preferences_get_enabled_sidebar_panel_view_identif
      	iers), (global_preferences_install_sidebar_panel_defaults),
      	(global_preferences_is_sidebar_panel_enabled),
      	(global_preferences_install_speed_tradeoff_descriptions),
      	(register_proxy_preferences), (global_preferences_register),
      	(global_preferences_install_defaults),
      	(nautilus_global_preferences_set_dialog_title):
      	Lots of changes to support new preferences design.
      
      	Set the WM_CLASS here once instead of everytime the dialog title
      	is changed.  This was causing criticals.
      
      	No longer need to create parallel proxy preferences and map them
      	to the gconf ones.  We can use the gconf ones directly now.
      
      	* test/.cvsignore:
      	* test/Makefile.am:
      	* test/test-nautilus-preferences-change.c:
      	(user_level_changed_callback), (fruits_changed_callback),
      	(int_picker_changed_callback),
      	(user_level_picker_changed_callback), (picker_new),
      	(user_level_picker_new), (main):
      	* test/test-nautilus-preferences-display.c: (text_caption_update),
      	(user_level_caption_update), (user_level_changed_callback),
      	(green_changed_callback), (yellow_changed_callback),
      	(red_changed_callback), (apple_changed_callback),
      	(orange_changed_callback), (pear_changed_callback), (entry_new),
      	(user_level_frame_new), (colors_frame_new), (fruits_frame_new),
      	(main):
      	* test/test.c: (test_pixbuf_draw_rectangle_tiled),
      	(test_text_caption_set_text_for_int_preferences),
      	(test_text_caption_set_text_for_string_preferences),
      	(test_text_caption_set_text_for_default_int_preferences),
      	(test_text_caption_set_text_for_default_string_preferences),
      	(test_text_caption_get_text_as_int),
      	(test_window_set_title_with_pid):
      	* test/test.h:
      	New tests for preferences changes.
      
      	* test/test-nautilus-preferences.c:
      	Retire old prefs test which didnt really work.
      
      	* test/test-nautilus-smooth-graphics.c:
      	(smooth_graphics_mode_changed_callback), (main):
      	Update for preferences api changes.
      d927dfd2
  10. 16 Jan, 2001 2 commits
    • Andy Hertzfeld's avatar
      fixed bug 5657, crash during menu update when switching views. This is · 75ac9bf9
      Andy Hertzfeld authored
      
      	* src/nautilus-window-manage-views.c: (change_state_at_idle),
      	(load_underway_callback):
      	fixed bug 5657, crash during menu update when switching views.  This is
      	also behind several other reported bugs.  Fixed it as Darin suggested,
      	which is to defer the window state change associated with loading
      	a new component until idle time, so it doesn't wreak havoc
      	by interrupting other idle routines.
      
      	* components/throbber/nautilus-throbber.c:
      	(nautilus_throbber_initialize_class), (get_bonobo_properties),
      	(set_bonobo_properties), (nautilus_throbber_destroy),
      	(nautilus_throbber_initialize),
      	(nautilus_throbber_button_press_event):
      	added a location property and made it issue a notification when the
      	throbber is clicked on.  Also, removed the no longer used
      	"location_changed" signal and better memory management of the
      	property bag.
      
      	* src/nautilus-window.c: (throbber_location_changed_callback),
      	(nautilus_window_constructed), (nautilus_window_destroy):
      	make clicking on the throbber work by adding a listener for
      	the throbber location property and changing the location
      	accordingly when the event is posted.  Also, fixed a leak
      	of the bonobo object.
      
      	* src/nautilus-window-private.h:
      	added a field to hold the event source listener ID.
      75ac9bf9
    • Andy Hertzfeld's avatar
      fixed bug 4369, throbber frozen during long refresh, by making the · 99581381
      Andy Hertzfeld authored
      
      	fixed bug 4369, throbber frozen during long refresh, by making the
      	throbber a bonobo component so it's driven by its own thread.
      	Note that clicking on the throbber is temporarily broken; I'll
      	fix that soon.  Also, made the frame delay be specified by the
      	theme and set the default to spin somewhat slower than before.
      
      	* configure.in:
      	* components/Makefile.am:
      	* components/throbber/.cvsignore:
      	* components/throbber/Makefile.am:
      	* components/throbber/nautilus-throbber.oafinfo:
      	added throbber component
      
      	* components/throbber/main.c: (throbber_object_destroyed),
      	(throbber_make_object), (main):
      	factory for the throbber component
      
      	* components/throbber/nautilus-throbber.c,h:
      	(nautilus_throbber_initialize_class), (is_throbbing),
      	(get_bonobo_properties), (set_bonobo_properties),
      	(nautilus_throbber_destroy), (nautilus_throbber_get_control),
      	(get_throbber_dimensions), (nautilus_throbber_initialize),
      	(nautilus_throbber_new), (nautilus_throbber_theme_changed),
      	(draw_pixbuf), (select_throbber_image), (draw_throbber_image),
      	(nautilus_throbber_draw), (nautilus_throbber_expose),
      	(nautilus_throbber_map), (bump_throbber_frame),
      	(nautilus_throbber_start),
      	(nautilus_throbber_remove_update_callback),
      	(nautilus_throbber_stop), (nautilus_throbber_unload_images),
      	(load_themed_image), (make_throbber_frame_name),
      	(nautilus_throbber_load_images),
      	(nautilus_throbber_button_press_event),
      	(nautilus_throbber_set_small_mode),
      	(nautilus_throbber_size_allocate),
      	(nautilus_throbber_size_request):
      	throbber widget for the bonobo component
      
      	* src/nautilus-window-toolbars.c: (theme_changed_callback),
      	(nautilus_window_initialize_toolbars):
      	set up throbber component in the toolbar
      
      	* src/nautilus-window.c,h: (nautilus_window_constructed),
      	(nautilus_window_allow_stop):
      	use property interface to start and stop the throbber
      
      	* icons/default.xml:
      	added delay specification to throbber in default theme
      
      	* nautilus-clean.sh:
      	clean throbber component as necessary
      
      	* src/Makefile.am:
      	* src/nautilus-throbber.c,h
      	removed old throbber widget
      99581381
  11. 04 Jan, 2001 2 commits
    • Darin Adler's avatar
      reviewed by: Pavel Cisler <pavel@eazel.com> · f683ed79
      Darin Adler authored
      	Fix bug 5235 ("Forget History" eliminates history from Go menu,
      	not History sidebar panel).
      
      	* components/history/nautilus-history-view.c:
      	(install_icons): Fix leak of pixmap and bitmap.
      	(update_history): Replaced dual lock system with a single one.
      	(button_press_callback): Only respect button 1, ignore others.
      	(button_release_callback): Only respect button 1, ignore others,
      	(history_changed_callback): A new single callback for when the
      	history list changes to replace the multiple callbacks before.
      	(nautilus_history_view_initialize_class),
      	(nautilus_history_view_initialize),
      	(nautilus_history_view_destroy), (main): Change the history view
      	to use nautilus_view_standard_main which requires a subclass. This
      	gets rid of a lot of boilerplate code.
      
      	* libnautilus/nautilus-view-component.idl: Make every NautilusView
      	get an explicit history_changed call instead of requiring them to
      	guess when to get history. Removed the old get_history_list call
      	and also renamed the HistoryList sequence to History.
      	* libnautilus/nautilus-view.h:
      	* libnautilus/nautilus-view.c:
      	(impl_Nautilus_View_history_changed),
      	(nautilus_view_initialize_class): Added the necessary stuff to
      	cover the new history_changed call.
      
      	* src/nautilus-view-frame.h:
      	* src/nautilus-view-frame.c: (nautilus_view_frame_initialize):
      	Connect handlers so we can send history_changed calls to the
      	NautilusView when either the history or the icons change.
      	(nautilus_view_frame_destroy): Change state to EMPTY so the
      	history signal won't be sent once the frame is destroyed.
      	(view_frame_activated): Send a history_changed to every
      	newly-activated view.
      	(get_CORBA_object): Helper function to make code that makes CORBA
      	calls simpler.
      	(check_if_view_is_gone): Use get_CORBA_object.
      	(attach_client): Gave a nicer name, removed the code that makes
      	the Nautilus_HistoryFrame interface.
      	(nautilus_view_frame_load_client): Do the attach_client (formerly
      	nautilus_view_frame_set_to_component) before calling
      	view_frame_activated. This is needed since view_frame_activated
      	now sends a history_changed to the view.
      	(nautilus_view_frame_load_location),
      	(nautilus_view_frame_stop_loading),
      	(nautilus_view_frame_selection_changed),
      	(nautilus_view_frame_title_changed): Use get_CORBA_object.
      	(get_history_list): Made this private.
      	(send_history): Helper function that sends history to the view if
      	it's in the appropriate state.
      
      	* src/Makefile.am:
      	* src/nautilus-history-frame.c:
      	* src/nautilus-history-frame.h:
      	Removed the old NautilusHistoryFrame, which is no longer needed
      	since we put the history call right in the NautilusView class.
      
      	* src/nautilus-window-manage-views.c: (get_history_list_callback):
      	Updated for Nautilus_HistoryList -> Nautilus_History change.
      
      	Fix bug 5391 ("Esc" Canceling of an icon stretch doesn't restore
      	icon position.).
      
      	* libnautilus-extensions/nautilus-icon-private.h:
      	* libnautilus-extensions/nautilus-icon-container.c:
      	(clear_drag_state): Add a single bottleneck function to make sure
      	the context menu timeout always gets canceled.
      	(continue_stretching): Remove the unused "update_position" parameter.
      	(undo_stretching): Consolidate the cancel_stretching function and
      	restore the icon's position as well as its size. Also use the new
      	bottleneck to clear the drag state.
      	(button_release_event): Use the new bottleneck to clear the drag
      	state.
      	(show_context_menu_callback): Use the new bottleneck to clear the
      	drag state.
      	(nautilus_icon_container_set_selection),
      	(nautilus_icon_container_select_list_unselect_others): Take
      	advantage of the defaults in g_hash_table_new and use NULL, NULL
      	instead of g_direct_hash, g_direct_equal.
      	(nautilus_icon_container_show_stretch_handles): Save the position
      	as well as the size.
      	(compute_stretch): Add a FIXME with a bug number.
      
      	Fix bug 5407 (Make "Hardware Overview" title translatable).
      
      	* components/hardware/nautilus-hardware-view.c:
      	(nautilus_hardware_view_destroy): Remove unused uri field.
      	(extract_info): Fix storage leak.
      	(get_RAM_description): Get rid of code that non-portably relies on
      	long long. Mark strings for translation.
      	(get_IDE_description): Get rid of code that non-portably relies on
      	long long. Mark strings for translation.
      	(setup_overview_form): Marked string for translation.
      	(setup_CPU_form), (setup_RAM_form), (setup_IDE_form),
      	(is_location), (nautilus_hardware_view_load_uri): Disable the
      	views other than the overview for now since they are not ready to
      	be seen.
      	(nautilus_hardware_view_drag_data_received): Get rid of the code
      	that makes the hardware view accept a URI list drag.
      
      	Fix bug 5405 (nautilus --check fails when using LC_ALL=sv_SE due
      	to missing entry in POTFILES.in).
      
      	* po/POTFILES.in: Added nautilus-glib-extensions.c.
      
      	Other changes.
      
      	* src/nautilus-signaller.h:
      	* src/nautilus-signaller.c: (nautilus_signaller_initialize_class),
      	(nautilus_signaller_get_current):
      	Change the NautilusSignaller class so that the interface calls the
      	object a GtkObject * and the details of the class are hidden.
      
      	* src/nautilus-property-browser.c: (emit_emblems_changed_signal):
      	* src/nautilus-search-bar-criterion.c:
      	(nautilus_search_bar_criterion_destroy),
      	(nautilus_search_bar_criterion_new_from_values):
      	* src/nautilus-window-menus.c:
      	(nautilus_window_initialize_go_menu):
      	* src/nautilus-window.c: (nautilus_send_history_list_changed):
      	Now that nautilus_signaller_get_current returns a GtkObject,
      	remove some unnecessary casts.
      
      	* components/html/glibwww-callbacks.c: (get_sock_info),
      	(glibwww_timer_register):
      	* components/tree/nautilus-tree-model.c:
      	(nautilus_tree_model_initialize):
      	* components/tree/nautilus-tree-view.c:
      	(nautilus_tree_view_initialize):
      	* libnautilus-extensions/nautilus-directory-async.c:
      	(async_job_start):
      	* libnautilus-extensions/nautilus-directory.c:
      	(nautilus_directory_notify_files_added),
      	(nautilus_directory_notify_files_removed),
      	(nautilus_directory_notify_files_moved):
      	* libnautilus-extensions/nautilus-icon-factory.c:
      	(nautilus_icon_factory_initialize):
      	* libnautilus-extensions/nautilus-list.c:
      	(nautilus_list_set_selection):
      	* libnautilus-extensions/nautilus-merged-directory.c:
      	(nautilus_merged_directory_initialize):
      	* libnautilus-extensions/nautilus-trash-directory.c:
      	(nautilus_trash_directory_initialize):
      	* src/file-manager/fm-properties-window.c:
      	(fm_properties_window_present):
      	Take advantage of the defaults in g_hash_table_new and use NULL,
      	NULL instead of g_direct_hash, g_direct_equal.
      f683ed79
    • John Harper's avatar
      reviewed by: Darin Adler <darin@eazel.com> · 92677ae6
      John Harper authored
      2001-01-03  John Harper  <jsh@eazel.com>
      
      	reviewed by: Darin Adler  <darin@eazel.com>
      
      	Work to make clicking on an inactive window not focus it if the
      	click subsequently starts a drag. Fixes bug 1681, and removes
      	fixme bugs 5030, 5032, and 5033
      
      	* libnautilus-extensions/nautilus-drag-window.c,
      	libnautilus-extensions/nautilus-drag-window.h
      	(nautilus_drag_window_register): new module, hooks into a
      	GtkWindow to retrofit a focus policy that makes sense with drag
      	and drop sources. When dragging from a window, a button press
      	event that subsequently causes a drag to be started doesn't
      	focus (or raise) the window
      
      	This uses a sawfish-specific WM_PROTOCOL to handle the `don't
      	raise' part (_SAWFISH_WM_RAISE_WINDOW), but everything else
      	should work with any ICCCM-compliant wm. (The sawfish specific
      	part will have zero effect with other wm's. It currently
      	requires a cvs version of sawfish)
      
      	* src/nautilus-window.c (nautilus_window_constructed):
      	* src/nautilus-property-browser.c
      	(nautilus_property_browser_initialize):
      	Call nautilus_drag_window_register () on the window, since it
      	may be used as a drag source
      
      	* libnautilus-extensions/nautilus-gdk-extensions.c,
      	libnautilus-extensions/nautilus-gdk-extensions.h
      	(nautilus_gdk_window_focus,
      	nautilus_gdk_window_set_wm_protocols): new functions
      92677ae6
  12. 16 Dec, 2000 1 commit
    • John Sullivan's avatar
      reviewed by: Darin Adler <darin@eazel.com> · ac323318
      John Sullivan authored
      	Fixed bug 2464 ("open each item in a new window" sometimes
      	reuses an existing window)
      
      	* libnautilus-extensions/nautilus-global-preferences.c:
      	(global_preferences_register): Changed preferences text to
      	say "separate window" rather than "new window"
      
      
      	Fixed bug 2752 (double-clicking Help item causes "sidebar view
      	failed" message)
      
      	Fixed bug 5040 (only one dead view name gets saved for a window)
      
      	This was a tangled mess of issues, including: (1) the dialog
      	code was incorrectly guessing "sidebar panel" when a content
      	view failed in some cases (fixed); (2) view frame lifetime
      	issues found while working on (1) (fixed); (3) the state machine
      	can fail if asked to load the same location twice very quickly
      	(written up as bug 5197); (4) the Help sidebar panel asks to
      	load the same location multiple times on a double-click (fixed);
      	(5) Mozilla sometimes fails to load just after it has quit
      	(written up as bug 5199).
      
      	* components/help/hyperbola-nav-tree.c:
      	(hyperbola_navigation_tree_new): Connect to destroy signal of
      	ctree widget.
      	(set_pending_location): New helper function to remember the
      	location for which this component just initiated a load.
      	(hyperbola_navigation_tree_load_location): Set pending location
      	to NULL now that there's a new real location.
      	(hyperbola_navigation_tree_select_row): Don't try to start a
      	new load of the pending location; set the pending location when
      	we do start a new load.
      	(hyperbola_navigation_tree_destroy): free pending location.
      
      	* src/nautilus-view-frame.c:
      	(nautilus_view_frame_initialize_class),
      	(nautilus_view_frame_destroy), (nautilus_view_frame_finalize):
      	Don't destroy details fields until finalize, so view_frame objects
      	with extra refs can survive between destroy & finalize.
      
      	* src/nautilus-window-manage-views.c:
      	(view_frame_info_new), (view_frame_info_free): New helper
      	functions for dealing with the label & sidebar-panel-ness
      	of a view frame.
      	(set_view_frame_info): New helper function for storing
      	the label & sidebar-panel-ness of a view frame in object
      	data in the view frame.
      	(view_frame_is_sidebar_panel), (view_frame_get_label):
      	New helper functions for retrieving info stored in object
      	data in the view frame.
      	(report_content_view_failure_to_user_internal),
      	(report_current_content_view_failure_to_user),
      	(report_nascent_content_view_failure_to_user),
      	(report_sidebar_panel_failure_to_user): Reworked the functions
      	that put up the "view failed" dialog to take a NautilusViewFrame
      	and to distinguish the existing-content-view from content-view-
      	that's-being-created cases.
      	(disconnect_view_and_destroy), (disconnect_destroy_unref_view):
      	New helper functions for cleanly forgetting about a view.
      	(handle_view_failure): Use object data to distinguish content views
      	from sidebar panels so we'll always get the right failure dialog.
      	(update_state), (change_state): Get rid of dead_view_name mechanism;
      	the name is now stored in the view frame in all cases.
      	(load_content_view), (free_location_change),
      	(nautilus_window_begin_location_change),
      	(nautilus_window_set_sidebar_panels): Jigger around the reffing &
      	sinking of NautilusViewFrames to fix leaks and uncancelled-callback
      	issues.
      
      	* src/nautilus-window-private.h: remove obsolete dead_view_name
      	field.
      	* src/nautilus-window.c: (nautilus_window_destroy):
      	Don't free now-non-existent dead_view_name field.
      ac323318
  13. 12 Dec, 2000 2 commits
    • Mike Engber's avatar
      reviewed by: John Sullivan <sullivan@eazel.com> · 2422343c
      Mike Engber authored
      
      	reviewed by: John Sullivan <sullivan@eazel.com>
      
      	* src/nautilus-window-menus.c:
      	(nautilus_window_bookmarks_preference_changed_callback),
      	(nautilus_window_initialize_bookmarks_menu):
      	* src/nautilus-window-private.h:
      	* src/nautilus-window.c: (nautilus_window_destroy):
      	Added a preference remove callback - which fixes bug 5147.
      2422343c
    • Darin Adler's avatar
      reviewed by: Pavel Cisler <pavel@eazel.com> · 47462dc1
      Darin Adler authored
      	Fixed bug 650 (moving a large number of files is extremely slow)
      	by using a hash table to find metafile nodes given a file name.
      	Fixed bug 3410 (sorting not locale-sensitive) by making
      	nautilus_strcoll suitable for wider use and using it a lot more.
      
      	* libnautilus-extensions/nautilus-directory-private.h: Add a
      	new hash table for locating metafile nodes by file name.
      
      	* libnautilus-extensions/nautilus-directory-metafile.h: Add
      	nautilus_directory_set_metafile_contents call so the metafile
      	code will have a crack at the metafile contents right when
      	they are first read in.
      
      	* libnautilus-extensions/nautilus-directory-metafile.c:
      	(get_file_node): Locate the file node using the hash table,
      	and create a hash table entry when making a new file node.
      	(destroy_xml_string_key), (nautilus_directory_metafile_destroy):
      	Destroy the hash table when the directory is destroyed.
      	(nautilus_directory_rename_file_metadata): Remove the old hash
      	table entry and make a new one when the node's name is changed.
      	(nautilus_directory_set_metafile_contents): Create the hash
      	table and populate it when the metafile is read in.
      
      	* libnautilus-extensions/nautilus-string.h:
      	* libnautilus-extensions/nautilus-string.c: (nautilus_strcoll):
      	Treat a locale that can't be fetched by setlocale the same as
      	locale "C" and "POSIX", fall back on strcmp if strcoll says two
      	strings are equal, so that only identical strings get a 0.
      	(nautilus_strcmp_compare_func): New name for nautilus_str_compare.
      	(nautilus_strcoll_compare_func): New function.
      	(nautilus_strcasecmp_compare_func): New name for nautilus_istr_compare.
      
      	* libnautilus-extensions/nautilus-glib-extensions.h:
      	* libnautilus-extensions/nautilus-glib-extensions.c:
      	(nautilus_g_str_list_copy): Removed an unnecessary check for NULL.
      	(nautilus_g_str_list_alphabetize): Replaced the old sort calls
      	with this single call. It sorts in a locale-sensitive way, using
      	nautilus_strcoll.
      
      	* libnautilus-extensions/nautilus-file.c: (compare_by_name),
      	(compare_by_directory_name), (compare_by_emblems),
      	(compare_by_type), (nautilus_file_compare_name): Use
      	nautilus_strcoll instead of nautilus_strcmp_case_breaks_ties so we
      	use local sorting conventions in locales other than "C" and
      	"POSIX".
      	(nautilus_get_user_names), (nautilus_get_group_names_including):
      	(sort_keyword_list_and_remove_duplicates): Use the new
      	nautilus_g_str_list_alphabetize to sort by locale-specific
      	conventions.
      
      	* libnautilus-extensions/nautilus-icon-container.c:
      	(compare_icons_by_name): Use nautilus_strcoll instead of
      	nautilus_strcmp_case_breaks_ties so we use local sorting
      	conventions in locales other than "C" and "POSIX".
      
      	* src/file-manager/fm-properties-window.c: (get_property_names):
      	Use the new nautilus_g_str_list_alphabetize
      	* src/nautilus-window-manage-views.c: (change_selection): Use the
      	new nautilus_g_str_list_alphabetize
      	* src/nautilus-window.c: (load_view_as_menu_callback): Use the new
      	nautilus_g_str_list_alphabetize
      
      	* libnautilus-extensions/nautilus-directory-async.c:
      	(metafile_read_done_callback),
      	(nautilus_directory_set_up_request): Use nautilus_str_compare
      	under its new name, nautilus_strcmp_compare_func.
      
      	* components/services/install/command-line/.cvsignore: Added
      	eazel-test-types, a new generated file.
      
      	* libnautilus-extensions/nautilus-string-list.c:
      	(nautilus_string_list_new): Use nautilus_str_compare and
      	nautilus_istr_compare under their new names,
      	nautilus_strcmp_compare_func and nautilus_strcasecmp_compare_func.
      
      	* libnautilus-extensions/nautilus-xml-extensions.c:
      	(nautilus_xml_get_child_by_name): Fixed indenting.
      47462dc1
  14. 08 Dec, 2000 1 commit
    • Rebecca Schulman's avatar
      Added bug numbers to FIXMEs for the src subdirectory. If I can stomach it, · 2879356e
      Rebecca Schulman authored
      2000-12-07  Rebecca Schulman  <rebecka@eazel.com>
      	Added bug numbers to FIXMEs for the src
      	subdirectory.  If I can stomach it,
      	I'll try and do a few more today.
      
      	* src/file-manager/fm-directory-view.c: (duplicate_callback),
      	(check_for_directory_hard_limit), (load_directory):
      	* src/file-manager/fm-icon-view.c: (fm_icon_view_begin_loading):
      	* src/file-manager/fm-search-list-view.c: (load_error_callback),
      	(real_adding_file):
      	* src/nautilus-about.c: (nautilus_about_draw_info):
      	* src/nautilus-first-time-druid.c: (druid_cancel),
      	(druid_finished), (make_anti_aliased_label),
      	(make_hbox_user_level_radio_button), (set_up_user_level_page),
      	(next_update_page_callback), (initiate_file_download):
      	* src/nautilus-link-set-window.c: (get_link_set_names):
      	* src/nautilus-location-bar.c:
      	(nautilus_location_bar_update_label):
      	* src/nautilus-property-browser.c:
      	(nautilus_property_browser_initialize), (add_reset_property),
      	(make_properties_from_xml_node),
      	(nautilus_property_browser_update_contents):
      	* src/nautilus-sidebar-title.c:
      	(nautilus_sidebar_title_background), (update_icon):
      	* src/nautilus-view-frame.c:
      	(nautilus_view_frame_set_to_component):
      	* src/nautilus-window-manage-views.c:
      	(window_set_title_with_timestamp), (viewed_file_changed_callback),
      	(load_content_view), (change_state):
      	* src/nautilus-window-service-ui.c: (goto_online_storage),
      	(goto_software_catalog):
      	* src/nautilus-window-toolbars.c: (set_up_throbber_frame_type):
      	* src/nautilus-window.c: (nautilus_window_realize):
      	* test/test-nautilus-font.c:
      2879356e
  15. 07 Dec, 2000 1 commit
    • Darin Adler's avatar
      reviewed by: John Sullivan <sullivan@eazel.com> · ca6e9f3b
      Darin Adler authored
      	Fixed bug 3245 (When an empty folder is visited, the throbbing
      	never stops), bug 2540 (Hook up done_loading signal in
      	NautilusMergedDirectory?), and bug 3067 (throbber doesn't start
      	again if you do a new "underway" call after load is complete).
      
      	* src/file-manager/fm-directory-view.c: (queue_pending_files):
      	Get rid of code that uses nautilus_directory_are_all_files_seen
      	to notice we are done loading.
      	(done_loading_callback): Use done_loading signal to notice we
      	are done loading.
      	(finish_loading_uri): Connect to the done_loading signal.
      	(disconnect_model_handlers): Disconnect from the done_loading
      	signal.
      
      	* libnautilus-extensions/nautilus-merged-directory.c:
      	(done_loading_callback),
      	(nautilus_merged_directory_add_real_directory),
      	(nautilus_merged_directory_remove_real_directory): Add code to
      	track all the trash directories and emit done_loading signals
      	once all of them are done loading.
      
      	* src/nautilus-window-manage-views.c: (change_state): Turn the
      	stop and the throbber back on when a view re-marks itself
      	underway.
      
      	* libnautilus-extensions/nautilus-drag.c:
      	(nautilus_drag_file_receive_dropped_keyword): Fix storage leak by
      	doing a free_deep on the list of keywords.
      
      	* libnautilus-extensions/nautilus-file-operations.h:
      	* libnautilus-extensions/nautilus-file-operations.c:
      	Get rid of excess includes.
      
      	* libnautilus-extensions/nautilus-icon-dnd.c: Get rid of unused
      	ERASE_KEYWORD constant.
      
      	* src/nautilus-window.c: (nautilus_window_constructed): Fix a
      	typo in a comment.
      ca6e9f3b
  16. 06 Dec, 2000 3 commits
    • Rebecca Schulman's avatar
      This should complete the rest of the work for bug 3920, by added a message · 8c7d921f
      Rebecca Schulman authored
      2000-12-06  Rebecca Schulman  <rebecka@eazel.com>
      	This should complete the rest of the work for bug 3920,
      	by added a message in the status bar about what
      	search results will appear (only those files indexed as
      	of the last index time)
      
      	reviewed by: Maciej Stachowiak <mjs@eazel.com>
      
      	* src/file-manager/fm-search-list-view.c: (load_location_callback):
      	Add a status message
      
      	* src/file-manager/nautilus-indexing-info.c:
      	* src/file-manager/nautilus-indexing-info.h:
      	(nautilus_indexing_info_get_last_index_time),
      	(show_reindex_request_information):
      	Changed get_last_index_time to
      	nautilus_indexing_info_get_last_index_time
      	to share the code with the search list view
      
      	* src/nautilus-window.c:
      	Upped the status bar timeout for 5 seconds to 10.
      8c7d921f
    • John Sullivan's avatar
      reviewed by: Pavel Cisler <pavel@eazel.com> · 3082c19c
      John Sullivan authored
      	Fixed bug 4986 (Open in <n> new windows disabled)
      
      	* src/file-manager/fm-directory-view.c: (real_update_menus):
      	An == should have been a !=
      
      	Fixed bug 3510 (The Back and Forward right-click menus are
      	missing)
      
      	* src/nautilus-shell-ui.xml: Replaced toolitem nodes for
      	"Back" and "Forward" with control nodes for their wrappers.
      	Have to do a lot of stuff manually for non-standard Bonobo
      	buttons.
      
      	* src/nautilus-window-private.h: Store back_button_item and
      	forward_button_item in details.
      
      	* src/nautilus-window-toolbars.c:
      	Removed #ifdef UIH brackets around right-click menu code.
      	(get_back_button), (get_forward_button): Helper functions to
      	get the GtkButton widgets from the stored BonoboUIToolbarButtonItems.
      	(back_or_forward_button_pressed_callback): Renamed from ..._clicked_...,
      	since it's a handler for button_press_event. Compare for Back or
      	Forward button a newfangled way.
      	(back_or_forward_button_clicked_callback): New function, callback
      	from button's "clicked" handler now that Bonobo doesn't handle this
      	for us.
      	(get_file_name_from_icon_name): New function extracted from
      	set_up_button; gets the full file path from the leaf icon "name".
      	(set_up_standard_bonobo_button): Renamed from "set_up_button",
      	now calls get_file_name_from_icon_name.
      	(get_pixbuf_for_xml_node): New function, calls Bonobo utility code
      	to get the pixbuf from an xml button node.
      	(set_up_special_bonobo_button): New function, parallel to
      	set_up_standard_bonobo_button but handles the case where you have
      	a BonoboUIToolbarButtonItem in hand.
      	(set_up_toolbar_images): Call set_up_special_bonobo_button for the
      	Back and Forward items; put the bonobo freeze/thaw here instead of
      	where it was before in set_up_button.
      	(set_widget_for_bonobo_control): New function, extracted from
      	nautilus_window_initialize_toolbars, handles attaching a widget to
      	a Bonobo control defined in the XML file.
      	(set_up_back_or_forward_tool_bar_item): New function, creates
      	widget, wraps it in control, and wires up signal handlers.
      	(nautilus_window_initialize_toolbars): Call set_up_toolbar_images
      	only after Back/Forward buttons are created; create Back/Forward
      	buttons and use new helper functions.
      
      	* src/nautilus-window.c:
      	(nautilus_window_allow_back), (nautilus_window_allow_forward):
      	Set sensitivity of Back/Forward buttons explicitly.
      3082c19c
    • Mike Engber's avatar
      Keep the desktop from creating sidebar panels (it still has the sidebar) - · b62c6432
      Mike Engber authored
      
      	* src/nautilus-window.c: (nautilus_window_constructed),
      	(update_sidebar_panels_from_preferences):
      	Keep the desktop from creating sidebar panels (it still
      	has the sidebar) - bug 2603.
      b62c6432
  17. 05 Dec, 2000 1 commit
    • Darin Adler's avatar
      reviewed by: Maciej Stachowiak <mjs@eazel.com> · c493b509
      Darin Adler authored
      	* libnautilus-extensions/Makefile.am: Add ESD flags and library
      	since we are now using it. Without this change, I couldn't link.
      
      	* libnautilus-extensions/nautilus-icon-container.c:
      	(redo_layout_internal), (redo_layout_callback),
      	(unschedule_redo_layout), (schedule_redo_layout), (relayout): Get
      	rid of some circular logic in relayout (now called redo_layout)
      	and made nice calls to cleanly schedule the idle function to redo
      	layout.
      	(size_allocate): Make sure we redo layout if this is the first
      	allocate, since we have inhibited them up to this point.
      	(nautilus_icon_container_initialize): Get rid of unnecessary
      	initialization of things that are already 0, NULL, FALSE.
      	(finish_adding_new_icons): Remove unnecessary check for NULL.
      	(nautilus_icon_container_add): Use the new schedule_redo_layout.
      	(nautilus_icon_container_remove): Use schedule_redo_layout instead
      	of redoing the layout right away, since this can be called for
      	many icons at a time and we want to bunch up the layout work.
      	(nautilus_icon_container_request_update): Schedule a redo_layout
      	any time an icon changes. We could get fancy and detect changes
      	that are substantive if this does too much extra layout work.
      	(nautilus_icon_container_set_zoom_level): Removed extraneous
      	direct call to redo_layout after the request_update_all call.
      
      	* src/nautilus-window.c: (menu_bar_no_resize_hack_class_free),
      	(menu_bar_no_resize_hack): Tweak function name and formatting.
      	(nautilus_window_constructed): Do a little bit less sidebar setup
      	when making a desktop window.
      
      	* libnautilus-extensions/nautilus-sound.c: Tweak (has nice side
      	effect of forcing recompile).
      c493b509
  18. 01 Dec, 2000 1 commit
  19. 30 Nov, 2000 1 commit
    • Darin Adler's avatar
      reviewed by: Pavel Cisler <pavel@eazel.com> · fcb7d412
      Darin Adler authored
      	Fixed some problems with callbacks that are left around after
      	the object is destroyed.
      
      	* src/nautilus-window-manage-views.h:
      	* src/nautilus-window-manage-views.c:
      	(viewed_file_changed_callback): Changed to be a normal callback,
      	not a "connect_object" callback, and simplified the logic.
      	(cancel_viewed_file_changed_callback): Added a function to cancel
      	the callback, which is needed both when the window is destroyed
      	and when the viewed file changes.
      	(update_for_new_location): Cancel the old callback before setting
      	up the new one so we don't leave behind callbacks for old locations.
      	Also use the new nautilus_window_set_viewed_file function so the
      	callbacks set up in nautilus-window.c can be managed properly.
      	(free_location_change): Moved part of
      	nautilus_window_free_load_info in here. This function frees all
      	the stuff that's used in the location change process; shared by
      	destroy and "cancel" code. Also fixed a bug where it wouldn't free
      	the "erro...
      fcb7d412
  20. 16 Nov, 2000 1 commit
    • Mike Engber's avatar
      fixed some comments · aa98d4e2
      Mike Engber authored
      
      	* libnautilus-extensions/nautilus-directory-background.c:
      	(nautilus_file_background_event_filter):
      	fixed some comments
      
      	* libnautilus-extensions/nautilus-gtk-extensions.c:
      	(container_foreach_deep_callback),
      	(nautilus_gtk_container_foreach_deep):
      	* libnautilus-extensions/nautilus-gtk-extensions.h:
      	added nautilus_gtk_container_foreach_deep
      
      	* src/nautilus-window.c: (menu_bar_no_resize_hack_size_allocate),
      	(menu_bar_no_resize_hack_menu_bar_finder),
      	(menu_bar_no_resize_hack_atexit), (menu_bar_no_resize_hack),
      	(nautilus_window_constructed):
      	added hack to prevent criticals when using the desktop
      	bug 4345
      aa98d4e2
  21. 14 Nov, 2000 1 commit
    • Pavel Cisler's avatar
      reviewed by: Darin Adler <darin@eazel.com> · b7c2daf9
      Pavel Cisler authored
      2000-11-13  Pavel Cisler  <pavel@eazel.com>
      
      	reviewed by: Darin Adler <darin@eazel.com>
      
      	* configure.in:
      	Enable the sign-compare and cast-align warnings.
      
      	* components/help/converters/gnome-db2html2/gdb3html.c:
      	(find_first_element):
      	* components/help/hyperbola-filefmt.c: (fmt_free_tree_info):
      	* components/help/hyperbola-nav-index.c:
      	(hyperbola_navigation_index_update_clist), (despace),
      	(end_element):
      	* components/history/nautilus-history-view.c:
      	(history_load_location):
      	* components/mozilla/nautilus-mozilla-content-view.c:
      	(string_list_get_index_of_string):
      	* components/services/install/lib/eazel-install-corba-types.c:
      	(corba_string_sequence_to_glist),
      	(corba_packagedatastructlist_from_packagedata_list),
      	(packagedata_list_from_corba_packagedatastructlist),
      	(categorydata_list_from_corba_categorystructlist):
      	* components/services/install/lib/eazel-install-query.c:
      	(eazel_install_simple_rpm_query):
      	* components/services/install/lib/eazel-install-rpm-glue.c:
      	(eazel_install_monitor_rpm_process_pipe):
      	* components/services/install/lib/eazel-install-rpm-signature.c:
      	(read_rpm_lead), (read_rpm_signature):
      	* components/services/trilobite/libtrilobite/trilobite-root-helper.
      	c: (trilobite_root_helper_run_program),
      	(trilobite_root_helper_set_time):
      	* cut-n-paste-code/widgets/nautilusclist/nautilusclist.c:
      	(nautilus_clist_get_arg), (nautilus_clist_construct):
      	* helper-utilities/authenticate/nautilus-authenticate.c: (main):
      	* libnautilus-extensions/nautilus-background.c:
      	(set_image_and_color_image_loading_done_callback):
      	* libnautilus-extensions/nautilus-buffered-widget.c:
      	(nautilus_gdk_pixbuf_tile_alpha):
      	* libnautilus-extensions/nautilus-caption-table.c:
      	(entry_activate):
      	* libnautilus-extensions/nautilus-caption-table.h:
      	* libnautilus-extensions/nautilus-ctree.c:
      	(nautilus_ctree_node_nth), (nautilus_ctree_drag_motion):
      	* libnautilus-extensions/nautilus-ctree.h:
      	* libnautilus-extensions/nautilus-directory-async.c:
      	(metafile_write):
      	* libnautilus-extensions/nautilus-file-changes-queue.c:
      	(nautilus_file_changes_consume_changes):
      	* libnautilus-extensions/nautilus-file-operations-progress.c:
      	(truncate_string_from_start):
      	* libnautilus-extensions/nautilus-file-operations.c:
      	(extract_string_until):
      	* libnautilus-extensions/nautilus-file-utilities.c:
      	(nautilus_read_entire_file):
      	* libnautilus-extensions/nautilus-gdk-extensions.c:
      	(nautilus_get_largest_fitting_font):
      	* libnautilus-extensions/nautilus-global-preferences.c:
      	(global_preferences_get_sidebar_panel_view_identifiers):
      	* libnautilus-extensions/nautilus-gtk-extensions.c:
      	(nautilus_gtk_window_set_initial_geometry_from_string),
      	(nautilus_gtk_menu_set_item_visibility):
      	* libnautilus-extensions/nautilus-icon-canvas-item.c:
      	(draw_or_measure_label_text), (draw_or_measure_label_text_aa):
      	* libnautilus-extensions/nautilus-icon-container.c:
      	(rubberband_timeout_callback), (destroy), (compute_stretch):
      	* libnautilus-extensions/nautilus-icon-container.h:
      	(nautilus_icon_container_find_drop_target):
      	* libnautilus-extensions/nautilus-icon-factory.c:
      	(check_recently_used_list), (get_themed_icon_file_path),
      	(revise_scale_factors_if_too_big):
      	* libnautilus-extensions/nautilus-icon-text-item.c:
      	(recompute_bounding_box), (iti_draw), (iti_selection_motion):
      	* libnautilus-extensions/nautilus-label.c:
      	(nautilus_label_size_allocate), (label_recompute_line_geometries):
      	* libnautilus-extensions/nautilus-list.c: (draw_cell),
      	(nautilus_list_drag_data_received):
      	* libnautilus-extensions/nautilus-mime-actions.c:
      	(server_matches_content_requirements),
      	(nautilus_do_component_query):
      	* libnautilus-extensions/nautilus-password-dialog.c:
      	(caption_table_activate_callback):
      	* libnautilus-extensions/nautilus-preferences-item.c:
      	(has_image_file):
      	* libnautilus-extensions/nautilus-scalable-font.c:
      	(file_as_string), (parse_font_description_file),
      	(nautilus_text_layout_new):
      	* libnautilus-extensions/nautilus-scalable-font.h:
      	* libnautilus-extensions/nautilus-volume-monitor.c:
      	(check_permissions):
      	* libnautilus/nautilus-view.c:
      	(nautilus_shallow_g_list_from_uri_list):
      	* libnautilus/nautilus-zoomable.c:
      	(nautilus_g_list_from_ZoomLevelList):
      	* librsvg/rsvg-ft.c: (rsvg_ft_measure_or_render_string):
      	* librsvg/rsvg.c: (rsvg_parse_transform):
      	* src/file-manager/fm-icon-view.c:
      	(fm_icon_view_create_background_context_menu_items),
      	(get_sort_criterion_by_metadata_text), (get_sort_criterion_by_id):
      	* src/file-manager/fm-list-view.c: (select_row_common),
      	(select_matching_name_callback), (select_previous_next_common),
      	(fm_list_view_bump_zoom_level):
      	* src/nautilus-search-bar-criterion.c:
      	(nautilus_search_bar_criterion_update_valid_criteria_choices):
      	* src/nautilus-shell.c: (corba_open_windows),
      	(corba_open_default_window):
      	* src/nautilus-sidebar.c: (nautilus_sidebar_add_panel_items):
      	* src/nautilus-window-menus.c:
      	(nautilus_window_disable_keyboard_navigation_for_menus):
      	* src/nautilus-window.c: (nautilus_window_size_request):
      	Fix all sign-compare violations.
      b7c2daf9
  22. 13 Nov, 2000 1 commit
    • Maciej Stachowiak's avatar
      reviewed by: Pavel Cisler <pavel@eazel.com> · 4dfaa364
      Maciej Stachowiak authored
      	* components/adapter/nautilus-adapter-progressive-load-strategy.c:
      	Increased chunk-size to 32k in an unsuccesful attempt to improve
      	the situation with regards to fix bug 3256 (attempt to view huge
      	text file is very slow). It did not help which leads me to believe
      	the problem is with the way the text control handles progressive
      	updates.
      
      	Fix bug 2180 (switching from icon view to list view, the zoom
      	control disappears and then reappears).
      
      	* src/nautilus-window-manage-views.c (load_content_view,
      	zoom_level_changed_callback): Don't show and hide the zoom control
      	at various times. Instead, let
      	`nautilus_window_set_content_view_widget' establish the right
      	visibility state when we finally enable the widget. This way, the
      	zoom control won't ever disappear and reappear when switching
      	between two different zoomable views.
      	* src/nautilus-window.c (nautilus_window_set_content_view_widget):
      	Set the zoom control to the right visibility state when setting
      	the new widget.
      4dfaa364
  23. 04 Nov, 2000 3 commits
    • Darin Adler's avatar
      Fixed bug 4483 (Crash while navigating in Vault). · d1a2cef5
      Darin Adler authored
      	* src/nautilus-window.c: (nautilus_window_set_content_view_widget):
      	Remove the idle with gtk_idle_remove, not gtk_timeout_remove.
      
      	* src/file-manager/fm-directory-view.c:
      	(fm_directory_view_destroy): Removed the check since it was giving
      	false alarms and not helping us for real.
      d1a2cef5
    • Darin Adler's avatar
      Lets call the main branch "Nautilus", not "Nautilus Preview Release 2". · ea16d41a
      Darin Adler authored
      	* src/nautilus-shell.c: (display_caveat): Lets call the main
      	branch "Nautilus", not "Nautilus Preview Release 2". Later we
      	should change the caveat for cvs to be worded differently too.
      
      	* src/nautilus-window.c: (nautilus_window_constructed),
      	(nautilus_window_set_arg), (nautilus_window_get_arg),
      	(nautilus_window_set_content_view_widget): Fixed spaces removed
      	by the script (forgot to save this file before committing before).
      ea16d41a
    • Darin Adler's avatar
      Tell everyone that we are back on bonobo HEAD. Make sure Nautilus doesn't · a96c73cb
      Darin Adler authored
      	* README: Tell everyone that we are back on bonobo HEAD.
      	* configure.in: Make sure Nautilus doesn't try to compile with the
      	old bonobo.
      
      	* components/adapter/nautilus-adapter-embed-strategy.c:
      	(nautilus_adapter_embed_strategy_get):
      	* components/adapter/nautilus-adapter-load-strategy.c:
      	(nautilus_adapter_load_strategy_get):
      	* components/adapter/nautilus-adapter-progressive-load-strategy.c:
      	(nautilus_adapter_progressive_load_strategy_load_location):
      	* components/history/nautilus-history-view.c:
      	(history_view_frame_call_begin):
      	* libnautilus/nautilus-undo.c: (set_up_bonobo_control):
      	* libnautilus/nautilus-view.c: (view_frame_call_begin):
      	* libnautilus/nautilus-zoomable.c:
      	(nautilus_zoomable_ensure_zoomable_frame):
      	Fix all the callers of query_interface in CORBA to call it
      	queryInterface (I used the Bonobo script to do it).
      
      	* src/nautilus-window.h:
      	* src/nautilus-window.c: (nautilus_window_constructed),
      	(nautilus_window_set_arg), (nautilus_window_get_arg),
      	(nautilus_window_set_content_view_widget): Update for BonoboWin ->
      	BonoboWindow change. Once again, the change was done by the Bonobo
      	script (but I had to undo the spaces it ate after BONOBO_WIN).
      
      	* components/services/install/idl/trilobite-eazel-install.idl:
      	* components/services/time/idl/trilobite-eazel-time-service.idl:
      	* components/services/trilobite/idl/trilobite-service.idl:
      	* components/services/trilobite/sample/idl/sample-service.idl:
      	* libnautilus-adapter/nautilus-adapter-factory.idl:
      	* libnautilus/nautilus-distributed-undo.idl:
      	* libnautilus/nautilus-view-component.idl:
      	Since IDL dependencies don't work, I touched every IDL file to
      	make the switchover smoother. This only works if people update
      	before they try to build and fail, otherwise they need to do:
      		find -name '*.xml' | xargs touch
      	(Maciej and I want to add dependency support to orbit-idl to make
      	this problem go away long term).
      
      	* src/nautilus-desktop-window.c: (realize):
      	The script updated this comment to, so I let it.
      
      	* user-guide/C/Makefile.am: Took out the botched change I made to
      	this file. Mathieu did the correct one.
      a96c73cb
  24. 01 Nov, 2000 3 commits
    • Ramiro Estrugo's avatar
      Keep track of NautilusWindow realization events. Do this by monitoring a · 8f40ddef
      Ramiro Estrugo authored
      	* applets/launcher/nautilus-launcher-applet.c: (image_enter_event),
      	(window_set_cursor_for_state), (set_is_launching),
      	(get_is_launching), (image_button_press_event),
      	(image_button_release_event), (event_filter),
      	(root_listen_for_property_changes), (main):
      	Keep track of NautilusWindow realization events.  Do this by
      	monitoring a property on the root window.  Use this flag in order
      	to give the user feedback about the launching state of new
      	Nautilus windows.  Fixes bug 4300.
      
      	* src/nautilus-window.c: (nautilus_window_update_launcher),
      	(nautilus_window_realize):
      	Notify the launcher when a NautilusWindow get realized.
      
      	* src/run-nautilus:
      	If no arguments are given, then open a window pointed to the
      	user's home directory.
      8f40ddef
    • Maciej Stachowiak's avatar
      Un-revert my changes from before, fixing the bugs in the process. · 0bda5d31
      Maciej Stachowiak authored
      	* 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.
      0bda5d31
    • Mathieu Lacage's avatar
      fix bug 4015. add correct default here. remove bad default here. ramiro · 7e043440
      Mathieu Lacage authored
      2000-10-31  Mathieu Lacage  <mathieu@eazel.com>
      
      	fix bug 4015.
      	* libnautilus-extensions/nautilus-global-preferences.c:
      	add correct default here.
      	* src/nautilus-window.c: (nautilus_window_go_web_search):
      	remove bad default here. ramiro has a bug to do the correct
      	fix post-pr2.
      7e043440
  25. 31 Oct, 2000 3 commits
    • Robin Slomkowski's avatar
      set the url to fix 4015 but it does not Nautilus attempts to connect to · 7945221a
      Robin Slomkowski authored
      	* src/nautilus-window.c: set the url to fix 4015
      	but it does not Nautilus attempts to connect to the
      	wrong URL. http://www.eazel.com/websearch instead of
      	http://services.eazel.com/websearch
      7945221a
    • J Shane Culpepper's avatar
      backing out changes that caused a seroius regression in services. · 61158336
      J Shane Culpepper authored
      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.
      61158336
    • Maciej Stachowiak's avatar
      Portions of the fix for 2379 (the parts that don't make it crash). · d81e04f3
      Maciej Stachowiak authored
      	* 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).
      d81e04f3
  26. 27 Oct, 2000 1 commit
    • Darin Adler's avatar
      Fixed bugs in file renaming. These changes along with the · b2535f91
      Darin Adler authored
      	gnome-vfs ones take care of bug 3846 (cancel dialog persists after
      	renaming online storage folder).
      
      	* libnautilus-extensions/nautilus-file.c:
      	(nautilus_file_get_gnome_vfs_uri): Moved higher so it could be
      	used by rename code.
      	(operation_remove): Separated out the remove operation so we can
      	remove the operation before the callback. This makes it safe to
      	do a nautlius_file_cancel from inside a callback.
      	(operation_free): Call the separate remove. Also cut down because
      	we don't need so much state in the operation object any more.
      	(operation_complete): Call remove before calling callback as
      	described above.
      	(rename_callback): A new callback that uses set_file_info results
      	instead of the old one that used xfer.
      	(nautilus_file_rename): Change to use set_file_info instead of
      	xfer. Also updates the MIME type now, which will fix a bug I
      	think.
      	(nautilus_file_update_info): Use gnome_vfs_file_info_dup instead
      	of gnome_vfs_file_info_ref so it works with any info, including
      	static ones on the stack.
      	(set_permissions_callback), (nautilus_file_set_permissions),
      	(set_owner_and_group_callback), (set_owner_and_group): Change to
      	use the info returned by the async. set_file_info. This simplifies
      	things a lot.
      
      	* src/file-manager/fm-error-reporting.c: (rename_callback),
      	(cancel_rename_callback), (cancel_rename), (fm_rename_file):
      	Rewrote renaming code. Use object data to keep track of pending
      	renames so we can cancel a previous one if we try to re-rename the
      	same file again. This allowed the code to get a lot simpler too.
      
      	* libnautilus-extensions/nautilus-directory-async.c:
      	(directory_load_done): Fixed bug that prevented the directory from
      	ever noticing files that are no longer around. This code never
      	worked because we checked for the wrong error code (EOF means
      	success here).
      
      	* po/Makefile.in.in: Re-removed this file. Seth checked it in by
      	accident. This is a generated file, not one that should be checked
      	in.
      
      	* src/nautilus-window.c: (nautilus_window_realize): Got rid of
      	"//"-style comments and used #if 0 instead.
      
      	* components/loser/content/nautilus-content-loser-ui.xml.h:
      	* components/loser/sidebar/nautilus-sidebar-loser-ui.xml.h:
      	* components/mozilla/nautilus-mozilla-ui.xml.h:
      	* components/sample/nautilus-sample-content-view-ui.xml.h:
      	* components/services/summary/nautilus-view/nautilus-summary-view-ui.xml.h:
      	* libnautilus/nautilus-clipboard-ui.xml.h:
      	* 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-service-ui.xml.h:
      	* src/nautilus-shell-ui.xml.h:
      	Someone checked in some .xml.h files generated with an old
      	Bonobo. Soon, this nightmare will be over and we won't check these
      	files in any more.
      b2535f91