summaryrefslogtreecommitdiff
path: root/src/nautilus-view.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/nautilus-view.c')
-rw-r--r--src/nautilus-view.c130
1 files changed, 4 insertions, 126 deletions
diff --git a/src/nautilus-view.c b/src/nautilus-view.c
index 2f27278b5..a7e877f9d 100644
--- a/src/nautilus-view.c
+++ b/src/nautilus-view.c
@@ -181,8 +181,6 @@ struct NautilusViewDetails
guint done_loading_handler_id;
guint file_changed_handler_id;
- guint delayed_rename_file_id;
-
GList *new_added_files;
GList *new_changed_files;
@@ -1339,77 +1337,6 @@ action_select_pattern (GSimpleAction *action,
select_pattern(user_data);
}
-typedef struct {
- NautilusView *view;
- NautilusFile *new_file;
-} RenameData;
-
-static gboolean
-delayed_rename_file_hack_callback (RenameData *data)
-{
- NautilusView *view;
- NautilusFile *new_file;
-
- view = data->view;
- new_file = data->new_file;
-
- if (view->details->slot != NULL &&
- view->details->active) {
- NAUTILUS_VIEW_CLASS (G_OBJECT_GET_CLASS (view))->start_renaming_file (view, new_file, FALSE);
- nautilus_view_reveal_selection (view);
- }
-
- return FALSE;
-}
-
-static void
-delayed_rename_file_hack_removed (RenameData *data)
-{
- g_object_unref (data->view);
- nautilus_file_unref (data->new_file);
- g_free (data);
-}
-
-
-static void
-rename_file (NautilusView *view, NautilusFile *new_file)
-{
- RenameData *data;
-
- /* HACK!!!!
- This is a work around bug in listview. After the rename is
- enabled we will get file changes due to info about the new
- file being read, which will cause the model to change. When
- the model changes GtkTreeView clears the editing. This hack just
- delays editing for some time to try to avoid this problem.
- A major problem is that the selection of the row causes us
- to load the slow mimetype for the file, which leads to a
- file_changed. So, before we delay we select the row.
- */
- if (NAUTILUS_IS_LIST_VIEW (view)) {
- nautilus_view_select_file (view, new_file);
-
- data = g_new (RenameData, 1);
- data->view = g_object_ref (view);
- data->new_file = nautilus_file_ref (new_file);
- if (view->details->delayed_rename_file_id != 0) {
- g_source_remove (view->details->delayed_rename_file_id);
- }
- view->details->delayed_rename_file_id =
- g_timeout_add_full (G_PRIORITY_DEFAULT,
- 100, (GSourceFunc)delayed_rename_file_hack_callback,
- data, (GDestroyNotify) delayed_rename_file_hack_removed);
-
- return;
- }
-
- /* no need to select because start_renaming_file selects
- * nautilus_view_select_file (view, new_file);
- */
- NAUTILUS_VIEW_CLASS (G_OBJECT_GET_CLASS (view))->start_renaming_file (view, new_file, FALSE);
- nautilus_view_reveal_selection (view);
-}
-
static void
reveal_newly_added_folder (NautilusView *view, NautilusFile *new_file,
NautilusDirectory *directory, GFile *target_location)
@@ -1439,30 +1366,6 @@ typedef struct {
} NewFolderSelectionData;
static void
-rename_newly_added_folder (NautilusView *view, NautilusFile *removed_file,
- NautilusDirectory *directory, NewFolderSelectionData *data)
-{
- GFile *location;
-
- location = nautilus_file_get_location (removed_file);
- if (!g_hash_table_remove (data->to_remove_locations, location)) {
- g_assert_not_reached ();
- }
- g_object_unref (location);
- if (g_hash_table_size (data->to_remove_locations) == 0) {
- nautilus_view_set_selection (data->directory_view, NULL);
- g_signal_handlers_disconnect_by_func (data->directory_view,
- G_CALLBACK (rename_newly_added_folder),
- (void *) data);
-
- rename_file (data->directory_view, data->new_folder);
- g_object_unref (data->new_folder);
- g_hash_table_destroy (data->to_remove_locations);
- g_free (data);
- }
-}
-
-static void
track_newly_added_locations (NautilusView *view, NautilusFile *new_file,
NautilusDirectory *directory, gpointer user_data)
{
@@ -1474,7 +1377,7 @@ track_newly_added_locations (NautilusView *view, NautilusFile *new_file,
}
static void
-new_folder_done (GFile *new_folder,
+new_folder_done (GFile *new_folder,
gboolean success,
gpointer user_data)
{
@@ -1499,11 +1402,11 @@ new_folder_done (GFile *new_folder,
if (new_folder == NULL) {
goto fail;
}
-
+
screen = gtk_widget_get_screen (GTK_WIDGET (directory_view));
g_snprintf (screen_string, sizeof (screen_string), "%d", gdk_screen_get_number (screen));
-
+
file = nautilus_file_get (new_folder);
nautilus_file_set_metadata
(file, NAUTILUS_METADATA_KEY_SCREEN,
@@ -1540,13 +1443,6 @@ new_folder_done (GFile *new_folder,
target_uri = nautilus_file_get_uri (file);
- g_signal_connect_data (directory_view,
- "remove-file",
- G_CALLBACK (rename_newly_added_folder),
- sdata,
- (GClosureNotify)NULL,
- G_CONNECT_AFTER);
-
nautilus_view_move_copy_items (directory_view,
uris,
NULL,
@@ -2700,16 +2596,11 @@ nautilus_view_destroy (GtkWidget *object)
view->details->reveal_selection_idle_id = 0;
}
- if (view->details->delayed_rename_file_id != 0) {
- g_source_remove (view->details->delayed_rename_file_id);
- view->details->delayed_rename_file_id = 0;
- }
-
if (view->details->model) {
nautilus_directory_unref (view->details->model);
view->details->model = NULL;
}
-
+
if (view->details->directory_as_file) {
nautilus_file_unref (view->details->directory_as_file);
view->details->directory_as_file = NULL;
@@ -4011,18 +3902,6 @@ nautilus_view_set_is_renaming (NautilusView *view,
}
static void
-start_renaming_file (NautilusView *view,
- NautilusFile *file,
- gboolean select_all)
-{
- view->details->is_renaming = TRUE;
-
- if (file != NULL) {
- nautilus_view_select_file (view, file);
- }
-}
-
-static void
open_one_in_new_window (gpointer data, gpointer callback_data)
{
g_assert (NAUTILUS_IS_FILE (data));
@@ -7781,7 +7660,6 @@ nautilus_view_class_init (NautilusViewClass *klass)
klass->get_selected_icon_locations = real_get_selected_icon_locations;
klass->is_read_only = real_is_read_only;
klass->can_rename_file = can_rename_file;
- klass->start_renaming_file = start_renaming_file;
klass->get_backing_uri = real_get_backing_uri;
klass->using_manual_layout = real_using_manual_layout;
klass->get_window = nautilus_view_get_window;