aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/misc
diff options
context:
space:
mode:
authorDan Vrátil <dvratil@redhat.com>2012-09-19 17:04:02 +0800
committerDan Vrátil <dvratil@redhat.com>2012-09-19 17:04:38 +0800
commit4a2b0d4f31ee0e5cddaf87ccac2294e6f3f3a620 (patch)
treef1d7a0d227e2ed9562f627e3efb3f2f6664ab9cf /widgets/misc
parent184dfd9f022fff18b6308c0ab86f420c3ca51586 (diff)
downloadgsoc2013-evolution-4a2b0d4f31ee0e5cddaf87ccac2294e6f3f3a620.tar.gz
gsoc2013-evolution-4a2b0d4f31ee0e5cddaf87ccac2294e6f3f3a620.tar.zst
gsoc2013-evolution-4a2b0d4f31ee0e5cddaf87ccac2294e6f3f3a620.zip
Bug #678408 - WebKit renders frames with plain/text parts too small
cherry-picked from becfa99e066d525ea2ba3408225235a8542b0005 Workaround for a WebKit bug [0] which appeared in 1.9.x series. When message is loaded, the content is zoomed in and out to force WebKit to recalculate and redraw the iframe so that the content is correctly visible [0] https://bugs.webkit.org/show_bug.cgi?id=89553
Diffstat (limited to 'widgets/misc')
-rw-r--r--widgets/misc/e-web-view.c19
1 files changed, 8 insertions, 11 deletions
diff --git a/widgets/misc/e-web-view.c b/widgets/misc/e-web-view.c
index 802e402438..3840b34906 100644
--- a/widgets/misc/e-web-view.c
+++ b/widgets/misc/e-web-view.c
@@ -578,26 +578,23 @@ web_view_navigation_policy_decision_requested_cb (EWebView *web_view,
}
static void
-web_view_load_status_changed_cb (WebKitWebView *web_view,
+web_view_load_status_changed_cb (WebKitWebView *webkit_web_view,
GParamSpec *pspec,
gpointer user_data)
{
WebKitLoadStatus status;
- GtkAllocation allocation, allocation_copy;
+ EWebView *web_view;
- status = webkit_web_view_get_load_status (web_view);
+ status = webkit_web_view_get_load_status (webkit_web_view);
if (status != WEBKIT_LOAD_FINISHED)
return;
+ web_view = E_WEB_VIEW (webkit_web_view);
+ web_view_update_document_highlights (web_view);
+
/* Workaround webkit bug https://bugs.webkit.org/show_bug.cgi?id=89553 */
- gtk_widget_get_allocation (GTK_WIDGET (web_view), &allocation_copy);
- allocation = allocation_copy;
- allocation.width -= 10;
- allocation.height -= 10;
- gtk_widget_size_allocate (GTK_WIDGET (web_view), &allocation);
- gtk_widget_size_allocate (GTK_WIDGET (web_view), &allocation_copy);
-
- web_view_update_document_highlights (E_WEB_VIEW (web_view));
+ e_web_view_zoom_in (web_view);
+ e_web_view_zoom_out (web_view);
}
static void