41 lines
1.9 KiB
Diff
41 lines
1.9 KiB
Diff
Index: /trunk/Source/WebKit/gtk/webkit/webkitwebview.cpp
|
|
===================================================================
|
|
--- /trunk/Source/WebKit/gtk/webkit/webkitwebview.cpp (revision 113147)
|
|
+++ /trunk/Source/WebKit/gtk/webkit/webkitwebview.cpp (revision 114385)
|
|
@@ -3623,5 +3623,4 @@
|
|
|
|
gtk_widget_set_can_focus(GTK_WIDGET(webView), TRUE);
|
|
- gtk_widget_set_double_buffered(GTK_WIDGET(webView), FALSE);
|
|
|
|
priv->mainFrame = WEBKIT_WEB_FRAME(webkit_web_frame_new(webView));
|
|
Index: /trunk/Source/WebKit/gtk/ChangeLog
|
|
===================================================================
|
|
--- /trunk/Source/WebKit/gtk/ChangeLog (revision 113533)
|
|
+++ /trunk/Source/WebKit/gtk/ChangeLog (revision 114385)
|
|
@@ -1,2 +1,25 @@
|
|
+2012-04-17 Carlos Garnacho <carlos@lanedo.com>
|
|
+
|
|
+ [GTK] Enable back double buffering on WebKitWebView to fix flickering
|
|
+ https://bugs.webkit.org/show_bug.cgi?id=84149
|
|
+
|
|
+ Reviewed by Martin Robinson.
|
|
+
|
|
+ Despite having WebKitWebView its own backing buffer, calling
|
|
+ gtk_widget_set_double_buffered(...,FALSE) may still pose side
|
|
+ effects, such as ensuring that all drawing operations are
|
|
+ flushed to the X server before rendering a non-double buffered
|
|
+ widget, which may translate into flickering of the parent
|
|
+ GdkWindow before the WebKitWebView itself is rendered.
|
|
+
|
|
+ Enabling back double buffering solves this as all contents are
|
|
+ first composited together before getting to the front buffer,
|
|
+ but effectively acts as 3rd buffer. This is sort of unavoidable
|
|
+ unless GTK+ gains a "let me take ownership of the backing buffer
|
|
+ for this widget", which currently lacks.
|
|
+
|
|
+ * webkit/webkitwebview.cpp:
|
|
+ (webkit_web_view_init): Remove call to gtk_widget_set_double_buffered(..., FALSE)
|
|
+
|
|
2012-04-06 Martin Robinson <mrobinson@igalia.com>
|
|
|