g_return_val_if_fail (error_handler != NULL, obj);
priv->error_checking = error_handler;
+ priv->error_checking_user_data = user_data;
return obj;
}
/* TODO: connect to the msg-sent in order to know when
the mail operation is finished */
- tny_send_queue_add (send_queue, msg, &(priv->error));
+/* tny_send_queue_add (send_queue, msg, &(priv->error)); */
+ modest_tny_send_queue_add (MODEST_TNY_SEND_QUEUE(send_queue),
+ msg,
+ &(priv->error));
/* TODO: we're setting always success, do the check in
the handler */
if (G_UNLIKELY (!first_time))
tny_folder_poke_status (TNY_FOLDER (folder));
}
+
tny_folder_remove_observer (TNY_FOLDER (folder), TNY_FOLDER_OBSERVER (observer));
g_object_unref (observer);
observer = NULL;
ModestMailOperationPrivate *priv;
TnyFolder *new_folder = NULL;
- TnyList *list = tny_simple_list_new ();
- TnyFolderStoreQuery *query = tny_folder_store_query_new ();
-
g_return_val_if_fail (TNY_IS_FOLDER_STORE (parent), NULL);
g_return_val_if_fail (name, NULL);
priv = MODEST_MAIL_OPERATION_GET_PRIVATE (self);
/* Check for already existing folder */
- tny_folder_store_query_add_item (query, name, TNY_FOLDER_STORE_QUERY_OPTION_MATCH_ON_NAME);
- tny_folder_store_get_folders (parent, list, query, NULL);
- g_object_unref (G_OBJECT (query));
-
- if (tny_list_get_length (list) > 0) {
+ if (modest_tny_folder_has_subfolder_with_name (parent, name)) {
priv->status = MODEST_MAIL_OPERATION_STATUS_FAILED;
g_set_error (&(priv->error), MODEST_MAIL_OPERATION_ERROR,
MODEST_MAIL_OPERATION_ERROR_FOLDER_EXISTS,
_CS("ckdg_ib_folder_already_exists"));
}
- g_object_unref (G_OBJECT (list));
-
/* Check parent */
if (TNY_IS_FOLDER (parent)) {
/* Check folder rules */
ModestTnyFolderRules parent_rules = 0, rules;
XFerMsgAsyncHelper *helper = NULL;
const gchar *folder_name = NULL;
+ const gchar *error_msg;
g_return_if_fail (MODEST_IS_MAIL_OPERATION (self));
g_return_if_fail (TNY_IS_FOLDER (folder));
priv = MODEST_MAIL_OPERATION_GET_PRIVATE (self);
folder_name = tny_folder_get_name (folder);
+ /* Set the error msg */
+ error_msg = _("mail_in_ui_folder_move_target_error");
+
/* Get account and set it into mail_operation */
priv->account = modest_tny_folder_get_account (TNY_FOLDER(folder));
priv->status = MODEST_MAIL_OPERATION_STATUS_IN_PROGRESS;
priv->status = MODEST_MAIL_OPERATION_STATUS_FAILED;
g_set_error (&(priv->error), MODEST_MAIL_OPERATION_ERROR,
MODEST_MAIL_OPERATION_ERROR_FOLDER_RULES,
- _("mail_in_ui_folder_move_target_error"));
+ error_msg);
/* Notify the queue */
modest_mail_operation_notify_end (self);
priv->status = MODEST_MAIL_OPERATION_STATUS_FAILED;
g_set_error (&(priv->error), MODEST_MAIL_OPERATION_ERROR,
MODEST_MAIL_OPERATION_ERROR_FOLDER_RULES,
- _("FIXME: parent folder does not accept new folders"));
+ error_msg);
/* Notify the queue */
modest_mail_operation_notify_end (self);
priv->status = MODEST_MAIL_OPERATION_STATUS_FAILED;
g_set_error (&(priv->error), MODEST_MAIL_OPERATION_ERROR,
MODEST_MAIL_OPERATION_ERROR_FOLDER_RULES,
- _("mail_in_ui_folder_copy_target_error"));
+ error_msg);
/* Notify the queue */
modest_mail_operation_notify_end (self);
priv->status = MODEST_MAIL_OPERATION_STATUS_FAILED;
g_set_error (&(priv->error), MODEST_MAIL_OPERATION_ERROR,
MODEST_MAIL_OPERATION_ERROR_FOLDER_RULES,
- _("mail_in_ui_folder_move_target_error"));
+ error_msg);
/* Notify the queue */
modest_mail_operation_notify_end (self);
priv->status = MODEST_MAIL_OPERATION_STATUS_FAILED;
g_set_error (&(priv->error), MODEST_MAIL_OPERATION_ERROR,
MODEST_MAIL_OPERATION_ERROR_FOLDER_RULES,
- _("mail_in_ui_folder_move_target_error"));
+ error_msg);
/* Notify the queue */
modest_mail_operation_notify_end (self);
/* This is not a GDK lock because we are a Tinymail callback and
* Tinymail already acquires the Gdk lock */
-
- /* no gdk_threads_enter (), CHECKED */
helper->user_callback (self, folder, helper->user_data);
- /* no gdk_threads_leave (), CHECKED */
}
out:
/* This is not a GDK lock because we are a Tinymail callback and
* Tinymail already acquires the Gdk lock */
-
- /* no gdk_threads_enter (), CHECKED */
-
g_signal_emit (G_OBJECT (self), signals[PROGRESS_CHANGED_SIGNAL], 0, state, NULL);
- /* no gdk_threads_leave (), CHECKED */
-
g_slice_free (ModestMailOperationState, state);
}