Commit graph

558 commits

Author SHA1 Message Date
Maciej Stachowiak a68a7e1f2d Handle a QI failure properly, fixing bugzilla.eazel.com 2545.
* libnautilus/nautilus-view.c (view_frame_call_begin,
	view_frame_call_end): Handle a QI failure properly, fixing
	bugzilla.eazel.com 2545.
2000-09-11 03:32:05 +00:00
Maciej Stachowiak f21ce7ec9c Fix makefile problem
* libnautilus/Makefile.am: Fix makefile problem
2000-09-07 02:28:24 +00:00
Maciej Stachowiak abdbe66a4c New IDL interface for the special adapter component that will be used to
* libnautilus-adapter/nautilus-adapter-factory.idl: New IDL
	interface for the special adapter component that will be used to
	wrap ordinary Bonobo components to look like Nautilus::Views as
	part of the solution to bugzilla.eazel.com #1994.
	* libnautilus-adapter/Makefile.am: Build a library containing the
	stubs and sekeletons.

	* libnautilus/nautilus-view-component.idl: Some changes so this
	IDL file can be included in others safely.
	* libnautilus/Makefile.am: Made necessary build adjustments for
	the above.

	* configure.in, Makefile.am: add libnautilus-adapter directory to
	build.
2000-09-07 00:57:04 +00:00
Darin Adler 307bafbb3f Added checks in Nautilus to guarantee we will notice leaks
of UI handlers in the future.

	The check will fire unless you get new Bonobo, since I just fixed
	a UI handler leak bug in Bonobo.

	* src/nautilus-window.c: (nautilus_window_real_set_content_view):
	Added code to check for a still-merged Open menu item in the file
	menu. This will catch leaks of UI handlers fairly quickly, instead
	of the traditional way we discover them, after long debugging
	sessions.

	* components/history/nautilus-history-view.c:
	(history_view_frame_call_end):
	* libnautilus-extensions/nautilus-undo-manager.c:
	(release_transaction), (nautilus_undo_manager_undo):
	* libnautilus/nautilus-clipboard.c: (add_menu_items_callback):
	* libnautilus/nautilus-undo.c: (undo_manager_unref_cover),
	(nautilus_undo_attach_undo_manager):
	* libnautilus/nautilus-view.c: (view_frame_call_end):
	* src/file-manager/fm-directory-view.c:
	(bonobo_control_activate_callback):
	* src/nautilus-application.c: (nautilus_application_startup):
	* src/nautilus-view-frame-bonobo-embeddable.c:
	(bonobo_subdoc_load_location):
	* src/nautilus-view-frame-nautilus-view.c:
	(nautilus_view_try_load_client):
	* src/nautilus-view-frame.c: (nautilus_view_frame_destroy_client),
	(nautilus_view_frame_load_client):
	Use bonobo_object_dup_ref and bonobo_object_release_unref to
	simplify some code.

	* components/loser/content/nautilus-content-loser.c:
	(loser_merge_bonobo_items_callback):
	* components/loser/sidebar/nautilus-sidebar-loser.c:
	(loser_merge_bonobo_items_callback):
	* components/mozilla/nautilus-mozilla-content-view.c:
	(mozilla_merge_bonobo_items_callback):
	* components/sample/nautilus-sample-content-view.c:
	(sample_merge_bonobo_items_callback):
	Add missing unref to avoid leaking a UI handler.

	* components/services/time/nautilus-view/trilobite-eazel-time-view.c:
	Remove a bunch of code inside #if 0, which had out of date copies
	of the sample code. I decided this was better than trying to fix
	it.
2000-09-06 17:08:09 +00:00
John Sullivan 75d9047c7c Added more bug numbers to FIXMEs. 49 to go.
* components/services/install/lib/eazel-install-rpm-glue.c:
	(eazel_uninstall_downward_traverse):
	* libnautilus-extensions/nautilus-merged-directory.c:
	(nautilus_merged_directory_add_real_directory):
	* libnautilus-extensions/nautilus-mime-actions.c:
	(make_oaf_query_with_known_mime_type),
	(make_oaf_query_with_uri_scheme_only):
	* libnautilus-extensions/nautilus-preferences.c:
	(nautilus_preferences_set_string_list):
	* libnautilus-extensions/nautilus-program-chooser.c:
	(program_file_pair_compute_status), (get_supertype_from_file):
	* libnautilus-extensions/nautilus-scalable-font.c:
	(nautilus_scalable_font_measure_text):
	* libnautilus/nautilus-view.c: (view_frame_call_begin):
	* nautilus-installer/src/support.c: (create_pixmap),
	(create_image):
	* src/file-manager/fm-desktop-icon-view.c: (create_mount_link),
	(volume_unmounted_callback), (place_home_directory):
	* src/file-manager/fm-icon-view.c: (get_next_position),
	(play_file), (get_icon_text_callback):
	* src/file-manager/fm-list-view.c: (fm_list_view_initialize),
	(create_list), (fm_list_view_set_zoom_level),
	(fm_list_view_font_family_changed):
	* src/file-manager/nautilus-indexing-info.c:
	(nautilus_indexing_info_show_dialog):
	* src/nautilus-application.c: (nautilus_application_startup):
	* src/nautilus-first-time-druid.c:
	(next_proxy_configuration_page_callback), (initiate_file_download):
	* src/nautilus-property-browser.c: (add_background_to_browser):
	* src/nautilus-shell.c:
2000-08-29 16:28:58 +00:00
John Sullivan 59d386e7cc More work on bug 1653 (new menu layout). Now there's a
permanent "View" menu that contains Refresh and zooming
	items and the icon view merges its stuff in there. The
	icon view now has a "Clean Up by Name" item to do a
	one-shot sort of icons in manual layout mode.

	* libnautilus-extensions/nautilus-icon-container.c:
	(key_press_event):
	* libnautilus-extensions/nautilus-list.c:
	(nautilus_list_key_press):
	Don't use any control-key combinations for type-select
	(this was blocking Control-= and others)

	* libnautilus/nautilus-bonobo-ui.h: Added #defines for View menu
	and placeholders in it.

	* src/file-manager/fm-desktop-icon-view.c:
	(fm_desktop_icon_view_initialize_class), (bump_zoom_level),
	(zoom_to_level), (restore_default_zoom_level), (can_zoom_in),
	(can_zoom_out): Override all zoom-related functions to do
	nothing, so you can't use keyboard equivalents or other trickery
	to zoom on the desktop.

	* src/file-manager/fm-icon-view.h:
	Define clean_up function pointer
	* src/file-manager/fm-icon-view.c:
	(set_sort_criterion): Just moved this function.
	(fm_icon_view_clean_up): New function, calls virtual function.
	(fm_icon_view_real_clean_up): New function, sorts one time by name.
	(clean_up_callback): New function, calls fm_icon_view_clean_up
	(compute_menu_item_info): Add clean up case
	(update_layout_menus): Update sensitivity of Clean Up item
	(get_next_position): New helper function to get a position for
	a Bonobo menu item based on the one you want to be after. Works
	around Bonobo bug where the last item's position is reported as -1.
	(fm_icon_view_merge_menus): Deploy get_next_position; get rid of
	Layout menu and redo items in View menu to match design in bug 1653.
	(fm_icon_view_initialize_class): Wire up clean_up function pointer

	* src/nautilus-window-menus.c:
	(view_menu_reload_callback): Renamed from go_menu_reload_callback
	(view_menu_zoom_in_callback), (view_menu_zoom_out_callback),
	(view_menu_zoom_normal_callback): New functions, used by zooming menu
	items.
	(nautilus_window_initialize_menus): Add View menu; move Reload to
	View menu and rename it Refresh; add zooming menu items.
	* src/nautilus-window-private.h: Add #defines for zooming menu item paths;
	add prototypes for nautilus_window_zoom_xxx functions.
	* src/nautilus-window.c:
	(nautilus_window_zoom_in),
	(nautilus_window_zoom_to_level), (nautilus_window_zoom_out),
	(nautilus_window_zoom_to_fit): Renamed these to better match new
	shared-between-files status, and reordered the parameters.
	(nautilus_window_constructed): use gtk_signal_connect_object with
	nautilus_window_zoom functions since their parameters have flipped.
	(nautilus_window_zoom_level_changed_callback): Set sensitivity of
	zooming menu items appropriately.
	* src/nautilus-window-manage-views.c:
	(nautilus_window_load_content_view): Desensitize the zoom menu items
	when we hide the zoom control.

	* src/file-manager/fm-directory-view.c:
	(fm_directory_view_real_create_background_context_menu_items):
	Change "Zoom to Default" to "Normal Size" in the context menu,
	to match terminology in View menu.
	* src/nautilus-window-toolbars.c: Rename Reload to Refresh to match
	menu item & new design
2000-08-24 00:39:30 +00:00
John Sullivan c23deec648 More work on bug 1653 (new menu layout)
Fixed bug 1995 (No way to enter/leave search mode from keyboard)
	Fixed bug 1999 (No way to reload from keyboard)

	* libnautilus/nautilus-bonobo-ui.h: Added more placeholders.
	* src/file-manager/fm-directory-view.c:
	(fm_directory_view_real_merge_menus): Position "Empty Trash"
	menu item and separator using placeholder.
	* src/file-manager/fm-icon-view.c: (compute_menu_item_info):
	Fixed bug where "Restore Icon's Original Size" was using the
	wrong plurality.
	(insert_bonobo_menu_item): Renamed this from append_ and gave
	it a position parameter.
	(fm_icon_view_merge_menus): Used placeholders to put the menu
	items in the order specified by bug 1653.
	* src/nautilus-switchable-navigation-bar.h:
	* src/nautilus-switchable-navigation-bar.c:
	(nautilus_switchable_navigation_bar_get_mode): New function;
	formerly there was a public setter but no public getter.
	* src/nautilus-window-menus.c:
	(file_menu_close_window_callback): Removed redundant assert.
	(file_menu_toggle_find_mode_callback): New function, toggles
	whether we're in search mode.
	(go_menu_reload_callback): New function, reloads.
	(nautilus_window_initialize_menus): Tweaked hint for "Close All Windows",
	added Find/Browse menu item; Changed "Up" to "Up a Level" to
	match bug 1653; added "Reload" to Go menu.
	(nautilus_window_update_find_menu_item): New function, sets the
	label of the Find/Browse menu item based on search mode's state.
	* src/nautilus-window-private.h: added #define for
	NAUTILUS_MENU_PATH_RELOAD_ITEM; added prototype for
	nautilus_window_update_find_menu_item.
	* src/nautilus-window-toolbars.c: Changed "Search" to "Find"
	to match menu item (and Arlo's design).
	* src/nautilus-window.h,
	* src/nautilus-window.c:
	(navigation_bar_mode_changed_callback): Update Find menu item.
	(nautilus_window_get_search_mode): New function; formerly there
	was a public setter but no public getter.
	(nautilus_window_allow_reload): Update menu item sensitivity.
2000-08-22 21:53:09 +00:00
Mathieu Lacage 66985d6b53 forgot this file in my last commit. 2000-08-19 06:11:08 +00:00
Mathieu Lacage 62ce8b92d1 completes task 1567. it shows a bug in the way the history view displays
2000-08-19  Mathieu Lacage  <mathieu@eazel.com>

        completes task 1567. it shows a bug in the way the history
        view displays the current location given the history. to be
	fixed soon.

        * components/history/nautilus-history-view.c:
        (history_load_location), (history_title_changed), (make_obj):
        add title_changed_callback, connect it to changed_title signal.
        make it call load_location.
        Hack evil stuff in load_location: a hand-made lock because the
        function calls some gtk calls which seem to make the main loop
		run at least once. This allowed the main loop to use the events
	in the event queue and it happened that the title_changed signal
	is usually emited more than once so it called again the
	non-reentrant signal callback... BAD THINGS HAPPENED.


	* libnautilus/nautilus-view-component.idl: add changed_title method
	to Nautilus::View.
	* libnautilus/nautilus-view.c: (impl_Nautilus_View_title_changed),
	(nautilus_view_initialize_class): implement the new idl function and
	add a signal for it.
        * libnautilus/nautilus-view.h: add the new signal class method.


        * src/nautilus-view-frame-bonobo-control.c: add the title_changed
        field to the vtable.
        * src/nautilus-view-frame-nautilus-view.c: (title_changed): idem.
        * src/nautilus-view-frame-private.h: idem.
        * src/nautilus-view-frame.c: (nautilus_view_frame_title_changed):
        add api function to emit the signal and make the actual corba call.
        * src/nautilus-view-frame.h: add function prototype.
        * src/nautilus-window-manage-views.c: add calls to
        (nautilus_window_update_title): to notify view frames of changed
	titles.
2000-08-19 05:44:53 +00:00
John Sullivan 298b6cc9a7 More work on bug 1750 ("Reveal in New Window" feature for
search results). Now it opens a new window with the right
	item selected. The only remaining work is to make the new
	window scroll as necessary to reveal the item.

	Along the way, fixed an unreported bug where the selection
	wasn't being maintained on view switches.

	* libnautilus-extensions/nautilus-gtk-extensions.h:
	added #define for nautilus_gtk_marshal_NONE__STRING_POINTER.

	* libnautilus/nautilus-view-component.idl:
	Added open_in_new_window_and_select call.

	* libnautilus/nautilus-view.h,
	* libnautilus/nautilus-view.c:
	(nautilus_view_open_in_new_window_and_select):
	* src/nautilus-view-frame-corba.c:
	(impl_Nautilus_ViewFrame_open_location_in_new_window),
	(impl_Nautilus_ViewFrame_open_in_new_window_and_select):
	* src/nautilus-view-frame-private.h:
	* src/nautilus-view-frame.c:
	(nautilus_view_frame_initialize_class),
	(nautilus_view_frame_open_in_new_window_and_select):
	* src/nautilus-view-frame.h: Wired together the various
	pieces to get open_in_new_window_and_select across CORBA
	and into the view frame.

	* src/nautilus-window.h: added pending_selection field
	* src/nautilus-window-manage-views.h: added
	nautilus_window_open_in_new_window_and_select
	* src/nautilus-window.c:
	(nautilus_window_open_in_new_window_and_select_callback),
	(nautilus_window_connect_view): Wiring to connect view
	frame signals to window.
	(nautilus_window_destroy): free pending_selection
	* src/nautilus-window-manage-views.c:
	(nautilus_window_update_view): Changed call from
	nautilus_window_report_selection_changed to
	nautilus_view_frame_selection_changed. This was the source
	of the selection-not-preserved-across-view-changes bug.
	Darin came up with this fix.
	(open_location): Added a new_selection parameter to this
	bottleneck function. It is set as the pending_selection
	in the window.
	(nautilus_window_open_location),
	(nautilus_window_open_location_in_new_window),
	(nautilus_window_report_location_change): Update existing
	callers of open_location to pass NULL for new_selection parameter.
	(nautilus_window_open_in_new_window_and_select): New function,
	calls open_location with a selection (among other parameters).
	(nautilus_window_update_state): When loading a new location, set
	the location to pending_selection rather than NULL (and clear
	pending_selection later so it doesn't unnecessarily hang around).

	* src/file-manager/fm-search-list-view.c:
	(reveal_selected_items_callback):
	Call open_in_new_window_and_select instead of just
	open_location_in_new_window
2000-08-19 00:55:24 +00:00
Mathieu Lacage e308553c83 Cleans up the HistoryFrame : remove the History object and replaces it
2000-08-18  Mathieu Lacage  <mathieu@eazel.com>


	Cleans up the HistoryFrame : remove the History object
	and replaces it with HistoryList.
	* components/history/nautilus-history-view.c: (get_history_list),
	(history_load_location):
	* libnautilus/nautilus-view-component.idl:
	* src/nautilus-history-frame.c:
	* src/nautilus-view-frame.c:
	(nautilus_view_frame_get_history_list):
	* src/nautilus-view-frame.h:
	* src/nautilus-window.c:
	(nautilus_window_get_history_list_callback):
2000-08-18 20:49:32 +00:00
John Sullivan 425ec1016e More menu tweaking, including switching over to use
Bonobo "menu placeholders" for menu-merging components.

	Fixed bug 1859 (Need improved way to position added menu items)

	* libnautilus/nautilus-bonobo-ui.h:
	Removed all menu item paths except those we expect to
	be merged over (like "Select All"). Added new placeholder
	paths for components to use when merging instead of relying
	on the positions of specific menu items. Commented the intended
	use of each placeholder.

	* components/loser/content/nautilus-content-loser.c:
	(loser_merge_bonobo_items_callback):
	* components/loser/sidebar/nautilus-sidebar-loser.c:
	(loser_merge_bonobo_items_callback):
	* components/sample/nautilus-sample-content-view.c:
	(sample_merge_bonobo_items_callback):
	Updated menu-merging code to use placeholder paths.

	* src/file-manager/fm-directory-view.c:
	(reset_bonobo_trash_delete_menu), (reset_bonobo_open_with_menu),
	(fm_directory_view_real_merge_menus): Updated menu-merging code
	to use placeholder paths or to base positions off other
	directory view menu items. Added separator before Empty Trash.
	* src/file-manager/fm-directory-view.h: Updated #defines for
	directory view menu paths (some used by subclasses)

	* src/file-manager/fm-icon-view.c: (compute_menu_item_info):
	Change "Restore Icon to Unstretched Size" to "Restore Icon's
	Original Size" to match Arlo's wording (and similarly for
	the plural case)

	* src/nautilus-window-menus.c:
	Moved in the menu paths that were moved out of nautilus-bonobo-ui.h
	(append_placeholder): New function, wrapper for
	bonobo_ui_handler_menu_new_placeholder
	(nautilus_window_remove_bookmarks_menu_items),
	(refresh_dynamic_bookmarks), (append_static_bookmarks):
	Simplified logic of rebuilding bookmarks menu by
	using placeholder instead of details->last_static_bookmark_path.
	(nautilus_window_initialize_menus): Insert the placeholders defined
	in nautilus-bonobo-ui.h; add Control-/ for "About Nautilus" per Arlo.
	(nautilus_window_remove_go_menu_items),
	(refresh_go_menu): Use placeholder to position History menu items.
	* src/nautilus-window-private.h: Removed last_static_bookmark_path;
	moved #defines for back/forward/up menu paths here.
	* src/nautilus-window.c: (nautilus_window_destroy): Removed
	last_static_bookmark_path.

	Fixed bug 2166 (Clearing name field in Properties window doesn't work right)

	* src/file-manager/fm-properties-window.c:
	(name_field_update_to_match_file): Changed a char * to const char *
	for clarity.
	(name_field_restore_original_name): New function, restores the original
	contents of the name field, no questions asked.
	(name_field_done_editing): When handling empty-string case, use
	restore_original_name instead of update_to_match_file, which was too
	clever for this case.
2000-08-18 19:14:56 +00:00
Darin Adler 3685f79f91 Fixed bug 2210 (GNOME is referred to as Gnome in the about dialog). It was
* src/nautilus-window-menus.c: (help_menu_about_nautilus_callback):
	* libnautilus-extensions/nautilus-program-chooser.c:
	(nautilus_program_chooser_new),
	(nautilus_program_chooser_show_no_choices_message):
	Fixed bug 2210 (GNOME is referred to as Gnome in the about
	dialog).  It was in one other place too.

	* libnautilus/nautilus-view-component.idl:
	Fixed some comments.

	* libnautilus-extensions/nautilus-directory-private.h:
	* libnautilus-extensions/nautilus-directory-async.c:
	(dequeue_pending_idle_callback):
	* libnautilus-extensions/nautilus-directory.c:
	(nautilus_directory_emit_files_changed),
	(nautilus_directory_emit_change_signals_deep),
	(nautilus_directory_emit_metadata_changed),
	(call_files_changed_free_list),
	(call_files_changed_unref_free_list):
	* libnautilus-extensions/nautilus-file.c: (nautilus_file_changed):
	Separated out the call so you can emit a files_changed without
	also emitting a changed signal on each file.


	* libnautilus-extensions/nautilus-trash-directory.h:
	* libnautilus-extensions/nautilus-trash-directory.c:
	(trash_callback_remove_directory), (directory_ready_callback),
	(forward_files_added_cover), (forward_files_changed_cover),
	(nautilus_trash_directory_add_real_directory),
	(trash_callback_remove_directory_cover),
	(nautilus_trash_directory_remove_real_directory),
	(remove_all_real_directories),
	(fm_desktop_icon_view_discover_trash_callback),
	(add_one_writable_device), (get_trashable_volume_uris),
	(nautilus_trash_monitor_async_get_trash_directories):
	More trash work. A bunch is commented out. I'm doing this *so*
	slowly, but I need to check in at this point for Gene's sake.

	* libnautilus-extensions/nautilus-volume-monitor.h:
	* libnautilus-extensions/nautilus-volume-monitor.c:
	(nautilus_volume_monitor_initialize_class),
	(mount_device_activate), (mount_device_deactivate):
	Changed the signals to be both more useful and easier to use.

	* src/file-manager/fm-desktop-icon-view.c:
	(fm_desktop_icon_view_initialize):
	* src/file-manager/nautilus-trash-monitor.c:
	Moved 1/2-written trash code out of here.

	* HACKING: Spell checking.
2000-08-18 18:44:37 +00:00
Darin Adler 95b6ad0c7f More of the implementation of all the trash functions. About 1/3 done now.
* libnautilus-extensions/nautilus-trash-directory.c:
	(nautilus_trash_directory_initialize), (trash_destroy),
	(callback_hash), (callback_equal), (trash_contains_file),
	(call_when_ready_state_destroy),
	(call_when_ready_state_check_done), (directory_ready_callback),
	(trash_call_when_ready), (trash_cancel_callback),
	(trash_files_callback), (trash_file_monitor_add),
	(trash_file_monitor_remove), (trash_are_all_files_seen),
	(trash_is_not_empty): More of the implementation of all the
	trash functions. About 1/3 done now.

	* libnautilus-extensions/nautilus-icon-dnd.c:
	(nautilus_icon_container_free_drag_data):
	Use gtk_object_unref so it really gets rid of the object
	instead of gtk_object_destroy that doesn't free it.

	* libnautilus-extensions/nautilus-list.c: Reformatting.

	* libnautilus/nautilus-zoomable.c:
	(impl_Nautilus_Zoomable_zoom_out),
	(impl_Nautilus_Zoomable_zoom_to_fit),
	(impl_Nautilus_Zoomable__destroy),
	(impl_Nautilus_Zoomable__create),
	(nautilus_zoomable_initialize_class):
	Clean out some old cruft. More cleanup needed.

	* src/file-manager/fm-directory-view.c:
	(text_attribute_names_changed_callback),
	(embedded_text_policy_changed_callback),
	(image_display_policy_changed_callback),
	(directory_view_font_family_changed_callback),
	(click_policy_changed_callback),
	(anti_aliased_mode_changed_callback),
	(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): Use NAUTILUS_CALL_VIRTUAL.
	(fm_directory_can_move_to_trash): Fix handling of NULL directory.
	(new_folder_rename_later),
	(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_view_supports_properties),
	(fm_directory_view_update_menus): Use NAUTILUS_CALL_VIRTUAL.
	(fm_directory_view_get_uri): Handle NULL directory.

	* src/file-manager/fm-icon-view.c:
	(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):
	Use NAUTILUS_CALL_VIRTUAL.

	* 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):
	Use NAUTILUS_CALL_VIRTUAL.

	* src/nautilus-navigation-bar.c:
	(nautilus_navigation_bar_get_location),
	(nautilus_navigation_bar_set_location):
	Use NAUTILUS_CALL_VIRTUAL.

	* src/nautilus-view-frame-corba.c:
	(impl_Nautilus_ViewFrame__destroy):
	* src/nautilus-zoomable-frame-corba.c:
	(impl_Nautilus_ZoomableFrame__destroy),
	(impl_Nautilus_ZoomableFrame__create):
	Remove some unused code.
2000-08-16 02:37:44 +00:00
Gene Z. Ragan cb36670cef Fixed a bug where transaction)in_progress was always TRUE. This caused a
2000-08-05  Gene Z. Ragan  <gzr@eazel.com>

	* libnautilus-extensions/nautilus-undo-manager.c: (corba_append),
	(nautilus_undo_manager_undo):
	Fixed a bug where transaction)in_progress was always TRUE.
	This caused a g_warning to always be fired.  I guess no one
	noticed because we aren't exercising the undo code.

	* libnautilus/nautilus-undo-transaction.c:
	(remove_transaction_from_object),
	(nautilus_undo_transaction_add_atom),
	(nautilus_undo_transaction_add_to_undo_manager),
	(remove_atoms_cover),
	(nautilus_undo_transaction_unregister_object):
	Fixed bug 1984, crash when closing window after an undo operation.
	This crash is caused by a bogus transaction being left
	in the target objects transaction list.  An assert is thrown
	because the item in the list is not a transaction.  I suspect it
	is the sad remains of an unrefed transaciton that is still in
	the list somehow.  I made a work arund by checking before
	freeing, but need Darin's help to figure out the true cause.
2000-08-05 19:18:55 +00:00
Darin Adler deff23a86e Changed relayout so it will update the scroll region. This fixes bug 1907
* libnautilus-extensions/nautilus-icon-container.c: (relayout),
	(size_allocate), (finish_adding_new_icons),
	(nautilus_icon_container_set_zoom_level),
	(nautilus_icon_container_set_auto_layout):
	Changed relayout so it will update the scroll region. This fixes
	bug 1907 (layout options sometimes move icons out of window).

	* libnautilus/nautilus-clipboard.c: (add_menu_items_callback):
	Fix leak of remote UI handler. This fixes the rest of bug 1259,
	which was just a bug about the FIXME that said "remote UI handler
	leaks here, right?".

	* libnautilus-extensions/nautilus-directory-async.c: (lacks_info),
	(get_info_callback): Fixed infinite loop when you hit a file and
	you can't get info for it. Related to the bug Mike Fleming is
	looking at.
2000-08-05 02:18:44 +00:00
Mathieu Lacage e6378b2b81 fix build with new bonobo. fix build with new bonobo. fix build with new
2000-08-03  Mathieu Lacage  <set EMAIL_ADDRESS environment variable>

	* configure.in: fix build with new bonobo.
	* libnautilus-extensions/Makefile.am: fix build with new bonobo.
	* libnautilus/Makefile.am: fix build with new bonobo.
2000-08-03 18:47:48 +00:00
Mike Engber 2992c09990 Removed "Close Nautilus Desktop" from the desktop's right click menu.
* libnautilus/nautilus-bonobo-ui.h:
	* src/file-manager/fm-desktop-icon-view.c:
	(fm_desktop_icon_view_create_background_context_menu_items):
	* src/file-manager/fm-directory-view.c:
	(reset_bonobo_trash_delete_menu),
	(fm_directory_view_real_merge_menus):
	* src/file-manager/fm-directory-view.h:
	* src/nautilus-application.c:
	(nautilus_application_close_all_windows):
	* src/nautilus-application.h:
	* src/nautilus-window-menus.c:
	(file_menu_close_all_windows_callback),
	(nautilus_window_initialize_menus):
	Removed "Close Nautilus Desktop" from the desktop's
	right click menu. Removed "Exit" from the File menu.
	Added "Close All Windows" t the File menu. Bug# 1846
2000-08-01 23:22:07 +00:00
Andy Hertzfeld 2cadd3ec33 reorganized the menus. Added a user level menu and removed the settings
reorganized the menus.  Added a user level menu and removed the
	settings menu, moving remaining items to the bottom of the edit
	menu.  Added symbols to reflect the user levels, and made the
	menu use the symbol of the current level as it's title.
	Tweaked the text box for the eazel theme document icon, too.
2000-07-25 21:39:28 +00:00
Mike Engber 96835d3143 Changed desktop menu to offer close desktop instead of quit nautilus.
* libnautilus/nautilus-view-component.idl:
	* libnautilus/nautilus-view.c:
	* libnautilus/nautilus-view.h:
	* src/file-manager/fm-desktop-icon-view.c:
	(fm_desktop_icon_view_close_desktop_menu_item_callback),
	(fm_desktop_icon_view_create_background_context_menu_items):
	* src/file-manager/fm-directory-view.c:
	(fm_directory_view_close_desktop):
	* src/file-manager/fm-directory-view.h:
	* src/nautilus-application.c: (nautilus_application_windows),
	(nautilus_application_startup),
	(nautilus_application_destroy_desktop_window),
	(nautilus_application_create_desktop_window),
	(nautilus_application_open_desktop),
	(nautilus_application_close_desktop),
	(nautilus_application_destroy_window),
	(nautilus_application_create_window):
	* src/nautilus-application.h:
	* src/nautilus-desktop-window.c: (nautilus_desktop_window_new):
	* src/nautilus-shell.c: (corba_manage_desktop):
	* src/nautilus-view-frame-corba.c:
	(impl_Nautilus_ViewFrame_set_title):
	* src/nautilus-view-frame-private.h:
	* src/nautilus-view-frame.c:
	(nautilus_view_frame_initialize_class),
	(nautilus_view_frame_set_title):
	* src/nautilus-view-frame.h:
	* src/nautilus-window-manage-views.c: (open_location):
	* src/nautilus-window.c: (nautilus_window_connect_view):
	Changed desktop menu to offer close desktop instead of
	quit nautilus. Also, changed the menu item's action to
	use a direct fn call instead of CORBA.
2000-07-13 18:55:12 +00:00
Darin Adler 2d38a2d7fc My apologies to all who read the cvs commits list that have
suffered from my "spam" in the past (due to my use of emacs cvs
	mode to commit).  I will never use emacs cvs mode again so you
	will see each of my commits only once!

	* src/file-manager/fm-error-reporting.c:
	(rename_callback_data_free), (rename_callback),
	(cancel_rename_callback), (fm_rename_file):
	Finished the 1/2 done code for renaming.

	* src/nautilus-main.c: (main): Removed the call to bonobo_shutdown
	since Michael decided he won't do it this way any more.

	* src/nautilus-window.c: (nautilus_window_destroy): Added code
	to unref the UI handler to fix a leak.

	* components/hardware/nautilus-hardware-view.h:
	* components/loser/content/nautilus-content-loser.h:
	* components/loser/sidebar/nautilus-sidebar-loser.h:
	* components/mozilla/nautilus-mozilla-content-view.h:
	* components/music/nautilus-music-view.h:
	* components/rpmview/nautilus-rpm-view.h:
	* components/services/install/lib/eazel-install-corba-callback.h:
	* components/services/install/lib/eazel-install-public.h:
	* components/services/install/nautilus-view/nautilus-service-install-view.h:
	* components/services/inventory/nautilus-view/nautilus-inventory-view.h:
	* components/services/login/nautilus-view/nautilus-login-view.h:
	* components/services/startup/nautilus-view/nautilus-service-startup-view.h:
	* components/services/summary/nautilus-view/nautilus-summary-view.h:
	* components/services/time/nautilus-view/trilobite-eazel-time-view.h:
	* components/services/time/service/trilobite-eazel-time-service-public.h:
	* components/services/trilobite/libtrilobite/trilobite-root-helper.h:
	* components/services/trilobite/libtrilobite/trilobite-service-passwordquery-public.h:
	* components/services/trilobite/libtrilobite/trilobite-service-public.h:
	* components/services/trilobite/sample/lib/sample-service-public.h:
	* components/tree/nautilus-tree-view.h:
	* libnautilus/nautilus-view.h:
	* libnautilus/nautilus-zoomable.h:
	* src/file-manager/fm-desktop-icon-view.h:
	* src/file-manager/fm-directory-view.h:
	* src/file-manager/fm-icon-view.h:
	* src/file-manager/fm-list-view.h:
	* src/nautilus-application.h:
	* src/nautilus-shell.h:
	* src/nautilus-view-frame.h:
	Fixed a copied and pasted typo.
2000-07-13 16:45:44 +00:00
Darin Adler 41f3913cdf Change to use bonobo_object_unref now that the leaks have been fixed. This
* src/nautilus-view-frame.c: (nautilus_view_frame_destroy_client):
	Change to use bonobo_object_unref now that the leaks have been
	fixed.  This requires the new Bonobo or you'll have lots of leaked
	processes. Luckily, Nautilus won't compile without the new Bonobo
	due to my use of bonobo_object_shutdown in main :-)

	* configure.in:
	Fix the way -Werror works so it affects all directories, not just
	ones where we use WERROR.

	* components/hardware/Makefile.am:
	* components/help/Makefile.am:
	* components/history/Makefile.am:
	* components/loser/content/Makefile.am:
	* components/loser/sidebar/Makefile.am:
	* components/mozilla/Makefile.am:
	* components/music/Makefile.am:
	* components/notes/Makefile.am:
	* components/rpmview/Makefile.am:
	* components/sample/Makefile.am:
	* components/services/install/command-line/Makefile.am:
	* components/services/install/lib/Makefile.am:
	* components/services/install/nautilus-view/Makefile.am:
	* components/services/install/server/Makefile.am:
	* components/services/inventory/lib/Makefile.am:
	* components/services/inventory/nautilus-view/Makefile.am:
	* components/services/inventory/service/Makefile.am:
	* components/services/login/lib/Makefile.am:
	* components/services/login/nautilus-view/Makefile.am:
	* components/services/login/service/Makefile.am:
	* components/services/startup/command-line/Makefile.am:
	* components/services/startup/lib/Makefile.am:
	* components/services/startup/nautilus-view/Makefile.am:
	* components/services/summary/lib/Makefile.am:
	* components/services/summary/nautilus-view/Makefile.am:
	* components/services/summary/service/Makefile.am:
	* components/services/time/command-line/Makefile.am:
	* components/services/time/nautilus-view/Makefile.am:
	* components/services/time/service/Makefile.am:
	* components/services/trilobite/helper/Makefile.am:
	* components/services/trilobite/libtrilobite/Makefile.am:
	* components/services/trilobite/sample/command-line/.cvsignore:
	* components/services/trilobite/sample/command-line/Makefile.am:
	* components/services/trilobite/sample/lib/Makefile.am:
	* components/services/trilobite/sample/nautilus-view/Makefile.am:
	* components/services/trilobite/sample/service/Makefile.am:
	* components/services/vault/command-line/Makefile.am:
	* components/services/vault/lib/Makefile.am:
	* components/services/vault/nautilus-view/Makefile.am:
	* components/services/vault/service/Makefile.am:
	* components/tree/Makefile.am:
	* components/websearch/Makefile.am:
	* cut-n-paste-code/widgets/nautilus-druid/Makefile.am:
	* helper-utilities/authenticate/Makefile.am:
	* libnautilus-extensions/Makefile.am:
	* libnautilus/Makefile.am:
	* librsvg/Makefile.am:
	* nautilus-installer/src/Makefile.am:
	* src/Makefile.am:
	* src/file-manager/Makefile.am:
	* test/Makefile.am:
	Got rid of the WERROR shell variable. The -Werror switch is no
	longer a per-directory thing.

	* librsvg/Makefile.am:
	Added libpng to the libraries for the test program. Maybe this was
	the wrong thing to do, but before this change the link failed.

	* components/sample/Makefile.am:
	* components/sample/main.c:
	* components/sample/nautilus-sample-content-view.c:
	* components/sample/nautilus-sample-content-view.h:
	A clean-up of the sample, including fixing many bugs and adding
	lots of comments. I figure we want this to be as close to
	exemplary as possible since people will continue to start with it
	for new components.

	* libnautilus-extensions/nautilus-bookmark.c:
	(nautilus_bookmark_new_with_icon): Removed a bogus extra ref of a
	NautilusFile object that I spotted in here.

	* src/nautilus-application.c: (nautilus_application_destroy_window):
	Re-added the code to quit when the last window is closed that Mike
	removed in his recent check-in.

	* src/nautilus-main.c: (main): Added a call to bonobo_shutdown.
	We don't need this call, but I say, "Why not?"
2000-07-12 19:33:38 +00:00
Mike Engber a409c1bb98 Hooked up the quit menu in the desktop context menu to quit Nautilus. Now,
* libnautilus/nautilus-view-component.idl:
	* libnautilus/nautilus-view.c: (nautilus_view_quit_nautilus):
	* libnautilus/nautilus-view.h:
	* src/file-manager/fm-desktop-icon-view.c:
	(fm_desktop_icon_view_quit_menu_item_callback),
	(fm_desktop_icon_view_create_background_context_menu_items):
	* src/file-manager/fm-directory-view.c:
	(fm_directory_view_quit_nautilus):
	* src/file-manager/fm-directory-view.h:
	* src/nautilus-application.c: (nautilus_application_startup),
	(nautilus_application_destroy_window):
	* src/nautilus-application.h:
	* src/nautilus-desktop-window.c: (nautilus_desktop_window_new):
	* src/nautilus-view-frame-corba.c:
	(impl_Nautilus_ViewFrame_set_title),
	(impl_Nautilus_ViewFrame_quit_nautilus):
	* src/nautilus-view-frame-private.h:
	* src/nautilus-view-frame.c:
	(nautilus_view_frame_initialize_class),
	(nautilus_view_frame_set_title),
	(nautilus_view_frame_quit_nautilus):
	* src/nautilus-view-frame.h:
	* src/nautilus-window-manage-views.c:
	(nautilus_window_load_content_view):
	* src/nautilus-window.c: (nautilus_window_quit_nautilus_callback),
	(nautilus_window_connect_view):
	Hooked up the quit menu in the desktop context menu to quit Nautilus.
	Now, if Nautilus is managing the desktop no default window is created
	and Nautilus does not quit when the last window is closed - i.e. use
	the quit menu item instead. Bugs 1050 and 1051.
2000-07-12 00:41:34 +00:00
Darin Adler 90166baced Fixed some leaks that cause problems with the new Bonobo.
* components/history/nautilus-history-view.c:
	(history_view_frame_call_end):
	* libnautilus/nautilus-undo.c: (set_up_bonobo_control):
	* libnautilus/nautilus-view.c: (view_frame_call_end):
	* libnautilus/nautilus-zoomable.c:
	(nautilus_zoomable_ensure_zoomable_frame):
	Fixed a ref. count leak by adding code to unref the result of
	query_interface.

	* src/nautilus-view-frame.c: (nautilus_view_frame_is_zoomable):
	Fixed logic that was backwards.
2000-07-11 21:22:02 +00:00
Darin Adler 8883807146 Changed history list to include a separate position field instead of
* components/history/nautilus-history-view.c:
	(history_view_update_icons), (get_history_list),
	(hyperbola_navigation_history_load_location):
	* libnautilus/nautilus-view-component.idl:
	* src/nautilus-history-frame.c:
	(impl_Nautilus_HistoryFrame_get_history_list):
	* src/nautilus-view-frame.h:
	* src/nautilus-view-frame.c:
	(nautilus_view_frame_get_history_list):
	* src/nautilus-window.c:
	(nautilus_window_get_history_list_callback),
	(nautilus_window_connect_view):
	Changed history list to include a separate position field
	instead of having a position in each entry.

	* components/notes/nautilus-notes.c: (done_with_file):
	Name changed from nautilus_file_cancel_callback to
	nautilus_file_cancel_call_when_ready to reduce confusion with
	nautilus_file_cancel.

	* libnautilus-extensions/nautilus-directory.c:
	(nautilus_directory_get): Made NULL for URI be legal (and result
	in NULL for the directory object).
	* libnautilus-extensions/nautilus-mime-actions.c:
	(get_mime_type_from_uri): Made NULL for URI be legal (and result
	in NULL for MIME type).

	* libnautilus-extensions/nautilus-entry.c:
	(nautilus_entry_set_text): Minor tweak.

	* libnautilus-extensions/nautilus-file.h:
	* libnautilus-extensions/nautilus-file-private.h:
	* libnautilus-extensions/nautilus-file.c: (operation_new),
	(operation_free), (operation_complete), (operation_cancel),
	(rename_update_info_and_metafile), (rename_callback),
	(nautilus_file_rename), (nautilus_file_cancel),
	(nautilus_file_set_owner), (nautilus_file_cancel_call_when_ready):
	Added cancelling to rename as a prelude to doing the same for
	set_file_info-based calls.

	* libnautilus-extensions/nautilus-graphic.c:
	Fixed a formatting mistake and a typo.

	* libnautilus-extensions/nautilus-stock-dialogs.h:
	* libnautilus-extensions/nautilus-stock-dialogs.c:
	(timed_wait_hash), (timed_wait_hash_equal),
	(nautilus_timed_wait_start), (nautilus_timed_wait_free),
	(nautilus_timed_wait_stop): Re-did timed wait API now that
	we are really using it. Still unimplemented.

	* src/Makefile.am:
	Since IDL dependencies are not understood by automake, added
	an explicit one so we pick up the change to the libnautilus
	view component IDL.

	* src/file-manager/fm-error-reporting.h:
	* src/file-manager/fm-error-reporting.c: (rename_callback),
	(cancel_rename_callback), (fm_rename_file): Moved code for
	renaming into here so it can be shared between the icon view
	and the properties dialog. Perhaps it needs to be renamed.

	* src/file-manager/fm-icon-view.c:
	(fm_icon_view_icon_text_changed_callback): Use the shared
	code instead of having the rename code here.

	* src/nautilus-application.c: (create_object): Make a new
	shell object each time instead of trying to share one.
	(nautilus_application_startup): Activate the shell object
	using OAF. This makes it work across processes and adds
	the feature.

	* src/nautilus-main.c: (main): Call bonobo_activate explicitly so
	CORBA calls work before the main loop.

	* src/nautilus-shell.c: (display_caveat_first_time),
	(corba_manage_desktop): Got rid of all state in NautilusShell
	so we can use multiple shell objects if we want.

	* src/nautilus-sidebar.c: (nautilus_sidebar_update_info):
	Got rid of code that checks for NULL.
2000-07-11 01:10:05 +00:00
Darin Adler c717f714b4 Removed the obsolete Nautilus/ContentView and Nautilus/MetaView.
* components/hardware/nautilus-hardware-view.oafinfo:
	* components/help/help-contents.oafinfo:
	* components/help/help-index.oafinfo:
	* components/help/help-search.oafinfo:
	* components/history/nautilus-history-view.oafinfo:
	* components/html/ntl-web-browser.oafinfo:
	* components/loser/content/nautilus-content-loser.oafinfo:
	* components/loser/sidebar/nautilus-sidebar-loser.oafinfo:
	* components/mozilla/nautilus-mozilla-content-view.oafinfo:
	* components/music/nautilus-music-view.oafinfo:
	* components/notes/nautilus-notes.oafinfo:
	* components/rpmview/nautilus-rpm-view.oafinfo:
	* components/sample/nautilus-sample-content-view.oafinfo:
	* components/services/inventory/nautilus-view/nautilus-inventory-view.oafinfo:
	* components/services/login/nautilus-view/nautilus-login-view.oafinfo:
	* components/services/startup/nautilus-view/nautilus-service-startup-view.oafinfo:
	* components/services/summary/nautilus-view/nautilus-summary-view.oafinfo:
	* components/services/time/nautilus-view/trilobite-eazel-time-view.oafinfo:
	* components/services/trilobite/sample/nautilus-view/nautilus-sample-service-view.oafinfo:
	* components/shell/shell.oafinfo:
	* components/tree/nautilus-tree-view.oafinfo:
	* components/websearch/ntl-web-search.oafinfo:
	Removed the obsolete Nautilus/ContentView and Nautilus/MetaView.

	* components/services/install/command-line/.cvsignore:
	Added a generated file.

	* libnautilus-extensions/nautilus-directory-async.c:
	(metafile_read_done), (allow_metafile),
	(nautilus_directory_request_read_metafile): Another quick cut at
	leaving out metafiles for some schemes.
	(dequeue_pending_idle_callback): Get rid of "pending file info is
	NULL!" message and "approve" the change that made Maciej put it
	in.

	* libnautilus/nautilus-view.c: (nautilus_uri_list_from_g_list):
	Use CORBA_TRUE to truly use CORBA correctly.

	* src/nautilus-shell-interface.idl:
	* src/.cvsignore:
	* src/Makefile.am:
	* src/nautilus.oafinfo:
	* src/nautilus-shell.h:
	* src/nautilus-shell.c: (nautilus_shell_initialize_class),
	(nautilus_shell_get_epv), (nautilus_shell_get_vepv),
	(nautilus_shell_create_servant), (nautilus_shell_initialize),
	(destroy), (nautilus_shell_new), (display_caveat),
	(display_caveat_first_time), (open_window), (corba_open_windows),
	(corba_open_default_window), (corba_manage_desktop): Added a new
	CORBA file for the interface of the Nautilus shell itself and a
	class for a server side of it. Moved some code in here from
	NautilusApplication.

	* src/nautilus-application.c: (manufactures), (create_object),
	(create_factory), (nautilus_application_initialize),
	(nautilus_strv_length), (nautilus_make_uri_list_from_strv),
	(nautilus_application_startup): Moved the IID strings into
	constants for easier code reading. Added the code that can yield
	up the shell object, although it's not used yet. Changed startup
	code to use the NautilusShell object to do the work. This doesn't
	work cross-process yet, but it's ready to.

	* src/nautilus-window.h:
	* src/nautilus-window.c: (nautilus_window_initialize_class),
	(nautilus_window_initialize), (goto_uri_callback),
	(navigation_bar_mode_changed_callback),
	(nautilus_window_constructed), (nautilus_window_destroy),
	(nautilus_window_realize): Misc. cleanup, including getting rid of
	the strange old way of doing parent_class.
2000-07-07 20:06:04 +00:00
Gene Z. Ragan 0b661c0f2f Fixed bug 1571, Need titles in history list instead of just URIs.
2000-07-06  Gene Z. Ragan  <gzr@eazel.com>

	Fixed bug 1571, Need titles in history list instead
	of just URIs.

	This was a result of sharing the NautilusWindow history list
	information over CORBA.

	* libnautilus/nautilus-view-component.idl:
	Create new interface, Nautilus::HistoryFrame
	Interface has method to get a sequence of
	history information.  This sequence contains
	structs that contain uri and name history
	information.

	* src/Makefile.am:
	Added new file, NautilusHistoryFrame.c, to makefile.

	* src/nautilus-history-frame.c:
	* src/nautilus-history-frame.h:
	(impl_Nautilus_HistoryFrame__destroy),
	(impl_Nautilus_HistoryFrame__create),
	(impl_Nautilus_HistoryFrame_get_history_list):
	New files that imliments the functionality of the
	Nautilus::HistoryFrame.

	* components/history/nautilus-history-view.c:
	(get_bookmark_from_row), (get_uri_from_row),
	(history_view_frame_call_begin), (history_view_frame_call_end),
	(history_view_update_icons), (get_history_list),
	(hyperbola_navigation_history_load_location),
	(hyperbola_navigation_history_select_row), (do_destroy),
	(make_obj), (main):
	Changes in the way that the history list is maintained.
	We now use the info that is received by asking the view frame
	for history information.

	* src/nautilus-view-frame.c:
	* src/nautilus-view-frame.h:
	(nautilus_view_frame_initialize_class),
	(nautilus_view_frame_load_client),
	(nautilus_view_frame_get_history_list):
	Added new signal GET_HISTORY_LIST and new
	function that emits the signal when called.

	* src/nautilus-window.c:
	(nautilus_window_connect_view):
	Create and add history interface to connected view.

	(nautilus_window_get_history_list_callback):
	New signal handler that connects to the get_history_list
	signal of NautilusViewFrame.  Returns a Nautilus_HistoryList
	created from the history list data.
2000-07-07 01:21:06 +00:00
Gene Z. Ragan 149fa4ae3b Fixed problem with previous change to this file. Allocated a static epv.
2000-07-03  Gene Z. Ragan  <gzr@eazel.com>

	* libnautilus-extensions/bonobo-stream-vfs.c:
	(bonobo_stream_vfs_class_init), (create_bonobo_stream_vfs):
	Fixed problem with previous change to this file.  Allocated
	a static epv.  Assigned this epv to the servants epv and then
	alocated the individual elements in the structure.
2000-07-03 19:23:02 +00:00
Mike Engber 16f98f7d21 Fixed 1497 - problems with freeing the CORBA returned preferred zoom level
* libnautilus/nautilus-zoomable.c:
	(nautilus_g_list_from_ZoomLevelList),
	(nautilus_ZoomLevelListBuffer_from_zoom_levels),
	(impl_Nautilus_Zoomable__get_preferred_zoom_level_list),
	(nautilus_zoomable_initialize_class), (nautilus_zoomable_set_arg),
	(nautilus_zoomable_get_arg),
	(nautilus_zoomable_new_from_bonobo_control):
	* src/nautilus-view-frame.c:
	(nautilus_view_frame_get_preferred_zoom_levels):
	* src/nautilus-zoom-control.c:
	(nautilus_zoom_control_class_initialize),
	(nautilus_zoom_control_destroy),
	(nautilus_zoom_control_initialize), (create_zoom_menu_item):
	Fixed 1497 - problems with freeing the CORBA returned preferred
	zoom level lists. Finally done with 1425 - decoupling the zoom
	control from insider knowledge of the icon/list views.
2000-06-28 22:43:14 +00:00
Eskil Heyn Olsen d6ae8859cc Commented out a CORBA_free that causes sigsegv (noted by Carbamide). Filed
* src/nautilus-view-frame.c:
	(nautilus_view_frame_get_preferred_zoom_levels):
	Commented out a CORBA_free that causes sigsegv (noted by
	Carbamide). Filed a bug report (1497) on it.
2000-06-28 05:28:22 +00:00
Mike Engber 4f6956f9c0 Added get_preferred_zoom_levels. Fixed zoom-control to use this info to
* libnautilus/nautilus-view-component.idl:
	* libnautilus/nautilus-zoomable.c:
	(nautilus_g_list_from_ZoomLevelList),
	(nautilus_ZoomLevelList_from_zoom_levels),
	(impl_Nautilus_Zoomable__get_is_continuous),
	(impl_Nautilus_Zoomable__get_preferred_zoom_level_list),
	(nautilus_zoomable_initialize_class), (nautilus_zoomable_set_arg),
	(nautilus_zoomable_get_arg), (nautilus_zoomable_new),
	(nautilus_zoomable_new_from_bonobo_control),
	(nautilus_zoomable_destroy):
	* libnautilus/nautilus-zoomable.h:
	* src/file-manager/fm-directory-view.c:
	(fm_directory_view_initialize):
	* src/nautilus-view-frame.c:
	(nautilus_view_frame_get_max_zoom_level),
	(nautilus_view_frame_get_preferred_zoom_levels):
	* src/nautilus-view-frame.h:
	* src/nautilus-window.c:
	(nautilus_window_zoom_level_changed_callback):
	* src/nautilus-zoom-control.c: (nautilus_zoom_control_initialize),
	(create_zoom_menu_item), (create_zoom_menu),
	(nautilus_zoom_control_set_max_zoom_level),
	(nautilus_zoom_control_set_preferred_zoom_levels):
	* src/nautilus-zoom-control.h:
	Added get_preferred_zoom_levels. Fixed zoom-control to
	use this info to generate it's right click menu.
2000-06-28 00:43:02 +00:00
Mike Engber 888d3716f9 Removed zoom_to_default and zoom_parameters_changed. The nautilus-window
* libnautilus/nautilus-view-component.idl:
	* libnautilus/nautilus-zoomable.c:
	(impl_Nautilus_Zoomable__get_is_continuous),
	(nautilus_zoomable_initialize_class), (nautilus_zoomable_get_arg),
	(nautilus_zoomable_ensure_zoomable_frame):
	* src/file-manager/fm-directory-view.c:
	(fm_directory_view_initialize), (zoomable_zoom_to_fit_callback),
	(fm_directory_view_set_zoom_level):
	* src/file-manager/fm-directory-view.h:
	* src/file-manager/fm-icon-view.c: (fm_icon_view_begin_loading),
	(fm_icon_view_set_zoom_level), (fm_icon_view_bump_zoom_level),
	(fm_icon_view_zoom_to_level),
	(fm_icon_view_restore_default_zoom_level):
	* src/file-manager/fm-list-view.c: (fm_list_view_bump_zoom_level),
	(fm_list_view_zoom_to_level),
	(fm_list_view_restore_default_zoom_level),
	(fm_list_view_begin_loading), (fm_list_view_set_zoom_level):
	* src/nautilus-view-frame.c:
	(nautilus_view_frame_initialize_class),
	(nautilus_view_frame_zoom_level_changed):
	* src/nautilus-view-frame.h:
	* src/nautilus-window.c: (zoom_to_fit_callback),
	(nautilus_window_constructed),
	(nautilus_window_zoom_level_changed_callback),
	(nautilus_window_connect_view):
	* src/nautilus-zoom-control.c:
	(nautilus_zoom_control_class_initialize),
	(nautilus_zoom_control_initialize),
	(nautilus_zoom_control_button_press_event):
	* src/nautilus-zoom-control.h:
	* src/nautilus-zoomable-frame-corba.c:
	(impl_Nautilus_ZoomableFrame_report_zoom_level_changed):
	Removed zoom_to_default and zoom_parameters_changed.
	The nautilus-window now queries the zoomable for max
	and min before showing the zoom control.
2000-06-27 21:48:40 +00:00
Mike Engber c108999dc3 Added report_zoom_parameters_changed to the zoomable interface. This
* libnautilus-extensions/nautilus-gtk-extensions.c:
	(nautilus_gtk_marshal_NONE__DOUBLE_DOUBLE_DOUBLE):
	* libnautilus-extensions/nautilus-gtk-extensions.h:
	* libnautilus/nautilus-view-component.idl:
	* libnautilus/nautilus-zoomable.c:
	(nautilus_zoomable_set_parameters),
	(nautilus_zoomable_set_zoom_level):
	* libnautilus/nautilus-zoomable.h:
	* src/file-manager/fm-directory-view.c:
	(fm_directory_view_set_zoom_level),
	(fm_directory_view_set_zoom_parameters):
	* src/file-manager/fm-directory-view.h:
	* src/file-manager/fm-icon-view.c: (fm_icon_view_begin_loading),
	(fm_icon_view_set_zoom_level), (fm_icon_view_init_zoom_params),
	(fm_icon_view_bump_zoom_level), (fm_icon_view_zoom_to_level),
	(fm_icon_view_restore_default_zoom_level):
	* src/file-manager/fm-list-view.c: (fm_list_view_bump_zoom_level),
	(fm_list_view_zoom_to_level),
	(fm_list_view_restore_default_zoom_level),
	(fm_list_view_begin_loading), (fm_list_view_set_zoom_level),
	(fm_list_view_init_zoom_params):
	* src/nautilus-view-frame-private.h:
	* src/nautilus-view-frame.c:
	(nautilus_view_frame_initialize_class),
	(nautilus_view_frame_zoom_parameters_changed):
	* src/nautilus-view-frame.h:
	* src/nautilus-window.c:
	(nautilus_window_zoom_level_changed_callback),
	(nautilus_window_zoom_parameters_changed_callback),
	(nautilus_window_connect_view):
	* src/nautilus-zoom-control.c: (nautilus_zoom_control_initialize),
	(draw_number_and_disable_arrows), (zoom_menu_callback),
	(create_zoom_menu_item),
	(nautilus_zoom_control_button_press_event),
	(nautilus_zoom_control_set_zoom_level),
	(nautilus_zoom_control_set_min_zoom_level),
	(nautilus_zoom_control_set_max_zoom_level),
	(nautilus_zoom_control_get_zoom_level),
	(nautilus_zoom_control_get_min_zoom_level),
	(nautilus_zoom_control_get_max_zoom_level):
	* src/nautilus-zoom-control.h:
	* src/nautilus-zoomable-frame-corba.c:
	(impl_Nautilus_ZoomableFrame_report_zoom_level_changed),
	(impl_Nautilus_ZoomableFrame_report_zoom_parameters_changed):
	Added report_zoom_parameters_changed to the zoomable
	interface. This allows the zoom control to get min/max
	from the zoomable (as opposed to hard coding in values)
	Also fixed the zoom control to now use just doubles.
	Renamed the zoom_level_changed message to be report_zoom_level_changed
	in accordance with convention.
2000-06-27 01:17:44 +00:00
Michael Engber 610c3c77ee Removed zoom_to_level from the zoomable interface - starting on the
2000-06-22  Michael Engber  <engber@eazel.com>

	* libnautilus/nautilus-view-component.idl:
	* libnautilus/nautilus-zoomable.c:
	(nautilus_zoomable_initialize_class):
	* src/file-manager/fm-directory-view.c:
	(fm_directory_view_initialize), (nautilus_zoom_level_from_double),
	(zoomable_set_zoom_level_callback):
	* src/nautilus-view-frame.c:
	* src/nautilus-view-frame.h:
	* src/nautilus-window.c: (zoom_to_level_callback):
	* src/nautilus-zoom-control.c:
	(nautilus_zoom_control_class_initialize), (zoom_menu_callback),
	(zoom_menu_item_free_zoom_level), (create_zoom_menu_item),
	(create_zoom_menu):
	Removed zoom_to_level from the zoomable interface - starting
	on the process of removing the zoom control being tied to
	7 discrete icon sizes. Bug #1425
2000-06-23 01:39:59 +00:00
Ramiro Estrugo a5e37b99c4 Remove the GNOMECANVASPIXBUF depedency. Its not used no more.
2000-06-20  Ramiro Estrugo  <ramiro@eazel.com>

* configure.in:
* libnautilus-extensions/Makefile.am:
* libnautilus/Makefile.am:
* librsvg/Makefile.am:
* nautilus-installer/src/Makefile:
* src/Makefile.am:
* src/file-manager/Makefile.am:
* test/Makefile.am:

Remove the GNOMECANVASPIXBUF depedency.  Its not used no more.
2000-06-20 16:26:35 +00:00
Gene Z. Ragan e94b24a5c2 Fixed bug #306, right click menu in zoom control doesn't work. The menu
2000-06-13  Gene Z. Ragan  <gzr@eazel.com>

	Fixed bug #306, right click menu in zoom control doesn't work.
	The menu now works.

	* libnautilus/nautilus-view-component.idl:
	Added zoom_to_level interface.

	* libnautilus/nautilus-zoomable.c:
	(impl_Nautilus_Zoomable_zoom_to_level):
	(nautilus_zoomable_initialize_class):
	Implimentation of zoom_to_level interface

	* src/file-manager/fm-directory-view.c:
	* src/file-manager/fm-directory-view.h:
	(fm_directory_view_initialize_class),
	(fm_directory_view_initialize), (zoomable_zoom_to_level_callback),
	(fm_directory_view_zoom_to_level):
	Added signal handling and callback for new ZOOM_TO_LEVEL signal.

	* src/file-manager/fm-icon-view.c:
	(fm_icon_view_zoom_to_level),
	(fm_icon_view_initialize_class):
	ZOOM_TO_LEVEL handling.

	* src/file-manager/fm-list-view.c: (fm_list_view_initialize_class),
	(fm_list_view_zoom_to_level),
	(fm_list_view_restore_default_zoom_level):
	ZOOM_TO_LEVEL handling.

	* src/nautilus-view-frame.c:
	* src/nautilus-view-frame.h:
	(nautilus_view_frame_zoom_to_level):
	New public function for zoom to level.

	* src/nautilus-window.c:
	(zoom_to_level_callback):
	Yes, a zoom to level callback.

	* src/nautilus-zoom-control.c:
	* src/nautilus-zoom-control.h:
	(nautilus_zoom_control_class_initialize), (zoom_menu_callback),
	(create_zoom_menu), (set_zoom_level):
	Enabled context zoom menu functionality.
2000-06-13 21:12:31 +00:00
Darin Adler 6efd7c1b0e Some build fixes.
* acconfig.h:
	* configure.in:
	Removed the NAUTILUS_PREFIX that I added. I did it wrong.

	* libnautilus-extensions/nautilus-file-utilities.h:
	* libnautilus-extensions/nautilus-file-utilities.c:
	(nautilus_pixmap_file):
	* components/hardware/nautilus-hardware-view.c:
	(setup_overview_form):
	* components/services/startup/nautilus-view/nautilus-service-startup-view.c:
	(setup_form_title), (setup_signup_form), (setup_config_form):
	* libnautilus-extensions/nautilus-icon-canvas-item.c: (map_pixbuf):
	* libnautilus-extensions/nautilus-icon-factory.c:
	(make_full_icon_path):
	* src/nautilus-application.c: (display_caveat):
	* src/nautilus-property-browser.c:
	(nautilus_property_browser_initialize),
	(nautilus_emblem_dialog_new), (make_category_link):
	* src/nautilus-zoom-control.c: (nautilus_zoom_control_initialize):
	Replaced most uses of gnome_pixmap_file on "nautilus/"
	with a call to a new nautilus_pixmap_file in an attempt to
	make installations where nautilus has a different prefix
	from gnome-libs work. I now think this is a waste of time,
	but Mathieu Lacage says this is still an improvement.

	* components/help/Makefile.am:
	* components/help/hyperbola-filefmt.c: (fmt_map_entry):
	Use HYPERBOLA_DATADIR instead of NAUTILUS_PREFIX.

	* components/websearch/ntl-web-search.c:
	(web_search_populate_engines):
	Use WEB_SEARCH_DATADIR instead of NAUTILUS_PREFIX.

	* components/mozilla/nautilus-mozilla-content-view.c:
	(nautilus_mozilla_content_view_initialize),
	(mozilla_content_view_set_busy_cursor),
	(mozilla_content_view_request_progress_change),
	(mozilla_content_view_clear_busy_cursor),
	(mozilla_load_location_callback), (bonobo_mozilla_callback),
	(mozilla_merge_bonobo_items_callback),
	(mozilla_title_changed_callback),
	(mozilla_location_changed_callback), (mozilla_net_status_callback),
	(mozilla_link_message_callback), (mozilla_progress_callback),
	(mozilla_open_uri_callback):
	Took a cut at fixing the Mozilla component for the new API.
	Ramiro will have to take care of the rest.

	* components/services/install/lib/Makefile.am:
	* components/services/time/command-line/Makefile.am:
	* components/services/time/nautilus-view/Makefile.am:
	* components/services/time/service/Makefile.am:
	* components/services/trilobite/libtrilobite/Makefile.am:
	* components/services/trilobite/sample/command-line/Makefile.am:
	* components/services/trilobite/sample/service/Makefile.am:
	* libnautilus/Makefile.am:
	Updated all ORBit IDL compiles to use IDL_CFLAGS as suggested
	in the form of a patch by Martijn van Beers.

	* libnautilus-extensions/Makefile.am:
	* libnautilus-extensions/nautilus-file-utilities.c:
	(nautilus_get_user_main_directory),
	(nautilus_get_pixmap_directory):
	* libnautilus-extensions/nautilus-link-set.c:
	(get_link_set_document):
	* src/Makefile.am:
	* src/nautilus-property-browser.c:
	(nautilus_property_browser_drag_data_get), (make_drag_image),
	(get_xml_path), (make_properties_from_directory):
	* src/nautilus-link-set-window.c: (get_link_set_names):
	* src/file-manager/Makefile.am:
	* src/file-manager/fm-properties-window.c: (get_property_names):
	Used NAUTILUS_DATADIR and DATADIR instead of NAUTILUS_PREFIX.

	* libnautilus-extensions/nautilus-file-utilities.h:
	* libnautilus-extensions/nautilus-file-utilities.c:
	(nautilus_get_uri_from_local_path): Added a new helper function for
	use when you have a path and need a URI. This does a better job
	than just adding a "file://" on the front.

	* libnautilus-extensions/nautilus-gtk-extensions.h:
	* libnautilus-extensions/nautilus-gtk-extensions.c:
	(get_first_callback), (nautilus_gtk_container_get_first_child):
	* src/nautilus-window-toolbars.c: (setup_button):
	* src/nautilus-window.c:
	(replace_special_current_view_in_content_view_menu):
	Implemented the first_child function and used it where appropriate.

	* libnautilus-extensions/nautilus-preferences-item.c:
	(add_icon_themes): Use nautilus_get_pixmap_directory intead of
	misusing gnome_pixmap_file by calling it on a directory name.

	* nautilus-installer/src/support.c: (create_pixmap),
	(create_image): Added FIXMEs since it isn't clear if this code
	will work with a Nautilus prefix that's not the same as the
	gnome-libs prefix.

	* Makefile.am: Tweaked white space.
2000-06-13 19:05:33 +00:00
Gene Z. Ragan 9bcb90f331 Fixed bug #305. CLicking in center of zoom control does not change zoom
2000-06-13  Gene Z. Ragan  <gzr@eazel.com>

	Fixed bug #305.  CLicking in center of zoom control
	does not change zoom level.

	Clicking in the center of the zoom control emits a ZOOM_DEFAULT
	signal.  It is up to each view that connects to this signal
	to determine what is the default zoom setting.  Right now, all
	views are using NAUTILUS_ZOOM_LEVEL_STANDARD.  This could be
	changed to a zoom level better suited for the view.

	* libnautilus/nautilus-view-component.idl:
	Added zoom_default interface.

	* libnautilus/nautilus-zoomable.c:
	* libnautilus/nautilus-zoomable.h:
	(impl_Nautilus_Zoomable_zoom_default)
	Implimetation function of zoom_default interface

	(nautilus_zoomable_initialize_class):
	Set up new ZOOM_DEFAULT signal.

	* src/file-manager/fm-directory-view.c:
	* src/file-manager/fm-directory-view.h:
	(fm_directory_view_initialize_class),
	(fm_directory_view_initialize), (zoom_out_callback),
	(zoom_default_callback), (zoomable_zoom_default_callback),
	(fm_directory_view_restore_default_zoom_level):
	New functions to enable zoom to default.

	* src/file-manager/fm-icon-view.c:
	(fm_icon_view_initialize_class):
	Override zoom_default method.

	(fm_icon_view_restore_default_zoom_level),
	New function to enable zoom to default.

	* src/file-manager/fm-list-view.c:
	(fm_list_view_initialize_class):
	Override zoom_default method.

	(fm_list_view_restore_default_zoom_level):
	New function to enable zoom to default.

	* src/file-manager/fm-properties-window.c: (create_basic_page):

	* src/nautilus-view-frame.c:
	* src/nautilus-view-frame.h:
	(nautilus_view_frame_zoom_default):
	New signal handling callback

	* src/nautilus-window.c:
	(zoom_default_callback):
	New signal handling callback

	* src/nautilus-zoom-control.c:
	* src/nautilus-zoom-control.h:
	(nautilus_zoom_control_class_initialize),
	(nautilus_zoom_control_button_press_event):

	Work in progress on bug #971
	* src/file-manager/fm-directory-view.c:
	(open_one_properties_window),

	* libnautilus-extensions/nautilus-undo-signal-handlers.c:
	(nautilus_entry_user_changed_callback),
	(editable_register_edit_undo),
	(restore_editable_from_undo_snapshot_callback):
2000-06-13 17:35:32 +00:00
Darin Adler 14aba5ce07 Renamed and changed around parameters for the basic operations on
views to simplify and clarify Nautilus. Later we will be able to
	clean up the state machine.

	Some "theoretical" stuff may be lost in this process, but we can
	easily re-add what we really need. The old stuff had many
	unimplemented placeholders and half-baked ideas.

	* libnautilus/nautilus-view-component.idl:
	* libnautilus/nautilus-view.h:
	* libnautilus/nautilus-view.c:
	* libnautilus/nautilus-zoomable.c:
	(nautilus_zoomable_ensure_zoomable_frame),
	(nautilus_zoomable_set_zoom_level):
	* src/nautilus-applicable-views.c: (got_file_info_callback),
	(got_metadata_callback), (nautilus_navigation_info_new),
	(nautilus_navigation_info_free):
	* src/nautilus-applicable-views.h:
	* src/nautilus-view-frame-bonobo-control.c:
	(nautilus_view_frame_activate_uri),
	(bonobo_control_try_load_client), (bonobo_control_load_location):
	* src/nautilus-view-frame-bonobo-embeddable.c:
	(bonobo_subdoc_notify_location_change),
	(bonobo_subdoc_try_load_client):
	* src/nautilus-view-frame-corba.c:
	(impl_Nautilus_ViewFrame__destroy),
	(impl_Nautilus_ViewFrame__create),
	(impl_Nautilus_ViewFrame_open_location),
	(impl_Nautilus_ViewFrame_open_location_in_new_window),
	(impl_Nautilus_ViewFrame_report_location_change),
	(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):
	* src/nautilus-view-frame-nautilus-view.c:
	(nautilus_view_try_load_client), (load_location), (stop_loading),
	(selection_changed):
	* src/nautilus-view-frame-private.h:
	* src/nautilus-view-frame.c:
	(nautilus_view_frame_initialize_class),
	(nautilus_view_frame_destroy_client),
	(nautilus_view_frame_handle_client_destroy_2),
	(nautilus_view_frame_new), (nautilus_view_frame_load_client),
	(nautilus_view_frame_load_location),
	(nautilus_view_frame_stop_loading),
	(nautilus_view_frame_selection_changed),
	(nautilus_view_frame_is_zoomable),
	(nautilus_view_frame_open_location),
	(nautilus_view_frame_open_location_in_new_window),
	(nautilus_view_frame_report_location_change),
	(nautilus_view_frame_report_selection_change),
	(nautilus_view_frame_report_status),
	(nautilus_view_frame_report_load_underway),
	(nautilus_view_frame_report_load_progress),
	(nautilus_view_frame_report_load_complete),
	(nautilus_view_frame_report_load_failed),
	(nautilus_view_frame_set_title),
	(nautilus_view_frame_zoom_level_changed):
	* src/nautilus-view-frame.h:
	* src/nautilus-zoomable-frame-corba.c:
	(impl_Nautilus_ZoomableFrame__destroy),
	(impl_Nautilus_ZoomableFrame__create),
	(impl_Nautilus_ZoomableFrame_zoom_level_changed):
	Changed the API and added a ton of comments.

	* components/hardware/nautilus-hardware-view.c:
	(nautilus_hardware_view_initialize),
	(hardware_view_load_location_callback):
	* components/help/hyperbola-nav-index.c:
	(hyperbola_navigation_index_select_row):
	* components/help/hyperbola-nav-search.c:
	(hyperbola_navigation_search_select_row):
	* components/help/hyperbola-nav-tree.c:
	(hyperbola_navigation_tree_new),
	(hyperbola_navigation_tree_load_location),
	(hyperbola_navigation_tree_select_row):
	* components/history/nautilus-history-view.c:
	(hyperbola_navigation_history_load_location),
	(hyperbola_navigation_history_select_row), (make_obj):
	* components/html/ntl-web-browser.c: (browser_url_load_done),
	(browser_vfs_callback), (browser_goto_url_real),
	(browser_goto_url), (browser_select_url), (browser_title_changed),
	(browser_notify_location_change):
	* components/loser/content/nautilus-content-loser.c:
	(nautilus_content_loser_initialize),
	(loser_load_location_callback):
	* components/loser/sidebar/nautilus-sidebar-loser.c:
	(nautilus_sidebar_loser_initialize),
	(loser_load_location_callback):
	* components/music/nautilus-music-view.c:
	(nautilus_music_view_initialize),
	(music_view_load_location_callback):
	* components/notes/nautilus-notes.c: (notes_load_location),
	(make_notes_view):
	* components/rpmview/nautilus-rpm-view.c:
	(nautilus_rpm_view_initialize), (go_to_button_callback),
	(rpm_view_load_location_callback):
	* components/sample/nautilus-sample-content-view.c:
	(nautilus_sample_content_view_initialize),
	(sample_load_location_callback):
	* components/services/startup/nautilus-view/nautilus-service-startup-view.c:
	(go_to_uri), (nautilus_service_startup_view_initialize),
	(service_load_location_callback):
	* components/services/time/nautilus-view/trilobite-eazel-time-view.c:
	(trilobite_eazel_time_view_initialize), (load_location_callback):
	* components/websearch/ntl-web-search.c: (do_search), (make_obj):
	* src/file-manager/fm-directory-view.c:
	(fm_directory_view_switch_location),
	(fm_directory_view_initialize), (display_selection_info),
	(fm_directory_view_send_selection_change),
	(load_location_callback), (selection_changed_callback),
	(stop_loading_callback), (done_loading), (finish_loading_uri):
	Switch components to use the new API.

	* libnautilus-extensions/nautilus-gtk-extensions.h:
	Added a placeholder for a new operation to get the first child of a
	container. This will be way more efficient than all the code that
	gets a list of all the children and then looks at the first one.

	* src/nautilus-application.c: (manufactures), (create_object),
	(create_factory), (nautilus_application_initialize_class),
	(nautilus_application_initialize), (nautilus_application_new),
	(nautilus_application_destroy),
	(nautilus_application_check_user_directories),
	(nautilus_application_startup),
	(nautilus_application_destroy_window), (nautilus_application_quit),
	(nautilus_application_create_window):
	* src/nautilus-application.h:
	* src/nautilus-desktop-window.c: (nautilus_desktop_window_new):
	* src/nautilus-desktop-window.h:
	* src/nautilus-main.c: (main):
	Renamed NautilusApp -> NautilusApplication while changing it around.

	* libnautilus-extensions/nautilus-undo-manager.h:
	Add a blank line.

	* src/nautilus-window-manage-views.h:
	* src/nautilus-window-manage-views.c: (compare_strings),
	(nautilus_window_report_selection_change): Changed code so that it
	won't report the same selection change twice.
	(nautilus_window_report_status),
	(nautilus_window_report_load_underway),
	(nautilus_window_report_load_progress),
	(nautilus_window_report_load_complete),
	(nautilus_window_report_load_failed), (compute_default_title),
	(nautilus_window_set_title), (handle_go_back), (handle_go_forward),
	(handle_go_elsewhere), (update_up_button),
	(nautilus_window_update_internals), (nautilus_window_update_view),
	(nautilus_window_view_destroyed),
	(nautilus_window_has_really_changed),
	(nautilus_window_load_sidebar_panel), (open_location),
	(nautilus_window_open_location),
	(nautilus_window_open_location_in_new_window),
	(nautilus_window_report_location_change),
	(nautilus_window_load_content_view),
	(nautilus_window_update_state),
	(nautilus_window_end_location_change_callback),
	(nautilus_window_begin_location_change): Updated everything for the
	new API.

	* src/nautilus-window-menus.c: (file_menu_new_window_callback),
	(edit_menu_undo_callback), (edit_menu_cut_callback),
	(edit_menu_copy_callback), (edit_menu_paste_callback),
	(edit_menu_clear_callback), (append_bookmark_to_menu),
	(clear_appended_bookmark_items),
	(nautilus_window_add_bookmark_for_current_location),
	(append_separator), (new_top_level_menu),
	(nautilus_window_initialize_menus), (update_user_level_menu_items):
	* src/nautilus-window-private.h:
	* src/nautilus-window-toolbars.c: (setup_button),
	(nautilus_window_initialize_toolbars),
	(nautilus_window_toolbar_remove_theme_callback):
	* src/nautilus-window.c: (nautilus_window_class_init),
	(nautilus_window_goto_uri), (nautilus_window_constructed),
	(nautilus_window_set_arg), (nautilus_window_get_arg),
	(nautilus_window_destroy), (nautilus_window_switch_views),
	(view_menu_choose_view_callback),
	(nautilus_window_load_content_view_menu),
	(nautilus_window_back_or_forward), (nautilus_window_go_up),
	(nautilus_window_allow_back), (nautilus_window_allow_forward),
	(nautilus_window_allow_up),
	(nautilus_window_open_location_callback),
	(nautilus_window_open_location_in_new_window_callback),
	(nautilus_window_report_location_change_callback),
	(nautilus_window_report_selection_change_callback),
	(nautilus_window_report_status_callback),
	(nautilus_window_report_load_underway_callback),
	(nautilus_window_report_load_progress_callback),
	(nautilus_window_report_load_complete_callback),
	(nautilus_window_report_load_failed_callback),
	(nautilus_window_set_title_callback),
	(nautilus_window_connect_view),
	(nautilus_window_connect_content_view), (nautilus_window_reload),
	(window_update_sidebar_panels_from_preferences):
	* src/nautilus-window.h:
	Other changes related to the API switchover.

	* src/nautilus.oafinfo: Changed the ntl-xx iids to use the work
	nautilus instead.
2000-06-13 15:49:50 +00:00
Darin Adler 032a094843 Updated code affected by destroy-notify addition to bonobo. Requires new
Updated code affected by destroy-notify addition to bonobo.
	Requires new bonobo.

	* libnautilus-extensions/nautilus-bonobo-extensions.c:
	(nautilus_bonobo_ui_handler_menu_set_toggle_appearance):
	Save and restore the destroy notify function as well as the
	callback. This requires using the new function
	bonobo_ui_handler_menu_remove_callback_no_notify to do right.

	* src/file-manager/fm-directory-view.c:
	(application_launch_parameters_new),
	(application_launch_parameters_free): Ref and unref the directory
	view object now that we correctly free this as needed.
	(viewer_launch_parameters_new), (viewer_launch_parameters_free):
	Ref and unref the directory view object now that we correctly free
	this as needed.
	(add_open_with_bonobo_menu_item): Add a destroy-notify function
	parameters and apply it using bonobo_ui_handler_menu_set_callback.
	(add_application_to_bonobo_menu): Free the launch parmaeters using
	a destroy-notify function.
	(add_component_to_bonobo_menu): Free the launch parmaeters using
	a destroy-notify function.

	* src/nautilus-window-menus.c: (append_bookmark_to_menu): Use a
	destroy-notify function to destroy the bookmark holder.
	(clear_appended_bookmark_items): Get rid of the code that gets
	the callback data and destroys it explicitly.

	* libnautilus/nautilus-clipboard.c: (add_menu_item):
	* src/file-manager/fm-directory-view.c: (insert_bonobo_menu_item),
	(fm_directory_view_real_merge_menus):
	* src/file-manager/fm-icon-view.c: (append_bonobo_menu_item),
	(fm_icon_view_merge_menus):
	Rename BonoboUIHandlerCallbackFunc -> BonoboUIHandlerCallback.

	* HACKING: Some reformatting.
2000-06-07 19:29:23 +00:00
John Sullivan e1f3efdc2c Final batch (for now) of adding bug numbers to FIXMEs.
* components/music/nautilus-music-view.c:
	(nautilus_music_view_update_from_uri):
	* components/services/install/lib/eazel-install-object.c:
	(eazel_install_destroy):
	* components/services/install/lib/eazel-install-xml-package-list.c:
	(generate_xml_package_list):
	* libnautilus-extensions/nautilus-file-utilities.c:
	(nautilus_get_user_main_directory):
	* libnautilus-extensions/nautilus-gdk-extensions.c:
	(nautilus_fill_rectangle_with_color):
	* libnautilus-extensions/nautilus-icon-container.c:
	(nautilus_icon_container_add), (nautilus_icon_container_remove):
	* libnautilus-extensions/nautilus-list.c:
	(nautilus_list_drag_data_received):
	* libnautilus-extensions/nautilus-undo-manager.c:
	(nautilus_undo_manager_undo):
	* libnautilus-extensions/nautilus-view-identifier.h:
	* libnautilus/nautilus-distributed-undo.idl:
	* nautilus-widgets/nautilus-user-level-manager.c:
	(nautilus_user_level_manager_get_user_level):
	Final batch (for now) of adding bug numbers to FIXMEs.
2000-06-07 17:19:15 +00:00
Darin Adler 62ae037752 The main change here is revamping the undo manager.
To get a complete check-out you might have to delete
	the file named libnautilus/nautilus-undo.h that used
	to be a generated file and is now checked-in.

	* components/help/help-method.c: (vfs_module_transform):
	Removed a bogus extraneous FIXME.

	* libnautilus-extensions/Makefile.am:
	Moved the undo manager into libnautilus-extensions
	since it's not needed by Nautilus components.

	* libnautilus-extensions/nautilus-entry.c:
	* libnautilus-extensions/nautilus-icon-text-item.c:
	* libnautilus/nautilus-view.c:
	* src/nautilus-application.c:
	* src/nautilus-bookmarks-window.c: (create_bookmarks_window):
	* src/nautilus-view-frame.c:
	* src/nautilus-window-private.h:
	* src/nautilus-window.c:
	Updated includes and a few small function name changes.

	* libnautilus-extensions/nautilus-gtk-extensions.h:
	* libnautilus-extensions/nautilus-gtk-extensions.c:
	(alive_disconnecter),
	(nautilus_gtk_signal_connect_full_while_alive):
	Added a new function that combines the features of
	gtk_signal_connect_full with gtk_signal_connect_while_alive.

	* libnautilus/nautilus-undo-context.h: [removed]
	* libnautilus/nautilus-undo-context.c: [removed]
	* libnautilus-extensions/nautilus-undo-context.h:
	* libnautilus-extensions/nautilus-undo-context.c:
	(impl_Nautilus_Undo_Context__destroy),
	(impl_Nautilus_Undo_Context__create),
	(impl_Nautilus_Undo_Context__get_undo_manager),
	(nautilus_undo_context_new), (destroy),
	(nautilus_undo_context_initialize_class):
	Rewrote this class to simplify it (after moving it here).

	* libnautilus/nautilus-undo-manager.h: [removed]
	* libnautilus/nautilus-undo-manager.c: [removed]
	* libnautilus/nautilus-undo-manager-private.h: [removed]
	* libnautilus-extensions/nautilus-undo-manager.h:
	* libnautilus-extensions/nautilus-undo-manager.c:
	(impl_Nautilus_Undo_Manager__destroy),
	(impl_Nautilus_Undo_Manager__create),
	(impl_Nautilus_Undo_Manager__append),
	(impl_Nautilus_Undo_Manager__forget),
	(nautilus_undo_manager_initialize),
	(nautilus_undo_manager_initialize_class),
	(nautilus_undo_manager_undo),
	(nautilus_undo_manager_add_transaction),
	(nautilus_undo_manager_forget_transaction),
	(nautilus_undo_manager_set_queue_depth),
	(nautilus_undo_manager_attach),
	(nautilus_undo_manager_add_interface), (update_undo_menu_item),
	(undo_menu_handler_connection_free),
	(undo_menu_handler_connection_free_cover),
	(nautilus_undo_manager_set_up_bonobo_ui_handler_undo_item):
	Rewrote this class to simplify it. Got rid of many old
	interfaces and added some new ones.

	* libnautilus/.cvsignore:
	* libnautilus/Makefile.am:
	Renamed the old nautilus-undo.idl to
	nautilus-distributed-undo.idl.  The IDL is only about the internal
	part of the undo framework.  Clients use calls that are in
	nautilus-undo.h. The part that's public needs the prettier name.

	* libnautilus/nautilus-undo.idl: [removed]
	* libnautilus/nautilus-distributed-undo.idl:
	Updated the names of menu-item-related things to better match the
	standard terminology.

	* libnautilus/nautilus-undo-private.h:
	Added this new header for things needed by the undo manager that
	are in libnautilus. Maybe we can eliminate this later.

	* libnautilus/nautilus-undo-transaction.h:
	* libnautilus/nautilus-undo-transaction.c:
	(impl_Nautilus_Undo_Transaction__destroy),
	(impl_Nautilus_Undo_Transaction__create),
	(impl_Nautilus_Undo_Transaction__get_undo_menu_item),
	(impl_Nautilus_Undo_Transaction__get_redo_menu_item),
	(impl_Nautilus_Undo_Transaction__get_operation_name),
	(impl_Nautilus_Undo_Transaction__undo),
	(nautilus_undo_transaction_new),
	(nautilus_undo_transaction_initialize),
	(remove_transaction_from_object),
	(nautilus_undo_transaction_destroy),
	(nautilus_undo_transaction_initialize_class),
	(nautilus_undo_transaction_add_atom),
	(nautilus_undo_transaction_undo),
	(nautilus_undo_transaction_add_to_undo_manager), (remove_atoms),
	(remove_atoms_cover),
	(nautilus_undo_transaction_unregister_object), (undo_atom_free),
	(undo_atom_undo_and_free), (undo_atom_free_cover),
	(undo_atom_undo_and_free_cover), (undo_atom_list_free),
	(undo_atom_list_undo_and_free):
	Rewrote and simplified this class and got rid of all uses of
	NautilusUndoable.

	* libnautilus/nautilus-undoable.h: [removed]
	* libnautilus/nautilus-undoable.c: [removed]
	* libnautilus/nautilus-undo.h:
	* libnautilus/nautilus-undo.c: (nautilus_undo_register),
	(nautilus_undo_register_full), (nautilus_undo_unregister),
	(nautilus_undo), (nautilus_undo_get_undo_manager),
	(undo_manager_ref), (undo_manager_unref),
	(undo_manager_unref_cover), (nautilus_undo_attach_undo_manager),
	(nautilus_undo_share_undo_manager), (set_up_bonobo_control),
	(nautilus_undo_set_up_bonobo_control):
	Added this new file with the public interface of the undo code and
	most of the basic implementation. Most of this was previously in
	nautilus-undoable.c.

	* nautilus-widgets/nautilus-preferences.c:
	(preferences_hash_node_free), (preferences_hash_node_add_callback),
	(preferences_hash_node_remove_callback),
	(preferences_hash_node_check_changes_func),
	(preferences_callback_node_alloc),
	(preferences_callback_node_free),
	(preferences_callback_node_free_func),
	(preferences_callback_node_invoke_func),
	(preferences_gconf_callback):
	Fixed a repeated spelling error in this file.

	* src/nautilus-application.c: (nautilus_app_init):
	* src/nautilus-view-frame.c: (nautilus_view_frame_load_client):
	* src/nautilus-window-menus.c: (edit_menu_undo_callback),
	(nautilus_window_initialize_menus):
	* src/nautilus-window.c: (nautilus_window_constructed):
	Changed to use public parts of the undo API instead of the old
	stuff that used private secret stuff. Many places use nice new
	convenient calls that do a lot of the work for you.
2000-06-07 02:47:10 +00:00
John Sullivan 9012c14f7d Added bug numbers to FIXMEs.
* components/services/install/lib/eazel-install-object.c:
	(eazel_install_new_with_config):
	* components/services/install/lib/eazel-install-rpm-glue.c:
	(do_rpm_install):
	* components/services/time/service/trilobite-eazel-time-service.c:
	(impl_Trilobite_Eazel_Time_Service_update_time):
	* libnautilus-extensions/nautilus-global-preferences.c:
	(global_preferences_get_sidebar_panel_view_identifiers),
	(global_preferences_register_sidebar_panels_preferences_for_ui):
	* libnautilus/nautilus-clipboard.c: (add_menu_items_callback):
	* nautilus-widgets/nautilus-preferences-item.c:
	(preferences_item_create_font_family):
	* nautilus-widgets/nautilus-preferences.c:
	(preferences_hash_node_check_changes_func),
	(preferences_gconf_callback):
	Added bug numbers to FIXMEs.
2000-06-06 23:55:09 +00:00
Mathieu Lacage 3fef6a603c a bunch of small fixes to make it compile when prefix strange. Far from finished. Note there is a hack in libnautilus/Makefile.am but no one should suffer from it. Only me so... I will remov it when I get the right solution which is hacking gnome-config. 2000-06-06 09:18:00 +00:00
Gene Z. Ragan f1cc9405bd New call to be used internally to get the current undo transaction. An
2000-06-01  Gene Z. Ragan  <gzr@eazel.com>

	* libnautilus/nautilus-undo-manager.c:
	* libnautilus/nautilus-undo-manager.h:
	(nautilus_undo_manager_get_current_undo_transaction):
	New call to be used internally to get the current undo transaction.
	An example of this call being used is in the menu code that displays
	the current undo operation name.

	* libnautilus/nautilus-undo-transaction.c:
	(impl_Nautilus_Undo_Transaction__get_undo_description),
	(impl_Nautilus_Undo_Transaction__get_redo_description),
	(impl_Nautilus_Undo_Transaction__get_operation_name),
	(impl_Nautilus_Undo_Transaction__undo),
	Added actual functionlality to these calls.  They now
	work as advertised.

	(nautilus_undo_transaction_new),
	Made changed needed to actually use the operation
	name and description that is passed in.

	(nautilus_undo_transaction_destroy),
	Clean up stored operation name and description strings.

	* src/nautilus-window-menus.c:
	(update_undo_menu_item):
	The undo operation name is now displayed in the menu item.
2000-06-02 05:51:35 +00:00
Maciej Stachowiak a15fd9f881 components/history/ntl-history-view.c ->
* Renamed files as follows, as per RENAMING:
	components/history/ntl-history-view.c -> components/history/nautilus-history-view.c
	components/history/ntl-history-view.oafinfo -> components/history/nautilus-history-view.oafinfo
	components/notes/ntl-notes.c -> components/notes/nautilus-notes.c
	components/notes/ntl-notes.oafinfo -> components/notes/nautilus-notes.oafinfo
	libnautilus-extensions/gtkscrollframe.c -> libnautilus-extensions/nautilus-scroll-frame.c
	libnautilus-extensions/gtkscrollframe.h -> libnautilus-extensions/nautilus-scroll-frame.h
	libnautilus/nautilus-view-frame.c -> libnautilus/nautilus-view.c
	libnautilus/nautilus-view-frame.h -> libnautilus/nautilus-view.h
	src/nautilus-index-tabs.c -> src/nautilus-sidebar-tabs.c
	src/nautilus-index-tabs.h -> src/nautilus-sidebar-tabs.h
	src/nautilus-index-title.c -> src/nautilus-sidebar-title.c
	src/nautilus-index-title.h -> src/nautilus-sidebar-title.h
	src/nautilus-zoomable-frame-svr.c -> src/nautilus-zoomable-frame-corba.c
	src/ntl-app.c -> src/nautilus-application.c
	src/ntl-app.h -> src/nautilus-application.h
	src/ntl-index-panel.c -> src/nautilus-sidebar.c
	src/ntl-index-panel.h -> src/nautilus-sidebar.h
	src/ntl-main.c -> src/nautilus-main.c
	src/ntl-miniicon.c -> libnautilus-extensions/nautilus-mini-icon.c
	src/ntl-miniicon.h -> libnautilus-extensions/nautilus-mini-icon.h
	src/ntl-uri-map.c -> src/nautilus-applicable-views.c
	src/ntl-uri-map.h -> src/nautilus-applicable-views.h
	src/ntl-view-bonobo-control.c -> src/nautilus-view-frame-bonobo-control.c
	src/ntl-view-bonobo-subdoc.c -> src/nautilus-view-frame-bonobo-embeddable.c
	src/ntl-view-frame-svr.c -> src/nautilus-view-frame-corba.c
	src/ntl-view-nautilus.c -> src/nautilus-view-frame-nautilus-view.c
	src/ntl-view-private.h -> src/nautilus-view-frame-private.h
	src/ntl-view.c -> src/nautilus-view-frame.c
	src/ntl-view.h -> src/nautilus-view-frame.h
	src/ntl-window-msgs.c -> src/nautilus-window-manage-views.c
	src/ntl-window-msgs.h -> src/nautilus-window-manage-views.h
	src/ntl-window-private.h -> src/nautilus-window-private.h
	src/ntl-window-state.c -> src/nautilus-window-state.c
	src/ntl-window-state.h -> src/nautilus-window-state.h
	src/ntl-window.c -> src/nautilus-window.c
	src/ntl-window.h -> src/nautilus-window.h

	* components/history/Makefile.am, components/notes/Makefile.am,
	libnautilus-extensions/Makefile.am, libnautilus/Makefile.am,
	po/POTFILES.in, src/Makefile.am,
	components/hardware/nautilus-hardware-view.h,
	components/loser/content/nautilus-content-loser.h,
	components/loser/sidebar/nautilus-sidebar-loser.h,
	components/mozilla/nautilus-mozilla-content-view.h,
	components/music/nautilus-music-view.h,
	components/rpmview/nautilus-rpm-view.h,
	components/sample/nautilus-sample-content-view.h,
	components/services/startup/nautilus-view/nautilus-service-startup-view.h,
	libnautilus/libnautilus.h, src/nautilus-desktop-window.h,
	src/nautilus-window-menus.c, src/nautilus-window-toolbars.c,
	src/file-manager/fm-directory-view.h : Updated for renamings.

	* RENAMING: removed old renamings
2000-05-27 12:17:20 +00:00
Darin Adler 63d4a318cb A little more desktop window work.
* src/nautilus-desktop-window.c:
	(nautilus_desktop_window_initialize_class),
	(nautilus_desktop_window_initialize),
	(nautilus_desktop_window_new):
	* src/nautilus-desktop-window.h:
	* src/ntl-app.c: (nautilus_app_startup), (nautilus_app_quit),
	(nautilus_app_create_window):
	* src/ntl-app.h:
	* src/ntl-main.c: (main):
	Made a desktop window that's created when you start the program
	if you pass the --desktop option. At the moment it's a normal
	window and not set up to take over the desktop.

	* libnautilus-extensions/nautilus-glib-extensions.c:
	(nautilus_self_check_glib_extensions): Fixed some broken self-
	checks. Now we have one really broken self-check in the
	nautilus-directory.c file. I might turn that one off soon so we
	can at least run the others.

	* libnautilus-extensions/nautilus-gtk-macros.h:
	Changed how some of the macros work. Few of these macros were used
	in Nautilus. I hope they aren't used in the Mozilla component,
	because then I broke it.

	* libnautilus-extensions/nautilus-list-column-title.c:
	(nautilus_list_column_title_motion),
	(nautilus_list_column_title_button_press),
	(nautilus_list_column_title_button_release):
	Updated to use NAUTILUS_INVOKE_METHOD instead of NAUTILUS_KLASS,
	because I renamed it to NAUTILUS_CLASS and had to change these
	anyway.

	A little sweep for code that should be using
	CORBA_Object_is_nil instead of direct compares with
	CORBA_OBJECT_NIL.

	* components/html/main.c: (url_requested_cb):
	* libnautilus-extensions/bonobo-stream-vfs.c:
	(bonobo_stream_create):
	* libnautilus/nautilus-undo-manager.c:
	(set_up_bonobo_control):
	* libnautilus/nautilus-undoable.c: (nautilus_undo_register_full),
	(nautilus_undo_unregister), (nautilus_undo):
	* src/file-manager/dfos.c: (dfos_new):
	Switch to use CORBA_Object_is_nil.

	* libnautilus/nautilus-undo-manager.c: (undo_manager_unref),
	(nautilus_attach_undo_manager), (nautilus_share_undo_manager),
	(set_up_bonobo_control):
	Do some missing duplicate and release calls.

	* libnautilus/nautilus-undoable.c: (nautilus_undo_unregister):
	Fix a place where we'd keep a reference to a freed list.
	Change O(n^2) walk of list by index to O(n) walk by pointer.

	* src/ntl-index-panel.c: (nautilus_index_panel_remove_meta_view):
	Changed g_warning to a g_return_if_fail, which was designed for
	cases just like this one.

	* src/ntl-view-bonobo-subdoc.c:
	(bonobo_subdoc_notify_location_change):
	Put in a better version of the FIXME.

	* RENAMING: More updates.
2000-05-27 02:17:41 +00:00
Gene Z. Ragan 7c045c92c7 More work on undo. Note that undo in text entry fields still misbehaves.
2000-05-25  Gene Z. Ragan  <gzr@eazel.com>

	More work on undo.  Note that undo in text entry fields still
	misbehaves.  More improvements are on the way.

	* components/websearch/ntl-web-search.c:
	(make_obj):
	Removed obsolete enable undo code.

	* libnautilus-extensions/nautilus-entry.c:
	* libnautilus-extensions/nautilus-entry.h:
	(nautilus_entry_initialize_class), (nautilus_entry_key_press),
	(nautilus_entry_insert_text), (nautilus_entry_delete_text),
	(register_edit_undo), (nautilus_entry_set_undo_key):
	Removed the enable_undo function and made undo functionality
	a default feature of NautilusEntry.

	* libnautilus/nautilus-undo-transaction.c:
	(nautilus_undo_transaction_add_undoable),
	(nautilus_undo_transaction_undo):

	* libnautilus/nautilus-undoable.c:
	* libnautilus/nautilus-undoable.h:
	(nautilus_undoable_save_undo_snapshot), (nautilus_undo_unregister):

	* src/file-manager/fm-properties-window.c: (create_basic_page):
	Removed obsolete enable undo code.

	* src/nautilus-bookmarks-window.c: (on_text_field_focus_in_event),
	(on_text_field_focus_out_event), (on_window_delete_event):
	Removed obsolete enable undo code.

	* src/nautilus-location-bar.c:
	* src/nautilus-location-bar.h:
	(nautilus_location_bar_set_location):
	Removed obsolete enable undo code.

	* src/ntl-window.c: (nautilus_window_constructed):
	Removed obsolete enable undo code.
2000-05-26 07:08:11 +00:00
Darin Adler da3975518f Instead of ref'ing the control we want to do a "while_alive". The old way
* libnautilus/nautilus-clipboard.c:
	(nautilus_clipboard_set_up_editable): Instead of ref'ing the
	control we want to do a "while_alive". The old way could be
	dangerous, so I'm glad I caught this.
2000-05-25 22:49:06 +00:00
Darin Adler bcd654be84 Took out an extra bonobo_object_ref that was wreaking havoc. If we want to
* libnautilus/nautilus-view-frame.c:
	(nautilus_view_get_bonobo_control):
	Took out an extra bonobo_object_ref that was wreaking havoc.
	If we want to make this ref the thing before returning it,
	we'll have to get it right.
2000-05-25 22:31:12 +00:00
Darin Adler 78899d3907 Updated to reflect completed tasks.
* RENAMING: Updated to reflect completed tasks.

	* components/notes/ntl-notes.c: (make_notes_view):
	* components/websearch/ntl-web-search.c: (make_obj):
	Changed to use simplified clipboard API.

	* components/services/trilobite/libtrilobite/.cvsignore:
	Ignore generated files.

	* libnautilus-extensions/gtkscrollframe.c:
	* libnautilus-extensions/gtkscrollframe.h:
	Renamed GtkScrollFrame to NautilusScrollFrame so we won't conflict
	if a GtkScrollFrame actually gets added to gtk some day. The file
	still needs renaming (mentioned in RENAMING).

	* libnautilus/nautilus-clipboard.h:
	* libnautilus/nautilus-clipboard.c: (cut_callback),
	(copy_callback), (paste_callback), (clear_callback),
	(add_menu_item), (add_menu_items_callback),
	(remove_menu_items_callback), (nautilus_clipboard_set_up_editable):
	Simplified clipboard implementation. Does the same thing the old
	code did without needing a class and with a simpler API.

	* nautilus-widgets/nautilus-preferences-item.c:
	* src/file-manager/fm-icon-text-window.c:
	* src/nautilus-zoom-control.c:
	* src/ntl-window.c:
	Renamed _cb to _callback. Some other (minor) cleanup.

	* src/file-manager/Makefile.am:
	* src/file-manager/desktop-canvas.c: [removed]
	* src/file-manager/desktop-canvas.h: [removed]
	* src/file-manager/desktop-menu.c: [removed]
	* src/file-manager/desktop-menu.h: [removed]
	* src/file-manager/gnome-desktop.c: [removed]
	Now that I'm doing the desktop work, I know we don't need these.
	I'll be deleting the desktop source files that Havoc added as I
	harvest the useful code from them.

	* src/file-manager/fm-directory-view.c:
	(bonobo_control_activate_callback): Add comments.

	* src/nautilus-zoom-control.h: Fixed problem where the zoom
	control didn't know if it was an event box or a pixmap.

	* src/ntl-index-panel.c: (nautilus_index_panel_add_meta_view):
	Fixed bug that was trashing the sidebar panel names. I put
	the g_free call in the wrong place.

	* src/ntl-uri-map.c: (sidebar_panel_preference_is_on):
	Fixed bug where the sidebar preference wasn't saved. I found
	another place with another copy of the preference path. This
	sort of thing really needs to go in a header file, I think.
2000-05-25 21:32:33 +00:00
Gene Ragan 31890627ca *** empty log message *** 2000-05-25 02:14:50 +00:00
Darin Adler 346de1525e [removed] [removed]
* components/hardware/nautilus-hardware-view.c:
	(nautilus_hardware_view_initialize),
	(hardware_view_notify_location_change_callback):
	* components/hardware/nautilus-hardware-view.h:
	* components/help/hyperbola-nav-index.c:
	(hyperbola_navigation_index_select_row):
	* components/help/hyperbola-nav-search.c:
	(hyperbola_navigation_search_select_row),
	(hyperbola_navigation_search_new):
	* components/html/ntl-web-browser.c: (browser_url_load_done),
	(browser_vfs_callback), (browser_goto_url_real),
	(browser_goto_url), (browser_select_url), (browser_title_changed),
	(browser_notify_location_change), (make_obj):
	* components/loser/content/main.c: (loser_make_object):
	* components/loser/content/nautilus-content-loser.c:
	(nautilus_content_loser_initialize),
	(loser_notify_location_change_callback):
	* components/loser/content/nautilus-content-loser.h:
	* components/loser/sidebar/main.c: (loser_make_object):
	* components/loser/sidebar/nautilus-sidebar-loser.c:
	(nautilus_sidebar_loser_initialize),
	(loser_notify_location_change_callback):
	* components/mozilla/main.c: (mozilla_make_object):
	* components/mozilla/nautilus-mozilla-content-view.c:
	(nautilus_mozilla_content_view_initialize),
	(mozilla_content_view_request_progress_change),
	(mozilla_content_view_request_location_change),
	(mozilla_notify_location_change_callback),
	(mozilla_title_changed_callback), (mozilla_link_message_callback):
	* components/mozilla/nautilus-mozilla-content-view.h:
	* components/music/main.c: (music_view_make_object):
	* components/music/nautilus-music-view.c:
	(nautilus_music_view_initialize), (click_column_callback),
	(music_view_notify_location_change_callback),
	(nautilus_music_view_drag_data_received):
	* components/music/nautilus-music-view.h:
	* components/rpmview/main.c: (rpm_view_make_object):
	* components/rpmview/nautilus-rpm-view.c:
	(nautilus_rpm_view_initialize),
	(rpm_view_notify_location_change_callback):
	* components/rpmview/nautilus-rpm-view.h:
	* components/sample/main.c: (sample_make_object):
	* components/sample/nautilus-sample-content-view.c:
	(nautilus_sample_content_view_initialize),
	(sample_notify_location_change_callback):
	* components/sample/nautilus-sample-content-view.h:
	* components/services/startup/nautilus-view/main.c:
	(services_make_object):
	* components/services/startup/nautilus-view/nautilus-service-startup-view.c:
	(go_to_uri), (nautilus_service_startup_view_initialize),
	(service_main_notify_location_change_cb):
	* components/services/startup/nautilus-view/nautilus-service-startup-view.h:
	* libnautilus/Makefile.am:
	* libnautilus/libnautilus.h:
	* libnautilus/nautilus-content-view-frame.c: [removed]
	* libnautilus/nautilus-content-view-frame.h: [removed]
	* libnautilus/nautilus-view-component.idl:
	* libnautilus/nautilus-view-frame-private.h:
	* libnautilus/nautilus-view-frame.c:
	(impl_Nautilus_View_save_state), (impl_Nautilus_View_load_state),
	(impl_Nautilus_View_notify_location_change),
	(impl_Nautilus_View_show_properties),
	(impl_Nautilus_View_notify_selection_change),
	(impl_Nautilus_View_stop_location_change),
	(impl_Nautilus_View__destroy), (impl_Nautilus_View__create),
	(nautilus_view_initialize_class), (nautilus_view_initialize),
	(nautilus_view_new), (nautilus_view_new_from_bonobo_control),
	(get_view_frame), (nautilus_view_request_location_change),
	(nautilus_view_request_selection_change),
	(nautilus_view_request_status_change),
	(nautilus_view_request_progress_change),
	(nautilus_view_request_title_change),
	(nautilus_view_get_bonobo_control),
	(nautilus_view_get_main_window):
	* libnautilus/nautilus-view-frame.h:
	* src/Makefile.am:
	* src/file-manager/fm-directory-view.c: (get_bonobo_control),
	(fm_directory_view_initialize), (display_selection_info),
	(fm_directory_view_send_selection_change),
	(notify_location_change_callback), (stop_location_change_callback),
	(done_loading), (fm_directory_view_activate_file_internal),
	(finish_loading_uri):
	* src/file-manager/fm-directory-view.h:
	* src/ntl-app.c: (impl_Nautilus_Application_create_object):
	* src/ntl-content-view.c: [removed]
	* src/ntl-content-view.h: [removed]
	* src/ntl-uri-map.c: (make_oaf_query_with_known_mime_type),
	(make_oaf_query_with_uri_scheme_only):
	* src/ntl-view-frame-svr.c: (impl_Nautilus_ViewFrame__destroy),
	(impl_Nautilus_ViewFrame__create),
	(impl_Nautilus_ViewFrame__get_main_window),
	(impl_Nautilus_ViewFrame_request_location_change),
	(impl_Nautilus_ViewFrame_request_selection_change),
	(impl_Nautilus_ViewFrame_request_status_change),
	(impl_Nautilus_ViewFrame_request_progress_change),
	(impl_Nautilus_ViewFrame_request_title_change):
	* src/ntl-view-private.h:
	* src/ntl-view.c: (nautilus_view_frame_class_init),
	(nautilus_view_frame_set_arg), (nautilus_view_frame_get_arg),
	(nautilus_view_frame_request_location_change),
	(nautilus_view_frame_request_selection_change),
	(nautilus_view_frame_request_status_change),
	(nautilus_view_frame_request_progress_change),
	(nautilus_view_frame_request_title_change),
	(nautilus_view_frame_set_label), (nautilus_view_frame_activate):
	* src/ntl-view.h:
	* src/ntl-window-msgs.c: (nautilus_window_request_title_change),
	(nautilus_window_load_meta_view),
	(nautilus_window_request_location_change),
	(nautilus_window_load_content_view):
	* src/ntl-window-msgs.h:
	* src/ntl-window-private.h:
	* src/ntl-window.c:
	(nautilus_window_request_title_change_callback),
	(nautilus_window_connect_content_view),
	(nautilus_window_real_set_content_view):
	Got rid of ContentView and ContentViewFrame.
2000-05-25 01:49:32 +00:00
Darin Adler f6a5f321b9 [deleted] [deleted]
* libnautilus/nautilus-view-component.idl:
	* src/Makefile.am:
	* src/ntl-index-panel.c: (nautilus_index_panel_add_meta_view):
	* src/ntl-meta-view.c: [deleted]
	* src/ntl-meta-view.h: [deleted]
	* src/ntl-view.c: (nautilus_view_frame_handle_client_destroy_2),
	(nautilus_view_frame_set_active_errors),
	(nautilus_view_frame_get_label), (nautilus_view_frame_set_label):
	* src/ntl-view.h:
	* src/ntl-window-msgs.c: (nautilus_window_load_meta_view),
	(nautilus_window_update_state):
	* src/ntl-window.c:
	Removed Nautilus::MetaViewFrame and all the related classes.
2000-05-24 22:51:49 +00:00
Gene Ragan 1aedbe5892 *** empty log message *** 2000-05-24 22:49:39 +00:00
Gene Ragan ca8660c9bc *** empty log message *** 2000-05-24 22:48:16 +00:00
Darin Adler 70659f5565 [deleted] [deleted]
* libnautilus/Makefile.am:
	* libnautilus/libnautilus.h:
	* libnautilus/nautilus-meta-view-frame.c: [deleted]
	* libnautilus/nautilus-meta-view-frame.h: [deleted]
	* libnautilus/nautilus-view-component.idl:
	* po/POTFILES.in:
	* src/ntl-index-panel.c: (nautilus_index_panel_add_meta_view):
	* src/ntl-window.c: (nautilus_window_add_meta_view):
	Removed Nautilus::MetaView and all the related classes.
	We still have Nautilus::MetaViewFrame (will go soon).

	* components/help/hyperbola-nav-index.c:
	(hyperbola_navigation_index_new):
	* components/help/hyperbola-nav-search.c:
	(hyperbola_navigation_search_new):
	* components/help/hyperbola-nav-tree.c:
	(hyperbola_navigation_tree_new):
	* components/history/ntl-history-view.c: (make_obj):
	* components/loser/sidebar/nautilus-sidebar-loser.c:
	(nautilus_sidebar_loser_initialize),
	(loser_notify_location_change_callback):
	* components/loser/sidebar/nautilus-sidebar-loser.h:
	* components/notes/ntl-notes.c: (make_notes_view):
	* components/websearch/ntl-web-search.c: (make_obj):
	Changed to use just plain view insetad of meta_view.

	* libnautilus-extensions/nautilus-global-preferences.h:
	* libnautilus-extensions/nautilus-global-preferences.c:
	(global_preferences_create_dialog),
	(nautilus_global_preferences_get_sidebar_panel_view_identifiers),
	(nautilus_global_preferences_get_sidebar_view_iids),
	(nautilus_preferences_register_sidebar_view_preferences_for_ui),
	(global_preferences_register_for_ui):
	Changed naming to call them sidebar views instead of meta views,
	and got rid of code that depends on MetaView interface. We now
	use the sidebar_panel_name to determine if a view should show
	up in the sidebar.

	* src/ntl-view.h: Fixed a comment to reflect the future
	instead of the past.
2000-05-24 22:16:01 +00:00
Darin Adler 3f2b83b1a0 Moved to make clear that popt must build first.
* HACKING: Moved to make clear that popt must build first.

	* RENAMING: Added some new file renamings.

	* src/nautilus-zoomable-frame-svr.c:
	* src/nautilus.h: [removed]
	* src/ntl-app.c:
	* src/ntl-main.c:
	* src/ntl-meta-view.c:
	* src/ntl-types.h: [removed]
	* src/ntl-uri-map.c:
	* src/ntl-view-bonobo-control.c:
	* src/ntl-view-bonobo-subdoc.c:
	* src/ntl-view-frame-svr.c:
	* src/ntl-view-nautilus.c:
	* src/ntl-view-private.h:
	* src/ntl-view.c:
	* src/ntl-window-msgs.c:
	* src/ntl-window-state.c:
	* src/ntl-window.c:
	Got rid of "nautilus.h" and "ntl-types.h".

	* libnautilus/nautilus-undo-context.c:
	(impl_Nautilus_Undo_Context__destroy),
	(impl_Nautilus_Undo_Context__create),
	(impl_Nautilus_Undo_Context__get_undo_manager),
	(nautilus_undo_context_new), (nautilus_undo_context_initialize),
	(destroy):
	* libnautilus/nautilus-undo-manager.c:
	(impl_Nautilus_Undo_Manager__destroy),
	(impl_Nautilus_Undo_Manager__create),
	(impl_Nautilus_Undo_Manager__append),
	(impl_Nautilus_Undo_Manager__forget),
	(impl_Nautilus_Undo_Manager__undo), (nautilus_undo_manager_new),
	(nautilus_undo_manager_initialize),
	(nautilus_undo_manager_initialize_class),
	(nautilus_undo_manager_undo), (nautilus_undo_manager_redo),
	(nautilus_undo_manager_add_transaction),
	(nautilus_undo_manager_unregister_object),
	(nautilus_undo_manager_can_undo), (nautilus_undo_manager_can_redo),
	(destroy), (nautilus_undo_manager_enable_redo),
	(nautilus_undo_manager_set_queue_depth), (free_undo_manager_list):
	Various code cleanups. Specifically, get rid of unused
	bonobo_object and rename gtk_object to bonobo_object.
	Get rid of some yucky function pointer casts.

	* src/ntl-app.c: (nautilus_app_init):
	Got rid of bogus extra ref.

	* libnautilus-extensions/nautilus-program-chooser.c:
	(nautilus_program_chooser_new): Reindent part just to annoy John.
	* libnautilus-extensions/nautilus-program-choosing.c:
	(nautilus_launch_application): Newline at end of file (ugh).

	* src/ntl-index-panel.c: (add_command_buttons): Format tweaking.
2000-05-24 21:12:50 +00:00
Gene Z. Ragan 539ae559db Added call to CORBA_Object_duplicate(). This fixed an explosive bug.
2000-05-23  Gene Z. Ragan  <gzr@eazel.com>

	* libnautilus/nautilus-undo-context.c:
	(impl_Nautilus_Undo_Context__get_undo_manager):
	Added call to CORBA_Object_duplicate().  This
	fixed an explosive bug.

	* libnautilus/nautilus-undo-manager.c:
	* libnautilus/nautilus-undo-manager.h:
	(nautilus_undo_manager_stash_global_undo),
	(nautilus_undo_manager_get_global_undo):
	New functions to save application global instance of Nautilus_Undo_Manager

	* src/ntl-app.c: (nautilus_app_init):
	Add call to nautilus_undo_manager_stash_global_undo.

	* src/ntl-view.c:
	(nautilus_view_frame_load_client):
	Coonected Nautilus_Undo_Context interface to view frame.
2000-05-24 01:03:51 +00:00
Darin Adler 9970b3cb16 Some cleanup of the undo code, including a first cut of the
* libnautilus/nautilus-undo-manager.c:
	(impl_Nautilus_Undo_Manager__append), (nautilus_undo_manager_undo),
	(nautilus_undo_manager_redo),
	(nautilus_undo_manager_add_transaction),
	(nautilus_undo_manager_unregister_object), (destroy),
	(nautilus_undo_manager_set_queue_depth), (free_undo_manager_list),
	(prune_undo_manager_list), (nautilus_get_undo_manager),
	(undo_manager_unref), (undo_manager_ref),
	(nautilus_attach_undo_manager), (set_up_bonobo_control),
	(nautilus_undo_set_up_bonobo_control):
	Some cleanup of the undo code, including a first cut of the
	set_up_bonobo_control function. Also got rid of all the excess
	unrefs that we didn't need. I hope this is right now. Also fixed
	bug where code was trying to bonobo_object_unref a CORBA object
	directly.

	* libnautilus/nautilus-undo-manager.c:
	(nautilus_undo_set_up_bonobo_control):
	* libnautilus/nautilus-undo-manager.h:
	* libnautilus/nautilus-view-frame.c:
	(nautilus_view_real_set_bonobo_control):
	Change from setup to set_up. Setup is a noun, set up a verb phrase.

	* libnautilus/nautilus-undoable.c: (nautilus_undo_register_full),
	(nautilus_undo): Some minor cleanup and unrefing the transaction
	after adding it to the undo manager.
2000-05-23 21:47:19 +00:00
Darin Adler 8ce35298c3 The ViewFrame <-> View renaming.
We still have to rename the files.

	* RENAMING: Put in explicit cases for file name renaming.

	* src/Makefile.am:
	* src/nautilus-desktop-window.c:
	* src/nautilus-desktop-window.h:
	Added placeholders. I'll be putting code in here soon.

	* src/ntl-app.c: (display_prototype_caveat):
	Changed to use nautilus_simple_dialog again since otherwise it
	comes up behind the main window. Perhaps someone will resolve
	that issue and change it back.

	* libnautilus-extensions/nautilus-gnome-extensions.h:
	* libnautilus-extensions/nautilus-gnome-extensions.c:
	(nautilus_warning_dialog), (nautilus_warning_dialog_parented):
	Added centered version of the warning dialog as well, since
	Eskil was using gnome_warning_dialog in a case where he really
	wanted lines wrapped.

	* components/loser/.cvsignore:
	* components/loser/content/.cvsignore:
	* components/loser/sidebar/.cvsignore:
	Ignore some generated files.

	* components/hardware/main.c: (hardware_view_make_object):
	* components/hardware/nautilus-hardware-view.c:
	(nautilus_hardware_view_initialize),
	(nautilus_hardware_view_destroy),
	(nautilus_hardware_view_get_nautilus_view),
	(hardware_view_notify_location_change_callback):
	* components/hardware/nautilus-hardware-view.h:
	* components/help/hyperbola-nav-index.c:
	(hyperbola_navigation_index_select_row),
	(hyperbola_navigation_index_new):
	* components/help/hyperbola-nav-search.c:
	(hyperbola_navigation_search_select_row),
	(hyperbola_navigation_search_new):
	* components/help/hyperbola-nav-tree.c:
	(hyperbola_navigation_tree_new),
	(hyperbola_navigation_tree_notify_location_change),
	(hyperbola_navigation_tree_select_row):
	* components/history/ntl-history-view.c:
	(hyperbola_navigation_history_notify_location_change),
	(hyperbola_navigation_history_select_row), (make_obj):
	* components/html/ntl-web-browser.c: (browser_url_load_done),
	(browser_vfs_callback), (browser_goto_url_real),
	(browser_goto_url), (browser_select_url), (browser_title_changed),
	(browser_notify_location_change), (make_obj):
	* components/loser/content/main.c: (loser_make_object):
	* components/loser/content/nautilus-content-loser.c:
	(nautilus_content_loser_initialize),
	(nautilus_content_loser_destroy),
	(nautilus_content_loser_get_nautilus_view),
	(nautilus_content_loser_load_uri),
	(loser_notify_location_change_callback), (bonobo_loser_callback):
	* components/loser/content/nautilus-content-loser.h:
	* components/loser/sidebar/main.c: (loser_make_object):
	* components/loser/sidebar/nautilus-sidebar-loser.c:
	(nautilus_sidebar_loser_initialize),
	(nautilus_sidebar_loser_destroy),
	(nautilus_sidebar_loser_get_nautilus_view),
	(loser_notify_location_change_callback):
	* components/loser/sidebar/nautilus-sidebar-loser.h:
	* components/music/main.c: (music_view_make_object):
	* components/music/nautilus-music-view.c:
	(nautilus_music_view_initialize), (nautilus_music_view_destroy),
	(nautilus_music_view_get_nautilus_view),
	(music_view_notify_location_change_callback):
	* components/music/nautilus-music-view.h:
	* components/notes/ntl-notes.c: (notes_notify_location_change),
	(make_notes_view):
	* components/rpmview/main.c: (rpm_view_make_object):
	* components/rpmview/nautilus-rpm-view.c:
	(nautilus_rpm_view_initialize), (nautilus_rpm_view_destroy),
	(nautilus_rpm_view_get_nautilus_view),
	(rpm_view_notify_location_change_callback):
	* components/rpmview/nautilus-rpm-view.h:
	* components/sample/main.c: (sample_make_object):
	* components/sample/nautilus-sample-content-view.c:
	(nautilus_sample_content_view_initialize),
	(nautilus_sample_content_view_destroy),
	(nautilus_sample_content_view_get_nautilus_view),
	(sample_notify_location_change_callback):
	* components/sample/nautilus-sample-content-view.h:
	* components/services/startup/nautilus-view/main.c:
	(services_make_object):
	* components/services/startup/nautilus-view/nautilus-service-startup-view.c:
	(go_to_uri), (nautilus_service_startup_view_initialize),
	(nautilus_service_startup_view_get_nautilus_view),
	(service_main_notify_location_change_cb):
	* components/services/startup/nautilus-view/nautilus-service-startup-view.h:
	* components/websearch/ntl-web-search.c:
	(web_search_notify_location_change), (do_search), (make_obj):
	* libnautilus/nautilus-clipboard.c:
	(nautilus_clipboard_info_set_view),
	(nautilus_clipboard_info_get_view),
	(nautilus_clipboard_info_get_bonobo_control):
	* libnautilus/nautilus-clipboard.h:
	* src/file-manager/fm-directory-view.c:
	(bonobo_menu_move_to_trash_callback), (get_bonobo_control),
	(fm_directory_view_initialize), (display_selection_info),
	(fm_directory_view_send_selection_change),
	(notify_location_change_callback),
	(notify_selection_change_callback),
	(stop_location_change_callback), (done_loading),
	(fm_directory_view_get_nautilus_view),
	(fm_directory_view_activate_file_internal), (finish_loading_uri):
	* src/file-manager/fm-directory-view.h:
	Updated for new libnautilus where the NautilusViewFrame
	classes are now named NautilusView.

	* libnautilus/nautilus-content-view-frame.c:
	(nautilus_content_view_initialize), (nautilus_content_view_new),
	(nautilus_content_view_new_from_bonobo_control),
	(nautilus_content_view_destroy),
	(nautilus_content_view_initialize_class),
	(nautilus_content_view_request_title_change):
	* libnautilus/nautilus-content-view-frame.h:
	* libnautilus/nautilus-meta-view-frame.c:
	(nautilus_meta_view_initialize), (nautilus_meta_view_new),
	(nautilus_meta_view_new_from_bonobo_control),
	(nautilus_meta_view_destroy),
	(nautilus_meta_view_initialize_class):
	* libnautilus/nautilus-meta-view-frame.h:
	Changed Nautilus*ViewFrame classes to Nautilus*View. This is
	something we had in RENAMING for some time, and it's consistent
	with Bonobo's naming of BonoboControl and BonoboControlFrame.
	Also changed interfaces to use actual BonoboControl * instead of
	using BonobObject * and query_interface.

	* libnautilus/nautilus-undo-manager.c:
	(nautilus_undo_setup_bonobo_control):
	* libnautilus/nautilus-undo-manager.h:
	Changed the BonoboControl parameter to actually be of type
	BonoboControl * instead of BonoboObject *.

	* libnautilus/nautilus-view-frame-private.h:
	* libnautilus/nautilus-view-frame.c:
	(impl_Nautilus_View_save_state), (impl_Nautilus_View_load_state),
	(impl_Nautilus_View_notify_location_change),
	(impl_Nautilus_View_show_properties),
	(impl_Nautilus_View_notify_selection_change),
	(impl_Nautilus_View_stop_location_change),
	(impl_Nautilus_View__destroy), (impl_Nautilus_View__create),
	(nautilus_view_initialize_class), (nautilus_view_set_arg),
	(nautilus_view_get_arg), (nautilus_view_initialize),
	(nautilus_view_new), (nautilus_view_new_from_bonobo_control),
	(nautilus_view_destroy), (nautilus_view_ensure_view_frame),
	(nautilus_view_request_location_change),
	(nautilus_view_request_selection_change),
	(nautilus_view_request_status_change),
	(nautilus_view_request_progress_change),
	(nautilus_view_get_bonobo_control),
	(nautilus_view_get_main_window),
	(nautilus_view_real_set_bonobo_control):
	* libnautilus/nautilus-view-frame.h:
	* libnautilus/nautilus-zoomable.c:
	(impl_Nautilus_Zoomable__get_zoom_level),
	(impl_Nautilus_Zoomable__set_zoom_level),
	(impl_Nautilus_Zoomable__get_min_zoom_level),
	(impl_Nautilus_Zoomable__get_max_zoom_level),
	(impl_Nautilus_Zoomable__get_is_continuous),
	(impl_Nautilus_Zoomable_zoom_in),
	(impl_Nautilus_Zoomable_zoom_out),
	(impl_Nautilus_Zoomable_zoom_to_fit),
	(impl_Nautilus_Zoomable__destroy),
	(impl_Nautilus_Zoomable__create), (marshal_NONE__DOUBLE),
	(nautilus_zoomable_initialize_class), (nautilus_zoomable_set_arg),
	(nautilus_zoomable_get_arg), (nautilus_zoomable_initialize),
	(nautilus_zoomable_new),
	(nautilus_zoomable_new_from_bonobo_control),
	(nautilus_zoomable_destroy),
	(nautilus_zoomable_ensure_zoomable_frame),
	(nautilus_zoomable_set_zoom_level),
	(nautilus_zoomable_get_bonobo_control),
	(nautilus_zoomable_real_set_bonobo_control):
	* libnautilus/nautilus-zoomable.h:
	* src/nautilus-zoomable-frame-svr.c:
	(impl_Nautilus_ZoomableFrame__destroy),
	(impl_Nautilus_ZoomableFrame__create),
	(impl_Nautilus_ZoomableFrame_notify_zoom_level):
	* src/ntl-app.c: (impl_Nautilus_Application_create_object),
	* src/ntl-content-view.c:
	(impl_Nautilus_ContentViewFrame_request_title_change),
	(nautilus_content_view_frame_get_type),
	(nautilus_content_view_frame_class_init),
	(nautilus_content_view_frame_init),
	(nautilus_content_view_frame_set_active),
	(nautilus_content_view_frame_request_title_change):
	* src/ntl-content-view.h:
	* src/ntl-index-panel.c: (nautilus_index_panel_add_meta_view),
	(nautilus_index_panel_remove_meta_view):
	* src/ntl-index-panel.h:
	* src/ntl-meta-view.c: (nautilus_meta_view_frame_initialize_class),
	(nautilus_meta_view_frame_initialize),
	(nautilus_meta_view_frame_set_label),
	(nautilus_meta_view_frame_get_label):
	* src/ntl-meta-view.h:
	* src/ntl-view-bonobo-control.c: (destroy_bonobo_control_view),
	(nautilus_view_frame_activate_uri),
	(bonobo_control_try_load_client),
	(bonobo_control_notify_location_change):
	* src/ntl-view-bonobo-subdoc.c: (destroy_bonobo_subdoc_view),
	(bonobo_subdoc_notify_location_change),
	(bonobo_subdoc_try_load_client):
	* src/ntl-view-frame-svr.c: (impl_Nautilus_ViewFrame__destroy),
	(impl_Nautilus_ViewFrame__create),
	(impl_Nautilus_ViewFrame_request_location_change),
	(impl_Nautilus_ViewFrame_request_selection_change),
	(impl_Nautilus_ViewFrame_request_status_change),
	(impl_Nautilus_ViewFrame_request_progress_change):
	* src/ntl-view-nautilus.c: (nautilus_view_try_load_client),
	(destroy_nautilus_view), (nv_show_properties), (nv_save_state),
	(nv_load_state), (nv_notify_location_change),
	(nv_notify_selection_change), (nv_stop_location_change):
	* src/ntl-view-private.h:
	* src/ntl-view.c: (nautilus_view_frame_get_type),
	(nautilus_view_frame_class_init), (nautilus_view_frame_set_arg),
	(nautilus_view_frame_get_arg), (nautilus_view_frame_init),
	(nautilus_view_frame_destroy_client),
	(nautilus_view_frame_destroy), (nautilus_view_frame_constructed),
	(nautilus_view_frame_construct_arg_set),
	(nautilus_view_frame_size_request),
	(nautilus_view_frame_size_allocate),
	(nautilus_view_frame_handle_client_destroy),
	(nautilus_view_frame_handle_client_destroy_2),
	(nautilus_view_frame_load_client),
	(nautilus_view_frame_notify_location_change),
	(nautilus_view_frame_notify_selection_change),
	(nautilus_view_frame_load_state), (nautilus_view_frame_save_state),
	(nautilus_view_frame_show_properties),
	(nautilus_view_frame_stop_location_change),
	(nautilus_view_frame_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_is_continuous),
	(nautilus_view_frame_zoom_in), (nautilus_view_frame_zoom_out),
	(nautilus_view_frame_zoom_to_fit), (nautilus_view_frame_get_iid),
	(nautilus_view_frame_get_client_objref),
	(nautilus_view_frame_get_objref),
	(nautilus_view_frame_request_location_change),
	(nautilus_view_frame_request_selection_change),
	(nautilus_view_frame_request_status_change),
	(nautilus_view_frame_request_progress_change),
	(nautilus_view_frame_notify_zoom_level), (check_object),
	(nautilus_view_frame_set_active_errors):
	* src/ntl-view.h:
	* src/ntl-window-msgs.c: (nautilus_window_notify_selection_change),
	(nautilus_window_request_selection_change),
	(nautilus_window_request_status_change),
	(nautilus_window_request_progress_change),
	(nautilus_window_request_title_change),
	(nautilus_window_update_internals), (nautilus_window_update_view),
	(nautilus_window_view_destroyed), (nautilus_window_load_meta_view),
	(nautilus_window_request_location_change),
	(nautilus_window_load_content_view),
	(nautilus_window_update_state), (nautilus_window_set_state_info),
	(nautilus_window_begin_location_change):
	* src/ntl-window-msgs.h:
	* src/ntl-window-private.h:
	* src/ntl-window.c: (zoom_in_cb), (zoom_out_cb),
	(nautilus_window_set_arg), (nautilus_window_send_show_properties),
	(view_menu_switch_views_callback),
	(nautilus_window_set_content_view),
	(nautilus_window_add_meta_view),
	(nautilus_window_remove_meta_view_real),
	(nautilus_window_remove_meta_view),
	(nautilus_window_request_location_change_cb),
	(nautilus_window_request_selection_change_cb),
	(nautilus_window_request_status_change_cb),
	(nautilus_window_request_progress_change_cb),
	(nautilus_window_request_title_change_callback),
	(nautilus_window_connect_view),
	(nautilus_window_connect_content_view),
	(nautilus_window_real_set_content_view):
	* src/ntl-window.h:
	Changed Nautilus*View classes to Nautilus*ViewFrame. This is
	something we had in RENAMING for some time, and it's consistent
	with Bonobo's naming of BonoboControl and BonoboControlFrame.
	Also changed interfaces to use actual BonoboControl * instead of
	using BonoboObject * and query_interface.
2000-05-23 20:13:57 +00:00
Gene Z. Ragan f469d19b6b Additonal work on making the undo context CORBA object.
2000-05-23  Gene Z. Ragan  <gzr@eazel.com>

	* libnautilus/nautilus-undo-context.c:
	* libnautilus/nautilus-undo-context.h:
	(impl_Nautilus_Undo_Context__get_undo_manager),
	(nautilus_undo_context_new), (nautilus_undo_context_initialize):
	Additonal work on making the undo context CORBA object.

	* libnautilus/nautilus-undo-manager.c:
	* libnautilus/nautilus-undo-manager.h:
	* libnautilus/nautilus-undo-manager-private.h:
	(impl_Nautilus_Undo_Manager__undo),
	(nautilus_undo_manager_initialize),
	(nautilus_undo_manager_add_transaction),
	(nautilus_undo_manager_unregister_object),
	(nautilus_get_undo_manager), (nautilus_attach_undo_manager),
	Changed APIs to accept and return Nautilus_Undo_Manager CORBA
	object instead of NautilusUndoManager pointer.

	(nautilus_undo_setup_bonobo_control):
	Added function stub to be filled later.  This function
	will attach an undo manager to a bonobo control.

	Removed several functions no longer needed in new design,
	including nautilus_undo_manager_begin_transaction(),
	and nautilus_undo_manager_end_transaction().

	* src/nautilus-window-menus.c: (edit_menu_undo_callback),
	(nautilus_window_initialize_menus), (update_undo_menu_item):
	Changed to use modified undo API

	* src/ntl-app.c:
	(nautilus_app_init):
	Changed to use modified undo API

	* src/ntl-window.c: (nautilus_window_constructed)
	Changed to use modified undo API
2000-05-23 18:48:11 +00:00
Darin Adler 503b5255e1 Implemented Reload for directory views.
* libnautilus-extensions/nautilus-directory-private.h:
	* libnautilus-extensions/nautilus-directory-async.c:
	(nautilus_directory_monitor_add_internal),
	(dequeue_pending_idle_callback), (cancel_directory_load),
	(directory_load_done),
	(nautilus_directory_monitor_remove_internal),
	(nautilus_directory_call_when_ready_internal),
	(mark_all_files_unconfirmed), (start_monitoring_file_list),
	(nautilus_directory_stop_monitoring_file_list),
	(nautilus_directory_force_reload):
	* libnautilus-extensions/nautilus-directory.c:
	(call_files_changed_unref_free_list),
	(nautilus_directory_notify_files_removed),
	(nautilus_directory_notify_files_moved),
	(nautilus_directory_file_monitor_add):
	* libnautilus-extensions/nautilus-file-private.h:
	* libnautilus-extensions/nautilus-file.c: (nautilus_file_get),
	(destroy), (nautilus_file_monitor_remove), (nautilus_file_delete),
	(nautilus_file_mark_gone), (nautilus_file_changed),
	(nautilus_file_emit_changed):
	Added the necessary tweaks to the async. I/O so we can handle
	a reload, not just the initial load.

	* libnautilus-extensions/nautilus-icon-container.h:
	* libnautilus-extensions/nautilus-icon-container.c:
	(nautilus_icon_container_add): Changed API so it will detect if
	you try to add the same item twice and indicate it with a return
	value; needed so we can handle reload.

	* libnautilus-extensions/nautilus-list.c: (set_single_click_mode),
	(update_single_click_mode_from_preferences),
	(nautilus_list_initialize), (click_policy_changed_callback):
	Fixed bug where a change in single click mode would chang the
	appearance of the names in the list, but not cause a redraw when
	the setting was changed.

	* libnautilus/nautilus-undoable.c:
	(undo_atom_destroy_callback_data), (undo_atom_destroy),
	(undo_atom_destroy_callback_data_g_func_cover),
	(nautilus_undo_register_full):
	Fixed a bug where it would try to destroy the undo atom even when
	it didn't own it.

	* libnautilus/nautilus-undoable.h:
	Got rid of some cruft I left in here by accident.

	* src/file-manager/fm-icon-view.c: (fm_icon_view_add_file):
	* src/file-manager/fm-list-view.c: (fm_list_view_add_file):
	Only add the files if they are not already in the list. This is
	needed for reload.

	* src/ntl-main.c: (main): Tweaked this function to be easier to
	understand and better organized. Also added a "desktop" option
	as a start for my next task.
2000-05-23 01:04:57 +00:00
Ettore Perazzoli 154367ab8b Fix compilation with builddir != srcdir. 2000-05-20 18:43:42 +00:00
Maciej Stachowiak cf21c9eef1 Fix bugzilla tasks #599 (hex number is bad default for meta view
names) and #631 (nead oaf query to determine metaviews).

	* libnautilus-extensions/nautilus-view-identifier.h,
	libnautilus-extensions/nautilus-view-identifier.c:
	(nautilus_view_identifier_new, get_lang_list,
	nautilus_view_identifier_new_from_oaf_server_info,
	nautilus_view_identifier_free): Moved NautilusViewIdentifier code
	here from ntl-uri-map.[ch].
	(nautilus_view_identifier_new_from_content_view),
	(nautilus_view_identifier_new_from_sidebar_panel),
	(nautilus_view_identifier_free_callback),
	(nautilus_view_identifier_free_list): New functions.
	* libnautilus-extensions/Makefile.am: Add
	nautilus-view-identifier.[ch] to build.
	* src/ntl-types.h: Removed typedef for NautilusViewIdentifier.

	* libnautilus-extensions/nautilus-glib-extensions.h:
	* libnautilus-extensions/nautilus-glib-extensions.c
	(nautilus_g_list_free_deep_custom): New function, like
	`nautilus_g_list_free_deep' but lets you pass your own free
	function.
	(nautilus_g_list_free_deep): Use `nautilus_g_list_free_deep_custom'
	(nautilus_g_list_partition): New function to destructively
	partition a GList into two, depending on whether they satisfy the
	provided predicate or not.
	(nautilus_test_predicate), (nautilus_self_check_glib_extensions):
	Added unit tests for `nautilus_g_list_partition' and for
	`nautilus_g_list_equal' since the `nautilus_g_list_partition'
	tests rely on it.
	* libnautilus-extensions/nautilus-directory.c:
	(nautilus_directory_notify_files_moved): Use
	`nautilus_g_list_free_deep_custom'.
	* libnautilus-extensions/nautilus-gdk-pixbuf-extensions.c
	(nautilus_gdk_pixbuf_list_free): Likewise.
	* libnautilus-extensions/nautilus-icon-factory.c
	(nautilus_scalable_icon_list_free): Likewise.
	* libnautilus-extensions/nautilus-string-list.c
	(nautilus_string_list_clear): Likewise.
	* nautilus-widgets/nautilus-preferences.c (pref_hash_node_free,
	prefs_hash_lookup_with_implicit_registration): Likewise.

	* libnautilus-extensions/nautilus-global-preferences.c,
	libnautilus-extensions/nautilus-global-preferences.h
	(global_preferences_create_dialog,
	nautilus_global_preferences_get_sidebar_panel_view_identifiers,
	nautilus_global_preferences_get_meta_view_iids,
	nautilus_preferences_register_meta_view_preferences_for_ui,
	global_preferences_register_for_ui): Change things around to
	determine the set of sidebar panel prefs at run time, and to pass
	around NautilusViewIdentifiers rather than just iid strings so we
	can use the statically defined name in the oafinfo.

	* src/ntl-uri-map.h, src/ntl-uri-map.c: (set_initial_content_iid,
	got_file_info_callback, sidebar_panel_preference_is_on,
	(add_sidebar_panel_identifiers, nautilus_navigation_info_free):
	Changed things around to better handle sidebar panel (AKA meta
	view) selection, and pass around both name and iid.

	* src/ntl-window-msgs.c:
	(nautilus_window_request_selection_change,
	nautilus_window_has_really_changed,
	nautilus_window_load_meta_view, nautilus_window_update_state,
	nautilus_window_set_state_info): Fixed everything to pass around
	ViewIdentifiers instead of iids for sidebar panels and set the
	label approrpiately when activating; replaced a whole bunch of
	GSList usage with GList (we can always optimize this stuff later).
	* src/ntl-window.h, src/ntl-window.c: (nautilus_window_destroy,
	nautilus_window_load_content_view_menu,
	nautilus_window_set_content_view, nautilus_window_add_meta_view,
	nautilus_window_remove_meta_view_real,
	nautilus_window_remove_meta_view): Deal with the above changes
	(mostly GSList -> GList changes).

	* src/ntl-view-bonobo-control.c, src/ntl-view-bonobo-subdoc.c,
	src/ntl-view-nautilus.c, src/ntl-view-private.h: Remove all
	get_label related calls since we get that from the oafinfo now.
	* libnautilus/nautilus-meta-view-frame.h,
	libnautilus/nautilus-meta-view-frame.c:
	(nautilus_meta_view_frame_initialize,
	nautilus_meta_view_frame_new_from_bonobo_control,
	nautilus_meta_view_frame_destroy): Remove
	`nautilus_meta_view_frame_set_label' machinery and associated
	machinery since we now get the label statically from the oafinfo.
	* components/history/ntl-history-view.c: (make_obj): Don't call
	`nautilus_meta_view_frame_set_label' any more, the label is now
	statically determined from the oafinfo file.
	* components/notes/ntl-notes.c: (make_notes_view): Likewise.
	* components/websearch/ntl-web-search.c: (make_obj): Likewise.
	* components/help/hyperbola-nav-index.c: Likewise.
	(hyperbola_navigation_index_new): Likewise.
	* components/help/hyperbola-nav-search.c: Likewise.
	(hyperbola_navigation_search_new): Likewise.
	* components/help/hyperbola-nav-tree.c: Likewise.
	(hyperbola_navigation_tree_new): Likewise.
	* src/ntl-meta-view.h, src/ntl-meta-view.c:
	(nautilus_meta_view_set_label),
	(nautilus_meta_view_get_label): Have an explicit value to set,
	rather than trying to get it through CORBA. This is kind of a
	hack, really we should pass around a label and a NautilusMetaView
	separately and remove this stuff.
	* components/help/hyperbola.oafinfo,
	components/notes/ntl-notes.oafinfo,
	components/websearch/ntl-web-search.oafinfo,
	components/history/ntl-history-view.oafinfo: Updated to include
	latest Nautilus attributes.
2000-05-20 02:49:36 +00:00
Gene Z. Ragan ec4c139c8a GTK and CORBA object that acts as interface to an undo manager.
2000-05-19  Gene Z. Ragan  <gzr@eazel.com>

	* libnautilus/nautilus-undo-context.c:
	* libnautilus/nautilus-undo-context.h:
	(impl_Nautilus_Undo_Context__destroy),
	(impl_Nautilus_Undo_Context__create),
	(impl_Nautilus_Undo_Context__get_undo_manager),
	(nautilus_undo_context_new), (nautilus_undo_context_initialize),
	(nautilus_undo_context_initialize_class), (destroy):
	GTK and CORBA object that acts as interface to an undo manager.

	* libnautilus/Makefile.am:
	Added entries for new NautilusUndoContext files.

	* libnautilus/nautilus-undo-manager.c:
	(impl_Nautilus_Undo_Manager__forget), (nautilus_undo_manager_undo),
	(nautilus_undo_manager_unregister_object),
	(get_current_transaction_name), (free_undo_manager_list_data),
	(prune_undo_manager_list):
	Removed all references to NautilusUndoTransaction and changed them to use
	the Nautilus_Undo_Transaction CORBA object instead.
2000-05-19 23:56:10 +00:00
Darin Adler f3df1c2b67 File name changes.
* components/services/trilobite/sample/command-line/.cvsignore:
	* components/services/trilobite/sample/service/.cvsignore:
	File name changes.

	* libnautilus-extensions/nautilus-directory.c:
	(nautilus_directory_file_monitor_add),
	(nautilus_self_check_directory):
	* libnautilus-extensions/nautilus-directory.h:
	* src/file-manager/fm-directory-view.c: (finish_loading_uri):
	Added reload interface.

	* libnautilus/nautilus-undoable.c: (nautilus_undo_register),
	(undo_atom_destroy), (undo_atom_destroy_notify_cover),
	(undo_atom_destroy_g_func_cover), (save_callback),
	(restore_callback), (nautilus_undo_register_full),
	(nautilus_undo_unregister), (nautilus_undo):
	* libnautilus/nautilus-undoable.h:
	Implemented new simplified Undo API.

	* libnautilus-extensions/nautilus-entry.c:
	(nautilus_entry_initialize), (nautilus_entry_destroy),
	(nautilus_entry_key_press), (nautilus_entry_changed),
	(register_edit_undo), (update_undo_text),
	(restore_from_undo_snapshot_callback),
	(nautilus_entry_enable_undo):
	* libnautilus-extensions/nautilus-icon-container.c:
	(hide_rename_widget):
	* libnautilus-extensions/nautilus-icon-text-item.c: (iti_event),
	(register_rename_undo), (restore_from_undo_snapshot_callback):
	* src/nautilus-bookmarks-window.c: (on_window_delete_event):
	* src/nautilus-location-bar.c: (destroy):
	Use new simplified Undo API.

	* libnautilus/nautilus-undo-manager.h:
	Remove UNDO_MANAGER_NAME, which is no longer used.

	* src/file-manager/fm-icon-view.c:
	(icon_position_changed_callback): Fixed a bad g_free that was
	cause seg faults when you resized an icon.
2000-05-19 21:38:54 +00:00
Gene Z. Ragan 71a5435f1b More undo framework work. Still incomplete.
2000-05-19  Gene Z. Ragan  <gzr@eazel.com>

	More undo framework work.  Still incomplete.

	* libnautilus-extensions/nautilus-entry.c:
	(nautilus_entry_changed):
	Modified to use new undo manager location API

	* libnautilus-extensions/nautilus-icon-text-item.c:
	(iti_event),
	(restore_from_undo_snapshot_callback):
	Modified to use new undo manager location API

	* libnautilus/nautilus-undo-manager.c:
	* libnautilus/nautilus-undo-manager.h:
	(impl_Nautilus_Undo_Manager__create),
	(impl_Nautilus_Undo_Manager__append),
	(impl_Nautilus_Undo_Manager__forget),
	(nautilus_undo_manager_begin_transaction),
	(nautilus_undo_manager_end_transaction),
	(nautilus_undo_manager_undo), (nautilus_undo_manager_redo),
	(nautilus_undo_manager_add_transaction),
	(nautilus_undo_manager_unregister_object),
	(free_undo_manager_list_data), (prune_undo_manager_list):
	Modified to use new API and Undo::Manager::Transaction

	* libnautilus/nautilus-undo-transaction.c:
	* libnautilus/nautilus-undo-transaction.h:
	(impl_Nautilus_Undo_Transaction__destroy),
	(impl_Nautilus_Undo_Transaction__create),
	(impl_Nautilus_Undo_Transaction__get_undo_description),
	(impl_Nautilus_Undo_Transaction__get_redo_description),
	(impl_Nautilus_Undo_Transaction__get_base_description),
	(impl_Nautilus_Undo_Transaction__undo),
	(nautilus_undo_transaction_new),
	(nautilus_undo_transaction_initialize),
	(nautilus_undo_transaction_destroy),
	(nautilus_undo_transaction_initialize_class),
	(nautilus_undo_transaction_undo),
	(nautilus_undo_transaction_contains_object):
	Added support for new Undo::Manager::Transaction object
2000-05-19 17:06:15 +00:00
Darin Adler c49ece8a7c Eskil showed me how to fix these so they'd work when orbit-idl was not in
* libnautilus/Makefile.am:
	* src/file-manager/Makefile.am:
	Eskil showed me how to fix these so they'd work when orbit-idl
	was not in the path at compile time.
2000-05-18 23:33:52 +00:00
Darin Adler 7e7fc3ecf2 Change format to make popt "pop" out more.
* HACKING: Change format to make popt "pop" out more.

	* libnautilus-extensions/nautilus-entry.h:
	* src/file-manager/fm-properties-window.c: (create_basic_page):
	* src/nautilus-bookmarks-window.c: (on_text_field_focus_in_event),
	(on_window_delete_event):
	* src/nautilus-location-bar.c: (nautilus_location_bar_enable_undo):
	* src/nautilus-location-bar.h:
	* src/nautilus-window-menus.c: (edit_menu_undo_callback),
	(bookmarks_menu_add_bookmark_callback),
	(bookmarks_menu_edit_bookmarks_callback),
	(get_or_create_bookmarks_window), (nautilus_bookmarks_exiting),
	(edit_bookmarks), (nautilus_window_initialize_menus),
	(update_undo_menu_item):
	* src/ntl-app.c: (nautilus_app_init), (nautilus_app_destroy):
	* libnautilus-extensions/nautilus-icon-container.c:
	(nautilus_icon_container_start_renaming_selected_item):
	* libnautilus-extensions/nautilus-entry.c:
	(nautilus_entry_key_press), (nautilus_entry_enable_undo):
	* libnautilus/nautilus-undo-manager.c:
	(nautilus_undo_manager_begin_transaction),
	(nautilus_undo_manager_unregister_object),
	(prune_undo_manager_list), (nautilus_get_undo_manager),
	(nautilus_attach_undo_manager), (nautilus_share_undo_manager):
	* libnautilus/nautilus-undo-manager.h:
	* src/ntl-window-private.h:
	* src/ntl-window.c: (nautilus_window_constructed),
	(nautilus_window_real_set_content_view),
	(nautilus_window_get_undo_manager):
	* src/ntl-window.h:
	Got rid of the undo manager parameter for the enable_undo
	operation.
	Eliminated code that sets up the undo manager except for the top
	widgets. We only need it attached to windows and to the top widget
	in each component.
	Change callers to get the undo manager in a few simple ways
	instead of calling gtk_object_get_data directly. Added some calls
	to attach the undo manager to an arbitrary object.

	* libnautilus/nautilus-undo.idl: Added comments to the IDL and
	also added the Undo::Context class.

	* libnautilus/nautilus-view-component.idl: Removed the dependency
	on the undo IDL and the undo_manager attribute.

	* src/nautilus-bookmarks-window.h:
	* src/nautilus-bookmarks-window.c: (create_bookmarks_window):
	Changed interface to take object to inherit the undo manager from
	instead of the undo manager itself. Got rid of unnecesary undo
	manager setting.
	(nautilus_bookmarks_window_save_geometry): Also changed interface
	to use GtkWindow instead of GtkWidget.
2000-05-18 22:31:58 +00:00
Gene Z. Ragan 19159e79b3 CVS:
2000-05-17  Gene Z. Ragan  <gzr@eazel.com>
											      CVS: ----------------------------------------------------------------------
	First phase of modifying undo code.  These changes				      CVS: Enter Log.  Lines beginning with `CVS:' are removed automatically
	affect the way undo is handled internally to Nautilus and			      CVS:
	also defines a new IDL.  This is work in progress.				      CVS: Committing in .
											      CVS:
	* libnautilus-extensions/nautilus-entry.c:					      CVS: Modified Files:
	Modified to use gtk_object_get_data() mechanism to locate undo manager		      CVS:    ChangeLog libnautilus/.cvsignore libnautilus/Makefile.am
											      CVS:    libnautilus/nautilus-undo-manager-private.h
	* libnautilus-extensions/nautilus-icon-container.c:				      CVS:    libnautilus/nautilus-undo-manager.c
	(nautilus_icon_container_start_renaming_selected_item): 			      CVS:    libnautilus/nautilus-undo-manager.h
	Modified to use gtk_object_get_data() mechanism to locate undo manager		      CVS:    libnautilus/nautilus-undo-transaction.h
											      CVS:    libnautilus/nautilus-undoable.c
	* libnautilus-extensions/nautilus-icon-text-item.c: (iti_event),		      CVS:    libnautilus/nautilus-undoable.h
	(restore_from_undo_snapshot_callback):						      CVS:    libnautilus/nautilus-view-component.idl
	Modified to use gtk_object_get_data() mechanism to locate undo manager		      CVS:    libnautilus-extensions/nautilus-entry.c
											      CVS:    libnautilus-extensions/nautilus-entry.h
	* libnautilus/.cvsignore:							      CVS:    libnautilus-extensions/nautilus-icon-container.c
	Added generated IDL source and header files to ignore				      CVS:    libnautilus-extensions/nautilus-icon-text-item.c
											      CVS:    src/nautilus-bookmarks-window.c
	* libnautilus/Makefile.am:							      CVS:    src/nautilus-bookmarks-window.h src/nautilus-location-bar.c
	Modified makefile to include new IDL file for undo manager			      CVS:    src/nautilus-location-bar.h src/nautilus-window-menus.c
											      CVS:    src/ntl-app.c src/ntl-window-private.h src/ntl-window.c
	* libnautilus/nautilus-undo-manager.c:						      CVS:    src/ntl-window.h src/file-manager/fm-properties-window.c
	(impl_Nautilus_Undo_Manager__destroy),						      CVS: Added Files:
	(impl_Nautilus_Undo_Manager__create),						      CVS:    libnautilus/nautilus-undo.idl
	(impl_Nautilus_Undo_Manager__append),						      CVS: Removed Files:
	(impl_Nautilus_Undo_Manager__forget),						      CVS:    libnautilus/nautilus-undo-manager-component.idl
	(nautilus_undo_manager_initialize),						      CVS: ----------------------------------------------------------------------
	(nautilus_undo_manager_initialize_class),
	(nautilus_undo_manager_begin_transaction),
	(nautilus_undo_manager_end_transaction),
	(nautilus_undo_manager_undo), (nautilus_undo_manager_redo),
	(nautilus_undo_manager_add_transaction),
	(nautilus_undo_manager_unregister_object),
	(nautilus_undo_manager_can_undo), (nautilus_undo_manager_can_redo),
	(get_current_transaction_name),
	(nautilus_undo_manager_get_current_undo_transaction_name),
	(nautilus_undo_manager_get_current_redo_transaction_name),
	(destroy), (nautilus_undo_manager_enable_redo),
	(nautilus_undo_manager_set_queue_depth),
	(free_undo_manager_list_data), (prune_undo_manager_list):
	Changes to support new IDL and new undo manager mechanism.

	* libnautilus/nautilus-undo.idl:
	New undo manager IDL file

	* libnautilus/nautilus-undo-manager-component.idl:
	Removed old undo manager IDL file

	* src/file-manager/fm-properties-window.c:
	(create_basic_page):
	Modified to use gtk_object_get_data() mechanism to locate undo manager

	* src/nautilus-bookmarks-window.c:
	(create_bookmarks_window),
	(on_text_field_focus_in_event),
	(on_window_delete_event):
	Modified to use gtk_object_get_data() mechanism to locate undo manager

	* src/nautilus-location-bar.c:
	(nautilus_location_bar_set_location),
	(nautilus_location_bar_enable_undo):
	Modified to use gtk_object_get_data() mechanism to locate undo manager

	* src/nautilus-window-menus.c:
	(edit_menu_undo_callback),
	(edit_menu_cut_callback),
	(bookmarks_menu_edit_bookmarks_callback),
	(get_bookmarks_window),
	(nautilus_bookmarks_exiting),
	(nautilus_window_edit_bookmarks),
	(nautilus_window_initialize_menus),
	(update_undo_menu_item):
	Modified to use gtk_object_get_data() mechanism to locate undo manager

	* src/ntl-app.c:
	(impl_Nautilus_Application__get_view_windows),
	(impl_Nautilus_Application_new_view_window),
	(impl_Nautilus_Application_supports),
	(impl_Nautilus_Application_create_object),
	(impl_Nautilus_Application__create), (nautilus_app_get_type),
	(nautilus_app_class_init), (nautilus_app_init), (nautilus_app_new),
	(nautilus_app_destroy), (nautilus_app_startup),
	(nautilus_app_create_window):
	Modified to use gtk_object_get_data() mechanism to locate undo manager.
	Added and modified IDL C stubs to match new IDL interface.

	* src/ntl-window.c:
	(nautilus_window_constructed),
	(nautilus_window_set_arg):
	Changed order that arguments are set at time of main window create so the app instance
	variable is valid when the main window is contructed.
2000-05-17 23:54:25 +00:00
Eskil Heyn Olsen fd2cb2e9b2 This is way people should use a highlighting editor so you wouldn't have
* libnautilus/Makefile.am (BUILT_SOURCES): This is way people
	should use a highlighting editor so you wouldn't have these broken
	BUILT_SOURCES things.

	* Makefile.am (SUBDIRS): Moved components and helper-utilies
	downwards in the SUBDIRS so it builds again.
2000-05-13 00:31:31 +00:00
Darin Adler 055c1e5229 Removed the fsextension IDL, which was a work in progress that no one is
* idl/Makefile.am:
	* idl/fsextension.idl:
	* libnautilus-extensions/Makefile.am:
	* libnautilus-extensions/.cvsignore:
	Removed the fsextension IDL, which was a work in progress that no
	one is working on.

	* libnautilus/.cvsignore:
	Added the undo manager stuff.

	* libnautilus-extensions/.cvsignore:
	Removed the undo manager stuff.

	* libnautilus-extensions/nautilus-directory-private.h:
	* libnautilus-extensions/nautilus-file.c:
	(nautilus_file_denies_access_permission): Handle deleted file case.
	(nautilus_file_can_rename): Handle deleted file case.
	(file_operation_state_new), (file_operation_state_free),
	(file_operation_state_complete),
	(rename_update_info_and_metafile), (rename_callback),
	(nautilus_file_rename): Put in a basic framework for file
	operations that can take a while.  Used it to make renaming async.
	(nautilus_file_can_get_permissions): Handle deleted file case.
	(nautilus_file_set_permissions): Handle case where you can't get
	permissions properly. I inadvertently delete this last time.

	* libnautilus-extensions/nautilus-metadata.h:
	Added a metadata key for the icon view sort. Still need to write
	the code to save this.
2000-05-12 01:11:15 +00:00
Gene Z. Ragan bc22620f48 Change makefiles to link against libnautilus. This is so calls to the undo
2000-05-11  Gene Z. Ragan  <gzr@eazel.com>

	* helper-utilities/authenticate/Makefile.am:
	* nautilus-widgets/Makefile.am:
	* libnautilus-extensions/Makefile.am:
	* libnautilus/Makefile.am:
	Change makefiles to link against libnautilus.  This is so calls
	to the undo manager code resolve.  There is probably a better way to
	do this.

	* libnautilus-extensions/nautilus-entry.c:
	* libnautilus-extensions/nautilus-icon-container.c:
	* libnautilus-extensions/nautilus-icon-text-item.c:
	* src/nautilus-bookmarks-window.c:
	* src/nautilus-location-bar.c:
	* src/nautilus-window-menus.c:
	* src/ntl-app.c:
	Changed to #include <libnautilus-extensions/nautilus-undo-manager.h>
	to #include <libnautilus/nautilus-undo-manager.h>
2000-05-11 10:35:55 +00:00
Gene Z. Ragan a06913992e *libnautilus/nautilus-undo-manager-component.idl
2000-05-10  Gene Z. Ragan  <gzr@eazel.com>

	*libnautilus/nautilus-undo-manager-component.idl
	*libnautilus/nautilus-undo-manager-private.h
	*libnautilus/nautilus-undo-manager.c
	*libnautilus/nautilus-undo-manager.h
	*libnautilus/nautilus-undo-transaction.c
	*libnautilus/nautilus-undo-transaction.h
	*libnautilus/nautilus-undoable.c
	*libnautilus/nautilus-undoable.h

	Moved files to libnautilus so IDL comiplation would work properly
	and at the suggestion of mjs.

	*libnautilus-extensions/Makefile.am
	Removed undo files.

	*libnautilus/Makefile.am
	Added undo files.

	*libnautilus/nautilus-undo-manager-component.idl
	Additional fixes so a clean build would occuer properly.
2000-05-11 07:30:45 +00:00
Gene Ragan 7cc11cb109 *** empty log message *** 2000-05-11 01:46:36 +00:00
John Sullivan 1f69f69228 Added #define for path of Nautilus's toolbar so components can use Bonobo
* libnautilus/nautilus-bonobo-ui.h: Added #define for path of
	Nautilus's toolbar so components can use Bonobo merging without
	secret inside information.
	* components/sample/nautilus-sample-content-view.c:
	(sample_merge_bonobo_items_callback): Replaced secret inside
	information about menu & toolbar paths & positions with use of
	#defines in nautilus-bonobo-ui.h.
2000-05-11 01:42:23 +00:00
Ramiro Estrugo c0ed560ddd Reference the view on set_view_frame() and unreference on
destruction.  This fixes a problem where the clipboard code was
trying to use a view that has already been trashed.

Thanks to Carbamide <linuxfan@ionet.net> for finding the problem.
2000-05-09 00:40:23 +00:00
Maciej Stachowiak 0599c6bcdf Fix bugzilla.eazel.com task 479:
* libnautilus/nautilus-clipboard.c
	(nautilus_clipboard_info_destroy),
	(nautilus_clipboard_info_set_view_frame): Do not ref and unref the
	view_frame. Because the NautilusClipboardInfo will only be
	destroyed when the view_frame is destroyed in the normal use case,
	if it holds a ref on the view_frame it will prevent it from ever
	being destroyed. This was causing the notes and history view
	processes to stay around forever.
2000-05-07 20:10:15 +00:00
Gene Z. Ragan 3324b79c1b New IDL file describing CORBA interface to the undo manager.
2000-05-05  Gene Z. Ragan  <gzr@eazel.com>

	* libnautilus-extensions/nautilus-undo-manager-component.idl:
	New IDL file describing CORBA interface to the undo manager.

	* libnautilus-extensions/Makefile.am:
	Modified to include nautilus-undo-manager-component.idl

	* libnautilus-extensions/nautilus-undo-manager.c
	* libnautilus-extensions/nautilus-undo-manager-private.h:
	(impl_Nautilus_UndoManager__destroy),
	(impl_Nautilus_UndoManager__create),
	(impl_Nautilus_UndoManager__begin_transaction),
	(impl_Nautilus_UndoManager__end_transaction):
	CORBA/Bonobo functions to access undo manager features.

	* libnautilus-extensions/nautilus-undo-manager.h:
	* src/file-manager/fm-list-view.c
	(fm_list_view_append_background_context_menu_items),
	(fm_list_view_merge_menus), (fm_list_view_update_menus),
	(rename_list_item_callback):
	Began the task of

	* src/ntl-main.c
	(main):
	Removed intialization of undo manager from main,

	* src/ntl-app.c
	(nautilus_app_init):
	Moved initialization of undo manager. A reference to the undo manager
	is saved for easy access from components.
2000-05-06 01:29:55 +00:00
Kjartan Maraas b781be751c Shhh 2000-05-03 20:58:57 +00:00
Kjartan Maraas 88de979cd2 Cosmetic change. Added -DGNOMELOCALEDIR to $INCLUDES. Added calls to
2000-05-01  Kjartan Maraas  <kmaraas@gnu.org>

	* libnautilus/nautilus-clipboard.c: Cosmetic change.
	* src/Makefile.am: Added -DGNOMELOCALEDIR to $INCLUDES.
	* src/ntl-main.c: Added calls to bindtextdomain() and
	textdomain() to make the translations work.
	* components/help/hyperbola-main.c: Same here.
	* components/help/Makefile.am: Here as well. This should be
	done for any main() function in any module containing text
	to be translated.
2000-05-02 11:13:03 +00:00
Maciej Stachowiak 30499d5778 Remove FIXME comment for #681; everything wrong with this file seems to be
* libnautilus/nautilus-zoomable.c: Remove FIXME comment for #681;
	everything wrong with this file seems to be separately recorded.
2000-05-01 17:56:57 +00:00
John Sullivan 604acdd1e3 Fixed bug 660 (Need to publish menu positions for components to use)
* libnautilus/nautilus-bonobo-ui.h:
	New file, contains #defines for Bonobo-style menu paths for all
	the menus & menu items in Nautilus that we promise components
	will exist.
	* libnautilus/Makefile.am: Include this new header file in library.

	* src/nautilus-window-menus.c: Extensive changes, too many to list
	every function. Replaced all the GnomeUIInfo mechanism with
	Bonobo-style menu creation, using the menu paths from
	nautilus-bonobo-ui.h. While I was in here, I also renamed some
	functions (especially xxx_cb -> xxx_callback), tweaked some text,
	and used some more standard Gnome menu item pixmaps (not sure if I
	like them or not yet).

	* src/ntl-window-private.h,
	* src/ntl-window.c:
	(nautilus_window_back_cb), (nautilus_window_forward_cb),
	(nautilus_window_up_cb), (nautilus_window_home_cb): Replaced
	these GtkWidget-callback style functions (formerly used
	by both menu items and toolbar buttons) with new NautilusWindow
	oriented ones nautilus_window_go_back, nautilus_window_go_forward,
	nautilus_window_go_up, and nautilus_window_go_home.
	(nautilus_window_allow_back), (nautilus_window_allow_forward),
	(nautilus_window_allow_up): replaced hardwired Bonobo menu paths
	with the new #defines.

	* src/nautilus-window-toolbars.c:
	Renamed some functions xxx_cb -> xxx_callback.
	(toolbar_back_callback), (toolbar_forward_callback),
	(toolbar_up_callback), (toolbar_home_callback): New GtkWidget-callback
	style functions used exclusively by the toolbar.

	* src/file-manager/fm-directory-view.h:
	Removed FM_DIRECTORY_VIEW_PATH_CLOSE and
	FM_DIRECTORY_VIEW_PATH_SELECT_ALL, since callers should use
	the paths defined by Nautilus for these.

	* src/file-manager/fm-directory-view.c:
	(fm_directory_view_real_merge_menus): Replaced special insider knowledge
	of menu positions with use of the new #defines. Also tweaked with the
	keyboard underscore shortcuts for some items.
2000-04-28 02:37:14 +00:00
Ramiro Estrugo 0a71b310b6 More 'make dist' fixes. Let automake know about private headers
so that the dist tarball will contain them.
2000-04-27 13:18:46 +00:00
John Sullivan 3199885e39 More FIXME-to-bug work.
* libnautilus/nautilus-view-frame.c,
	* libnautilus/nautilus-zoomable.c,
	* libnautilus-extensions/nautilus-icon-text-item.c,
	* libnautilus-extensions/nautilus-link.c,
	* libnautilus-extensions/nautilus-mime-type.c:

	Wrote bug reports for all FIXMEs in these files. Down to
	45 in Nautilus with no bug report.
2000-04-27 00:18:32 +00:00
Rebecca Schulman 54aeb2838a Fixed bug #99: Implemented copy, paste, clear, and cut for text Added new
2000-04-26  Rebecca Schulman <rebecka@eazel.com>

	Fixed bug #99:  Implemented copy, paste, clear, and cut for text
	Added new files nautilus-clipboard.c,h which contains clipboard
	functionality.  All components with text widgets should use this
	code.  It can just be copied from any existing sample code
	(see ntl-notes.c in the notes component)
	The frame cut, copy and paste stuff is now happy when there is a
	widget in focus.

	Added
	* libnautilus/nautilus-clipboard.c
	* libnautilus/nautilus-clipboard.h

	Modified
	* src/nautilus-window-menus.c  (turned on clear, fixed up callbacks for cut, copy, and
	                                paste buttons)
	* components/notes/ntl-notes.c (Clipboard activated notes text box)
	* components/websearch/ntl-web-search.c (Clipboard activated the search box)
2000-04-27 00:08:02 +00:00
Ian McKellar d402738c3a Fixes to allow Nautilus to build on my system:
librsvg/test-rsvg.c: (fix compile warning)
  main(int argc, const char **argv) -> main(int argc, char **argv)
*/Makefile.am: (make orbit-idl look in the right place for idl)
	orbit-idl `gnome-config.... -> orbit-idl -I${datadir}/idl `gnome-config...
2000-04-26 09:00:04 +00:00
Ettore Perazzoli 007823d4bf Fix compilation with srcdir != builddir (again). 2000-04-25 04:42:24 +00:00
Maciej Stachowiak f6e6b47110 OAF conversion. You must now build bonobo and gnome-vfs with --enable-oaf
OAF conversion. You must now build bonobo and gnome-vfs with --enable-oaf

	* configure.in: Check for OAF

	* libnautilus/nautilus-view-component.idl: Inherit from
	Bonobo::Unknown instead of GNOME::Unknown.

	* libnautilus-extensions/nautilus-global-preferences.c,
	libnautilus-extensions/nautilus-global-preferences.h: Refer to
	meta views by OAFIID, not GOAD ID.

	* src/ntl-uri-map.c (my_notify_when_ready): Replaced hardcoded
	list of GOAD IDs with a hardcoded list of OAFIIDs.
	(add_components_from_metadata): Changed the expected format; it is
	now label=component instead of component:label since OAFIIDs
	contain colons.

	* src/ntl-view.c (nautilus_view_destroy_client): unref the
	Zoomable interface of the View, if any.

	* src/file-manager/dfos-corba.c, src/file-manager/dfos.c: replace
	GOAD calls with OAF ones; untested since this code is not really
	used right now.

	* src/ntl-main.c: Use OAF calls to intialize CORBA.

	* src/ntl-app.c: Replace GOAD IDs with OAFIIDs. Use
	Bonobo_Generic_Factory instead of GNOME_Generic_Factory to make
	the linker happy. Register the factory server with OAF, not GOAD.

	* src/nautilus.h: Include <liboaf/liboaf.h> instead of <libgnorba/gnorba.h>


	* components/help/Makefile.am, components/history/Makefile.am,
	components/html/Makefile.am, components/mozilla/Makefile.am,
	components/music/Makefile.am, components/notes/Makefile.am,
	components/rpmview/Makefile.am, components/sample/Makefile.am,
	components/services/startup/Makefile.am,
	components/websearch/Makefile.am, libnautilus/Makefile.am,
	libnautilus-extensions/Makefile.am, src/Makefile.am,
	src/file-manager/Makefile.am: Updated for OAF; install .oafinfo
	files instead of .gnorba.

	* components/help/hyperbola-main.c,
	components/history/ntl-history-view.c,
	components/html/ntl-web-browser.c, components/mozilla/main.c,
	components/music/main.c, components/notes/ntl-notes.c,
	components/rpmview/main.c, components/sample/main.c,
	components/services/startup/main.c,
	components/websearch/ntl-web-search.c: Convert to OAF; use OAFIIDs
	and oaf intialization functions.

	* src/nautilus.oafinfo, components/help/hyperbola.oafinfo,
	components/history/ntl-history-view.oafinfo,
	components/html/ntl-web-browser.oafinfo,
	components/music/nautilus-music-view.oafinfo,
	components/notes/ntl-notes.oafinfo,
	components/rpmview/nautilus-rpm-view.oafinfo,
	components/services/startup/nautilus-service-startup-view.oafinfo,
	components/websearch/ntl-web-search.oafinfo,
	components/sample/nautilus-sample-content-view.oafinfo,
	components/mozilla/nautilus-mozilla-content-view.oafinfo: New OAF
	activation records.

	* src/nautilus.goad, components/help/hyperbola.goad,
	components/history/ntl-history-view.goad,
	components/html/ntl-web-browser.goad,
	components/music/nautilus-music-view.goad,
	components/notes/ntl-notes.goad,
	components/rpmview/nautilus-rpm-view.goad,
	components/services/startup/nautilus-service-startup-view.goad,
	components/websearch/ntl-web-search.goad,
	components/sample/nautilus-sample-content-view.goad,
	components/mozilla/nautilus-mozilla-content-view.goad: Removed.
2000-04-19 13:11:41 +00:00
Ramiro Estrugo 09b3bf22bc Split libnautilus into two pieces.
libnautilus now only contains the view interfaces needed by nautilus
components.

These are the interfaces defined in nautilus-view-component.idl.

libnautilus-extensions containes the remainder of the stuff.

Also used the cvs repository munging opportunity to do some of the
ntl-* renaming outlined in the RENAIMING file.
2000-04-14 15:16:44 +00:00
Ramiro Estrugo 3ff2e64090 Include the new <nautilus-view-component.h> instead of <nautilus.h> 2000-04-14 11:01:26 +00:00
Ramiro Estrugo a487908561 Move nautilus view component interface definition into libnautilus. 2000-04-14 04:06:52 +00:00
Andy Hertzfeld c599d12496 added Raph's scalable vector icons machinery
added Raph's scalable vector icons machinery
2000-04-14 01:33:35 +00:00
Darin Adler 74748cdc3a Fixed a bug my changes to GNOME VFS exposed. The callback couldn't handle
* components/html/ntl-web-browser.c: (browser_vfs_read_callback):
	Fixed a bug my changes to GNOME VFS exposed. The callback couldn't
	handle a "bytes_read" of 0.

	* libnautilus/nautilus-directory-private.h:
	* libnautilus/nautilus-directory.c:
	* libnautilus/nautilus-directory.h:
	* src/file-manager/fm-directory-view.c:
	Added a new interface for monitoring files and directories.
	Also fixed the self-check code that was failing since the
	async. changes.

	* libnautilus/nautilus-file.h:
	Added the interface for monitoring single files, but it isn't
	implemented yet.

	* libnautilus/nautilus-icon-canvas-item.c:
	* libnautilus/nautilus-icon-canvas-item.h:
	* libnautilus/nautilus-icon-container.c:
	* libnautilus/nautilus-icon-container.h:
	* libnautilus/nautilus-icon-dnd.c:
	* libnautilus/nautilus-icon-dnd.h:
	* libnautilus/nautilus-icon-private.h:
	Restructured Andy's modifier changes so the canvas item doesn't
	have to know about modifiers. This makes the canvas item private
	again. Users of NautilusIconContainer shouldn't have to know
	about the canvas item.

	* src/file-manager/fm-icon-view.c:
	Reformatting.
2000-04-14 01:19:53 +00:00
Darin Adler b1aa23268d Updated for new GNOME VFS.
* libnautilus/nautilus-directory.c
	(read_some_metafile_data), (metafile_read_start),
	(metafile_write_create_callback), (metafile_write_start),
	(nautilus_directory_monitor_files_ref):
	* libnautilus/gdk-pixbuf-extensions.c
	(nautilus_gdk_pixbuf_load_async):
	* src/ntl-uri-map.c (got_metadata_callback):
	* components/html/ntl-web-browser.c (browser_vfs_callback),
	(do_vfs_load):
	Update for the new GNOME VFS which doesn't return an immediate error
	code when doing an async. call.
2000-04-13 18:24:23 +00:00
Andy Hertzfeld d7f2206f66 improved title for non-vfs uris, used Gene's routine to escape http
improved title for non-vfs uris, used Gene's routine to escape http
       parameters in service stuff, and finally weakened assert in
       nautilus directory to allow non-vfs uris to continue to work
2000-04-13 06:05:11 +00:00
Andy Hertzfeld b6b126593e added framework for using custom images to reflect highlight state; used
added framework for using custom images to reflect highlight state;
	used it to make folders reflect drop-highlighting by opening (just
	in eazel theme for now)
2000-04-12 21:32:24 +00:00
Darin Adler baebdb1ad1 This is a new Perl script for searching for FIXME in the code. It reports
* check-FIXME.pl: This is a new Perl script for searching for FIXME
	in the code. It reports any FIXME that does not have a bug number
	next to it, or any with a bug number that's not an open bug.
	* libnautilus/nautilus-bookmark.c: Attached a bug number to a FIXME
	for script-testing purposes.
	* docs/architecture.txt: Removed a FIXME. So sue me!

	* src/file-manager/fm-icon-text-window.c
	(create_attributes_option_menu): Added a call to gettext since the
	attribute_labels are now N_ strings.
	* po/.cvsignore: Ignore the generated files.

	* libnautilus/nautilus-icon-factory.c: Formatting tweak.
2000-04-12 20:34:37 +00:00
Pavel Cisler 8ecf5b4898 Fix a problem where drag actions did't update properly when dragging
2000-04-11  Pavel Cisler <pavel@eazel.com>

	* libnautilus/nautilus-icon-dnd.c:
	* libnautilus/nautilus-icon-dnd.h:
	Fix a problem where drag actions did't update properly when dragging
	between two windows. The pointer to the private GtkDragStatus needs
	to be global, not stored in the drag originator widget.
2000-04-12 18:33:04 +00:00
Darin Adler 08d18d6542 Handle case where directory is NULL which is needed for URIs that
Nautilus understands but GNOME VFS does not.
2000-04-12 00:25:14 +00:00
John Sullivan f96591d2e3 Addressed most of task 148 (Better type-as-string for
directory views). Added new directory to CVS, so make
	sure you do a "cvs update -d" and not just "cvs update".

	"make install" now installs a file of mime-type-to-English
	descriptions in the gnome-mime directory.

	* data/mime/nautilus.keys: The actual mapping between
	MIME types and English descriptions. Read these and send
	me your abuse.
	* data/mime/Makefile.am: New file, copies nautilus.keys to
	gnome-mime directory.
	* data/Makefile.am: includes "mime" subdirectory
	* configure.in: configures "data/mime" directory

	* libnautilus/nautilus-file.c:
	(nautilus_file_get_mime_type_as_string_attribute):
	New function, returns the raw MIME type as a string,
	and handles the no-MIME-type case.
	(nautilus_file_get_string_attribute): handle attribute
	"mime_type", distinct from "type" which is now the
	human-language one.
	(nautilus_file_get_type_as_string): Use gnome-mime
	to get human-language descriptions based on the MIME
	type.
	(nautilus_file_is_executable): Fixed this function which
	was reading info->flags instead of info->permissions. Now
	the special executable icon appears much more often (though
	we still don't know what it's supposed to be).
	* src/file-manager/fm-error-reporting.c:
	(fm_report_error_renaming_file): Use "directory" instead of
	"folder" to match our terminology elsewhere.
	* src/file-manager/fm-icon-text-window.c:
	add "mime type" to list of choices of text that can appear
	beneath icons (in addition to just plain "type", which is
	the human-language one).
2000-04-12 00:05:23 +00:00
Darin Adler 682bcce228 Finished task 226 (Read metadata asynchronously instead of
synchronously).

	Requires new GNOME VFS.

	* libnautilus/nautilus-directory-private.h:
	* libnautilus/nautilus-directory.c:
	* libnautilus/nautilus-directory.h:
	Changed code to read and write metafiles async. Too many functions
	modified for me to list here.

	* libnautilus/nautilus-file-private.h:
	* libnautilus/nautilus-file.c:
	* libnautilus/nautilus-file.h:
	(nautilus_file_changed), (nautilus_file_emit_changed),
	(nautilus_file_get_metadata), (nautilus_file_set_metadata),
	(nautilus_file_call_when_ready), (nautilus_file_cancel_callback):
	Changes to NautilusFile so it can participate in the new.

	* components/notes/ntl-notes.c (notes_load_metainfo):
	Fixed a bug in my recent changes where it would use a bad file
	object when getting metadata.

	* src/file-manager/fm-directory-view.c (notes_load_metainfo):
	Renamed "tags" to "keys".
2000-04-11 22:22:48 +00:00
Gene Z. Ragan 2ac3c5dac5 components/sample/nautilus-sample-content-view.c Added icon data to
2000-04-11 Gene Z. Ragan <gzr@eazel.com>

	* components/sample/nautilus-sample-content-view.c
	Added icon data to BonoboUiHandler.  This is GdkPixbuf
	data and demonstrates the pixbuf data features
	added to bonobo ui handlers.

	* libnautilus/nautilus-bookmark.c
	bonobo_ui_handler_menu_new_item modified to take advantage
	of new bonobo ui handler pixbuf functionality. Components and
	menu items can now display pixbuf data.
	Added nautilus_bookmark_get_pixbuf() routine.

	* libnautilus/nautilus-bookmark.h
	Added nautilus_bookmark_get_pixbuf() routine.

	* src/nautilus-window-menus.c
	bonobo_ui_handler_menu_new_item modified to take advantage
	of new bonobo ui handler pixbuf functionality.
2000-04-11 22:16:24 +00:00
Darin Adler 91a060146b Update for new GdkPixbuf. gnome-print must be built before bonobo. 2000-04-11 15:11:19 +00:00
Pavel Cisler 339ac05b02 Drop target highlighting. Add new call to determine if a drop target can
2000-04-11  Pavel Cisler <pavel@eazel.com>
	Drop target highlighting.
	Add new call to determine if a drop target can accept a drag.
	Tweak modifiers for file copy.
2000-04-11 10:09:28 +00:00
Pavel Cisler d879994075 Nasty hack to allow drag&drop actions to respond to modifier keys and the
2000-04-10  Pavel Cisler <pavel@eazel.com>
	Nasty hack to allow drag&drop actions to respond to modifier keys
	and the drop context properly. This will one day get fixed by
	adding proper hooks to Gtk+ and using them. For now we have to
	do this.
2000-04-11 02:39:07 +00:00
Darin Adler 080683794f Finished changing all callers that use metadata to use it in a way
that is compatible with async. metadata reading.

	* components/notes/ntl-notes.c:
	(notes_load_metainfo): Changed to use nautilus_file_call_when_ready
	to wait for the metadata. Also fixed a bug that was causing an assert
	inside the call to gtk_editable_insert_text.
	(main): Made warnings and criticals stop in the debugger.

	* libnautilus/nautilus-directory.c:
	* libnautilus/nautilus-directory.h:
	(nautilus_directory_call_when_ready): Renamed the call to indicate
	it can wait for more than just metadata. For now it does only wait
	for metadata, though.
	(nautilus_directory_cancel_callback): Renamed this too.

	* libnautilus/nautilus-file.c:
	(nautilus_file_call_when_ready), (nautilus_file_cancel_callback):
	Made a corresponding call for the metadata of a single file.

	* libnautilus/nautilus-gdk-extensions.c:
	* src/nautilus-index-title.c:
	Formatting changes.

	* libnautilus/nautilus-metadata.h:
	Clarified that ANNOTATION is a per-file piece of metadata.

	* src/ntl-uri-map.c:
	* src/file-manager/fm-directory-view.c:
	Use new names of calls.

	* src/file-manager/fm-icon-view.c:
	* src/file-manager/fm-list-view.c:
	Added comment.
2000-04-10 22:45:36 +00:00
John Sullivan f193a5adc6 Fixed bug 377 (clipping emblems in list view looks bad
and loses information)

	* libnautilus/nautilus-list.c:
	(draw_row): Made it draw the ellipsis character if there's
	not enough room to show all emblems.
2000-04-10 18:13:00 +00:00
John Sullivan 4d1df7f321 Reworked selection such that the SELECTION_CHANGED signal is emitted only
* libnautilus/nautilus-list.c:
	(nautilus_list_initialize_class), (nautilus_list_initialize),
	(select_or_unselect_row_callback), (emit_selection_changed),
	(select_range), (select_row), (select_row_from_mouse),
	(row_set_selected), (select_row_unselect_others),
	(nautilus_list_select_all), (nautilus_list_unselect_all),
	(nautilus_list_button_press), (nautilus_list_keyboard_move_to),
	(nautilus_list_motion), (nautilus_list_set_selection):
	Reworked selection such that the SELECTION_CHANGED signal is
	emitted only once for every selection-affecting operation,
	and never if the selection hasn't changed at all. This makes
	such operations as Select All, switch-from-icon-view-with-lots-
	selected, and arrow-key-to-end-of-list significantly faster.
2000-04-10 16:40:40 +00:00
Andy Hertzfeld f0d7912998 save token from service, pass it back in header of subsequent request;
save token from service, pass it back in header of subsequent
       request; fixed recursive thumbnail bug; make snapshot frame for
       thumbnails.
2000-04-10 07:04:09 +00:00
John Sullivan f27fcab0c8 Finished task 307 (keyboard navigation in list view should
use same keys/behavior as in icon view). There are a few
	minor bugs remaining that I'll write up separately.

	* libnautilus/nautilus-list.c:
	NautilusListDetails struct: added fields for
	keyboard_row_to_reveal and keyboard_row_reveal_timer_id;
	(nautilus_list_initialize_class): Removed key binding set for
	this class (uses key_press_event function instead); used
	gtk_binding_entry_clear to get rid of all the unwanted GtkCList
	key bindings; wire up key_press_event function; wire up
	destroy function
	(nautilus_list_destroy): New function, destroy details struct
	(this was storage leak) and clean up pending timer.
	(nautilus_list_clear_keyboard_focus), (nautilus_list_set_keyboard_focus),
	(nautilus_list_keyboard_move_to), (keyboard_row_reveal_timeout_callback),
	(unschedule_keyboard_row_reveal), (schedule_keyboard_row_reveal),
	(reveal_row), (nautilus_list_keyboard_navigation_key_press),
	(nautilus_list_keyboard_home), (nautilus_list_keyboard_end),
	(nautilus_list_keyboard_up), (nautilus_list_keyboard_down),
	(nautilus_list_keyboard_page_up), (nautilus_list_keyboard_page_down),
	(nautilus_list_keyboard_space), (nautilus_list_activate_selected_items),
	(nautilus_list_get_first_selected_row),
	(nautilus_list_get_last_selected_row),
	(nautilus_list_key_press): New functions, all the mechanism for
	handling key presses similarly to NautilusIconContainer. Bonus
	key handling for Page Up and Page Down.
	(nautilus_list_move_focus_row), (scroll_vertical): Removed these
	functions that were used by the GtkCList key bindings in favor of
	nautilus_list_key_press and friends.
2000-04-10 00:04:14 +00:00
Andy Hertzfeld b39c3637ef The text below an icon is now underlined when the icon is pre-lit
The text below an icon is now underlined when the icon is pre-lit
2000-04-08 01:59:16 +00:00
John Sullivan 949566269c Fixed bug Andy pointed out where list view "links" could
be activated by clicking in white space past the name.
	Also started making changes in the direction of getting
	keyboard selection working properly in list view (but
	most of the work remains).

	* libnautilus/nautilus-gdk-extensions.h,
	* libnautilus/nautilus-gdk-extensions.c:
	(nautilus_stipple_bitmap): New function, returns pointer to
	static 50% stipple bitmap.
	* libnautilus/nautilus-icon-cvanvas-item.c:
	remove global stipple object;
	(nautilus_icon_canvas_item_initialize_class): Remove initialization
	of global stipple object.
	(draw_or_measure_label_text), (draw_stretch_handles): Use
	nautilus_stipple_bitmap () in lieu of global stipple object
	in this file.
	* libnautilus/nautilus-list.c:
	(get_cell_horizontal_start_position): New function, extracted
	from draw_row so I could use it elsewhere.
	(nautilus_list_key): Removed function.
	(nautilus_list_draw_focus): New function, draws keyboard-focussed
	row with the same stipple outline used in icon view.
	(nautilus_list_move_function_row): New function, copied & simplified
	from GtkCList. Will probably rewrite entirely or eliminate very soon.
	(nautilus_list_scroll_vertical): New function, copied & simplified
	from GtkCList. Handles various keyboard commands, though not yet with
	the behavior we actually want.
	(nautilus_list_initialize_class): Begin to override and eliminate
	GtkCList key bindings that we want to change. I've just started this
	work -- all I've done so far is make space do nothing but Control-space
	toggle the selection status of the keyboard-focussed row. I need to
	go through and fix up all the bad inherited bindings. Also in this
	function replace GtkCList's scroll_vertical and draw_focus function
	pointers, and removed the key_press_event and key_release_event
	overrides that were deliberately preventing us from inheriting any
	of GtkCList's keyboard behavior.
	(nautilus_list_button_release): Only activate link-text if the click
	is in the horizontal bounds of the text.
	(draw_row) Use get_cell_horizontal_start_position that was extracted
	from this function.
2000-04-08 01:05:59 +00:00
Andy Hertzfeld e68159f311 pointed service code at Jonathan's prototype server - registration is now
pointed service code at Jonathan's prototype server - registration is
	now working.  Also, implemented simple drag highliting, by treating it
	exactly like selection highliting
2000-04-07 20:31:42 +00:00
John Sullivan cb19a9692f Finished task 376 (Resolve list-view single-click behavior)
* libnautilus/nautilus-gdk-extensions.h:
	#defines for colors NAUTILUS_RGB_COLOR_RED, _GREEN,
	_BLUE, _WHITE, and _BLACK.
	* libnautilus/nautilus-gdk-extensions.c:
	(nautilus_parse_rgb_with_white_default): Replaced
	hard-wired numbers with these #defines.

	* libnautilus/nautilus-list.h,
	* libnautilus/nautilus-list.c:
	added enum entry for NAUTILUS_CELL_LINK_TEXT;
	(nautilus_list_mark_cell_as_link): New functions, converts
	an ordinary text cell into a link-text cell.
	(nautilus_list_button_release): Only activate link-text
	cells on single click; other cells select as in other lists.
	(draw_row): draw link-text cells with blue text and an
	underline, so they look like typical web links.
	(nautilus_list_set_cell_contents): Convert link-text cell
	back to ordinary text cell before cleaning up old
	contents so parent function will do the right thing.

	* src/file-manager/fm-list-view.c:
	(add_to_list): mark file name cell as link-text cell.
	(remove_from_list): New function, extracted from...
	(fm_list_view_file_changed): Followed Darin's advice on
	how to simultaneously clarify this code and fix a
	storage leak.

	For Darin, fixed a typo that caused every file to be
	displayed as if it were a directory.

	* src/ntl-uri-map.c:
	(my_notify_when_ready): Added two missing "== 0"s.
2000-04-07 01:10:13 +00:00
Darin Adler 1ae3a2426a Added the hooks needed to make metafile reading asynchronous.
Next I'll change the actual metafile access to work that way.

	* libnautilus/nautilus-directory.h:
	* libnautilus/nautilus-directory.c:
	(nautilus_directory_metadata_call_when_ready): Added function
	that requests a read of some metadata and calls back when the
	data is ready.

	* src/ntl-app.c: (nautilus_app_startup): Got rid of call to
	nautilus_navinfo_init.

	* src/ntl-types.h: Moved the NautilusNavigationInfo struct
	and related defines to ntl-uri-map.h.

	* src/ntl-uri-map.h:
	* src/ntl-uri-map.c:
	Reformatted and changed the names of many functions.
	Added code to use the new metadata callback.

	* src/ntl-index-panel.c:
	* src/ntl-main.c:
	* src/ntl-view.h:
	* src/ntl-window-msgs.c:
	* src/ntl-window.c:
	* src/ntl-window.h:
	Had to change includes a bit because of my changes to what
	header files are including.

	* src/ntl-window-msgs.c: (nautilus_window_update_state):
	* src/ntl-window.h:
	Use the new nautilus_navigation_info_cancel call instead of
	reaching right in to cancel the underlying call.

	* src/ntl-view-private.h:
	Reformatting.
2000-04-06 23:39:11 +00:00
Darin Adler 50206e4a00 Fixed code that was trying to disconnect the handler from the new
* libnautilus/nautilus-directory-background.c:
	(nautilus_connect_background_to_directory_metadata):
	Fixed code that was trying to disconnect the handler from the
	new directory, not the old one.
2000-04-06 22:18:09 +00:00
John Sullivan 5f2f9cb986 Some cleanups from the file-renaming checkin I did
yesterday. The largest change was making NautilusDirectory
	send "files-changed" signal instead of "files-removed"
	signal when a file is removed. That way	interested callers
	need register only for one signal. The callers can use
	nautilus_file_is_gone () to test whether the file was removed.

	* libnautilus/nautilus-directory-private.h:
	(nautilus_directory_files_removed): Removed function.
	* libnautilus/nautilus-directory.h:
	(files_removed): Removed signal definition, updated comments.
	* libnautilus/nautilus-directory.c:
	Removed FILES_REMOVED signal enum entry;
	(nautilus_directory_initialize_class): Removed FILES_REMOVED
	signal creation.
	(nautilus_directory_files_removed): Removed function.
	* libnautilus/nautilus-file.c:
	(get_file_for_parent_directory): New private function.
	(nautilus_file_can_rename): This function was quite broken in
	its initial check-in. It worked only on a random basis. Now it
	works quite a bit better. It should only return FALSE if it's
	darn well sure that the user can't rename the file; it returns
	TRUE even if it isn't sure, so clients must handle failed
	renames (which they would have to anyway).
	(nautilus_file_delete): Call nautilus_file_changed instead of
	nautilus_directory_files_removed when file is deleted.

	* src/file-manager/fm-directory-view.h:
	(remove_file): Remove signal definition, update comments.
	* src/file-manager/fm-directory-view.c:
	remove REMOVE_FILE signal enum entry;
	remove files_removed_handler_id and pending_files_removed from
	Details struct;
	(fm_directory_view_initialize_class): remove REMOVE_FILE signal
	initialization
	(display_pending_files): remove "removed" case; made "changed"
	case handle updating uri table; made "changed" case send signal
	even if file is gone.
	(files_removed_cb): Removed function.
	(fm_directory_view_load_uri): removed connection to "files_removed"
	signal
	(disconnect_model_handlers): removed disconnect of files_removed_handler.

	* src/file-manager/fm-icon-view.c:
	(fm_icon_view_remove_file): Removed function.
	(fm_icon_view_initialize_class): Remove remove_file signal handler override.
	(fm_icon_view_file_changed): check if file is gone and do what
	fm_icon_view_remove_file used to do if so.
	* src/file-manager/fm-list-view.c:
	(fm_list_view_remove_file): Removed function.
	(fm_list_view_initialize_class): Remove remove_file signal handler override.
	(fm_list_view_file_changed): check if file is gone and do what
	fm_list_view_remove_file used to do if so.

	* src/file-manager/fm-properties-window.c:
	(properties_window_file_changed_callback): Don't update the window title
	if you just nuked the window -- Doh! Now the Properties window will
	vanish silently if the file is deleted.
2000-04-06 00:15:58 +00:00
Darin Adler e4d81832b7 Improved the background handling code so more is shared.
There's even more we could do in this direction.

	* components/music/nautilus-music-view.c:
	(nautilus_music_view_initialize): Got rid of redundant background
	color initialization.
	(nautilus_music_view_realize): Got rid of background color
	initialization.
	(nautilus_music_view_update_from_uri): Changed background color
	handling to use new nautilus_directory_background calls.
	(nautilus_music_view_background_changed): Not needed any more.

	* components/notes/ntl-notes.c:
	Did some cleanup and reformatting.

	* libnautilus/Makefile.am:
	* libnautilus/nautilus-directory-background.c:
	* libnautilus/nautilus-directory-background.h:
	Created a new file with functions that manage the background for
	a window connected with a particular directory. Later we might
	generalize it further to work for windows that are connected to
	any URI, not just a directory.

	* libnautilus/nautilus-directory.c:
	* libnautilus/nautilus-directory.h:
	Added a new "metdata_changed" signal so that the background can
	be updated if the underlying data changes.
	(nautilus_directory_initialize_class): Create the new signal.
	(nautilus_directory_ref), (nautilus_directory_unref): Made these
	functions quietly do nothing for NULL. This simplifies life for
	callers.
	(nautilus_directory_set_metadata): Emit the "metadata_changed"
	signal.

	* libnautilus/nautilus-file.c:
	(nautilus_file_ref), (nautilus_file_unref): Made these
	functions quietly do nothing for NULL. This simplifies life for
	callers.

	* libnautilus/nautilus-metadata.h:
	Renamed all the constants to be consistent. Got rid of separate
	constants for the icon view and list view backgrounds. Changed
	some of the underlying XML tags as well.

	* libnautilus/nautilus-icon-factory.c:
	(nautilus_icon_factory_get_icon_for_file):
	* src/nautilus-index-title.c: (nautilus_index_title_update_info):
	* src/ntl-index-panel: (nautilus_index_panel_update_info),
	(receive_dropped_uri_list),
	(nautilus_index_panel_background_changed):
	* src/ntl-uri-map.c: (set_initial_content_iid),
	(add_components_from_metadata):
	* src/ntl-window-msgs.c: (view_menu_switch_views_cb):
	* src/file-manager/fm-icon-view.c: (add_icon_if_already_positioned),
	(fm_icon_view_begin_loading), (fm_icon_view_set_zoom_level),
	(fm_icon_view_icon_changed_callback):
	* src/file-manager/fm-list-view.c: (fm_list_view_begin_loading),
	(fm_list_view_set_zoom_level), (fm_list_view_sort_items):
	Updated uses of metadata constants to use the new names.

	* src/ntl-index-panel: (nautilus_index_panel_destroy),
	(nautilus_index_panel_update_info):
	* src/ntl-uri-map.c: (add_components_from_metadata):
	* src/file-manager/fm-directory-view.c:
	(fm_directory_view_destroy), (fm_directory_view_load_uri):
	Used new nautilus_directory_unref to simplify code.

	* src/ntl-uri-map.c: (set_initial_content_iid):
	* src/ntl-window-msgs.c: (view_menu_switch_views_cb):
	Added missing nautilus_directory_unref (storage leak).

	* src/file-manager/fm-icon-view.c: (create_icon_container),
	(fm_icon_view_background_changed_callback): Removed "changed"
	signal handler on NautilusBackground since that's now handled
	by the new nautilus_directory_background calls instead.
	(fm_icon_view_begin_loading): Used nautilus_directory_background
	to replace background customization code.

	* src/file-manager/fm-icon-view.c: (fm_icon_view_get_zoom_level):
	Fixed a bug where it would try to use view as an FMIconView after
	the FM_IS_ICON_VIEW check failed.

	* src/file-manager/fm-list-view.c: (create_list),
	(fm_list_view_background_changed_callback): Removed "changed"
	signal handler on NautilusBackground since that's now handled
	by the new nautilus_directory_background calls instead.
	(fm_list_view_begin_loading): Used nautilus_directory_background
	to replace background customization code.
2000-04-05 21:15:56 +00:00
John Sullivan c7c50ad520 Fixed bug in Ramiro's recent checkin that broke booting
if the icon theme had never been set.

	* libnautilus/nautilus-icon-factory.c:
	(nautilus_icon_factory_initialize_class),
	(nautilus_get_current_icon_factory): Moved theme initialization
	from the former to the latter, because theme needs to be non-NULL
	before initialize_class is called.
2000-04-05 18:54:04 +00:00
Darin Adler 459883de53 Removed some unnecessary \n from g_errors.
* components/services/startup/eazel-register.c:
	(add_package_info):
	* libnautilus/nautilus-file-utilities.c:
	(nautilus_user_top_directory):
	* libnautilus/nautilus-global_preferences.c:
	(global_preferences_get_dialog):
	* libnautilus/nautilus-icon-factory.c:
	(nautilus_icon_factory_get_thumbnail_uri):
	Removed unnecessary \n characters from g_warning, g_error, and
	g_message calls.

	* components/html/ntl-web-browser.c (browser_url_load_done):
	Ettore says we should stop calling gtk_html_private_calc_scrollbars
	and if it causes any problems then it's just a bug in GtkHTML
	that should be fixed,.

	* src/ntl-window-msgs.c:
	Reformatted the code as a first step for some changes
	that will make the state machine easier to understand.
2000-04-05 17:16:31 +00:00
Ramiro Estrugo ee95ca88c4 Preferences work. Make preference registration implicit. Update code that
required preferences to be explicitly registered before using them.
2000-04-05 15:13:44 +00:00
Maciej Stachowiak 491e5af160 Make selection persistent across content view changes (task 105).
* src/file-manager/fm-directory-view.c,
	src/file-manager/fm-directory-view.h
	(fm_directory_view_set_selection): New function.
	(set_selection): New virtual method that must by implemented by
	subclasses.
	(add_nautilus_file_to_uri_map, remove_nautilus_file_from_uri_map,
	free_file_by_uri_map_entry, free_file_by_uri_map): New functions
	to manage a hash table mapping from uri strings to NautilusFile
	objects.
	(notify_selection_change_cb): New function; on a selection change
	notification, either set the selection immediately if the view has
	completed loading, or establish it as pending.
	(display_pending_files): Maintain the uri -> file hash table on
	notifications from the model; do any pending selections required
	when loading completes.

	* src/file-manager/fm-list-view.c (fm_list_view_set_selection):
	New function to implement `set_selection' virtual method.

	* src/file-manager/fm-icon-view.c (fm_icon_view_set_selection):
	New function to implement `set_selection' virtual method.

	* libnautilus/nautilus-list.c (nautilus_list_set_selection): New
	function: set the selection to a specified set of rows.

	* libnautilus/nautilus-icon-container.c,
	libnautilus/nautilus-icon-container.h
	(nautilus_icon_container_set_selection): New function: set the
	selection to a specified set of icons.
2000-04-05 02:32:15 +00:00
Darin Adler cd9618f0c6 Finished task 54 (Set background image by drag/drop).
Fixed bug 346 (Bad icon positions when you change user level).
	Fixed bug 372 (Better icons for common file types).

	* libnautilus/nautilus-background-canvas-group.c:
	(nautilus_background_canvas_group_draw): Got rid of the colormap
	which is not needed now that we use gtk_rgb instead of gtk_color
	calls. Passed in the corner of the canvas as a parameter to
	nautilus_background_draw so it knows where the origin of any
	repeating pattern should be.
	* libnautilus/nautilus-background.h:
	* libnautilus/nautilus-background.c: (nautilus_background_draw):
	Added parameters to determine where the origin of any repeating
	pattern should be. Removed colormap parameter (see above).
	(nautilus_background_draw_flat_box): Passed in origin parameters
	in call to nautilus_background_draw.
	* libnautilus/nautilus-gdk-extensions.h:
	* libnautilus/nautilus-gdk-extensions.c:
	(nautilus_fill_rectangle_with_gradient): Removed colormap
	parameter (see above).
	* libnautilus/nautilus-gdk-pixbuf-extensions.c:
	(nautilus_gdk_pixbuf_render_to_drawable_tiled): Fixed the tiling
	so it will use the dither parameters to set the origin of the
	tiles as well.

	* libnautilus/nautilus-icon-dnd.c: (receive_dropped_tile_image),
	(nautilus_icon_container_receive_dropped_icons): Added code so that
	dropping an image file on the window with the shift key held down
	will customize the background tile image.

	* libnautilus/nautilus-icon-factory.c: (make_full_icon_path),
	(get_themed_icon_file_path): Fixed two bugs that prevented
	MIME-type-based icons from working correctly. First, got rid of
	code that tried to prepend the theme name and "nautilus/" to the
	beginning of a full path. Then made sure that it tries the file
	name without adding a suffix before it starts trying out suffixes.

	* libnautilus/nautilus-icon-grid.c: (nautilus_icon_grid_clear):
	Fixed bug where clearing the grid was resetting the visible width.

	* components/sample/Makefile.am:
	* components/services/startup/Makefile.am:
	Turned on -Werror for these two directories.
	* components/sample/nautilus-sample-content-view.h:
	* components/sample/nautilus-sample-content-view.c:
	(nautilus_sample_content_view_destroy), (bonobo_sample_callback):
	Fixed warnings and did some small cleanup.
2000-04-05 01:28:31 +00:00
John Sullivan dc703c8ba1 Renaming a file from its Set Properties dialog now works, though
there are various odds and ends I still need to clean up.
	It turned out (surprise!) that there was a lot of
	underpinnings work involved in implementing this feature.
	Fortunately most of it will be shared by rename-in-place.

	* libnautilus/nautilus-directory-private.h:
	add #define for METADATA_NODE_NAME_FOR_FILE_NAME
	* libnautilus/nautilus-directory.c:
	(nautilus_directory_get_file_metadata_node): Use
	METADATA_NODE_NAME_FOR_FILE_NAME #define
	(nautilus_directory_set_file_metadata): Use g_return_val_if_fail
	to prevent callers from changing the file name this way, since
	that wouldn't work right.

	* libnautilus/nautilus-file.h:
	* libnautilus/nautilus-file.c:
	(nautilus_file_can_rename): New function, returns TRUE if the
	user has write permission for this file.
	(nautilus_file_rename): New function, uses gnome_vfs_move to
	try to rename the file, updating metadata as appropriate.
	Returns the GnomeVFSResult from gnome_vfs_move.

	* libnautilus/nautilus-list.c
	(row_selected): Renamed this formerly private function to
	nautilus_list_is_row_selected and made it check its parameters
	more carefully.
	* libnautilus/nautilus-list.h:
	(nautilus_list_is_row_selected): Made this public.

	* src/file-manager/fm-error-reporting.c,
	* src/file-manager/fm-error-reporting.h: New files, home for
	UI code to display user error messages and such. It's initial
	occupant is:
	(fm_report_error_renaming_file): New function, puts up a non-modal
	alert reporting the renaming failure.
	* src/file-manager/Makefile.am: Add these two new files to the build.

	* src/file-manager/fm-directory-view.c:
	(bonobo_menu_open_properties_window_cb): New function, opens a
	Properties window for each selected item using the Bonobo callback API.
	(fm_directory_view_real_merge_menus): Include Set Properties item in
	File menu, and rearrange other items a little.
	(fm_directory_view_real_update_menus): Update sensitivity of Set
	Properties menu item.

	* src/file-manager/fm-list-view.c:
	(add_to_list): Return the new row index.
	(fm_list_view_file_changed): Remove and reinsert the changed file; this
	not only does less sorting but also recomputes all the text so name
	changes will be displayed.

	* src/file-manager/fm-properties-window.c:
	(get_pixmap_and_mask_for_properties_window),
	(update_properties_window_icon),
	(create_pixmap_widget_for_file),
	(name_field_done_editing),
	(name_field_update),
	(update_properties_window_title),
	(properties_window_file_changed_callback):
	New functions used to wire up the new editable name field
	and new icon pixmap widget in the properties window.
	(create_properties_window): Added notebook tabs, first
	one is Basic and currently contains icon & name; second
	is Emblems and has all those checkboxes. Use all the
	new functions to create and wire up things so that name
	changes & icon changes are propagated and reflected correctly.

	* src/nautilus-bookmarks-window.c:
	(create_bookmarks_window): Removed a bunch of unnecessary
	and leak-causing gtk_widget_refs that I happened to notice
	in here. I left these behind when modifying code originally
	created by glade, where the refs are necessary.
2000-04-05 00:23:58 +00:00
Darin Adler 276a5a1001 First cut at tiled background images.
First cut at tiled background images.

	There's no UI for setting them yet, they are only in
	the icon view, and they don't work properly with scrolling yet.

	* libnautilus/Makefile.am:
	* libnautilus/nautilus-gdk-extensions.c:
	* libnautilus/nautilus-gdk-extensions.h:
	* libnautilus/nautilus-gdk-pixbuf-extensions.c:
	* libnautilus/nautilus-gdk-pixbuf-extensions.h:
	Split the GdkPixbuf stuff into its own file.

	* libnautilus/nautilus-background.c:
	(nautilus_background_destroy): Fixed a bunch of leaks
	and added new code to stop pixbuf loading.
	(nautilus_background_draw): Added call to draw tiled
	background image. Converted gradients to use gdk_rgb
	instead of gdk_color.
	(nautilus_background_get_tile_image_uri): Implemented.
	(nautilus_background_set_color): Added short-circuit
	for background image case.
	(load_image_callback),
	(nautilus_background_set_tile_image_uri): Implemented.
	Include code to	load in the tiled image when its URI is set.
	(nautilus_background_receive_dropped_color): Set the
	tile image to NULL when a color is dropped.

	* libnautilus/nautilus-gdk-extensions.c:
	* libnautilus/nautilus-gdk-extensions.h:
	(nautilus_fill_rectangle_with_color),
	(nautilus_fill_rectangle_with_color),
	(nautilus_interpolate_color): Changed from gdk_color
	to gdk_rgb.
	(nautilus_parse_rgb_with_white_default): Added function
	for gdk_rgb similar to what we already have for gdk_color.

	* libnautilus/nautilus-icon-canvas-item.c:
	* libnautilus/nautilus-icon-container.c:
	* libnautilus/nautilus-list.c:
	Use gdk-pixbuf extensions in new location.

	* libnautilus/nautilus-metadata.h:
	Added metadata keys for background images.

	* src/ntl-view.c:
	Added lots of stronger checks for NAUTILUS_IS_VIEW since
	this is where we run into trouble with a bug I ran into.

	* src/file-manager/icon-view.c: Added code to handle
	the new background images.
	(create_icon_container): Keep around the handler ID when
	connecting to the "changed" message of the background so
	we can block the handler as needed.
	(fm_icon_view_begin_loading): Load the background image
	as well as the background color. We need to block the
	background changed signal handler so we don't get
	confused while the color but not the image is set up.
	(fm_icon_view_background_changed_callback): Save the
	background image URI as well as the background color in
	the metadata.
2000-04-04 01:00:13 +00:00
Darin Adler 2fe15f1645 Fix the build. Changes in GtkHtml and Bonobo required us
to catch up.

	* libnautilus/ntl-meta-view-frame.h:
	* libnautilus/ntl-meta-view-frame.c:
	Rewrote to use the new property bag. This requires us to
	store our own properties, since the bag no longer provides
	any storage.
	(nautilus_meta_view_frame_initialize): Set up the label.
	(nautilus_meta_view_frame_new_from_bonobo_control): Make it
	actually take a BonoboControl instead of a BonoboObject and
	make it set up the property bag.
	(nautilus_meta_view_destroy): Free the label.
	(autilus_meta_view_frame_set_label): Just set the label.
	The property bag simply uses our stored label.

	* components/html/ntl-web-browser.c (browser_url_load_gone):
	Changed call to match name in new version of GtkHtml.
	Unfortunately, the new name makes it clear the call is
	intended to be private.

	* components/rpmview/.cvsignore: Ignore the actual binary,
	not nautilus-music-view.
	* components/rpmview/Makefile.am: Turned on -Werror.
	* components/music/Makefile.am: Turned on -Werror.
	* components/rpmview/nautilus-rpm-view.c: Fixed warnings.
2000-04-03 18:27:22 +00:00
Pavel Cisler 227b517d02 Disable copy as a drag&drop operation for now. The current copy engine
2000-03-31  Pavel Cisler  <pavel@eazel.com>

	Disable copy as a drag&drop operation for now. The current
	copy engine doesn't handle conflicts properly yet and can
	erase your files.
2000-03-31 21:26:39 +00:00
Darin Adler a1f24785d1 Fixed a bug that Pavel reported where he got a crash in
nautilus_directory_monitor_files_unref when he pushed the
	"Up" button.

	* libnautilus/nautilus-glib-extensions.c:
	* libnautilus/nautilus-glib-extensions.h:
	(nautilus_g_strv_find): Renamed the existing function
	nautilus_g_strfindv to be more consistent with the rest
	of glib, even though it's less consistent with the other
	strv functions.
	(nautilus_g_list_safe_for_each): Added an alternate
	version of g_list_foreach that works even when the current
	item is removed from the list inside the function.

	* libnautilus/nautilus-gtk-extensions.c:
	(nautilus_gtk_object_list_unref): Use the new safe version
	of g_list_foreach so this works even on lists where the
	objects remove themselves in their destroy/finalize methods.
	This is the change that fixes the bug.

	* src/nautilus-bookmark-list.c:
	(nautilus_bookmark_list_load_file): Replaced some explicit
	code with a call to nautilus_gtk_object_list_free.

	* src/nautilus-index-title.c:
	(nautilus_index_title_update_icon): Fixed a bug that would
	prevent you from viewing the root level. The current version
	of nautilus_file_get returns NULL for the root.

	* src/nautilus-window-menus.c:
	(clear_appended_bookmark_items): Replaced some explicit
	code with a call to nautilus_g_list_free_deep.

	* src/file-manager/fm-icon-text-window.c:
	(synch_menus_with_preference): Updated to use the
	nautilus_g_strv_find call by its new name.

	* libnautilus/nautilus-file.c:
	(nautilus_file_set_keywords): Did some minor tweaks to
	simplify the no-keywords case.
2000-03-31 20:29:46 +00:00
John Sullivan 16acc134d8 Show icon emblems in list view. 2000-03-31 04:13:34 +00:00
Darin Adler 1fb5a14a58 Finished task 62 (Set custom icon by drag/drop on index panel)
and fixed some problems from my earlier check-ins today.

	* libnautilus/nautilus-directory.c:
	(nautilus_directory_monitor_files_ref):
	Fixed a bad assert from my last check-in.

	* src/file-manager/fm-list-view.c: (add_to_list):
	The list view had the same missing ref that I fixed for icon
	view in my last check-in.

	* src/nautilus-index-title.c: (release_file),
	(nautilus_index_title_destroy),
	(nautilus_index_title_update_icon),
	(nautilus_index_title_update_label),
	(nautilus_index_title_update_info),
	(nautilus_index_title_set_uri): Changed to hold around the
	NautilusFile object and connect to its "changed" message to update
	the file information. This causes the icon to get updated right
	away when the custom icon is changed.

	* libnautilus/nautilus-directory-private.h:
	* libnautilus/nautilus-directory.c:
	* libnautilus/nautilus-file-private.h:
	* libnautilus/nautilus-file.c:
	* libnautilus/nautilus-file.h:
	Converted NautilusFile to be a GtkObject instead of a plain struct,
	so it can have a "changed" signal. We still recommend using the
	"files_changed" signal on the directory to avoid the overhead
	of a signal connection for each file.

	* libnautilus/nautilus-gtk-extensions.c:
	* libnautilus/nautilus-gtk-extensions.h:
	(nautilus_gtk_object_list_ref), (nautilus_gtk_object_list_unref),
	(nautilus_gtk_object_list_free): Added some functions to be used
	with a list of GtkObjects.

	* libnautilus/nautilus-icon-factory.c:
	(nautilus_icon_factory_get_icon_name_for_file):
	Had to change the name of nautilus_file_get_type to avoid conflict
	with the GtkObject standard get_type routine.
2000-03-31 01:59:36 +00:00
Darin Adler 4c8d9b0be9 Added convenience functions so people don't have to be constantly reminded
* libnautilus/nautilus-directory.c:
	* libnautilus/nautilus-directory.h:
	(nautilus_directory_ref), (nautilus_directory_unref):
	Added convenience functions so people don't have to be constantly
	reminded that a NautilusDirectory is a a GtkObject.

	* libnautilus/nautilus-directory.c: (nautilus_directory_destroy):
	Fixed a problem where the pending files callback might fire after
	the NautilusDirectory is gone.

	* libnautilus/nautilus-directory.c:
	(nautilus_directory_destroy),
	(nautilus_directory_monitor_files_ref),
	(nautilus_directory_monitor_files_unref),
	(dequeue_pending_idle_callback), (nautilus_directory_new_file):
	* libnautilus/nautilus-file-private.h:
	* libnautilus/nautilus-file.c:
	(nautilus_file_get), (nautilus_file_ref), (nautilus_file_unref),
	(nautilus_file_free), (nautilus_file_delete):
	To prepare for changing NautilusFile to a GtkObject, made it use
	ref counts in a way that is standard. Now the directory keeps a
	list of the files, but only keeps a ref to the files if it is
	monitoring them.

	* src/file-manager/fm-directory-view.c: Tiny formatting tweak.
2000-03-30 20:12:34 +00:00
Andy Hertzfeld f95b953215 made the selection rectangle have a semi transparent light blue fill
made the selection rectangle have a semi transparent light blue fill
	color; also tweaked the selection darkening to be a little lighter
2000-03-30 19:30:54 +00:00
Pavel Cisler 1c93ed15f6 More copy/move operations. Fixes a problem I introduced earlier where drop
2000-03-28  Pavel Cisler  <pavel@eazel.com>

	More copy/move operations. Fixes a problem I introduced earlier where
	drop onto a file would lock up Nautilus.
2000-03-30 19:20:38 +00:00
Maciej Stachowiak 4f01fe3665 Connect to the "destroy" signal of the view_frame rather than the sample
* components/sample/main.c (sample_make_object): Connect to the
	"destroy" signal of the view_frame rather than the sample content
	view object, to avoid a race condition where we might exit before
	the view_frame is fully unreffed and has a chance to clean up.
	components/sample/nautilus-sample-content-view.c
	(nautilus_sample_content_view_destroy): Unref the
	NautilusViewFrame when we are destroyed.

	* libnautilus/nautilus-zoomable.c, libnautilus/ntl-view-frame.c,
	libnautilus/ntl-content-view-frame.c,
	libnautilus/ntl-meta-view-frame.c: Use boilerplate macros for
	get_type method and to invoke parent destroy method.

	* libnautilus/nautilus-zoomable.c, libnautilus/ntl-view-frame.c:
	Unref the interface we query_local_interface for, to avoid holding
	a superfluous ref to ourselves, since we eventually add_interface
	that interface.

	* src/ntl-view.c (nautilus_view_destroy_client): Use
	bonobo_object_unref instead of bonobo_object_destroy.
2000-03-30 18:25:36 +00:00
Pavel Cisler 713828f46e Started on copy/move operations
2000-03-28  Pavel Cisler  <pavel@eazel.com>

	Started on copy/move operations
2000-03-29 05:02:05 +00:00
Darin Adler 39d18967c5 Preparing for support for background images.
* libnautilus/nautilus-background.h:
	* libnautilus/nautilus-background.c:
	Preparing for support for background images.

	* libnautilus/nautilus-background.c:
	* libnautilus/nautilus-debug.c:
	* libnautilus/nautilus-icon-canvas-item.c:
	* libnautilus/nautilus-icon-dnd.c:
	Add those braces that Maciej, John, and the style guide all prefer.

	* libnautilus/nautilus-file.c: (nautilus_file_set_metadata):
	A change to metadata is considered a change to the file.

	* libnautilus/nautilus-graphic-effects.c:
	* libnautilus/nautilus-graphic-effects.h:
	Added nautilus_ prefix to all the functions in here.

	* libnautilus/nautilus-gtk-extensions.c:
	* libnautilus/nautilus-gtk-extensions.h:
	(nautilus_point_in_allocation),	(nautilus_point_in_widget):
	Added hit testing help functions that check if a point is
	in a particular allocation/widget.

	* libnautilus/nautilus-icon-dnd.c: (get_gnome_icon_list_selection):
	Fixed a bug that happens when you get a 0-length piece of
	selection data.

	* libnautilus/nautilus-icon-dnd.h:
	Changed the icon list back to "x-gnome-icon-list".
	That's how the other GNOME folks want it, not "x-nautilus-icon-list".

	* src/nautilus-index-tabs.c:
	* src/nautilus-index-tabs.h:
	* src/nautilus-index-title.c:
	* src/nautilus-index-title.h:
	* src/ntl-index-panel.c:
	* src/ntl-index-panel.h:
	lite -> light, Other cleanup.

	* src/nautilus-index-title.c:
	* src/nautilus-index-title.h:
	(nautilus_index_title_hit_test_icon):
	* src/ntl-index-panel.c:
	(hit_test), (uri_is_local_image), (receive_dropped_uri_list),
	(receive_dropped_color):
	Added code needed to support dropping an image on the icon to set
	a custom icon. This doesn't yet update the icon in the panel itself,
	but I'll do that soon.
2000-03-29 02:02:45 +00:00
John Sullivan 66d503d189 Removed notify_title_change call and removed initial_title parameter of
notify_location_change call.
2000-03-29 01:56:03 +00:00
John Sullivan 5da770ab1c Switch the behavior of the Control key for keyboard navigation back the way it
is supposed to be.
2000-03-28 19:29:13 +00:00
John Sullivan 79a454c795 Add initial_title parameter to notify_location_change signal and all its
handlers. This completes the change that I did part of last night.
2000-03-28 15:54:36 +00:00
John Sullivan a2d26f63d6 Gave content views the ability to specify the user-displayed title for a
location; this is used initially (and most importantly) by web pages so that
bookmarks, the window title, and the index panel will display the html page title
rather than the url.
2000-03-28 06:05:26 +00:00
Andy Hertzfeld 6179a76438 made it treat pre-lighting and selection darkening independently, so both
made it treat pre-lighting and selection darkening independently, so
       both properties can be visually reflected simultaneously.
2000-03-28 01:54:17 +00:00
Andy Hertzfeld 6c6fad82f9 changed how selection emboldening works, also, clean-ups and bug fixes in
changed how selection emboldening works,
       also, clean-ups and bug fixes in the graphic effects
2000-03-28 01:30:14 +00:00
Ramiro Estrugo f1fbd3790e Removed the ETTORE user level easter egg and bullet proofed the
stuff that uses user levels a bit.
Removed switch handling of ETTORE user
level and added a default case for the unlikely (but poissible)
event when the ~/.gnome/nautilus preferences file contains bogus
values for the user_level enumeration.
2000-03-26 21:55:58 +00:00
Andy Hertzfeld 50735a65b9 improved selection highlighting by darkening the icon and emboldening the
improved selection highlighting by darkening the icon and emboldening
	the font
2000-03-26 05:20:55 +00:00
Andy Hertzfeld eecee1352e moved pixbuf manipulation routines into
moved pixbuf manipulation routines into
      libnautilus/nautilus-graphic-effects
2000-03-25 00:36:57 +00:00
Darin Adler 433efe122f Fixed bug 334 (Need proper hit detection when hit-testing icons.
* libnautilus/nautilus-icon-canvas-item.c: (hit_test_pixbuf):
	Fixed a typo-type error where we were checking every pixel of the
	pixbuf instead of only the pixels that we were hit testing against.

	* libnautilus/nautilus-icon-container.c: Tweaks.
2000-03-22 19:36:44 +00:00
John Sullivan 212ed01c76 Emit SELECTION_CHANGED signal after changing selection via keyboard. 2000-03-22 01:39:57 +00:00
Pavel Cisler f713422616 Fixed an annoying bug that would sometimes cause the drag&drop feedback to
2000-03-21  Pavel Cisler  <pavel@eazel.com>

	Fixed an annoying bug that would sometimes cause the drag&drop feedback
	to come up delayed.
2000-03-22 00:45:56 +00:00
Darin Adler 1764f21218 Did some of the items from RENAMING.
* libnautilus/Makefile.am:
	* libnautilus/gnome-icon-container-dnd.c:
	* libnautilus/gnome-icon-container-dnd.h:
	* libnautilus/gnome-icon-container-grid.c:
	* libnautilus/gnome-icon-container-grid.h:
	* libnautilus/gnome-icon-container-private.h:
	* libnautilus/gnome-icon-container.c:
	* libnautilus/gnome-icon-container.h:
	* libnautilus/gtkflist.c:
	* libnautilus/gtkflist.h:
	* libnautilus/nautilus-icon-canvas-item.c:
	* libnautilus/nautilus-icon-canvas-item.h:
	* libnautilus/nautilus-icon-container.c:
	* libnautilus/nautilus-icon-container.h:
	* libnautilus/nautilus-icon-dnd.c:
	* libnautilus/nautilus-icon-dnd.h:
	* libnautilus/nautilus-icon-grid.c:
	* libnautilus/nautilus-icon-grid.h:
	* libnautilus/nautilus-icon-private.h:
	* libnautilus/nautilus-icons-view-icon-item.c:
	* libnautilus/nautilus-icons-view-icon-item.h:
	* libnautilus/nautilus-lib-self-check-functions.h:
	* libnautilus/nautilus-list-column-title.c:
	* libnautilus/nautilus-list.c:
	* libnautilus/nautilus-list.h:
	* src/file-manager/Makefile.am:
	* src/file-manager/fm-directory-view-icons.c:
	* src/file-manager/fm-directory-view-icons.h:
	* src/file-manager/fm-directory-view-list.c:
	* src/file-manager/fm-directory-view-list.h:
	* src/file-manager/fm-icon-view.c:
	* src/file-manager/fm-icon-view.h:
	* src/file-manager/fm-list-view.c:
	* src/file-manager/fm-list-view.h:
	* src/ntl-app.c:
	Did these RENAMING entries:
	  FMDirectoryViewIcons -> FMIconView
	  FMDirectoryViewList  -> FMListView
	  GnomeIconContainer -> NautilusIconContainer
	  GnomeIconContainerIcon -> NautilusIcon
	  NautilusIconsViewIconItem -> NautilusIconCanvasItem

	* RENAMING: Marked the renaming done.
2000-03-22 00:29:07 +00:00
Darin Adler f09362cb59 Fixed arrow keys and worked on the icon grid.
Fixes bugs #314, #324, and #325.

	* components/help/hyperbola.goad:
	Corrected repo_ids -> repo_id, reported by Richard Hult.

	* src/nautilus.goad:
	Added missing = character, reported by Richard Hult.

	* libnautilus/gnome-icon-container-grid.c:
	* libnautilus/gnome-icon-container-grid.h:
	* libnautilus/gnome-icon-container.c:
	* libnautilus/gnome-icon-container-private.h:
	Made the icon grid handle negative coordinates.
	Removed most of the icon grid code.
	Reimplemented the arrow keys. They should work again.

	* libnautilus/nautilus-gnome-extensions.c:
	* libnautilus/nautilus-gnome-extensions.h:
	(nautilus_art_irect_contains_irect):
	Added another helper function.

	* libnautilus/nautilus-icons-view-icon-item.c:

	* libnautilus/nautilus-icons-view-icon-item.h:
	* libnautilus/gnome-icon-container.c:
	* libnautilus/gnome-icon-container-private.h:
	Added user data to each canvas item and got rid of the hash table
	that maps canvas items to icons.

	* RENAMING: Tweaks.
2000-03-21 23:18:01 +00:00
Pavel Cisler ec8d277e18 Center the sort order indicators inside a title better. Make the column
2000-03-20  Pavel Cisler  <pavel@eazel.com>

	Center the sort order indicators inside a title better. Make the column
	title label spacing more like the old CtkCList.
2000-03-21 03:19:17 +00:00
Pavel Cisler a4b40782db Use an offscreen bitmap to draw the column title during column resizing
2000-03-20  Pavel Cisler  <pavel@eazel.com>

	Use an offscreen bitmap to draw the column title during column resizing
	and column prelighting.
2000-03-21 02:40:52 +00:00
Darin Adler 857e8fa26b Fixed the "tall line of icons" bug.
* libnautilus/gnome-icon-container-grid.h:
	* libnautilus/gnome-icon-container-grid.c:
	* libnautilus/gnome-icon-container.c:
	Rewrote the routines to not have a separate concept of the
	actual grid height and the allocated grid height. Most important
	change was to update the first_free variables when resizing.

	* src/file-manager/fm-directory-view-icons.h:
	* src/file-manager/fm-directory-view-icons.c:
	(fm_directory_view_icons_line_up_icons):
	Removed the unused line_up_icons call. This feature will return,
	but for now it's just a waste of space.
2000-03-18 00:46:16 +00:00
Darin Adler e8fcc82dff Simplified the grid a bit and did some redesign. The grid now takes into
* libnautilus/gnome-icon-container-grid.h:
	* libnautilus/gnome-icon-container-grid.c:
	* libnautilus/gnome-icon-container-private.h:
	* libnautilus/gnome-icon-container.c:
	* libnautilus/nautilus-icons-view-icon-item.c:
	* libnautilus/nautilus-icons-view-icon-item.h:
	Simplified the grid a bit and did some redesign. The grid now
	takes into account the height and width of the icons. More work
	to come.

	* libnautilus/nautilus-global-preferences.c:
	* nautilus-widgets/nautilus-preferences.h:
	Some cleanup, including types for constants.

	* libnautilus/nautilus-gnome-extensions.h:
	* libnautilus/nautilus-gnome-extensions.c:
	(nautilus_art_irect_equal), (nautilus_art_drect_equal),
	(nautilus_gnome_canvas_item_get_current_canvas_bounds),
	(nautilus_gnome_canvas_item_request_redraw),
	(nautilus_gnome_canvas_request_redraw_rectangle),
	(nautilus_gnome_canvas_item_get_world_bounds):
	More useful canvas and libart routines.

	* RENAMING: More renaming ideas.
2000-03-17 23:03:39 +00:00
Elliot Lee bf66a469cc #include <string.h>
#include <string.h>
2000-03-17 22:40:55 +00:00
Pavel Cisler aa98d924c7 Fix some bugs that John kindly uncovered.
2000-03-17  Pavel Cisler  <pavel@eazel.com>

	Fix some bugs that John kindly uncovered.
2000-03-17 19:19:40 +00:00
Pavel Cisler 53aa5a6308 First pass on making list column resizing live.
2000-03-16  Pavel Cisler  <pavel@eazel.com>

	First pass on making list column resizing live.

	* libnautilus/Makefile.am
	* libnautilus/nautilus-list-column-title.c
	* libnautilus/nautilus-list-column-title.h
	* libnautilus/gtkflist.h
	* libnautilus/gtkflist.c
	* manager/fm-directory-view-list.c
	* libnautilus/nautilus-gdk-extensions.c
	* libnautilus/nautilus-gdk-extensions.h
2000-03-17 04:46:16 +00:00
Darin Adler 8efa4d71d7 Did some of the renamings that were queued in RENAMING.
* libnautilus/Makefile.am:
	* libnautilus/gdk-extensions.c:
	* libnautilus/gdk-extensions.h:
	* libnautilus/nautilus-gdk-extensions.c:
	* libnautilus/nautilus-gdk-extensions.h:
	* libnautilus/gnome-icon-container.c:
	* libnautilus/nautilus-background.c:
	* libnautilus/nautilus-icons-view-icon-item.c:
	Renamed gdk-extensions to add the nautilus- prefix and changed
	all includers.

	* src/Makefile.am:
	* src/explorer-location-bar.c:
	* src/explorer-location-bar.h:
	* src/nautilus-location-bar.c:
	* src/nautilus-location-bar.h:
	* src/ntl-window-msgs.c:
	* src/ntl-window.c:
	Renamed ExplorerLocationBar to NautilusLocationBar.

	* src/Makefile.am:
	* src/nautilus-bookmarklist.c:
	* src/nautilus-bookmarklist.h:
	* src/nautilus-bookmark-list.c:
	* src/nautilus-bookmark-list.h:
	* src/nautilus-bookmarks-window.c:
	* src/nautilus-bookmarks-window.h:
	* src/nautilus-window-menus.c:
	Renamed NautilusBookmarklist to NautilusBookmarkList.

	* RENAMING: Marked items done and added some new ones.

	* nautilus-widgets/nautilus-preferences-item.c:
	* nautilus-widgets/nautilus-preferences.c:
	* nautilus-widgets/test-nautilus-widgets.c:
	* libnautilus/nautilus-icon-factory.c:
	* src/file-manager/fm-directory-view-icons.c:
	* src/file-manager/fm-directory-view.c:
	* src/file-manager/fm-icon-text-window.c:
	Cleaned up the interface to NautilusPreferences a bit.
2000-03-16 21:10:42 +00:00
John Sullivan 3ffd225184 Fixes for a couple of preferences bugs. 2000-03-16 20:10:13 +00:00
John Sullivan c821dce685 Moved a couple of utility functions into the right libnautilus homes. 2000-03-16 18:16:58 +00:00
John Sullivan 0437a094a6 Make icon theme changes persist by using preferences mechanism. 2000-03-16 17:13:49 +00:00
Darin Adler ee495dba40 Tell people about the gnome-xml branch.
* HACKING: Tell people about the gnome-xml branch.

	* libnautilus/Makefile.am:
	* libnautilus/gnome-icon-container-grid.c:
	* libnautilus/gnome-icon-container-grid.h:
	* libnautilus/gnome-icon-container-private.h:
	* libnautilus/gnome-icon-container.c:
	Broke out the grid code from the main container code.
	This is a first step toward improving the layout code.

	* libnautilus/nautilus-directory-private.h:
	* libnautilus/nautilus-directory.c:
	* libnautilus/nautilus-directory.h:
	* src/fm-directory-view.c:
	Got started on making the directory I/O async.
	There's still a long way to go, this was a baby step.

	* libnautilus/nautilus-bookmark.c:
	* libnautilus/nautilus-bookmark.h:
	* libnautilus/nautilus-self-checks.c:
	General cleanup.

	* libnautilus/nautilus-file.h:
	Rearranged a little bit.

	* libnautilus/nautilus-file-utilities.c:
	Put FIXME in where there's code that needs to be changed.
2000-03-16 00:31:18 +00:00
John Sullivan 4df4c1e1ea Used preferences mechanism for text under icons and
open-in-new-window-when-clicked.
2000-03-15 21:13:57 +00:00
Darin Adler b84f3f1d7d A quick cleanup of how we use gnome-xml.
* libnautilus/Makefile.am:
	* libnautilus/nautilus-xml-extensions.c:
	* libnautilus/nautilus-xml-extensions.h:
	Added some new gnome-xml helper functions.

	* libnautilus/nautilus-directory.c:
	(nautilus_directory_get_file_metadata_node):
	* libnautilus/nautilus-file.c:
	(nautilus_file_get_keywords):
	(nautilus_file_set_keywords):
	* libnautilus/nautilus-icon-factory.c:
	(get_child_node_by_property):
	(get_themed_icon_file_path):
	* src/nautilus-bookmarklist.c:
	(nautilus_bookmarklist_load_file):
	Changed to use the new helper functions.

	* src/nautilus-bookmarklist.c:
	(nautilus_bookmarklist_save_file): Changed direct uses of root to
	use xmlDocGet/SetRootElement while I was editing the file.  I
	think this is the same change Pavel made but wasn't able to check
	in.

	* src/nautilus-bookmarklist.c:
	General cleanup.
2000-03-15 16:46:51 +00:00
Darin Adler bdf3c6c136 Added additional data to icons so they can specify where the
embedded text fits in each icon.

	* icons/eazel/Makefile.am, icons/eazel/i-regular.xml: Added the
	file to specify attributes of icons. Specifically added the
	attribute that says there is space for embedded text in the
	Eazel-theme regular icon.

	* libnautilus/nautilus-icon-factory.h:
	* libnautilus/nautilus-icon-factory.c:
	(get_child_node_by_property), (get_themed_icon_file_path),
	(get_icon_file_path), (nautilus_icon_factory_get_thumbnail_uri),
	(load_specific_image), (load_image_for_scaling),
	(get_image_from_cache), (load_image_scale_if_necessary),
	(nautilus_icon_factory_get_pixbuf_for_icon),
	(nautilus_icon_factory_get_pixbuf_for_file):
	Added code to read a rectangle for the embedded text along with
	the icon, cache it with the icon, scale it with the icon, and
	return it to the caller along with the icon.

	* libnautilus/nautilus-icons-view-icon-item.c:
	(nautilus_icons_view_icon_item_initialize_class),
	(nautilus_icons_view_icon_item_set_arg),
	(nautilus_icons_view_icon_item_get_arg),
	(nautilus_icons_view_icon_item_get_image),
	(nautilus_icons_view_icon_item_set_image),
	(nautilus_art_irect_to_gdk_rectangle),
	(draw_mini_text), (draw_embedded_text),
	(nautilus_icons_view_icon_item_draw):
	Changed the code that draws the embedded text to respect the
	text rectangle passed in. Changed the pixbuf setting to use a
	function instead of the arg interface and take a text rectangle
	along with the pixbuf.

	* libnautilus/gnome-icon-container-dnd.c
	(gnome_icon_container_dnd_begin_drag):
	* libnautilus/gnome-icon-container.c:
	(icon_get_actual_size): Got rid of callers who were using the arg
	interface to get at the image of an icon
	("NautilusIconsViewIconItem::pixbuf").

	* src/file-manager/fm-directory-view-icons.c:
	(get_icon_property_cb): Get rid of hard-coded rule that only
	themes with eazel at the front of their names can display text
	inside the icons.

	* libnautilus/gnome-icon-container.c:
	(icon_new): Fixed a bug where icons would be super-tiny if they
	got too big, like if you entered a directory that was zoomed all
	the way in.
	(start_stretching), (ungrab_stretch_icon), (end_stretching),
	(gnome_icon_container_show_stretch_handles): Added code to grab
	the pointer while stretching an icon.
	(item_event_cb): Added a return statement that John forgot when
	he was editing. Without that, it was falling through to the next
	case, which had the same effect anyway.
	(update_icon): Pass the text rectangle through from the icon
	factory to the icon canvas item, using the new call instead of the
	old arg interface approach.

	* components/help/.cvsignore: Added entries for
	.la and .lo files.

	* components/help/Makefile.am:
	* components/help/hyperbola-nav-index.c:
	* components/help/hyperbola-nav-search.c:
	* libnautilus/nautilus-directory-private.h:
	* libnautilus/nautilus-directory.c:
	* src/nautilus-bookmarklist.c:
	Fixed flags for gnome-xml
	includes. Someone pointed out that you are supposed to include
	these as "#include <tree.h>", not "#include <gnome-xml/tree.h>" so
	I fixed our uses to work that way.

	* libnautilus/nautilus-directory.c:
	(nautilus_directory_get_file_metadata_node): Fixed code that was
	destroying something allocated by gnome-xml with g_free instead
	of xmlFree.

	* libnautilus/nautilus-file.c:
	(nautilus_file_get_keywords), (nautilus_file_set_keywords):
	Fixed storage leak where we were getting a property and not freeing it.

	* libnautilus/nautilus-default-file-icon.h:
	* libnautilus/nautilus-default-file-icon.c:
	* libnautilus/nautilus-icon-factory.c:
	(load_image_for_scaling): Got rid of the global that tells whether
	the default icon has an alpha channel -- it's not hardwired TRUE.
2000-03-15 00:31:49 +00:00
John Sullivan ea7cd874d3 Made directories start up using the same view they were last displayed with. 2000-03-14 21:56:24 +00:00
John Sullivan f499337913 Fixed bug where selection-dependent menu items (e.g. "Open in New Window")
didn't update after deleting selected items.
2000-03-14 19:33:20 +00:00
Jonathan Blandford 87179b7dca Add a gtk_drag_finish to hopefully solve half the flying windows problem.
2000-03-14  Jonathan Blandford  <jrb@redhat.com>

	* libnautilus/gnome-icon-container-dnd.c (drag_drop_cb): Add a
	gtk_drag_finish to hopefully solve half the flying windows
	problem.  Needs more thought then this, though...
2000-03-14 18:58:56 +00:00
John Sullivan 92dc45caa1 Fixed two-popup-menus-at-once bug. 2000-03-14 17:50:59 +00:00
John Sullivan 98916dd8ca Improvements & bug fixes to keyboard navigation in file manager. 2000-03-14 05:55:03 +00:00
Darin Adler ec73da2452 Fixed bug that caused a core dump when getting at the root directory
* libnautilus/nautilus-directory.c (nautilus_directory_get):
	Fixed bug that caused a core dump when getting at the root
	directory because all the '/' characters were stripped off
	the URI.

	* /src/file-manager/fm-directory-view.c:
	* nautilus-widgets/nautilus-preferences.c:
	Tiny formatting fixes.
2000-03-13 22:48:12 +00:00
Darin Adler fe7c58d2d1 A quick cleanup pass on the NautilusStringList class: Changed uses of
* libnautilus/nautilus-string-list.h:
	* libnautilus/nautilus-string-list.c:
	A quick cleanup pass on the NautilusStringList class:
	Changed uses of gchar to char, changed g_assert to g_return_if_fail
	as appropriate. Fixed brace style to be emacs-friendly (open brace
	on same line as if statement). Fixed spelling of delimiter.
	Got rid of some unnecessary special cases for NULL and sped up
	the _equal function be eliminating the redundant length check.
	Changed the self-check so that it doesn't write a warning to the
	log when it runs.
2000-03-13 16:41:09 +00:00
Ramiro Estrugo e58c19a4b3 libnautilus/nautilus-global-preferences.c, Add a table of meta view iids
* libnautilus/nautilus-global-preferences.c,
* libnautilus/nautilus-global-preferences.h:
(nautilus_global_preferences_get_meta_view_iids) Add a table of
meta view iids and a function to retrieve them.  This is a hack
until we have better runtime detection of components.
Add some better defaults for which meta views are shown.  By
default none were shown.  Undo a previous gnome_config default
hack.  There is now a better fix in place in the prefs code.

* nautilus-widgets/nautilus-preferences.c:
(nautilus_preferences_make_gnome_config_string) A new function to
make a string as expected by gnome_config with a trailing default
value.  Use this string to fetch the value of the preferences.

* src/Makefile.am,
src/ntl-prefs.c,
src/ntl-prefs.h,
src/nautilus-window-menus.c,
src/nautilus.h:
Retire ntl-prefs.c and ntl-prefs.h.  Remove these 2 from build and
all references to them.

* src/ntl-app.c:
(nautilus_app_startup, nautilus_app_destroy) No need to call
retired ntl-prefs functions.

* src/ntl-uri-map.c:
(add_meta_view_iids_from_preferences): New function.  Factor out
meta iid setup code into one place.  Replace the static meta iid
setup code with something that looks in preferences to see which
meta views are enabled.  Next step is to make the meta view
respond to pref changes.
2000-03-13 01:37:44 +00:00
Ramiro Estrugo 358ad2c9ca Properly remove the item from the list so that we dont crash later trying
* nautilus-widgets/nautilus-preferences.c:
(pref_hash_info_remove_callback) Properly remove the item from
the list so that we dont crash later trying to munge a NULL node.

* libnautilus/nautilus-global-preferences.h:
(NAUTILUS_PREFERENCES_USER_LEVEL) Make sure the user level
defaults to hacker.
2000-03-12 22:47:05 +00:00
Ramiro Estrugo 7398417988 Call clear() from free() instead of duplicating the work. 2000-03-12 21:20:04 +00:00
Ramiro Estrugo 29bb801957 *libnautilus/Makefile.am: Added nautilus_string_table
*libnautilus/nautilus-lib-self-check-functions.h: Added string
table tests hooks.

*libnautilus/nautilus-string-list.c,
libnautilus/nautilus-string-list.h: New class to deal with lists
of strings in a type safe manner.  Also added self tests for this
class.
2000-03-12 21:16:43 +00:00
Ramiro Estrugo b657b1fef3 Make the preference changes persistent.
* nautilus-widgets/nautilus-preferences.c:
(prefs_set_pref, nautilus_preferences_register_from_info,
nautilus_preferences_register_from_values): Make the preference
changes persistent.

*nautilus-widgets/nautilus-preferences-item.c,
nautilus-widgets/nautilus-preferences-item.h,
nautilus-widgets/nautilus-preferences.c,
nautilus-widgets/nautilus-preferences.h,
nautilus-widgets/test-nautilus-widgets.c:
Dont use GtkFunadamentalType, since we obviously wont support
all fundamantal gtk types as preferences.  Use an enum instead.
Makes the preferences type whacking code exactly 14.85% more type
safe.
2000-03-12 21:13:41 +00:00
Ramiro Estrugo e7477fb6ef (nautilus_user_top_directory): New function. Used to obtain
the user's "top" directory.  The top directory is an alternative
home place for naive users.
2000-03-12 17:56:46 +00:00
Ramiro Estrugo 42550b2c43 Use better names for the global preferences macros.
New method for removing callbacks.
Filter files according to the user level.
Add/Remove a preferences callback to keep track of user level changes.
2000-03-12 16:53:35 +00:00
Ramiro Estrugo 63c6d54af8 Moved global preferences to libnautilus. 2000-03-12 12:58:20 +00:00
Darin Adler 374870d5ab Fixed typo that broke all hit testing except for rubber band selection!
* libnautilus/nautilus-icons-view-icon-item.c
	(nautilus_icons_view_icon_item_point):
	Fixed typo that broke all hit testing except for rubber band
	selection! (Sorry.)

	* libnautilus/gnome-icon-container-dnd.c
	(set_gnome_icon_list_selection, set_uri_list_selection),
	libnautilus/gnome-icon-container-private.h,
	libnautilus/gnome-icon-container.h,
	libnautilus/gnome-icon-container.c
	(gnome_icon_container_get_icon_uri,
	gnome_icon_container_initialize_class, gnome_icon_container_new,
	update_icon, gnome_icon_container_update,
	gnome_icon_container_request_update),
	src/file-manager/fm-directory-view-icons.c (create_icon_container,
	get_icon_images_cb, get_icon_uri_cb, get_icon_text_cb,
	get_icon_property_cb): Change code that used to use a separate
	controller object to just use signals on the icon container
	instead.

	* libnautilus/nautilus-gtk-extensions.h,
	libnautilus/nautilus-gtk-extensions.c,
	src/file-manager/fm-directory-view.c: Add new signal marshal
	functions as needed and changed the name of one of the old
	functions.

	* libnautilus/Makefile.am,
	libnautilus/nautilus-icons-controller.h,
	libnautilus/nautilus-icons-controller.c,
	src/file-manager/Makefile.am,
	src/file-manager/fm-icons-controller.h,
	src/file-manager/fm-icons-controller.c: Removed the old controller
	object, it was a bad idea.
2000-03-11 00:46:40 +00:00
Darin Adler bddcc07d4b Fixed rubber banding to hit test with all the parts of the icon, not just
* libnautilus/Makefile.am, libnautilus/gnome-icon-container-dnd.c
	  (set_gnome_icon_list_selection,
	  gnome_icon_container_dnd_begin_drag),
	  libnautilus/gnome-icon-container.c (icon_is_in_region,
	  start_stretching), libnautilus/nautilus-icons-view-icon-item.h,
	  libnautilus/nautilus-icons-view-icon-item.c (hit_stretch_handle,
	  hit_test_pixbuf, hit_test, nautilus_icons_view_icon_item_point,
	  nautilus_icons_view_icon_item_get_icon_world_rectangle,
	  nautilus_icons_view_icon_item_get_icon_rectangle,
	  nautilus_icons_view_icon_item_get_icon_window_rectangle,
	  nautilus_icons_view_icon_item_get_hit_stretch_handle,
	  hit_stretch_handle,
	  nautilus_icons_view_icon_item_hit_test_stretch_handles,
	  nautilus_icons_view_icon_item_hit_test_rectangle):
	Fixed rubber banding to hit test with all the parts of the icon,
	not just the icon pixbuf itself. Did this by changing all the
	internal hit testing to use rects instead of points. At the same
	time changed the external interface to always use world
	coordinates for clarity.

	* libnautilus/nautilus-directory.c (compare_file_with_name),
	libnautilus/nautilus-file.c (nautilus_file_set_keywords): Fixed
	some void * problems that upset newer versions of GCC but not the
	older one that I'm using.

	* libnautilus/nautilus-gtk-extensions.h,
	libnautilus/nautilus-gtk-extensions.c: Formatting and include
	statements fix up.
2000-03-10 22:47:48 +00:00
Jonathan Blandford d21681ac5d Avoid a bug where we get stuck grabs when you double click.
2000-03-10  Jonathan Blandford  <jrb@redhat.com>

	* libnautilus/gnome-icon-container.c (button_press_event): Avoid a
	bug where we get stuck grabs when you double click.
2000-03-10 21:19:06 +00:00
Maciej Stachowiak c81f075c88 store zoom_control object in the window.
* src/ntl-window.c, src/ntl-window.h: store zoom_control object in
	the window.

	* src/nautilus-zoomable-frame-svr.c: New file; implement CORBA
	server for Nautilus::ZommableFrame interface.
	* src/ntl-view-private.h: prototypes for shared stuff needed to make
	this work.
	* src/ntl-view.c: Attach a Nautilus::ZoomableFrame interface to
	the Nautilus::ViewFrame.

	* libnautilus/nautilus-gtk-extensions.h,
	libnautilus/nautilus-gtk-extensions.c
	(nautilus_gtk_marshal_NONE__DOUBLE): New function.
2000-03-10 15:32:03 +00:00
Darin Adler 5f4af6f1ea It turns out that you aren't intended to reset the scroll region once you
* libnautilus/gnome-icon-container.c (set_scroll_region):
	It turns out that you aren't intended to reset the scroll region
	once you have items in the canvas. We need to do that, so I had
	to write some code that would update all the items when that happens.

	* libnautilus/nautilus-icons-view-icon-item.c:
	(recompute_bounding_box): Rewrote this to not assume that the
	icon items are all top-level items.
	(compute_text_rectangle, hit_test,
	nautilus_icons_view_icon_item_bounds): Change hit testing so
	it includes hits on the text. The rubberband still has to be
	fixed so it doesn't have the same problem.

	* libnautilus/nautilus-file.c: Improved a comment.

	* RENAMING: Some more name changes.
2000-03-10 03:20:54 +00:00
John Sullivan 30433daf59 Fixed mistake in recent bug fix. 2000-03-10 02:44:52 +00:00
John Sullivan 0d911a35c0 Fixed storage leak in nautilus_file_list_unref, and added some more self checks. 2000-03-10 01:38:10 +00:00
Andy Hertzfeld 5515799d9f 2 small fixes: tweaked constants used for pre-lighting icons and fixed bug
2 small fixes:  tweaked constants used for pre-lighting icons and
	fixed bug in music view where track numbers were displayed as -1 if
	they were not present in the id3 data; now they are blank.
2000-03-10 00:53:01 +00:00
Maciej Stachowiak 7d9696ef0f Pass the correct thing as the servant to avoid crashing on instantiation.
* libnautilus/nautilus-zoomable.c
	(impl_Nautilus_Zoomable__create): Pass the correct thing as the
	servant to avoid crashing on instantiation.
	(nautilus_zoomable_real_set_bonobo_control): ref and sink the
	BonoboControl Gtk object.
	(nautilus_zoomable_destroy): unref the control instead of
	destroying.
2000-03-10 00:46:31 +00:00
Darin Adler bcf419e81d Andy's check-in yesterday accidentally rolled out some changes to this
* nautilus-icons-view-icon-item.c (emblem_layout_next,
	nautilus_icons_view_icon_item_bounds):
	Andy's check-in yesterday accidentally rolled out some changes
	to this file. The changes include the typos that John and I had
	fixed in emblem_layout_next and nautilus_icons_view_icon_item_bounds.

	* nautilus-icons-view-icon-item.c:
	As Andy was about to do anyway, I tightened up the emblem
	positioning so they are closer to each other by changing the
	hard-coded constant EMBLEM_SPACING.
2000-03-09 21:09:20 +00:00
Darin Adler 8656eb9d85 Fixed bugs relating to multiple directory and file objects for the same
* libnautilus/nautilus-directory-private.h,
	libnautilus/nautilus-directory.c, libnautilus/nautilus-file.c
	(nautilus_directory_find_file, compare_file_with_name,
	nautilus_directory_get, nautilus_file_get): Fixed bugs relating to
	multiple directory and file objects for the same entity. Stripped
	trailing '/' characters in nautilus_directory_get and changed
	nautilus_file_get to return already-existing files instead of
	always creating new ones. Added self-checks to make sure this
	works.

	* libnautilus/nautilus-directory.c
	(nautilus_directory_try_to_read_metafile): Fixed bug where
	metafile reading would fail. The gnome-xml parser requires a null
	character at the end of the file, even though the size is passed
	in!

	* libnautilus/nautilus-directory.c
	(nautilus_directory_remove_write_metafile_idle,
	nautilus_directory_finalize,
	nautilus_directory_try_to_write_metafile,
	nautilus_directory_request_write_metafile, ): Changed metafile
	writing so it always happens at idle time.

	* libnautilus/nautilus-directory.c
	(nautilus_directory_try_to_read_metafile): Fixed bug where
	metafile reading would fail. The gnome-xml parser requires a null
	character at the end of the file, even though the size is passed
	in!

	* libnautilus/nautilus-lib-self-check-functions.h: Changed order
	so lower-level tests come before higher-level ones.

	* libnautilus/nautilus-string.h, libnautilus/nautilus-string.c:
	Renamed functions:
		nautilus_has_prefix -> nautilus_str_has_prefix
		nautilus_strdup_prefix -> nautilus_str_get_prefix
		nautilus_has_suffix -> nautilus_str_has_suffix
		nautilus_strstrip -> nautilus_str_strip_chr
		nautilus_string_to_int -> nautilus_str_to_int
		nautilus_eat_string_to_int -> nautilus_eat_str_to_int
	Changed nautilus_str_strip_chr not to modify in place.
	Added nautilus_str_strip_trailing_chr.

	* components/music/nautilus-music-view.c (is_mp3_file,
	nautilus_music_view_update_from_uri),
	libnautilus/nautilus-icon-factory.c
	(nautilus_icon_factory_get_icon_for_file, make_thumbnail_path,
	load_specific_image), libnautilus/nautilus-icons-view-icon-item.c
	(draw_mini_text), src/ntl-index-panel.c (command_button_cb,
	add_command_buttons), src/ntl-window-msgs.c
	(nautilus_window_change_location_2),
	src/file-manager-fm-directory-view-icons.c
	(fm_directory_view_icons_compute_menu_item_info),
	src/file-manager/fm-directory-view.c (compute_menu_item_info),
	src/file-manager/fm-icons-controller.c
	(fm_icons_controller_get_icon_property): Switched callers to use
	new names for string calls.

	* libnautilus/gnome-icon-container.c (destroy): Reformatting.

	* components/help/converters/gnome-info2html2/main.c (main):
	Fixed a warning.
2000-03-09 20:34:50 +00:00
John Sullivan cb99884c95 Changed decision of when to draw mini-text on an icon to
be based on icon size rather than zoom level, so it works
        more sensibly with stretched icons.
2000-03-09 20:23:50 +00:00
John Sullivan a589b69aed A few bug fixes and memory leak fixes. 2000-03-09 19:48:13 +00:00
Elliot Lee f86e85ad8e Install libnautilus.h Handle mapping of special schemes (i.e. unknown to
* libnautilus/Makefile.am: Install libnautilus.h
* src/ntl-uri-map.c: Handle mapping of special schemes
(i.e. unknown to gnome-vfs). Currently just 'irc'.
2000-03-09 17:43:39 +00:00
John Sullivan 5dd9c624d5 Fixed bug where icon factory was making a thumbnail for a single file multiple
times.
2000-03-09 03:16:17 +00:00
Andy Hertzfeld d015748e01 drag for relatively small icons due to performance limitations
drag for relatively small icons due to performance limitations
2000-03-09 03:09:37 +00:00
Darin Adler 13f23bd385 You can now use Set Properties to attach keywords to a file,
which will cause it to have emblems attached to its icon.

	* libnautilus/gnome-icon-container.h,
	libnautilus/gnome-icon-container.c (gnome_icon_container_update,
	gnome_icon_container_update_icon),
	libnautilus/nautilus-directory-private.h,
	libnautilus/nautilus-directory.c
	(nautilus_directory_files_changed), libnautilus/nautilus-file.h,
	libnautilus/nautilus-file.c (nautilus_file_changed),
	src/file-manager/fm-directory-view.h,
	src/file-manager/fm-directory-view.c,
	src/file-manager/fm-directory-view-icons.c,
	src/file-manager/fm-directory-view-list.c,: Add files_changed
	machinery in so views will notice changes to a NautilusFile.

	* libnautilus/nautilus-icon-factory.h,
	libnautilus/nautilus-icon-factory.c
	(nautilus_icon_factory_get_thumbnail_uri,
	nautilus_icon_factor_get_icon_for_file, check_for_thumbnails),
	libnautilus/nautilus-icons-controller.h,
	libnautilus/nautilus-icons-controller.c,
	(nautilus_icons_controller_update_icon),
	src/file-manager/fm-icons-controller.c
	(fm_icons_controller_update_icon): Use the files_changed machinery
	instead of a special case in the icon controller to tell the view
	about a new thumbnail.

	* libnautilus/nautilus-icons-view-icon-item.c
	(emblem_layout_next): Fixed typo that caused emblems to go down
	one side of the icon instead of going around.

	* libnautilus/nautilus-directory-private.h,
	libnautilus/nautilus-directory.c
	(nautilus_directory_get_file_metadata_node,
	nautilus_directory_request_write_metafile),
	libnautilus/nautilus-file.c (nautilus_file_set_keywords):
	Implemented the set_keywords operation so we can change the
	keywords for a file.

	* src/file-manager/fm-icon-text-window.c
	(create_icon_text_window): Fixed a prototype.

	* src/file-manager/fm-properties-window.c (property_button_update,
	property_button_toggled, create_properties_window,
	fm_properties_window_get_or_create): Implement a first cut at a
	properties window.
2000-03-09 02:38:16 +00:00
John Sullivan 98a347d925 Fixed icon bounds bug, and hid keyboard-selection rectangle unless it diverges
from regular selection.
2000-03-09 00:42:54 +00:00