summaryrefslogtreecommitdiff
path: root/src/nautilus-directory.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/nautilus-directory.c')
-rw-r--r--src/nautilus-directory.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/nautilus-directory.c b/src/nautilus-directory.c
index 527b6bf93..a0e3dd34f 100644
--- a/src/nautilus-directory.c
+++ b/src/nautilus-directory.c
@@ -1319,6 +1319,8 @@ nautilus_directory_notify_files_changed (GList *files)
GHashTable *changed_lists;
GList *node;
GFile *location;
+ GFile *parent;
+ NautilusDirectory *dir;
NautilusFile *file;
/* Make a list of changed files in each directory. */
@@ -1345,6 +1347,27 @@ nautilus_directory_notify_files_changed (GList *files)
hash_table_list_prepend (changed_lists, directory, file);
}
+ else
+ {
+ parent = g_file_get_parent (location);
+ dir = nautilus_directory_get_existing (parent);
+ if (dir != NULL && dir->details->new_files_in_progress != NULL &&
+ files != dir->details->new_files_in_progress_changes)
+ {
+ dir->details->new_files_in_progress_changes =
+ g_list_prepend (dir->details->new_files_in_progress_changes,
+ g_object_ref (location));
+ }
+
+ if (dir != NULL)
+ {
+ nautilus_directory_unref (dir);
+ }
+ if (parent != NULL)
+ {
+ g_object_unref (parent);
+ }
+ }
}
/* Now send out the changed signals. */