* Fixes NB#105115, do not show "checking names" banner while select contact dialog...
[modest] / src / modest-mail-operation.h
index 7c43ac0..e57e9d4 100644 (file)
@@ -34,6 +34,7 @@
 #include <tny-folder-store.h>
 #include <widgets/modest-msg-edit-window.h>
 #include <modest-tny-send-queue.h>
+#include <modest-tny-account-store.h>
 
 G_BEGIN_DECLS
 
@@ -76,6 +77,8 @@ typedef enum {
        MODEST_MAIL_OPERATION_TYPE_INFO,
        MODEST_MAIL_OPERATION_TYPE_RUN_QUEUE,
        MODEST_MAIL_OPERATION_TYPE_SYNC_FOLDER,
+       MODEST_MAIL_OPERATION_TYPE_SHUTDOWN,
+       MODEST_MAIL_OPERATION_TYPE_QUEUE_WAKEUP,
        MODEST_MAIL_OPERATION_TYPE_UNKNOWN,
 } ModestMailOperationTypeOperation;
 
@@ -580,9 +583,7 @@ void          modest_mail_operation_xfer_msgs      (ModestMailOperation *self,
  * @remove_to_trash: TRUE to move it to trash or FALSE to delete it
  * permanently
  * 
- * Deletes a list of messages. This operation is synchronous, so the
- * #ModestMailOperation should not be added to any
- * #ModestMailOperationQueue
+ * Deletes a list of messages.
  **/
 void          modest_mail_operation_remove_msgs     (ModestMailOperation *self,
                                                     TnyList *headers,
@@ -636,6 +637,18 @@ void          modest_mail_operation_run_queue       (ModestMailOperation *self,
                                                     ModestTnySendQueue *queue);
 
 /**
+ * modest_mail_operation_queue_wakeup:
+ * @self: a #ModestMailOperation
+ * @queue: a #ModestTnySendQueue
+ *
+ * This mail operation is special. It should be running every time the send queue
+ * wakeup is running and we should notify end of the operation
+ * after wakeup has done msg-sent notification.
+ */
+void          modest_mail_operation_queue_wakeup       (ModestMailOperation *self,
+                                                       ModestTnySendQueue *queue);
+
+/**
  * modest_mail_operation_sync_folder:
  * @self: a #ModestMailOperation
  * @folder: a #TnyFolder
@@ -647,6 +660,16 @@ void          modest_mail_operation_run_queue       (ModestMailOperation *self,
 void          modest_mail_operation_sync_folder     (ModestMailOperation *self,
                                                     TnyFolder *folder, gboolean expunge);
 
+/**
+ * modest_mail_operation_shutdown:
+ * @self: a #ModestMailOperation
+ * @account_store: a #ModestTnyAccountStore
+ *
+ * disconnects all accounts in the account store (doing the proper syncs).
+ */
+void          modest_mail_operation_shutdown        (ModestMailOperation *self,
+                                                    ModestTnyAccountStore *account_store);
+
 /* Functions to control mail operations */
 /**
  * modest_mail_operation_get_task_done: