aboutsummaryrefslogtreecommitdiffstats
path: root/mail
diff options
context:
space:
mode:
Diffstat (limited to 'mail')
-rw-r--r--mail/e-mail-backend.c6
-rw-r--r--mail/e-mail-display.c20
-rw-r--r--mail/e-mail-migrate.c30
-rw-r--r--mail/e-mail-reader.c76
-rw-r--r--mail/em-account-editor.c9
-rw-r--r--mail/em-composer-utils.c52
-rw-r--r--mail/em-composer-utils.h1
-rw-r--r--mail/em-folder-tree-model.c29
-rw-r--r--mail/em-folder-utils.c2
-rw-r--r--mail/em-format-html.c16
-rw-r--r--mail/evolution-mail.schemas.in15
-rw-r--r--mail/importers/mail-importer.c2
-rw-r--r--mail/mail-config.ui8
-rw-r--r--mail/mail-folder-cache.c5
-rw-r--r--mail/mail-folder-cache.h5
-rw-r--r--mail/mail-ops.c6
-rw-r--r--mail/mail-tools.c6
17 files changed, 134 insertions, 154 deletions
diff --git a/mail/e-mail-backend.c b/mail/e-mail-backend.c
index 4ab444027f..734fefbd72 100644
--- a/mail/e-mail-backend.c
+++ b/mail/e-mail-backend.c
@@ -22,6 +22,7 @@
*
*/
+#include <string.h>
#include "e-mail-backend.h"
#include <camel/camel.h>
@@ -283,6 +284,11 @@ mail_backend_quit_requested_cb (EShell *shell,
/* We can quit immediately if offline. */
if (!e_shell_get_online (shell))
return;
+
+ /* In express mode, don't raise mail request in non mail window. */
+ if (e_shell_get_express_mode(shell) &&
+ strcmp(e_shell_window_get_active_view((EShellWindow *)window), "mail") != 0)
+ return;
/* Check Outbox for any unsent messages. */
diff --git a/mail/e-mail-display.c b/mail/e-mail-display.c
index 86ed222f04..fda1f3a034 100644
--- a/mail/e-mail-display.c
+++ b/mail/e-mail-display.c
@@ -208,6 +208,22 @@ mail_display_style_set (GtkWidget *widget,
}
static void
+mail_display_load_string (EWebView *web_view,
+ const gchar *string)
+{
+ EMailDisplayPrivate *priv;
+
+ priv = E_MAIL_DISPLAY_GET_PRIVATE (web_view);
+ g_return_if_fail (priv->formatter != NULL);
+
+ if (em_format_busy (EM_FORMAT (priv->formatter)))
+ return;
+
+ /* Chain up to parent's load_string() method. */
+ E_WEB_VIEW_CLASS (parent_class)->load_string (web_view, string);
+}
+
+static void
mail_display_url_requested (GtkHTML *html,
const gchar *uri,
GtkHTMLStream *stream)
@@ -270,6 +286,7 @@ mail_display_class_init (EMailDisplayClass *class)
{
GObjectClass *object_class;
GtkWidgetClass *widget_class;
+ EWebViewClass *web_view_class;
GtkHTMLClass *html_class;
parent_class = g_type_class_peek_parent (class);
@@ -284,6 +301,9 @@ mail_display_class_init (EMailDisplayClass *class)
widget_class->realize = mail_display_realize;
widget_class->style_set = mail_display_style_set;
+ web_view_class = E_WEB_VIEW_CLASS (class);
+ web_view_class->load_string = mail_display_load_string;
+
html_class = GTK_HTML_CLASS (class);
html_class->url_requested = mail_display_url_requested;
html_class->link_clicked = mail_display_link_clicked;
diff --git a/mail/e-mail-migrate.c b/mail/e-mail-migrate.c
index f28bf56825..34728929c2 100644
--- a/mail/e-mail-migrate.c
+++ b/mail/e-mail-migrate.c
@@ -1209,18 +1209,18 @@ is_mail_folder (const gchar *metadata)
gchar *type;
if (!(doc = xmlParseFile (metadata))) {
- g_warning ("Cannot parse `%s'", metadata);
+ g_warning ("Cannot parse '%s'", metadata);
return FALSE;
}
if (!(node = xmlDocGetRootElement (doc))) {
- g_warning ("`%s' corrupt: document contains no root node", metadata);
+ g_warning ("'%s' corrupt: document contains no root node", metadata);
xmlFreeDoc (doc);
return FALSE;
}
if (!node->name || strcmp ((gchar *)node->name, "efolder") != 0) {
- g_warning ("`%s' corrupt: root node is not 'efolder'", metadata);
+ g_warning ("'%s' corrupt: root node is not 'efolder'", metadata);
xmlFreeDoc (doc);
return FALSE;
}
@@ -1591,7 +1591,7 @@ em_migrate_folder(EMMigrateSession *session, const gchar *dirname, const gchar *
g_set_error (
error, E_SHELL_MIGRATE_ERROR,
E_SHELL_MIGRATE_ERROR_FAILED,
- _("Unable to create new folder `%s': %s"),
+ _("Unable to create new folder '%s': %s"),
dest->str, g_strerror (errno));
goto fatal;
}
@@ -1619,7 +1619,7 @@ em_migrate_folder(EMMigrateSession *session, const gchar *dirname, const gchar *
g_set_error (
error, E_SHELL_MIGRATE_ERROR,
E_SHELL_MIGRATE_ERROR_FAILED,
- _("Unable to copy folder `%s' to `%s': %s"),
+ _("Unable to copy folder '%s' to '%s': %s"),
src->str, dest->str, g_strerror (errno));
goto fatal;
}
@@ -1815,7 +1815,7 @@ em_migrate_local_folders_1_4 (EMMigrateSession *session, GError **error)
error, E_SHELL_MIGRATE_ERROR,
E_SHELL_MIGRATE_ERROR_FAILED,
_("Unable to scan for existing mailboxes at "
- "`%s': %s"), session->srcdir, g_strerror (errno));
+ "'%s': %s"), session->srcdir, g_strerror (errno));
return FALSE;
}
@@ -2025,7 +2025,7 @@ em_migrate_pop_uid_caches_1_4 (const gchar *data_dir, GError **error)
error, E_SHELL_MIGRATE_ERROR,
E_SHELL_MIGRATE_ERROR_FAILED,
_("Unable to open old POP keep-on-server data "
- "`%s': %s"), cache_dir, g_strerror (errno));
+ "'%s': %s"), cache_dir, g_strerror (errno));
g_free (cache_dir);
return FALSE;
}
@@ -2041,7 +2041,7 @@ em_migrate_pop_uid_caches_1_4 (const gchar *data_dir, GError **error)
error, E_SHELL_MIGRATE_ERROR,
E_SHELL_MIGRATE_ERROR_FAILED,
_("Unable to create POP3 keep-on-server data "
- "directory `%s': %s"), cache_dir,
+ "directory '%s': %s"), cache_dir,
g_strerror (errno));
g_string_free (oldpath, TRUE);
g_free (cache_dir);
@@ -2073,7 +2073,7 @@ em_migrate_pop_uid_caches_1_4 (const gchar *data_dir, GError **error)
error, E_SHELL_MIGRATE_ERROR,
E_SHELL_MIGRATE_ERROR_FAILED,
_("Unable to copy POP3 keep-on-server data "
- "`%s': %s"), oldpath->str,
+ "'%s': %s"), oldpath->str,
g_strerror (errno));
success = FALSE;
}
@@ -2357,7 +2357,7 @@ e_path_to_physical (const gchar *prefix, const gchar *vpath)
ppath_len++; /* For the separating slash. */
/* Take account of the fact that we need to translate every
- * separator into `subfolders/'.
+ * separator into 'subfolders/'.
*/
p = vpath;
while (1) {
@@ -2391,7 +2391,7 @@ e_path_to_physical (const gchar *prefix, const gchar *vpath)
break;
}
- memcpy (dp, p, newp - p + 1); /* `+ 1' to copy the slash too. */
+ memcpy (dp, p, newp - p + 1); /* '+ 1' to copy the slash too. */
dp += newp - p + 1;
memcpy (dp, SUBFOLDER_DIR_NAME, SUBFOLDER_DIR_NAME_LEN);
@@ -2544,7 +2544,7 @@ em_migrate_1_4 (const gchar *data_dir, xmlDocPtr filters, xmlDocPtr vfolders, GE
error, E_SHELL_MIGRATE_ERROR,
E_SHELL_MIGRATE_ERROR_FAILED,
_("Failed to create local mail storage "
- "`%s': %s"), path + 5, g_strerror (errno));
+ "'%s': %s"), path + 5, g_strerror (errno));
g_free (session->srcdir);
camel_object_unref (session);
g_free (path);
@@ -2557,7 +2557,7 @@ em_migrate_1_4 (const gchar *data_dir, xmlDocPtr filters, xmlDocPtr vfolders, GE
g_set_error (
error, E_SHELL_MIGRATE_ERROR,
E_SHELL_MIGRATE_ERROR_FAILED,
- _("Failed to create local mail storage `%s': %s"),
+ _("Failed to create local mail storage '%s': %s"),
path, lex.desc);
g_free (session->srcdir);
camel_object_unref (session);
@@ -3028,7 +3028,7 @@ e_mail_migrate (EShellBackend *shell_backend,
error, E_SHELL_MIGRATE_ERROR,
E_SHELL_MIGRATE_ERROR_FAILED,
_("Unable to create local mail folders at "
- "`%s': %s"), data_dir, g_strerror (errno));
+ "'%s': %s"), data_dir, g_strerror (errno));
return FALSE;
}
}
@@ -3046,7 +3046,7 @@ e_mail_migrate (EShellBackend *shell_backend,
error, E_SHELL_MIGRATE_ERROR,
E_SHELL_MIGRATE_ERROR_FAILED,
_("Unable to read settings from previous "
- "Evolution install, `evolution/config.xmldb' "
+ "Evolution install, 'evolution/config.xmldb' "
"does not exist or is corrupt."));
return FALSE;
}
diff --git a/mail/e-mail-reader.c b/mail/e-mail-reader.c
index 53d45fd2e5..6b1fa7df09 100644
--- a/mail/e-mail-reader.c
+++ b/mail/e-mail-reader.c
@@ -1292,8 +1292,8 @@ static GtkActionEntry mail_reader_entries[] = {
N_("Mark the selected messages as junk"),
G_CALLBACK (action_mail_mark_junk_cb) },
- { "mail-mark-notjunk",
- "mail-mark-notjunk",
+ { "mail-mark-not-junk",
+ "mail-mark-not-junk",
N_("_Not Junk"),
"<Shift><Control>j",
N_("Mark the selected messages as not being junk"),
@@ -1602,9 +1602,9 @@ static EPopupActionEntry mail_reader_popup_entries[] = {
N_("Mark as _Junk"),
"mail-mark-junk" },
- { "mail-popup-mark-notjunk",
+ { "mail-popup-mark-not-junk",
N_("Mark as _Not Junk"),
- "mail-mark-notjunk" },
+ "mail-mark-not-junk" },
{ "mail-popup-mark-read",
N_("Mar_k as Read"),
@@ -1787,28 +1787,6 @@ mail_reader_message_read_cb (EMailReader *reader)
}
static void
-update_webview_content (EMailReader *reader, const gchar *content)
-{
- EMFormatHTMLDisplay *html_display;
- EWebView *web_view;
-
- g_return_if_fail (reader != NULL);
- g_return_if_fail (content != NULL);
-
- html_display = e_mail_reader_get_html_display (reader);
- g_return_if_fail (html_display != NULL);
-
- /* skip the progress message when it's formatting something */
- if (em_format_busy (EM_FORMAT (html_display)))
- return;
-
- web_view = E_WEB_VIEW (EM_FORMAT_HTML (html_display)->html);
- g_return_if_fail (web_view != NULL);
-
- e_web_view_load_string (web_view, content);
-}
-
-static void
mail_reader_message_loaded_cb (CamelFolder *folder,
const gchar *message_uid,
CamelMimeMessage *message,
@@ -1822,6 +1800,7 @@ mail_reader_message_loaded_cb (CamelFolder *folder,
EShellBackend *shell_backend;
EShellSettings *shell_settings;
EShell *shell;
+ EWebView *web_view;
EMEvent *event;
EMEventTargetMessage *target;
const gchar *cursor_uid;
@@ -1839,6 +1818,8 @@ mail_reader_message_loaded_cb (CamelFolder *folder,
cursor_uid = MESSAGE_LIST (message_list)->cursor_uid;
+ web_view = E_WEB_VIEW (EM_FORMAT_HTML (html_display)->html);
+
/* If the user picked a different message in the time it took
* to fetch this message, then don't bother rendering it. */
if (g_strcmp0 (cursor_uid, message_uid) != 0)
@@ -1897,10 +1878,11 @@ mail_reader_message_loaded_cb (CamelFolder *folder,
_("Unable to retrieve message"),
ex->desc);
} else {
- string = g_strdup_printf (_("Retrieving message '%s'"), cursor_uid);
+ string = g_strdup_printf (
+ _("Retrieving message '%s'"), cursor_uid);
}
- update_webview_content (reader, string);
+ e_web_view_load_string (web_view, string);
g_free (string);
camel_exception_clear (ex);
@@ -1919,6 +1901,7 @@ mail_reader_message_selected_timeout_cb (EMailReader *reader)
EMailReaderPrivate *priv;
EMFormatHTMLDisplay *html_display;
GtkWidget *message_list;
+ EWebView *web_view;
CamelFolder *folder;
const gchar *cursor_uid;
const gchar *format_uid;
@@ -1932,6 +1915,8 @@ mail_reader_message_selected_timeout_cb (EMailReader *reader)
cursor_uid = MESSAGE_LIST (message_list)->cursor_uid;
format_uid = EM_FORMAT (html_display)->uid;
+ web_view = E_WEB_VIEW (EM_FORMAT_HTML (html_display)->html);
+
if (MESSAGE_LIST (message_list)->last_sel_single) {
GtkWidget *widget;
gboolean html_display_visible;
@@ -1954,8 +1939,9 @@ mail_reader_message_selected_timeout_cb (EMailReader *reader)
gboolean store_async;
MailMsgDispatchFunc disp_func;
- string = g_strdup_printf (_("Retrieving message '%s'"), cursor_uid);
- update_webview_content (reader, string);
+ string = g_strdup_printf (
+ _("Retrieving message '%s'"), cursor_uid);
+ e_web_view_load_string (web_view, string);
g_free (string);
store_async = folder->parent_store->flags & CAMEL_STORE_ASYNC;
@@ -2316,7 +2302,7 @@ mail_reader_update_actions (EMailReader *reader)
action = e_mail_reader_get_action (reader, action_name);
gtk_action_set_sensitive (action, sensitive && !(state & E_MAIL_READER_FOLDER_IS_JUNK));
- action_name = "mail-mark-notjunk";
+ action_name = "mail-mark-not-junk";
sensitive = selection_has_junk_messages;
action = e_mail_reader_get_action (reader, action_name);
gtk_action_set_sensitive (action, sensitive);
@@ -2668,32 +2654,6 @@ e_mail_reader_init (EMailReader *reader)
/* Bind properties. */
- e_binding_new_full (
- shell_settings, "mail-citation-color",
- html_display, "citation-color",
- e_binding_transform_string_to_color,
- NULL, NULL);
-
- e_binding_new (
- shell_settings, "mail-image-loading-policy",
- html_display, "image-loading-policy");
-
- e_binding_new (
- shell_settings, "mail-only-local-photos",
- html_display, "only-local-photos");
-
- e_binding_new (
- shell_settings, "mail-show-animated-images",
- web_view, "animate");
-
- e_binding_new (
- shell_settings, "mail-show-sender-photo",
- html_display, "show-sender-photo");
-
- e_binding_new (
- shell_settings, "mail-show-real-date",
- html_display, "show-real-date");
-
action_name = "mail-caret-mode";
action = e_mail_reader_get_action (reader, action_name);
@@ -2919,7 +2879,7 @@ e_mail_reader_get_action (EMailReader *reader,
if (action == NULL)
g_critical (
- "%s: action `%s' not found", G_STRFUNC, action_name);
+ "%s: action '%s' not found", G_STRFUNC, action_name);
return action;
}
diff --git a/mail/em-account-editor.c b/mail/em-account-editor.c
index 77d2dc8216..38be2f3dbd 100644
--- a/mail/em-account-editor.c
+++ b/mail/em-account-editor.c
@@ -835,7 +835,6 @@ emae_signature_new (GtkWidget *widget, EMAccountEditor *emae)
EShell *shell;
EShellSettings *shell_settings;
GtkWidget *editor;
- gboolean html_mode;
gpointer parent;
shell = e_shell_get_default ();
@@ -844,11 +843,7 @@ emae_signature_new (GtkWidget *widget, EMAccountEditor *emae)
parent = gtk_widget_get_toplevel (widget);
parent = gtk_widget_is_toplevel (parent) ? parent : NULL;
- html_mode = e_shell_settings_get_boolean (
- shell_settings, "composer-format-html");
-
editor = e_signature_editor_new ();
- gtkhtml_editor_set_html_mode (GTKHTML_EDITOR (editor), html_mode);
gtk_window_set_transient_for (GTK_WINDOW (editor), parent);
gtk_widget_show (editor);
}
@@ -2196,7 +2191,9 @@ emae_identity_page (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget
gtk_notebook_append_page ((GtkNotebook *)parent, w, gtk_label_new (_("Identity")));
}
- emae_queue_widgets (emae, builder, "account_vbox", "identity_required_table", "identity_optional_table", "identity_optional_frame", NULL);
+ emae_queue_widgets (emae, builder, "account_vbox", "identity_required_table",
+ "identity_optional_table", "identity_optional_frame",
+ "identity_address", NULL);
g_object_unref (builder);
diff --git a/mail/em-composer-utils.c b/mail/em-composer-utils.c
index fc312c8ae4..25e1761eb4 100644
--- a/mail/em-composer-utils.c
+++ b/mail/em-composer-utils.c
@@ -720,16 +720,14 @@ em_utils_composer_print_cb (EMsgComposer *composer,
/* Composing messages... */
static EMsgComposer *
-create_new_composer (const gchar *subject, const gchar *fromuri, gboolean lite)
+create_new_composer (const gchar *subject, const gchar *fromuri)
{
EMsgComposer *composer;
EComposerHeaderTable *table;
EAccount *account = NULL;
- if (lite)
- composer = e_msg_composer_lite_new ();
- else
- composer = e_msg_composer_new ();
+ composer = e_msg_composer_new ();
+
table = e_msg_composer_get_header_table (composer);
if (fromuri != NULL) {
@@ -759,7 +757,7 @@ em_utils_compose_new_message (const gchar *fromuri)
{
GtkWidget *composer;
- composer = (GtkWidget *) create_new_composer ("", fromuri, FALSE);
+ composer = (GtkWidget *) create_new_composer ("", fromuri);
if (composer == NULL)
return;
@@ -769,26 +767,6 @@ em_utils_compose_new_message (const gchar *fromuri)
}
/**
- * em_utils_compose_lite_new_message:
- *
- * Opens a new composer window as a child window of @parent's toplevel
- * window.
- **/
-EMsgComposer *
-em_utils_compose_lite_new_message (const gchar *fromuri)
-{
- GtkWidget *composer;
-
- composer = (GtkWidget *) create_new_composer ("", fromuri, TRUE);
- if (composer == NULL)
- return NULL;
-
- composer_set_no_change (E_MSG_COMPOSER (composer), TRUE, TRUE);
-
- return E_MSG_COMPOSER (composer);
-}
-
-/**
* em_utils_compose_new_message_with_mailto:
* @url: mailto url
*
@@ -816,10 +794,8 @@ em_utils_compose_new_message_with_mailto (const gchar *url, const gchar *fromuri
composer_set_no_change (composer, TRUE, url == NULL);
- if (!e_msg_composer_get_lite ()) {
- gtk_widget_show ((GtkWidget *) composer);
- gdk_window_raise (((GtkWidget *) composer)->window);
- }
+ gtk_widget_show ((GtkWidget *) composer);
+ gdk_window_raise (((GtkWidget *) composer)->window);
return composer;
}
@@ -996,8 +972,7 @@ edit_message (CamelMimeMessage *message, CamelFolder *drafts, const gchar *uid)
composer_set_no_change (composer, TRUE, FALSE);
- if (!e_msg_composer_get_lite())
- gtk_widget_show (GTK_WIDGET (composer));
+ gtk_widget_show (GTK_WIDGET (composer));
return (GtkWidget *)composer;
}
@@ -1146,7 +1121,7 @@ forward_attached (CamelFolder *folder, GPtrArray *uids, GPtrArray *messages, Cam
{
EMsgComposer *composer;
- composer = create_new_composer (subject, fromuri, FALSE);
+ composer = create_new_composer (subject, fromuri);
if (composer == NULL)
return NULL;
@@ -1157,8 +1132,7 @@ forward_attached (CamelFolder *folder, GPtrArray *uids, GPtrArray *messages, Cam
composer_set_no_change (composer, TRUE, TRUE);
- if (!e_msg_composer_get_lite())
- gtk_widget_show (GTK_WIDGET (composer));
+ gtk_widget_show (GTK_WIDGET (composer));
return composer;
}
@@ -1228,7 +1202,7 @@ forward_non_attached (CamelFolder *folder, GPtrArray *uids, GPtrArray *messages,
text = em_utils_message_to_html (message, _("-------- Forwarded Message --------"), flags, &len, NULL, NULL, &validity_found);
if (text) {
- composer = create_new_composer (subject, fromuri, FALSE);
+ composer = create_new_composer (subject, fromuri);
if (composer) {
if (CAMEL_IS_MULTIPART(camel_medium_get_content_object((CamelMedium *)message)))
@@ -1245,8 +1219,7 @@ forward_non_attached (CamelFolder *folder, GPtrArray *uids, GPtrArray *messages,
emu_update_composers_security (composer, validity_found);
composer_set_no_change (composer, TRUE, TRUE);
- if (!e_msg_composer_get_lite())
- gtk_widget_show (GTK_WIDGET (composer));
+ gtk_widget_show (GTK_WIDGET (composer));
}
g_free (text);
}
@@ -2288,8 +2261,7 @@ em_utils_reply_to_message(CamelFolder *folder, const gchar *uid, CamelMimeMessag
composer_set_no_change (composer, TRUE, TRUE);
- if (!e_msg_composer_get_lite())
- gtk_widget_show (GTK_WIDGET (composer));
+ gtk_widget_show (GTK_WIDGET (composer));
return composer;
}
diff --git a/mail/em-composer-utils.h b/mail/em-composer-utils.h
index be29a7ae71..92e7e182f4 100644
--- a/mail/em-composer-utils.h
+++ b/mail/em-composer-utils.h
@@ -33,7 +33,6 @@
G_BEGIN_DECLS
void em_utils_compose_new_message (const gchar *fromuri);
-EMsgComposer * em_utils_compose_lite_new_message (const gchar *fromuri);
/* FIXME: mailto? url? should make up its mind what its called. imho use 'uri' */
EMsgComposer * em_utils_compose_new_message_with_mailto (const gchar *url, const gchar *fromuri);
diff --git a/mail/em-folder-tree-model.c b/mail/em-folder-tree-model.c
index 3daacc52c5..b779caf63a 100644
--- a/mail/em-folder-tree-model.c
+++ b/mail/em-folder-tree-model.c
@@ -37,10 +37,13 @@
#include <camel/camel-file-utils.h>
+#include "e-mail-store.h"
+
#include "mail-config.h"
#include "mail-session.h"
#include "mail-tools.h"
#include "mail-mt.h"
+#include "mail-ops.h"
/* sigh, these 2 only needed for outbox total count checking - a mess */
#include "mail-folder-cache.h"
@@ -80,6 +83,7 @@ struct _EMFolderTreeModelPrivate {
gulong account_changed_id;
gulong account_removed_id;
+ gulong account_added_id;
};
enum {
@@ -256,6 +260,26 @@ account_removed_cb (EAccountList *accounts,
em_folder_tree_model_remove_store (model, si->store);
}
+/* HACK: FIXME: the component should listen to the account object directly */
+static void
+add_new_store (gchar *uri, CamelStore *store, gpointer user_data)
+{
+ EAccount *account = user_data;
+
+ if (store == NULL)
+ return;
+
+ e_mail_store_add (store, account->name);
+}
+
+static void
+account_added_cb (EAccountList *accounts,
+ EAccount *account,
+ EMFolderTreeModel *model)
+{
+ mail_get_store (e_account_get_string (account, E_ACCOUNT_SOURCE_URL), NULL, add_new_store, account);
+}
+
static void
folder_tree_model_selection_finalized_cb (EMFolderTreeModel *model)
{
@@ -332,6 +356,8 @@ folder_tree_model_finalize (GObject *object)
priv->accounts, priv->account_changed_id);
g_signal_handler_disconnect (
priv->accounts, priv->account_removed_id);
+ g_signal_handler_disconnect (
+ priv->accounts, priv->account_added_id);
/* Chain up to parent's finalize() method. */
G_OBJECT_CLASS (parent_class)->finalize (object);
@@ -512,6 +538,9 @@ folder_tree_model_init (EMFolderTreeModel *model)
model->priv->account_removed_id = g_signal_connect (
model->priv->accounts, "account-removed",
G_CALLBACK (account_removed_cb), model);
+ model->priv->account_added_id = g_signal_connect (
+ model->priv->accounts, "account-added",
+ G_CALLBACK (account_added_cb), model);
g_signal_connect (mail_folder_cache_get_default (),
"folder-unread-updated",
diff --git a/mail/em-folder-utils.c b/mail/em-folder-utils.c
index ad1b929e9d..aee37d7d16 100644
--- a/mail/em-folder-utils.c
+++ b/mail/em-folder-utils.c
@@ -504,7 +504,7 @@ struct _EMCreateFolderTempData
static gchar *
emfu_create_folder__desc (struct _EMCreateFolder *m)
{
- return g_strdup_printf (_("Creating folder `%s'"), m->full_name);
+ return g_strdup_printf (_("Creating folder '%s'"), m->full_name);
}
static void
diff --git a/mail/em-format-html.c b/mail/em-format-html.c
index ad47742ba8..62e190f4b2 100644
--- a/mail/em-format-html.c
+++ b/mail/em-format-html.c
@@ -47,6 +47,7 @@
#include "e-util/e-icon-factory.h"
#include "e-util/e-util-private.h"
#include "e-util/e-util.h"
+#include "e-util/e-extensible.h"
#include <gtkhtml/gtkhtml.h>
#include <gtkhtml/gtkhtml-stream.h>
@@ -965,6 +966,8 @@ efh_init (EMFormatHTML *efh,
g_signal_connect_swapped (
efh, "notify::mark-citations",
G_CALLBACK (em_format_redraw), NULL);
+
+ e_extensible_load_extensions (E_EXTENSIBLE (efh));
}
GType
@@ -986,9 +989,18 @@ em_format_html_get_type (void)
NULL /* value_table */
};
+ static const GInterfaceInfo extensible_info = {
+ (GInterfaceInitFunc) NULL,
+ (GInterfaceFinalizeFunc) NULL,
+ NULL /* interface_data */
+ };
+
type = g_type_register_static (
em_format_get_type(), "EMFormatHTML",
&type_info, G_TYPE_FLAG_ABSTRACT);
+
+ g_type_add_interface_static (
+ type, E_TYPE_EXTENSIBLE, &extensible_info);
}
return type;
@@ -1383,7 +1395,7 @@ static void emfh_gethttp(struct _EMFormatHTMLJob *job, gint cancelled)
camel_http_stream_set_proxy ((CamelHttpStream *)instream, proxy);
g_free (proxy);
}
- camel_operation_start(NULL, _("Retrieving `%s'"), job->u.uri);
+ camel_operation_start(NULL, _("Retrieving '%s'"), job->u.uri);
tmp_stream = (CamelHttpStream *)instream;
content_type = camel_http_stream_get_content_type(tmp_stream);
length = camel_header_raw_find(&tmp_stream->headers, "Content-Length", NULL);
@@ -1392,7 +1404,7 @@ static void emfh_gethttp(struct _EMFormatHTMLJob *job, gint cancelled)
total = atoi(length);
camel_content_type_unref(content_type);
} else
- camel_operation_start_transient(NULL, _("Retrieving `%s'"), job->u.uri);
+ camel_operation_start_transient(NULL, _("Retrieving '%s'"), job->u.uri);
camel_url_free(url);
diff --git a/mail/evolution-mail.schemas.in b/mail/evolution-mail.schemas.in
index 09d875a361..294cf75f9a 100644
--- a/mail/evolution-mail.schemas.in
+++ b/mail/evolution-mail.schemas.in
@@ -160,21 +160,6 @@
</schema>
<schema>
- <key>/schemas/apps/evolution/mail/composer/show_mail_from</key>
- <applyto>/apps/evolution/mail/composer/show_mail_from</applyto>
- <owner>evolution-mail</owner>
- <type>bool</type>
- <default>true</default>
- <locale name="C">
- <short>Show "From" field when sending a mail message</short>
- <long>
- Show the "From" field when sending a mail message. This is
- controlled from the View menu when a mail account is chosen.
- </long>
- </locale>
- </schema>
-
- <schema>
<key>/schemas/apps/evolution/mail/composer/show_mail_reply_to</key>
<applyto>/apps/evolution/mail/composer/show_mail_reply_to</applyto>
<owner>evolution-mail</owner>
diff --git a/mail/importers/mail-importer.c b/mail/importers/mail-importer.c
index ee1c958d12..f61ce2658b 100644
--- a/mail/importers/mail-importer.c
+++ b/mail/importers/mail-importer.c
@@ -152,7 +152,7 @@ import_mbox_exec (struct _import_mbox_msg *m)
if (m->cancel)
oldcancel = camel_operation_register(m->cancel);
- camel_operation_start(NULL, _("Importing `%s'"), folder->full_name);
+ camel_operation_start(NULL, _("Importing '%s'"), folder->full_name);
camel_folder_freeze(folder);
while (camel_mime_parser_step(mp, NULL, NULL) == CAMEL_MIME_PARSER_STATE_FROM) {
CamelMimeMessage *msg;
diff --git a/mail/mail-config.ui b/mail/mail-config.ui
index 55f5ee6227..8f8935bd0e 100644
--- a/mail/mail-config.ui
+++ b/mail/mail-config.ui
@@ -2923,7 +2923,7 @@ For example: "Work" or "Personal"</property>
</packing>
</child>
<child>
- <object class="GtkHBox" id="hbox234">
+ <object class="GtkHBox" id="hboxMailSizeLimit">
<property name="visible">True</property>
<property name="spacing">4</property>
<child>
@@ -2972,7 +2972,7 @@ For example: "Work" or "Personal"</property>
</packing>
</child>
<child>
- <object class="GtkHBox" id="hbox233">
+ <object class="GtkHBox" id="hboxShrinkAddresses">
<property name="visible">True</property>
<child>
<object class="GtkCheckButton" id="address_checkbox">
@@ -4481,7 +4481,7 @@ For example: "Work" or "Personal"</property>
<property name="visible">True</property>
<property name="spacing">2</property>
<child>
- <object class="GtkVBox" id="vbox207">
+ <object class="GtkVBox" id="vboxTopPosting">
<property name="visible">True</property>
<property name="orientation">vertical</property>
<property name="spacing">8</property>
@@ -4540,7 +4540,7 @@ For example: "Work" or "Personal"</property>
</packing>
</child>
<child>
- <object class="GtkLabel" id="label506">
+ <object class="GtkLabel" id="labelAlerts">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes">Alerts</property>
diff --git a/mail/mail-folder-cache.c b/mail/mail-folder-cache.c
index 10a66a4f47..b1a332d4f4 100644
--- a/mail/mail-folder-cache.c
+++ b/mail/mail-folder-cache.c
@@ -23,6 +23,11 @@
*
*/
+/**
+ * SECTION: mail-folder-cache
+ * @short_description: Stores information about open folders
+ **/
+
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif
diff --git a/mail/mail-folder-cache.h b/mail/mail-folder-cache.h
index 8a7b82eada..dd3a108d03 100644
--- a/mail/mail-folder-cache.h
+++ b/mail/mail-folder-cache.h
@@ -31,11 +31,6 @@
G_BEGIN_DECLS
-/**
- * SECTION: mail-folder-cache
- * @short_description: Stores information about open folders
- **/
-
#define MAIL_TYPE_FOLDER_CACHE mail_folder_cache_get_type()
#define MAIL_FOLDER_CACHE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MAIL_TYPE_FOLDER_CACHE, MailFolderCache))
#define MAIL_FOLDER_CACHE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MAIL_TYPE_FOLDER_CACHE, MailFolderCacheClass))
diff --git a/mail/mail-ops.c b/mail/mail-ops.c
index 73ad926390..7cbb91bede 100644
--- a/mail/mail-ops.c
+++ b/mail/mail-ops.c
@@ -595,7 +595,7 @@ mail_send_message (struct _send_queue_msg *m, CamelFolder *queue, const gchar *u
folder = mail_tool_uri_to_folder (sent_folder_uri, 0, ex);
if (camel_exception_is_set(ex)) {
g_string_append_printf (err, _("Failed to append to %s: %s\n"
- "Appending to local `Sent' folder instead."),
+ "Appending to local 'Sent' folder instead."),
sent_folder_uri, camel_exception_get_description (ex));
camel_exception_clear (ex);
}
@@ -622,7 +622,7 @@ mail_send_message (struct _send_queue_msg *m, CamelFolder *queue, const gchar *u
if (err->len)
g_string_append(err, "\n\n");
g_string_append_printf (err, _("Failed to append to %s: %s\n"
- "Appending to local `Sent' folder instead."),
+ "Appending to local 'Sent' folder instead."),
name, camel_exception_get_description (ex));
camel_object_ref (sent_folder);
camel_object_unref (folder);
@@ -638,7 +638,7 @@ mail_send_message (struct _send_queue_msg *m, CamelFolder *queue, const gchar *u
if (err->len)
g_string_append(err, "\n\n");
- g_string_append_printf (err, _("Failed to append to local `Sent' folder: %s"),
+ g_string_append_printf (err, _("Failed to append to local 'Sent' folder: %s"),
camel_exception_get_description (ex));
}
}
diff --git a/mail/mail-tools.c b/mail/mail-tools.c
index 9e268d85cf..f006b1b963 100644
--- a/mail/mail-tools.c
+++ b/mail/mail-tools.c
@@ -120,7 +120,7 @@ mail_tool_get_local_movemail_path (const guchar *uri, CamelException *ex)
path = g_build_filename (data_dir, "spool", NULL);
if (g_stat(path, &st) == -1 && g_mkdir_with_parents(path, 0700) == -1) {
- camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM, _("Could not create spool directory `%s': %s"),
+ camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM, _("Could not create spool directory '%s': %s"),
path, g_strerror(errno));
g_free(path);
return NULL;
@@ -150,7 +150,7 @@ mail_tool_do_movemail (const gchar *source_url, CamelException *ex)
if (strcmp(uri->protocol, "mbox") != 0) {
/* This is really only an internal error anyway */
camel_exception_setv (ex, CAMEL_EXCEPTION_SERVICE_URL_INVALID,
- _("Trying to movemail a non-mbox source `%s'"),
+ _("Trying to movemail a non-mbox source '%s'"),
source_url);
camel_url_free(uri);
return NULL;
@@ -298,7 +298,7 @@ mail_tool_uri_to_folder (const gchar *uri, guint32 flags, CamelException *ex)
/* FIXME?: the filter:get_folder callback should do this itself? */
curi = em_uri_to_camel(uri);
if (uri == NULL) {
- camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM, _("Invalid folder: `%s'"), uri);
+ camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM, _("Invalid folder: '%s'"), uri);
return NULL;
}
uri = curi;