X-Git-Url: http://git.maemo.org/git/?a=blobdiff_plain;f=src%2Fmodest-ui-actions.c;h=7bc729e3622197c1bbec80559cca502ee1446a51;hb=58168ce48462edc4364fbac1fe73c5e5ef8c99ee;hp=8099700f000bcf6e8afcc1636f5039f70356862b;hpb=8e43419e3de0dc6b9afde4f309c3fe25b1e12286;p=modest diff --git a/src/modest-ui-actions.c b/src/modest-ui-actions.c index 8099700..7bc729e 100644 --- a/src/modest-ui-actions.c +++ b/src/modest-ui-actions.c @@ -224,11 +224,12 @@ modest_ui_actions_run_account_setup_wizard (ModestWindow *win) modest_window_mgr_set_modal (modest_runtime_get_window_mgr(), wizard); /* always present a main window in the background - * we do it here, so we cannot end up with to wizards (as this + * we do it here, so we cannot end up with two wizards (as this * function might be called in modest_window_mgr_get_main_window as well */ if (!win) - win = modest_window_mgr_get_main_window (modest_runtime_get_window_mgr()); - + win = modest_window_mgr_get_main_window (modest_runtime_get_window_mgr(), + TRUE); /* create if not existent */ + /* make sure the mainwindow is visible */ gtk_widget_show_all (GTK_WIDGET(win)); gtk_window_present (GTK_WINDOW(win)); @@ -353,7 +354,7 @@ headers_action_mark_as_read (TnyHeader *header, flags = tny_header_get_flags (header); if (flags & TNY_HEADER_FLAG_SEEN) return; - tny_header_set_flags (header, TNY_HEADER_FLAG_SEEN); + tny_header_set_flag (header, TNY_HEADER_FLAG_SEEN); } static void @@ -367,7 +368,7 @@ headers_action_mark_as_unread (TnyHeader *header, flags = tny_header_get_flags (header); if (flags & TNY_HEADER_FLAG_SEEN) { - tny_header_unset_flags (header, TNY_HEADER_FLAG_SEEN); + tny_header_unset_flag (header, TNY_HEADER_FLAG_SEEN); } } @@ -375,22 +376,6 @@ headers_action_mark_as_unread (TnyHeader *header, * otherwise complicated, and it's best to change it in one place * when we change it. */ -void modest_do_message_delete (TnyHeader *header, ModestWindow *win) -{ - ModestMailOperation *mail_op = NULL; - mail_op = modest_mail_operation_new (win ? G_OBJECT(win) : NULL); - modest_mail_operation_queue_add (modest_runtime_get_mail_operation_queue (), - mail_op); - - /* Always delete. TODO: Move to trash still not supported */ - modest_mail_operation_remove_msg (mail_op, header, FALSE); - g_object_unref (G_OBJECT (mail_op)); -} - -/** A convenience method, because deleting a message is - * otherwise complicated, and it's best to change it in one place - * when we change it. - */ void modest_do_messages_delete (TnyList *headers, ModestWindow *win) { ModestMailOperation *mail_op = NULL; @@ -419,6 +404,7 @@ modest_ui_actions_refresh_message_window_after_delete (ModestMsgViewWindow* win) } } + void modest_ui_actions_on_delete_message (GtkAction *action, ModestWindow *win) { @@ -507,7 +493,6 @@ modest_ui_actions_on_delete_message (GtkAction *action, ModestWindow *win) GtkTreeRowReference *prev_row_reference = NULL; GtkTreePath *next_path = NULL; GtkTreePath *prev_path = NULL; - GError *err = NULL; /* Find last selected row */ if (MODEST_IS_MAIN_WINDOW (win)) { @@ -545,9 +530,8 @@ modest_ui_actions_on_delete_message (GtkAction *action, ModestWindow *win) /* Get main window */ mgr = modest_runtime_get_window_mgr (); - main_window = modest_window_mgr_get_main_window (mgr); - } - else { + main_window = modest_window_mgr_get_main_window (mgr, FALSE); /* don't create */ + } else { /* Move cursor to next row */ main_window = win; @@ -570,11 +554,6 @@ modest_ui_actions_on_delete_message (GtkAction *action, ModestWindow *win) if (prev_path != NULL) gtk_tree_path_free (prev_path); } - - if (err != NULL) { - printf ("DEBUG: %s: Error: code=%d, text=%s\n", __FUNCTION__, err->code, err->message); - g_error_free(err); - } /* Update toolbar dimming state */ modest_ui_actions_check_toolbar_dimming_rules (MODEST_WINDOW (main_window)); @@ -766,93 +745,95 @@ modest_ui_actions_on_smtp_servers (GtkAction *action, ModestWindow *win) } void -modest_ui_actions_on_new_msg (GtkAction *action, ModestWindow *win) +modest_ui_actions_compose_msg(ModestWindow *win, + const gchar *to_str, + const gchar *cc_str, + const gchar *bcc_str, + const gchar *subject_str, + const gchar *body_str, + GSList *attachments) { - ModestWindow *msg_win = NULL; - TnyMsg *msg = NULL; - TnyFolder *folder = NULL; gchar *account_name = NULL; - gchar *from_str = NULL; -/* GError *err = NULL; */ + TnyMsg *msg = NULL; TnyAccount *account = NULL; - ModestWindowMgr *mgr; - gchar *signature = NULL, *blank_and_signature = NULL; + TnyFolder *folder = NULL; + gchar *from_str = NULL, *signature = NULL, *body = NULL; + gboolean use_signature = FALSE; + ModestWindow *msg_win = NULL; + ModestAccountMgr *mgr = modest_runtime_get_account_mgr(); + ModestTnyAccountStore *store = modest_runtime_get_account_store(); - /* if there are no accounts yet, just show the wizard */ - if (!modest_account_mgr_has_accounts (modest_runtime_get_account_mgr(), TRUE)) { - if (!modest_ui_actions_run_account_setup_wizard (win)) - return; - } - - account_name = g_strdup (modest_window_get_active_account (win)); - if (!account_name) - account_name = modest_account_mgr_get_default_account (modest_runtime_get_account_mgr ()); + if (win) account_name = g_strdup (modest_window_get_active_account (win)); + if (!account_name) account_name = modest_account_mgr_get_default_account(mgr); if (!account_name) { g_printerr ("modest: no account found\n"); goto cleanup; } - - account = modest_tny_account_store_get_server_account (modest_runtime_get_account_store(), - account_name, - TNY_ACCOUNT_TYPE_STORE); + account = modest_tny_account_store_get_server_account (store, account_name, TNY_ACCOUNT_TYPE_STORE); if (!account) { g_printerr ("modest: failed to get tnyaccount for '%s'\n", account_name); goto cleanup; } - - from_str = modest_account_mgr_get_from_string (modest_runtime_get_account_mgr(), account_name); + folder = modest_tny_account_get_special_folder (account, TNY_FOLDER_TYPE_DRAFTS); + if (!folder) { + g_printerr ("modest: failed to find Drafts folder\n"); + goto cleanup; + } + from_str = modest_account_mgr_get_from_string (mgr, account_name); if (!from_str) { g_printerr ("modest: failed get from string for '%s'\n", account_name); goto cleanup; } - gboolean use_signature = FALSE; - signature = modest_account_mgr_get_signature (modest_runtime_get_account_mgr (), account_name, &use_signature); - - if (use_signature) { - blank_and_signature = g_strconcat ("\n", signature, NULL); + signature = modest_account_mgr_get_signature (mgr, account_name, &use_signature); + if (body_str != NULL) { + body = use_signature ? g_strconcat(body_str, "\n", signature, NULL) : g_strdup(body_str); } else { - blank_and_signature = g_strdup (""); + body = use_signature ? g_strconcat("\n", signature, NULL) : g_strdup(""); } - g_free (signature); - - msg = modest_tny_msg_new ("", from_str, "", "", "", blank_and_signature, NULL); + msg = modest_tny_msg_new (to_str, from_str, cc_str, bcc_str, subject_str, body, NULL); if (!msg) { g_printerr ("modest: failed to create new msg\n"); goto cleanup; } - - folder = modest_tny_account_get_special_folder (account, TNY_FOLDER_TYPE_DRAFTS); - if (!folder) { - g_printerr ("modest: failed to find Drafts folder\n"); - goto cleanup; - } - - + /* Create and register edit window */ /* This is destroyed by TODO. */ msg_win = modest_msg_edit_window_new (msg, account_name, FALSE); - mgr = modest_runtime_get_window_mgr (); - modest_window_mgr_register_window (mgr, msg_win); + while (attachments) { + modest_msg_edit_window_attach_file_one((ModestMsgEditWindow *)msg_win, + attachments->data); + attachments = g_slist_next(attachments); + } + modest_window_mgr_register_window (modest_runtime_get_window_mgr(), msg_win); - if (win) + if (win) { gtk_window_set_transient_for (GTK_WINDOW (msg_win), GTK_WINDOW (win)); + } gtk_widget_show_all (GTK_WIDGET (msg_win)); cleanup: - g_free (account_name); g_free (from_str); - g_free (blank_and_signature); - if (msg_win) - g_object_unref (msg_win); - if (account) - g_object_unref (G_OBJECT(account)); - if (msg) - g_object_unref (G_OBJECT(msg)); - if (folder) - g_object_unref (G_OBJECT(folder)); + g_free (signature); + g_free (body); + g_free (account_name); + if (account) g_object_unref (G_OBJECT(account)); + if (folder) g_object_unref (G_OBJECT(folder)); + if (msg_win) g_object_unref (G_OBJECT(msg_win)); + if (msg) g_object_unref (G_OBJECT(msg)); +} + +void +modest_ui_actions_on_new_msg (GtkAction *action, ModestWindow *win) +{ + /* if there are no accounts yet, just show the wizard */ + if (!modest_account_mgr_has_accounts (modest_runtime_get_account_mgr(), TRUE)) { + if (!modest_ui_actions_run_account_setup_wizard (win)) return; + } + + modest_ui_actions_compose_msg(win, NULL, NULL, NULL, NULL, NULL, NULL); } gboolean @@ -885,6 +866,7 @@ open_msg_cb (ModestMailOperation *mail_op, TnyHeader *header, TnyMsg *msg, gpoi TnyFolderType folder_type = TNY_FOLDER_TYPE_UNKNOWN; gchar *account = NULL; TnyFolder *folder; + gboolean open_in_editor = FALSE; /* Do nothing if there was any problem with the mail operation. The error will be shown by the error_handler of @@ -901,6 +883,35 @@ open_msg_cb (ModestMailOperation *mail_op, TnyHeader *header, TnyMsg *msg, gpoi /* Gets folder type (OUTBOX headers will be opened in edit window */ if (modest_tny_folder_is_local_folder (folder)) { folder_type = modest_tny_folder_get_local_or_mmc_folder_type (folder); + if (folder_type == TNY_FOLDER_TYPE_INVALID) + g_warning ("%s: BUG: TNY_FOLDER_TYPE_INVALID", __FUNCTION__); + } + + + if (folder_type == TNY_FOLDER_TYPE_OUTBOX) { + TnyTransportAccount *traccount = NULL; + ModestTnyAccountStore *accstore = modest_runtime_get_account_store(); + traccount = modest_tny_account_store_get_transport_account_from_outbox_header(accstore, header); + if (traccount) { + ModestTnySendQueue *send_queue = NULL; + ModestTnySendQueueStatus status; + char *msg_id; + account = g_strdup(modest_tny_account_get_parent_modest_account_name_for_server_account( + TNY_ACCOUNT(traccount))); + send_queue = modest_runtime_get_send_queue(traccount); + msg_id = modest_tny_send_queue_get_msg_id (header); + status = modest_tny_send_queue_get_msg_status(send_queue, msg_id); + /* Only open messages in outbox with the editor if they are in Failed state */ + if (status == MODEST_TNY_SEND_QUEUE_FAILED) { + open_in_editor = TRUE; + } + g_free(msg_id); + g_object_unref(traccount); + } else { + g_warning("Cannot get transport account for message in outbox!!"); + } + } else if (folder_type == TNY_FOLDER_TYPE_DRAFTS) { + open_in_editor = TRUE; /* Open in editor if the message is in the Drafts folder */ } /* Get account */ @@ -909,9 +920,7 @@ open_msg_cb (ModestMailOperation *mail_op, TnyHeader *header, TnyMsg *msg, gpoi if (!account) account = modest_account_mgr_get_default_account (modest_runtime_get_account_mgr()); - /* If the header is in the drafts folder then open the editor, - else the message view window */ - if (folder_type == TNY_FOLDER_TYPE_DRAFTS) { + if (open_in_editor) { ModestAccountMgr *mgr = modest_runtime_get_account_mgr (); const gchar *from_header = NULL; @@ -987,7 +996,6 @@ open_msg_cb (ModestMailOperation *mail_op, TnyHeader *header, TnyMsg *msg, gpoi mgr = modest_runtime_get_window_mgr (); modest_window_mgr_register_window (mgr, win); g_object_unref (win); - gtk_window_set_transient_for (GTK_WINDOW (win), GTK_WINDOW (parent_win)); gtk_widget_show_all (GTK_WIDGET(win)); } @@ -1626,33 +1634,6 @@ new_messages_arrived (ModestMailOperation *self, TnyList *new_headers, gpointer user_data) { - ModestMainWindow *win = NULL; - GtkWidget *folder_view = NULL; - TnyFolderStore *folder = NULL; - gboolean folder_empty = FALSE; - - g_return_if_fail (MODEST_IS_MAIN_WINDOW (user_data)); - win = MODEST_MAIN_WINDOW (user_data); - - /* Don't do anything if there are not new headers, this could - happen if there was any problem with the mail operation */ - if (!new_headers) - return; - - /* Set contents style of headers view */ - if (modest_main_window_get_contents_style (win) == MODEST_MAIN_WINDOW_CONTENTS_STYLE_EMPTY) { - folder_view = modest_main_window_get_child_widget (MODEST_MAIN_WINDOW (win), - MODEST_MAIN_WINDOW_WIDGET_TYPE_FOLDER_VIEW); - folder = modest_folder_view_get_selected (MODEST_FOLDER_VIEW(folder_view)); - - - folder_empty = (tny_folder_get_all_count (TNY_FOLDER (folder)) == 0); - - if (!folder_empty) - modest_main_window_set_contents_style (win, - MODEST_MAIN_WINDOW_CONTENTS_STYLE_HEADERS); - } - /* Notify new messages have been downloaded */ if ((new_headers != NULL) && (tny_list_get_length (new_headers) > 0)) modest_platform_on_new_headers_received (new_headers); @@ -2559,9 +2540,7 @@ modest_ui_actions_create_folder(GtkWidget *parent_window, g_free (suggested_name); suggested_name = NULL; - if (result == GTK_RESPONSE_REJECT) { - finished = TRUE; - } else { + if (result == GTK_RESPONSE_ACCEPT) { ModestMailOperation *mail_op; TnyFolder *new_folder = NULL; @@ -2582,6 +2561,8 @@ modest_ui_actions_create_folder(GtkWidget *parent_window, finished = TRUE; } g_object_unref (mail_op); + } else { + finished = TRUE; } suggested_name = folder_name; @@ -2625,7 +2606,9 @@ modest_ui_actions_rename_folder_error_handler (ModestMailOperation *mail_op, message = _CS("ckdg_ib_folder_already_exists"); break; default: - g_return_if_reached (); + g_warning ("%s: BUG: unexpected error:[%d]: %s", __FUNCTION__, + error->code, error->message); + return; } modest_platform_information_banner (GTK_WIDGET (window), NULL, message); @@ -2844,7 +2827,6 @@ modest_ui_actions_on_password_requested (TnyAccountStore *account_store, ModestMainWindow *main_window) { g_return_if_fail(server_account_name); - /* printf("DEBUG: %s: server_account_name=%s\n", __FUNCTION__, server_account_name); */ /* Initalize output parameters: */ if (cancel) @@ -2882,7 +2864,8 @@ modest_ui_actions_on_password_requested (TnyAccountStore *account_store, modest_runtime_get_account_mgr(), server_account_name); if (!server_name) {/* This happened once, though I don't know why. murrayc. */ g_warning("%s: Could not get server name for server account '%s'", __FUNCTION__, server_account_name); - *cancel = TRUE; + if (cancel) + *cancel = TRUE; return; } @@ -3724,12 +3707,15 @@ on_move_to_dialog_folder_selection_changed (ModestFolderView* self, /* check if folder_store is an remote account */ if (TNY_IS_ACCOUNT (folder_store)) { TnyAccount *local_account = NULL; + TnyAccount *mmc_account = NULL; ModestTnyAccountStore *account_store = NULL; account_store = modest_runtime_get_account_store (); local_account = modest_tny_account_store_get_local_folders_account (account_store); + mmc_account = modest_tny_account_store_get_mmc_folders_account (account_store); - if ((gpointer) local_account != (gpointer) folder_store) { + if ((gpointer) local_account != (gpointer) folder_store && + (gpointer) mmc_account != (gpointer) folder_store) { is_local_account = FALSE; /* New button should be dimmed on remote account root */ @@ -3862,6 +3848,8 @@ create_move_to_dialog (GtkWindow *win, if (MODEST_IS_FOLDER_VIEW (folder_view)) { const gchar *visible_id = NULL; + modest_folder_view_set_style (MODEST_FOLDER_VIEW (*tree_view), + MODEST_FOLDER_VIEW_STYLE_SHOW_ALL); modest_folder_view_copy_model (MODEST_FOLDER_VIEW(folder_view), MODEST_FOLDER_VIEW(*tree_view)); @@ -3876,6 +3864,8 @@ create_move_to_dialog (GtkWindow *win, ModestAccountMgr *mgr = NULL; ModestAccountData *acc_data = NULL; + modest_folder_view_set_style (MODEST_FOLDER_VIEW (*tree_view), + MODEST_FOLDER_VIEW_STYLE_SHOW_ALL); modest_folder_view_update_model (MODEST_FOLDER_VIEW (*tree_view), TNY_ACCOUNT_STORE (modest_runtime_get_account_store ())); @@ -4064,7 +4054,11 @@ modest_ui_actions_move_folder_error_handler (ModestMailOperation *mail_op, } /* Disable next automatic folder selection */ - main_window = modest_window_mgr_get_main_window (modest_runtime_get_window_mgr ()); + main_window = modest_window_mgr_get_main_window (modest_runtime_get_window_mgr (), + FALSE); /* don't create */ + if (!main_window) + g_warning ("%s: BUG: no main window", __FUNCTION__); + folder_view = modest_main_window_get_child_widget (MODEST_MAIN_WINDOW (main_window), MODEST_MAIN_WINDOW_WIDGET_TYPE_FOLDER_VIEW); modest_folder_view_disable_next_folder_selection (MODEST_FOLDER_VIEW(folder_view)); @@ -4196,15 +4190,23 @@ modest_ui_actions_on_main_window_remove_attachments (GtkAction *action, MODEST_MAIN_WINDOW_WIDGET_TYPE_HEADER_VIEW); header_list = modest_header_view_get_selected_headers (MODEST_HEADER_VIEW (header_view)); - + if (!header_list) { + g_warning ("%s: no header selected", __FUNCTION__); + return; + } + if (tny_list_get_length (header_list) == 1) { iter = tny_list_create_iterator (header_list); header = TNY_HEADER (tny_iterator_get_current (iter)); g_object_unref (iter); - } else { + } else + return; + + if (!header || !TNY_IS_HEADER(header)) { + g_warning ("%s: header is not valid", __FUNCTION__); return; } - + found = modest_window_mgr_find_registered_header (modest_runtime_get_window_mgr (), header, &msg_view_window); flags = tny_header_get_flags (header); @@ -4266,6 +4268,11 @@ modest_ui_actions_xfer_messages_from_move_to (TnyFolderStore *dst_folder, /* Get selected headers */ headers = get_selected_headers (MODEST_WINDOW (win)); + if (!headers) { + g_warning ("%s: no headers selected", __FUNCTION__); + return; + } + if (dst_is_pop) { modest_platform_information_banner (GTK_WIDGET (win), @@ -4365,6 +4372,15 @@ modest_ui_actions_on_main_window_move_to (GtkAction *action, sel = gtk_tree_view_get_selection (GTK_TREE_VIEW (folder_view)); gtk_tree_selection_unselect_all (sel); + /* Let gtk events run. We need that the folder + view frees its reference to the source + folder *before* issuing the mail operation + so we need the signal handler of selection + changed to happen before the mail + operation */ + while (gtk_events_pending ()) + gtk_main_iteration (); + mail_op = modest_mail_operation_new_with_error_handling (G_OBJECT(win), modest_ui_actions_move_folder_error_handler, @@ -4421,17 +4437,27 @@ modest_ui_actions_on_msg_view_window_move_to (GtkAction *action, TnyHeader *header = NULL; TnyFolder *src_folder = NULL; TnyAccount *account = NULL; + gboolean do_xfer = FALSE; /* Create header list */ header = modest_msg_view_window_get_header (MODEST_MSG_VIEW_WINDOW (win)); src_folder = TNY_FOLDER (tny_header_get_folder(header)); g_object_unref (header); - /* Transfer the message if online or confirmed by the user */ account = tny_folder_get_account (src_folder); - if (remote_folder_is_pop(TNY_FOLDER_STORE (src_folder)) || - (modest_platform_is_network_folderstore(TNY_FOLDER_STORE (src_folder)) && - connect_to_get_msg(MODEST_WINDOW (win), 1, account))) { + if (!modest_platform_is_network_folderstore(TNY_FOLDER_STORE(src_folder))) { + /* Transfer if the source folder is local */ + do_xfer = TRUE; + } else if (remote_folder_is_pop(TNY_FOLDER_STORE(src_folder))) { + /* Transfer if the source folder is POP (as it means + * that the message is already downloaded) */ + do_xfer = TRUE; + } else if (connect_to_get_msg(MODEST_WINDOW(win), 1, account)) { + /* Transfer after asking confirmation */ + do_xfer = TRUE; + } + + if (do_xfer) { modest_ui_actions_xfer_messages_from_move_to (dst_folder, MODEST_WINDOW (win)); } g_object_unref (account); @@ -4455,7 +4481,8 @@ modest_ui_actions_on_move_to (GtkAction *action, main_window = MODEST_MAIN_WINDOW (win); else main_window = - MODEST_MAIN_WINDOW (modest_window_mgr_get_main_window (modest_runtime_get_window_mgr ())); + MODEST_MAIN_WINDOW (modest_window_mgr_get_main_window (modest_runtime_get_window_mgr (), + FALSE)); /* don't create */ /* Get the folder view widget if exists */ if (main_window) @@ -4593,53 +4620,19 @@ modest_ui_actions_on_settings (GtkAction *action, void modest_ui_actions_on_help (GtkAction *action, - ModestWindow *win) + GtkWindow *win) { - const gchar *help_id = NULL; + const gchar *help_id; - if (MODEST_IS_MAIN_WINDOW (win)) { - GtkWidget *folder_view; - TnyFolderStore *folder_store; - - /* Get selected folder */ - folder_view = modest_main_window_get_child_widget (MODEST_MAIN_WINDOW (win), - MODEST_MAIN_WINDOW_WIDGET_TYPE_FOLDER_VIEW); - folder_store = modest_folder_view_get_selected (MODEST_FOLDER_VIEW (folder_view)); - - /* Switch help_id */ - if (TNY_IS_FOLDER (folder_store)) { - switch (modest_tny_folder_guess_folder_type (TNY_FOLDER (folder_store))) { - case TNY_FOLDER_TYPE_NORMAL: - help_id = "applications_email_managefolders"; - break; - case TNY_FOLDER_TYPE_INBOX: - help_id = "applications_email_inbox"; - break; - case TNY_FOLDER_TYPE_OUTBOX: - help_id = "applications_email_outbox"; - break; - case TNY_FOLDER_TYPE_SENT: - help_id = "applications_email_sent"; - break; - case TNY_FOLDER_TYPE_DRAFTS: - help_id = "applications_email_drafts"; - break; - case TNY_FOLDER_TYPE_ARCHIVE: - help_id = "applications_email_managefolders"; - break; - default: - help_id = "applications_email_managefolders"; - } - } else { - help_id = "applications_email_mainview"; - } - g_object_unref (folder_store); - } else if (MODEST_IS_MSG_VIEW_WINDOW (win)) { - help_id = "applications_email_viewer"; - } else if (MODEST_IS_MSG_EDIT_WINDOW (win)) - help_id = "applications_email_editor"; - - modest_platform_show_help (GTK_WINDOW (win), help_id); + g_return_if_fail (action); + g_return_if_fail (win && GTK_IS_WINDOW(win)); + + help_id = modest_window_mgr_get_help_id (modest_runtime_get_window_mgr(), win); + + if (help_id) + modest_platform_show_help (GTK_WINDOW (win), help_id); + else + g_warning ("%s: no help for window %p", __FUNCTION__, win); } void @@ -4865,8 +4858,8 @@ modest_ui_actions_on_send_queue_status_changed (ModestTnySendQueue *send_queue, TnyFolderType folder_type; mgr = modest_runtime_get_window_mgr (); - main_window = MODEST_MAIN_WINDOW (modest_window_mgr_get_main_window (mgr)); - + main_window = MODEST_MAIN_WINDOW (modest_window_mgr_get_main_window (mgr, + FALSE));/* don't create */ if (!main_window) return;