_("FIXME: unable to rename"));
} else {
/* Rename. Camel handles folder subscription/unsubscription */
- tny_folder_set_name (folder, name, &(priv->error));
+
+ TnyFolderStore *into;
+ TnyFolder *nfol;
+
+ into = tny_folder_get_folder_store (folder);
+ nfol = tny_folder_copy (folder, into, name, TRUE, &(priv->error));
+ if (into)
+ g_object_unref (into);
+ if (nfol)
+ g_object_unref (nfol);
+
CHECK_EXCEPTION (priv, MODEST_MAIL_OPERATION_STATUS_FAILED);
}
{
TnyFolderStore *folder;
GtkWidget *folder_view;
-
+ GtkWidget *header_view;
+
g_return_if_fail (MODEST_IS_MAIN_WINDOW(main_window));
folder_view = modest_main_window_get_child_widget (main_window,
MODEST_WIDGET_TYPE_FOLDER_VIEW);
if (!folder_view)
return;
+
+ header_view = modest_main_window_get_child_widget (main_window,
+ MODEST_WIDGET_TYPE_HEADER_VIEW);
+ if (!header_view)
+ return;
+
folder = modest_folder_view_get_selected (MODEST_FOLDER_VIEW(folder_view));
if (folder && TNY_IS_FOLDER (folder)) {
modest_mail_operation_queue_add (modest_runtime_get_mail_operation_queue (),
mail_op);
+ modest_header_view_set_folder (MODEST_HEADER_VIEW (header_view), NULL);
+
modest_mail_operation_rename_folder (mail_op,
TNY_FOLDER (folder),
(const gchar *) folder_name);