summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Resch <andrewresch@gmail.com>2009-06-01 19:29:15 +0000
committerAndrew Resch <andrewresch@gmail.com>2009-06-01 19:29:15 +0000
commit261be32b400f2e96730cb0c0ec272074cfe0900c (patch)
tree170d7c927260a180cbf6a9126182f207bfd4cefa
parent85a41715b20d47c7054e0a66f9fba0d9187ba045 (diff)
downloaddeluge-261be32b400f2e96730cb0c0ec272074cfe0900c.tar.gz
deluge-261be32b400f2e96730cb0c0ec272074cfe0900c.tar.bz2
deluge-261be32b400f2e96730cb0c0ec272074cfe0900c.zip
Fix #950 renaming a parent folder into multiple folders
-rw-r--r--ChangeLog3
-rw-r--r--deluge/ui/gtkui/files_tab.py8
2 files changed, 9 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index be87655b3..14cfa2dd0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,6 @@
+=== Deluge 1.1.9 - (In Development) ===
+ * Fix #950 renaming a parent folder into multiple folders
+
=== Deluge 1.1.8 - (21 May 2009) ===
==== Core ====
* Fix pause all/resume all
diff --git a/deluge/ui/gtkui/files_tab.py b/deluge/ui/gtkui/files_tab.py
index 28b224014..fa914e87e 100644
--- a/deluge/ui/gtkui/files_tab.py
+++ b/deluge/ui/gtkui/files_tab.py
@@ -738,8 +738,12 @@ class FilesTab(Tab):
# This means that a folder by this name already exists
self.reparent_iter(self.treestore.iter_children(old_folder_iter), new_folder_iter)
else:
- new_folder_iter = self.get_iter_at_path("/".join(new_split[:-1]) + "/")
- self.reparent_iter(old_folder_iter, new_folder_iter)
+ parent = old_folder_iter_parent
+ for ns in new_split[:-1]:
+ parent = self.treestore.append(parent, [ns + "/", 0, "", 0, 0, -1, gtk.STOCK_DIRECTORY])
+
+ self.treestore[old_folder_iter][0] = new_split[-1] + "/"
+ self.reparent_iter(old_folder_iter, parent)
# We need to check if the old_folder_iter_parent no longer has children
# and if so, we delete it