X-Git-Url: http://git.maemo.org/git/?p=modest;a=blobdiff_plain;f=src%2Fmodest-ui-actions.c;h=ae37a1babe65aa196f72053d07b0d09bdbf8ef58;hp=13c461312a1f88d06a4ecc8ec4a7369b7843b03b;hb=45f0b1d6b76dc808d30a240f604912db81e2019f;hpb=042b62b724a774211f8ec89bc9f9df695b26f1ab diff --git a/src/modest-ui-actions.c b/src/modest-ui-actions.c index 13c4613..ae37a1b 100644 --- a/src/modest-ui-actions.c +++ b/src/modest-ui-actions.c @@ -714,10 +714,8 @@ modest_ui_actions_compose_msg(ModestWindow *win, ModestTnyAccountStore *store = modest_runtime_get_account_store(); GnomeVFSFileSize total_size, allowed_size; - /* we check for low-mem; in that case, show a warning, and don't allow - * composing a message with attachments - */ - if (attachments && modest_platform_check_memory_low (win, TRUE)) + /* we check for low-mem */ + if (modest_platform_check_memory_low (win, TRUE)) goto cleanup; #ifdef MODEST_TOOLKIT_HILDON2 @@ -932,7 +930,7 @@ open_msg_cb (ModestMailOperation *mail_op, if (traccount) { ModestTnySendQueue *send_queue = NULL; ModestTnySendQueueStatus status; - char *msg_id; + gchar *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, TRUE); @@ -3390,7 +3388,7 @@ modest_ui_actions_on_rename_folder (GtkAction *action, return; if (TNY_IS_FOLDER (folder)) { - gchar *folder_name; + gchar *folder_name = NULL; gint response; const gchar *current_name; TnyFolderStore *parent; @@ -3733,6 +3731,7 @@ modest_ui_actions_on_password_requested (TnyAccountStore *account_store, } } else { g_free (*username); + *username = NULL; /* Show error */ modest_platform_information_banner (GTK_WIDGET (dialog), NULL, _("mcen_ib_username_pw_incorrect")); @@ -6171,3 +6170,49 @@ modest_ui_actions_get_msg_already_deleted_error_msg (ModestWindow *win) return msg; } + +gboolean +modest_ui_actions_on_delete_account (GtkWindow *parent_window, + const gchar *account_name, + const gchar *account_title) +{ + ModestAccountMgr *account_mgr; + gchar *txt = NULL; + gint response; + ModestProtocol *protocol; + gboolean removed = FALSE; + + g_return_val_if_fail (account_name, FALSE); + g_return_val_if_fail (account_title, FALSE); + + account_mgr = modest_runtime_get_account_mgr(); + + /* The warning text depends on the account type: */ + protocol = modest_protocol_registry_get_protocol_by_type (modest_runtime_get_protocol_registry (), + modest_account_mgr_get_store_protocol (account_mgr, + account_name)); + txt = modest_protocol_get_translation (protocol, + MODEST_PROTOCOL_TRANSLATION_DELETE_MAILBOX, + account_title); + if (txt == NULL) + txt = g_strdup_printf (_("emev_nc_delete_mailbox"), account_title); + + response = modest_platform_run_confirmation_dialog (parent_window, txt); + g_free (txt); + txt = NULL; + + if (response == GTK_RESPONSE_OK) { + /* Remove account. If it succeeds then it also removes + the account from the ModestAccountView: */ + gboolean is_default = FALSE; + gchar *default_account_name = modest_account_mgr_get_default_account (account_mgr); + if (default_account_name && (strcmp (default_account_name, account_name) == 0)) + is_default = TRUE; + g_free (default_account_name); + + removed = modest_account_mgr_remove_account (account_mgr, account_name); + if (!removed) + g_warning ("%s: modest_account_mgr_remove_account() failed.\n", __FUNCTION__); + } + return removed; +}