aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Vrátil <dvratil@redhat.com>2012-04-27 23:58:00 +0800
committerDan Vrátil <dvratil@redhat.com>2012-04-27 23:58:35 +0800
commit8ffb4930b26f9badf8eb0cdb93275c01d3d36f6a (patch)
tree3f8bb52245f14490d7928ec7e0d3ad204d7ac460
parenta593d514c872dace24e899c1ccb25955f985cbc4 (diff)
downloadgsoc2013-evolution-8ffb4930b26f9badf8eb0cdb93275c01d3d36f6a.tar.gz
gsoc2013-evolution-8ffb4930b26f9badf8eb0cdb93275c01d3d36f6a.tar.zst
gsoc2013-evolution-8ffb4930b26f9badf8eb0cdb93275c01d3d36f6a.zip
Bug #674060 - Preview panel on folder change not updated
-rw-r--r--mail/e-mail-display.c11
-rw-r--r--mail/e-mail-reader.c1
-rw-r--r--widgets/misc/e-web-view.c2
3 files changed, 11 insertions, 3 deletions
diff --git a/mail/e-mail-display.c b/mail/e-mail-display.c
index 1ffeb82c1b..96c7d97c78 100644
--- a/mail/e-mail-display.c
+++ b/mail/e-mail-display.c
@@ -1401,9 +1401,11 @@ e_mail_display_set_formatter (EMailDisplay *display,
EMFormatHTML *formatter)
{
g_return_if_fail (E_IS_MAIL_DISPLAY (display));
- g_return_if_fail (EM_IS_FORMAT_HTML (formatter));
- g_object_ref (formatter);
+ if (formatter) {
+ g_return_if_fail (EM_IS_FORMAT_HTML (formatter));
+ g_object_ref (formatter);
+ }
if (display->priv->formatter != NULL) {
/* The formatter might still exist after unrefing it, so
@@ -1415,6 +1417,11 @@ e_mail_display_set_formatter (EMailDisplay *display,
display->priv->formatter = formatter;
+ if (!formatter) {
+ e_web_view_clear (E_WEB_VIEW (display));
+ return;
+ }
+
mail_display_update_formatter_colors (display);
g_signal_connect (formatter, "notify::image-loading-policy",
diff --git a/mail/e-mail-reader.c b/mail/e-mail-reader.c
index 1f87703e2b..58aaa307ef 100644
--- a/mail/e-mail-reader.c
+++ b/mail/e-mail-reader.c
@@ -2835,6 +2835,7 @@ mail_reader_message_selected_timeout_cb (EMailReader *reader)
priv->retrieving_message = g_object_ref (cancellable);
}
} else {
+ e_mail_display_set_formatter (display, NULL);
priv->restoring_message_selection = FALSE;
}
diff --git a/widgets/misc/e-web-view.c b/widgets/misc/e-web-view.c
index dcf07dab04..55d4bd96e0 100644
--- a/widgets/misc/e-web-view.c
+++ b/widgets/misc/e-web-view.c
@@ -1871,7 +1871,7 @@ e_web_view_clear (EWebView *web_view)
{
g_return_if_fail (E_IS_WEB_VIEW (web_view));
- e_web_view_load_string (web_view, NULL);
+ webkit_web_view_load_uri (WEBKIT_WEB_VIEW (web_view), "about:blank");
}
void