* Fixes NB#93291, properly shown email size in details dialogs
[modest] / src / modest-tny-account.c
index 57a58e7..c8fa339 100644 (file)
@@ -361,6 +361,7 @@ modest_tny_account_new_from_server_account_name (ModestAccountMgr *account_mgr,
                ModestProtocol *protocol;
                const gchar* proto_name = NULL;
                tny_account_set_id (tny_account, server_account_name);
+               tny_account_set_name (tny_account, server_account_name);
                tny_camel_account_set_session (TNY_CAMEL_ACCOUNT (tny_account), session);
                protocol = modest_protocol_registry_get_protocol_by_type (protocol_registry, modest_server_account_settings_get_protocol (server_settings));
                proto_name = modest_protocol_get_name (protocol);
@@ -1024,12 +1025,20 @@ modest_tny_folder_store_is_remote (TnyFolderStore *folder_store)
 
         if (account != NULL) {
                 if (tny_account_get_account_type (account) == TNY_ACCOUNT_TYPE_STORE) {
-                        if (!TNY_IS_CAMEL_POP_STORE_ACCOUNT (account) &&
-                            !TNY_IS_CAMEL_IMAP_STORE_ACCOUNT (account)) {
-                                /* This must be a maildir account, which does
-                                 * not require a connection: */
-                                result = FALSE;
-                        }
+                       ModestProtocolType proto_type;
+                       const gchar *tag;
+                       ModestProtocolRegistry *registry;
+
+                       proto_type = modest_tny_account_get_protocol_type (account);
+                       registry = modest_runtime_get_protocol_registry ();
+                       tag = MODEST_PROTOCOL_REGISTRY_REMOTE_STORE_PROTOCOLS;
+                       if (modest_protocol_registry_protocol_type_has_tag (registry, 
+                                                                           proto_type,
+                                                                           tag)) {
+                               result = TRUE;
+                       } else {
+                               result = FALSE;
+                       }
                 }
                 g_object_unref (account);
         } else {