diff options
author | Christian Neumair <chris@gnome-de.org> | 2005-05-17 09:27:06 +0000 |
---|---|---|
committer | Christian Neumair <cneumair@src.gnome.org> | 2005-05-17 09:27:06 +0000 |
commit | eb6b091250358bce6849ac9ba8cb516d2879d3a4 (patch) | |
tree | 92c53344c8566f1729e7f6b950b846af161a33b0 | |
parent | 0a25eade7bf9a27d09347495781b025d17416513 (diff) | |
download | nautilus-eb6b091250358bce6849ac9ba8cb516d2879d3a4.tar.gz |
Offer "Skip", "Cancel", "Retry" in XFer Error prompt if more than one file
2005-05-17 Christian Neumair <chris@gnome-de.org>
* libnautilus-private/nautilus-file-operations.c:
(handle_transfer_vfs_error):
Offer "Skip", "Cancel", "Retry" in XFer Error prompt
if more than one file is transferred. Otherwise, just
offer "Cancel" and "Retry".
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | libnautilus-private/nautilus-file-operations.c | 21 |
2 files changed, 13 insertions, 16 deletions
@@ -1,3 +1,11 @@ +2005-05-17 Christian Neumair <chris@gnome-de.org> + + * libnautilus-private/nautilus-file-operations.c: + (handle_transfer_vfs_error): + Offer "Skip", "Cancel", "Retry" in XFer Error prompt + if more than one file is transferred. Otherwise, just + offer "Cancel" and "Retry". + 2005-05-17 Alexander Larsson <alexl@redhat.com> * nautilus-folder-handler.desktop.in (Exec): diff --git a/libnautilus-private/nautilus-file-operations.c b/libnautilus-private/nautilus-file-operations.c index e0c06e04d..85986dda0 100644 --- a/libnautilus-private/nautilus-file-operations.c +++ b/libnautilus-private/nautilus-file-operations.c @@ -932,36 +932,25 @@ handle_transfer_vfs_error (const GnomeVFSXferProgressInfo *progress_info, TRUE, GTK_MESSAGE_ERROR, text, detail, dialog_title, GTK_STOCK_OK, NULL); error_dialog_result = GNOME_VFS_XFER_ERROR_ACTION_ABORT; - } else if ((error_location == ERROR_LOCATION_SOURCE - || error_location == ERROR_LOCATION_SOURCE_PARENT - || error_location == ERROR_LOCATION_SOURCE_OR_PARENT) - && (error_kind == ERROR_NOT_ENOUGH_PERMISSIONS - || error_kind == ERROR_NOT_READABLE)) { - /* The error could have happened on any of the files - * in the moved/copied/deleted hierarchy, we can probably - * continue. Allow the user to skip. - */ + } else if (progress_info->files_total == 1) { error_dialog_button_pressed = eel_run_simple_dialog (parent_for_error_dialog (transfer_info), TRUE, GTK_MESSAGE_ERROR, text, detail, dialog_title, - GTK_STOCK_CANCEL, _("_Skip"), NULL); - + GTK_STOCK_CANCEL, _("_Retry"), NULL); + switch (error_dialog_button_pressed) { case 0: - case GTK_RESPONSE_DELETE_EVENT: error_dialog_result = GNOME_VFS_XFER_ERROR_ACTION_ABORT; break; case 1: - error_dialog_result = GNOME_VFS_XFER_ERROR_ACTION_SKIP; + error_dialog_result = GNOME_VFS_XFER_ERROR_ACTION_RETRY; break; default: g_assert_not_reached (); error_dialog_result = GNOME_VFS_XFER_ERROR_ACTION_ABORT; } - } else { - /* Generic error, offer to retry and skip. */ error_dialog_button_pressed = eel_run_simple_dialog (parent_for_error_dialog (transfer_info), TRUE, GTK_MESSAGE_ERROR, text, @@ -983,7 +972,7 @@ handle_transfer_vfs_error (const GnomeVFSXferProgressInfo *progress_info, error_dialog_result = GNOME_VFS_XFER_ERROR_ACTION_ABORT; } } - + g_free (text); g_free (detail); g_free (formatted_source_name); |