Title: [186440] releases/WebKitGTK/webkit-2.8/Source/WebKit2
Revision
186440
Author
[email protected]
Date
2015-07-07 04:07:20 -0700 (Tue, 07 Jul 2015)

Log Message

Merge r186333 - [GTK] Accelerated Compositing stops working after a web process crash
https://bugs.webkit.org/show_bug.cgi?id=146508

Reviewed by Martin Robinson.

The problem is that we don't send the window ID again to the new
web process.

* UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::didRelaunchProcess): Call
webkitWebViewBaseDidRelaunchWebProcess().
* UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseDidRelaunchWebProcess): Set the window ID to
the new drawing area.
* UIProcess/API/gtk/WebKitWebViewBasePrivate.h:

Modified Paths

Diff

Modified: releases/WebKitGTK/webkit-2.8/Source/WebKit2/ChangeLog (186439 => 186440)


--- releases/WebKitGTK/webkit-2.8/Source/WebKit2/ChangeLog	2015-07-07 11:04:26 UTC (rev 186439)
+++ releases/WebKitGTK/webkit-2.8/Source/WebKit2/ChangeLog	2015-07-07 11:07:20 UTC (rev 186440)
@@ -1,3 +1,33 @@
+2015-07-06  Zan Dobersek  <[email protected]>
+
+        [GTK] Guard X11-specific code in webkitWebViewBaseDidRelaunchWebProcess()
+        https://bugs.webkit.org/show_bug.cgi?id=146627
+
+        Reviewed by Carlos Garcia Campos.
+
+        * UIProcess/API/gtk/WebKitWebViewBase.cpp:
+        (webkitWebViewBaseDidRelaunchWebProcess):
+        Guard calls to DrawingAreaImpl::setNativeSurfaceHandleForCompositing()
+        that pass in an X11 Window ID with the PLATFORM(X11) build guards.
+
+2015-07-02  Carlos Garcia Campos  <[email protected]>
+
+        [GTK] Accelerated Compositing stops working after a web process crash
+        https://bugs.webkit.org/show_bug.cgi?id=146508
+
+        Reviewed by Martin Robinson.
+
+        The problem is that we don't send the window ID again to the new
+        web process.
+
+        * UIProcess/API/gtk/PageClientImpl.cpp:
+        (WebKit::PageClientImpl::didRelaunchProcess): Call
+        webkitWebViewBaseDidRelaunchWebProcess().
+        * UIProcess/API/gtk/WebKitWebViewBase.cpp:
+        (webkitWebViewBaseDidRelaunchWebProcess): Set the window ID to
+        the new drawing area.
+        * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
+
 2015-06-23  Michael Catanzaro  <[email protected]>
 
         [GTK] Crash performing drag-and-drop

Modified: releases/WebKitGTK/webkit-2.8/Source/WebKit2/UIProcess/API/gtk/PageClientImpl.cpp (186439 => 186440)


--- releases/WebKitGTK/webkit-2.8/Source/WebKit2/UIProcess/API/gtk/PageClientImpl.cpp	2015-07-07 11:04:26 UTC (rev 186439)
+++ releases/WebKitGTK/webkit-2.8/Source/WebKit2/UIProcess/API/gtk/PageClientImpl.cpp	2015-07-07 11:07:20 UTC (rev 186440)
@@ -127,7 +127,7 @@
 
 void PageClientImpl::didRelaunchProcess()
 {
-    notImplemented();
+    webkitWebViewBaseDidRelaunchWebProcess(WEBKIT_WEB_VIEW_BASE(m_viewWidget));
 }
 
 void PageClientImpl::toolTipChanged(const String&, const String& newToolTip)

Modified: releases/WebKitGTK/webkit-2.8/Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBase.cpp (186439 => 186440)


--- releases/WebKitGTK/webkit-2.8/Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBase.cpp	2015-07-07 11:04:26 UTC (rev 186439)
+++ releases/WebKitGTK/webkit-2.8/Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBase.cpp	2015-07-07 11:07:20 UTC (rev 186440)
@@ -1360,3 +1360,23 @@
     UNUSED_PARAM(webkitWebViewBase);
 #endif
 }
+
+void webkitWebViewBaseDidRelaunchWebProcess(WebKitWebViewBase* webkitWebViewBase)
+{
+#if PLATFORM(X11)
+    WebKitWebViewBasePrivate* priv = webkitWebViewBase->priv;
+    DrawingAreaProxyImpl* drawingArea = static_cast<DrawingAreaProxyImpl*>(priv->pageProxy->drawingArea());
+    ASSERT(drawingArea);
+#if USE(REDIRECTED_XCOMPOSITE_WINDOW)
+    if (!priv->redirectedWindow)
+        return;
+    drawingArea->setNativeSurfaceHandleForCompositing(priv->redirectedWindow->windowID());
+#else
+    if (!gtk_widget_get_realized(GTK_WIDGET(webkitWebViewBase)))
+        return;
+    drawingArea->setNativeSurfaceHandleForCompositing(GDK_WINDOW_XID(gtk_widget_get_window(GTK_WIDGET(webkitWebViewBase))));
+#endif
+#else
+    UNUSED_PARAM(webkitWebViewBase);
+#endif
+}

Modified: releases/WebKitGTK/webkit-2.8/Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBasePrivate.h (186439 => 186440)


--- releases/WebKitGTK/webkit-2.8/Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBasePrivate.h	2015-07-07 11:04:26 UTC (rev 186439)
+++ releases/WebKitGTK/webkit-2.8/Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBasePrivate.h	2015-07-07 11:07:20 UTC (rev 186440)
@@ -71,6 +71,7 @@
 void webkitWebViewBaseResetClickCounter(WebKitWebViewBase*);
 void webkitWebViewBaseEnterAcceleratedCompositingMode(WebKitWebViewBase*);
 void webkitWebViewBaseExitAcceleratedCompositingMode(WebKitWebViewBase*);
+void webkitWebViewBaseDidRelaunchWebProcess(WebKitWebViewBase*);
 
 #if ENABLE(DRAG_SUPPORT)
 WebKit::DragAndDropHandler& webkitWebViewBaseDragAndDropHandler(WebKitWebViewBase*);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to