2008-05-21 A. Walton <awalton@gnome.org>
* */*.[ch]:
Move all of Nautilus to single Gtk+ includes, because Mitch says so.
Closes Bug #530315.
svn path=/trunk/; revision=14182
2002-12-19 James Willcox <jwillcox@gnome.org>
* libnautilus-private/nautilus-directory-notify.h:
* libnautilus-private/nautilus-directory.c:
(nautilus_directory_schedule_position_set):
* libnautilus-private/nautilus-file-changes-queue.c:
(nautilus_file_changes_queue_schedule_position_set),
(nautilus_file_changes_consume_changes):
* libnautilus-private/nautilus-file-changes-queue.h:
* libnautilus-private/nautilus-file-operations.c:
(icon_position_iterator_new), (apply_one_position),
(nautilus_file_operations_copy_move):
* libnautilus-private/nautilus-icon-dnd.c: (handle_local_move),
(handle_nonlocal_move):
* libnautilus-private/nautilus-metadata.h:
* src/file-manager/fm-desktop-icon-view.c:
(fm_desktop_icon_view_init):
* src/file-manager/fm-directory-view.c: (new_folder_done),
(file_changed_callback):
* src/file-manager/fm-icon-view.c: (should_show_file_on_screen),
(fm_icon_view_remove_file), (fm_icon_view_add_file),
(fm_icon_view_file_changed), (fm_icon_view_filter_by_screen),
(fm_icon_view_instance_init):
* src/file-manager/fm-icon-view.h:
Make the desktop icon view store the screen number with the icon
positions. Now, a given icon appears on one screen only, and you
can drag them between screens, etc.
* libnautilus-extensions/nautilus-monitor.h:
* libnautilus-extensions/nautilus-monitor.c: (get_fam_connection),
(get_request_hash_table), (get_event_uri),
(process_fam_notifications), (nautilus_monitor_file),
(nautilus_monitor_directory), (nautilus_monitor_cancel): Improved
API, fixed some storage leaks, simplified some code, made it
handle URI escaping properly, use the file changes queue. Almost
ready for prime time!
* libnautilus-extensions/nautilus-file-changes-queue.h:
* libnautilus-extensions/nautilus-file-changes-queue.c:
(nautilus_file_changes_queue_file_changed),
(nautilus_file_changes_consume_changes):
* libnautilus-extensions/nautilus-directory-notify.h:
* libnautilus-extensions/nautilus-directory.c:
(call_files_changed_unref_free_list),
(nautilus_directory_notify_files_changed):
Added a new kind of notification for the file changed case.
More loose ends of the file copy and paste feature.
* libnautilus-extensions/nautilus-directory-notify.h:
Rename NautilusFileChangesQueuePositionSetting to
NautilusFileChangesQueuePosition. Add a field so it can
be used to set or remove a position. Rename
nautilus_directory_schedule_position_setting to
nautilus_directory_schedule_position_set.
* libnautilus-extensions/nautilus-directory.c:
(nautilus_directory_schedule_position_set): Change name and also
make it handle the case where we want to remove a position rather
than setting it.
* libnautilus-extensions/nautilus-file-changes-queue.h:
* libnautilus-extensions/nautilus-file-changes-queue.c:
(nautilus_file_changes_queue_schedule_position_set): Name change.
(nautilus_file_changes_queue_schedule_position_remove): New
function used to remove a position.
(position_set_list_free): Name changes, added the new remove
flavor where needed.
(nautilus_file_changes_consume_changes): Updated SET case,
added case for REMOVE.
* libnautilus-extensions/nautilus-file-operations.c:
(icon_position_iterator_get_next): New function, used to extract
the next position out of the iterator.
(apply_one_position): Simplified by using
icon_position_iterator_get_next, and also changed so that the
position is always either removed or set.
* libnautilus-extensions/nautilus-file-operations.h: Fixed header.
* libnautilus-extensions/nautilus-gtk-extensions.h:
* libnautilus-extensions/nautilus-gtk-extensions.c:
(event_get_time), (nautilus_get_current_event_time): Add new
function to get the current event time. This is available in GTK
2.0, so we can remove it when we move up.
* libnautilus-extensions/nautilus-link.c:
(nautilus_link_local_create): Updated for change to notify API.
* libnautilus-extensions/nautilus-program-choosing.c:
(nautilus_launch_application_from_command): Added FIXME.
* src/file-manager/fm-directory-view.c: (copy_or_cut_files): Use
new nautilus_get_current_event_time function. Put up a status
string about the cut or copy. Since there's no other feedback this
is especially important.
(paste_files_callback): Use new nautilus_get_current_event_time
function.
(real_selection_clear_event): Erase the status string.
(real_selection_received): Put up a status string if the paste
does nothing. Since we can't desensitize the Paste Files command,
this is the next best thing.
2000-09-11 Pavel Cisler <pavel@eazel.com>
* libnautilus-extensions/nautilus-directory-notify.h:
* libnautilus-extensions/nautilus-directory.c:
* libnautilus-extensions/nautilus-file-changes-queue.c:
* libnautilus-extensions/nautilus-file-changes-queue.h:
* libnautilus-extensions/nautilus-file-operations.c:
(icon_position_iterator_new), (icon_position_iterator_free),
(create_xfer_dialog), (handle_xfer_vfs_error),
(apply_one_position), (sync_xfer_callback),
(nautilus_file_operations_copy_move),
(nautilus_file_changes_queue_schedule_position_setting),
(position_setting_list_free),
(nautilus_directory_set_icon_position),
(nautilus_directory_schedule_metadata_copy),
(nautilus_directory_schedule_metadata_move),
(nautilus_file_changes_consume_changes),
(nautilus_directory_schedule_position_setting):
Work in progress on saving drop locations during a copy/move operation.
Add a new NautilusFileChangesQueue element type to handle scheduling
of the position saving operation. Hook it up to a call that saves the
icon position into the metadata.
Add icon position handling to the synchronous copy engine callback.
* libnautilus-extensions/nautilus-icon-container.h:
* libnautilus-extensions/nautilus-icon-dnd.c:
(handle_nonlocal_move):
Pass relative icon positions (FIXME 626).
* src/file-manager/fm-directory-view.c:
(fm_directory_view_move_copy_items):
* src/file-manager/fm-directory-view.h:
* src/file-manager/fm-icon-view.c: (icon_view_move_copy_items):
Add drop location to relative icon positions to get correct icon drop
placement.
* libnautilus-extensions/nautilus-file-operations.c:
(get_link_name), (get_duplicate_name), (handle_xfer_duplicate):
Rework a bit, fix a leak (FIXME 2556).
* libnautilus-extensions/nautilus-file-operations.c:
(nautilus_file_operations_copy_move),
Fix a leak.
* libnautilus-extensions/nautilus-file-operations.c:
(create_xfer_dialog):
Fix a bug in dialog result handling code.
* libnautilus-extensions/nautilus-drag.h:
Some minor tweaks
2000-09-03 Pavel Cisler <pavel@eazel.com>
* libnautilus-extensions/nautilus-directory-notify.h:
* libnautilus-extensions/nautilus-directory.c:
(nautilus_directory_schedule_metadata_copy),
(nautilus_directory_schedule_metadata_move):
* libnautilus-extensions/nautilus-file-changes-queue.c:
(nautilus_file_changes_queue_schedule_metadata_copy),
(nautilus_file_changes_queue_schedule_metadata_move),
(nautilus_file_changes_consume_changes):
* libnautilus-extensions/nautilus-file-changes-queue.h:
* libnautilus-extensions/nautilus-file-operations.c:
(progress_dialog_set_files_remaining_text),
(handle_xfer_vfs_error), (handle_xfer_duplicate),
(sync_xfer_callback):
Work on task bugzilla task 330.
Add notification hooks for metadata copying to NautilusFileChangesQueue.
Using the new top_level_item, call the hooks from the copy engine
synchronous callback.
* libnautilus-extensions/nautilus-directory.c: (uri_get_basename):
Need to unencode the name here because it's used to compare with
file names that come from get_file_info.
* src/file-manager/dfos-xfer.c: (get_parent_make_name_list):
Unescape the result of get_basename to convert it to a plain old
file name, since that's why gnome_vfs_xfer wants in its file name
lists (for now, see bug 1107).
* libnautilus-extensions/Makefile.am:
* libnautilus-extensions/nautilus-file-changes-queue-private.h:
Removed the private header since it's so private it can be in the
.c file :-)
* libnautilus-extensions/nautilus-file-changes-queue.h:
* libnautilus-extensions/nautilus-file-changes-queue.c:
(nautilus_file_changes_queue_new),
(nautilus_file_changes_queue_get), (nautilus_file_change_free),
(nautilus_file_changes_queue_free),
(nautilus_file_changes_queue_add_common),
(nautilus_file_changes_queue_get_change):
A little simplification and reformatting. Got rid of the details
indirection since the entire data structure is private.
2000-04-17 Pavel Cisler <pavel@eazel.com>
This checkin requires new gnome-vfs.
Plumbing for making copied/moved/deleted files show up update
in their respective new locations.
* libnautilus-extensions/nautilus-file-changes-queue.h
* libnautilus-extensions/nautilus-file-changes-queue.c
* libnautilus-extensions/Makefile.am
Shared queue used by the copy engine to send update notification
requests to NautilusDirectory during file copy/move/delete operations.
* libnautilus-extensions/nautilus-directory-private.h:
* libnautilus-extensions/nautilus-directory.c:
(nautilus_directory_notify_files_added),
(nautilus_directory_notify_files_removed),
(nautilus_directory_notify_files_moved):
Stub calls that will be hooked up to the NautilusDirectory
notification calls to dispatch the notification updates.
* src/file-manager/dfos-xfer.c:
(sync_xfer_callback):
New callback that gets called in the async copy engine context
and produces change entries stuffing them into the file changes
queue.
* src/file-manager/dfos-xfer.c:
(handle_xfer_ok):
Added calls to the new nautilus_file_changes_consume_changes
from the progress update callback. This callback is called in
the user interface context and consumes the change entries
from the file changes queue, sending them in chunks to be
dispatched by to the individual Nautilus directory objects.
* src/file-manager/dfos-xfer.c:
(handle_xfer_ok):
Updated to use new progress enum values.
* src/file-manager/dfos-xfer.c:
(update_xfer_callback):
Renamed from sync_xfer_callback.
* src/file-manager/dfos-xfer.c:
(gnome_vfs_async_xfer):
Pass in new sync_xfer_callback parameters.