diff options
Diffstat (limited to 'src/nautilus-files-view.c')
-rw-r--r-- | src/nautilus-files-view.c | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/src/nautilus-files-view.c b/src/nautilus-files-view.c index cd7aa2772..b1acfe845 100644 --- a/src/nautilus-files-view.c +++ b/src/nautilus-files-view.c @@ -28,6 +28,8 @@ #include "nautilus-files-view.h" #include "nautilus-application.h" +#include "nautilus-batch-rename-dialog.h" +#include "nautilus-batch-rename-utilities.h" #include "nautilus-error-reporting.h" #include "nautilus-file-undo-manager.h" #include "nautilus-floating-bar.h" @@ -5566,6 +5568,7 @@ real_action_rename (NautilusFilesView *view) { NautilusFile *file; GList *selection; + GtkWidget *dialog; g_assert (NAUTILUS_IS_FILES_VIEW (view)); @@ -5576,6 +5579,21 @@ real_action_rename (NautilusFilesView *view) if (selection->next != NULL) { if (have_bulk_rename_tool ()) { invoke_external_bulk_rename_utility (view, selection); + } else { + GdkCursor *cursor; + GdkDisplay *display; + + display = gtk_widget_get_display (GTK_WIDGET (nautilus_files_view_get_window (view))); + cursor = gdk_cursor_new_from_name (display, "progress"); + gdk_window_set_cursor (gtk_widget_get_window (GTK_WIDGET (nautilus_files_view_get_window (view))), + cursor); + g_object_unref (cursor); + + dialog = nautilus_batch_rename_dialog_new (nautilus_files_view_get_selection (NAUTILUS_VIEW (view)), + nautilus_files_view_get_model (view), + nautilus_files_view_get_window (view)); + + gtk_widget_show (GTK_WIDGET (dialog)); } } else { file = NAUTILUS_FILE (selection->data); @@ -6625,8 +6643,12 @@ real_update_actions_state (NautilusFilesView *view) action = g_action_map_lookup_action (G_ACTION_MAP (view_action_group), "rename"); if (selection_count > 1) { - g_simple_action_set_enabled (G_SIMPLE_ACTION (action), - have_bulk_rename_tool ()); + if (have_bulk_rename_tool()) + g_simple_action_set_enabled (G_SIMPLE_ACTION (action), + have_bulk_rename_tool ()); + else + g_simple_action_set_enabled (G_SIMPLE_ACTION (action), + nautilus_file_can_rename_files (selection)); } else { g_simple_action_set_enabled (G_SIMPLE_ACTION (action), selection_count == 1 && |