diff options
Diffstat (limited to 'modules/mail')
-rw-r--r-- | modules/mail/e-mail-shell-backend.c | 3 | ||||
-rw-r--r-- | modules/mail/e-mail-shell-content.c | 14 |
2 files changed, 14 insertions, 3 deletions
diff --git a/modules/mail/e-mail-shell-backend.c b/modules/mail/e-mail-shell-backend.c index 3da217d2ea..80922ce304 100644 --- a/modules/mail/e-mail-shell-backend.c +++ b/modules/mail/e-mail-shell-backend.c @@ -356,8 +356,7 @@ mail_shell_backend_handle_email_uri_cb (gchar *folder_uri, browser = e_mail_browser_new (shell_backend); e_mail_reader_set_folder ( E_MAIL_READER (browser), folder, folder_uri); - e_mail_reader_set_message ( - E_MAIL_READER (browser), uid, FALSE); + e_mail_reader_set_message (E_MAIL_READER (browser), uid); gtk_widget_show (browser); } diff --git a/modules/mail/e-mail-shell-content.c b/modules/mail/e-mail-shell-content.c index b801093116..0efe1f1c5a 100644 --- a/modules/mail/e-mail-shell-content.c +++ b/modules/mail/e-mail-shell-content.c @@ -230,7 +230,7 @@ mail_shell_content_message_list_built_cb (EMailShellContent *mail_shell_content, EMailReader *reader; reader = E_MAIL_READER (mail_shell_content); - e_mail_reader_set_message (reader, uid, TRUE); + e_mail_reader_set_message (reader, uid); camel_folder_free_message_info (folder, info); } @@ -788,6 +788,18 @@ e_mail_shell_content_set_preview_visible (EMailShellContent *mail_shell_content, else gtk_widget_hide (child); + /* If we're showing the preview, tell EMailReader to reload the + * selected message. This should force it to download the full + * message if necessary, so we don't get an empty preview. */ + if (preview_visible) { + EMailReader *reader; + MessageList *message_list; + + reader = E_MAIL_READER (mail_shell_content); + message_list = e_mail_reader_get_message_list (reader); + e_mail_reader_set_message (reader, message_list->cursor_uid); + } + mail_shell_content->priv->preview_visible = preview_visible; g_object_notify (G_OBJECT (mail_shell_content), "preview-visible"); |