diff options
-rw-r--r-- | shell/ChangeLog | 6 | ||||
-rw-r--r-- | shell/e-shell-folder-commands.c | 6 |
2 files changed, 10 insertions, 2 deletions
diff --git a/shell/ChangeLog b/shell/ChangeLog index 5b2057fc30..f3f4e4ec38 100644 --- a/shell/ChangeLog +++ b/shell/ChangeLog @@ -1,7 +1,9 @@ 2001-09-25 Ettore Perazzoli <ettore@ximian.com> - [Implemented the "Rename" command. Warning, it doesn't quite work - yet, as there seems to be something wrong still.] + * e-shell-folder-commands.c (e_shell_command_rename_folder): + Change the name on the EFolder object too. + +2001-09-25 Ettore Perazzoli <ettore@ximian.com> * e-storage.c (e_storage_async_xfer_folder): Ooops. Make the check for CANTMOVETODESCENDANT really work. diff --git a/shell/e-shell-folder-commands.c b/shell/e-shell-folder-commands.c index e90b29a12f..1f7b815ab6 100644 --- a/shell/e-shell-folder-commands.c +++ b/shell/e-shell-folder-commands.c @@ -475,6 +475,7 @@ e_shell_command_rename_folder (EShell *shell, const char *folder_path) { EStorageSet *storage_set; + EFolder *folder; const char *old_name; char *prompt; char *new_name; @@ -491,6 +492,9 @@ e_shell_command_rename_folder (EShell *shell, if (folder_path == NULL) folder_path = e_shell_view_get_current_path (shell_view); + folder = e_storage_set_get_folder (storage_set, folder_path); + g_return_if_fail (folder != NULL); + /* Note that we don't need to get the display name here, as the stock folders cannot be renamed anyway. */ old_name = g_basename (folder_path); @@ -510,6 +514,8 @@ e_shell_command_rename_folder (EShell *shell, return; } + e_folder_set_name (folder, new_name); + old_base_path = g_strndup (folder_path, old_name - folder_path); new_path = g_strconcat (old_base_path, new_name, NULL); |