Title: [185198] trunk/Source
Revision
185198
Author
clo...@igalia.com
Date
2015-06-04 03:55:31 -0700 (Thu, 04 Jun 2015)

Log Message

[GTK] [Wayland] Build is broken on trunk
https://bugs.webkit.org/show_bug.cgi?id=142879

Reviewed by Carlos Garcia Campos.

Source/WebCore:

No new tests, no behavior changes.

Patch on GLContext.h picked from bug 136831 by
Iago Toral <ito...@igalia.com> and Zan Dobersek <zdober...@igalia.com>

* platform/graphics/GLContext.h: Include wayland-egl.h before eglplatform.h
to use the Wayland platform when building for Wayland.
* platform/graphics/PlatformDisplay.cpp: Fix the include of GDK
headers for the different targets.
* platform/graphics/wayland/WaylandSurface.cpp: Fix build after r183731.
(WebCore::WaylandSurface::~WaylandSurface):

Source/WebKit2:

* WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
(WebKit::LayerTreeHostGtk::makeContextCurrent): When Wayland target
is enabled GLNativeWindowType is not an u_int64 type.
Cast contextID to avoid a build failure.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (185197 => 185198)


--- trunk/Source/WebCore/ChangeLog	2015-06-04 10:19:43 UTC (rev 185197)
+++ trunk/Source/WebCore/ChangeLog	2015-06-04 10:55:31 UTC (rev 185198)
@@ -1,3 +1,22 @@
+2015-06-03  Carlos Alberto Lopez Perez  <clo...@igalia.com>
+
+        [GTK] [Wayland] Build is broken on trunk
+        https://bugs.webkit.org/show_bug.cgi?id=142879
+
+        Reviewed by Carlos Garcia Campos.
+
+        No new tests, no behavior changes.
+
+        Patch on GLContext.h picked from bug 136831 by
+        Iago Toral <ito...@igalia.com> and Zan Dobersek <zdober...@igalia.com>
+
+        * platform/graphics/GLContext.h: Include wayland-egl.h before eglplatform.h
+        to use the Wayland platform when building for Wayland.
+        * platform/graphics/PlatformDisplay.cpp: Fix the include of GDK
+        headers for the different targets.
+        * platform/graphics/wayland/WaylandSurface.cpp: Fix build after r183731.
+        (WebCore::WaylandSurface::~WaylandSurface):
+
 2015-06-04  Xabier Rodriguez Calvar  <calva...@igalia.com> and Youenn Fablet <youenn.fab...@crf.canon.fr>
 
         [Streams API] Implement ReadableStreamController enqueue

Modified: trunk/Source/WebCore/platform/graphics/GLContext.h (185197 => 185198)


--- trunk/Source/WebCore/platform/graphics/GLContext.h	2015-06-04 10:19:43 UTC (rev 185197)
+++ trunk/Source/WebCore/platform/graphics/GLContext.h	2015-06-04 10:55:31 UTC (rev 185198)
@@ -27,6 +27,10 @@
 #if USE(EGL) && !PLATFORM(GTK)
 #include "eglplatform.h"
 typedef EGLNativeWindowType GLNativeWindowType;
+#elif PLATFORM(GTK) && PLATFORM(WAYLAND) && !defined(GTK_API_VERSION_2)
+#include <wayland-egl.h>
+#include <EGL/eglplatform.h>
+typedef EGLNativeWindowType GLNativeWindowType;
 #else
 typedef uint64_t GLNativeWindowType;
 #endif

Modified: trunk/Source/WebCore/platform/graphics/PlatformDisplay.cpp (185197 => 185198)


--- trunk/Source/WebCore/platform/graphics/PlatformDisplay.cpp	2015-06-04 10:19:43 UTC (rev 185197)
+++ trunk/Source/WebCore/platform/graphics/PlatformDisplay.cpp	2015-06-04 10:55:31 UTC (rev 185198)
@@ -42,8 +42,13 @@
 #endif
 
 #if PLATFORM(GTK)
+#if PLATFORM(X11)
 #include <gdk/gdkx.h>
 #endif
+#if PLATFORM(WAYLAND) && !defined(GTK_API_VERSION_2)
+#include <gdk/gdkwayland.h>
+#endif
+#endif // PLATFORM(GTK)
 
 #if PLATFORM(EFL) && defined(HAVE_ECORE_X)
 #include <Ecore_X.h>

Modified: trunk/Source/WebCore/platform/graphics/wayland/WaylandSurface.cpp (185197 => 185198)


--- trunk/Source/WebCore/platform/graphics/wayland/WaylandSurface.cpp	2015-06-04 10:19:43 UTC (rev 185197)
+++ trunk/Source/WebCore/platform/graphics/wayland/WaylandSurface.cpp	2015-06-04 10:55:31 UTC (rev 185198)
@@ -30,7 +30,7 @@
 
 #include "GLContextEGL.h"
 #include "IntSize.h"
-#include "WaylandDisplay.h"
+#include "PlatformDisplayWayland.h"
 #include <EGL/egl.h>
 
 namespace WebCore {
@@ -54,8 +54,9 @@
 WaylandSurface::~WaylandSurface()
 {
     // The surface couldn't have been created in the first place if WaylandDisplay wasn't properly initialized.
-    ASSERT(WaylandDisplay::instance());
-    eglMakeCurrent(WaylandDisplay::instance()->eglDisplay(), EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT);
+    const PlatformDisplayWayland& waylandDisplay = downcast<PlatformDisplayWayland>(PlatformDisplay::sharedDisplay());
+    ASSERT(waylandDisplay.native());
+    eglMakeCurrent(waylandDisplay.native(), EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT);
 
     wl_egl_window_destroy(m_nativeWindow);
     wl_surface_destroy(m_wlSurface);

Modified: trunk/Source/WebKit2/ChangeLog (185197 => 185198)


--- trunk/Source/WebKit2/ChangeLog	2015-06-04 10:19:43 UTC (rev 185197)
+++ trunk/Source/WebKit2/ChangeLog	2015-06-04 10:55:31 UTC (rev 185198)
@@ -1,3 +1,15 @@
+2015-06-03  Carlos Alberto Lopez Perez  <clo...@igalia.com>
+
+        [GTK] [Wayland] Build is broken on trunk
+        https://bugs.webkit.org/show_bug.cgi?id=142879
+
+        Reviewed by Carlos Garcia Campos.
+
+        * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
+        (WebKit::LayerTreeHostGtk::makeContextCurrent): When Wayland target
+        is enabled GLNativeWindowType is not an u_int64 type.
+        Cast contextID to avoid a build failure.
+
 2015-06-03  Dan Bernstein  <m...@apple.com>
 
         Made WKBackForwardListItemPrivate.h a private header after it was added as internal in r185183.

Modified: trunk/Source/WebKit2/WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp (185197 => 185198)


--- trunk/Source/WebKit2/WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp	2015-06-04 10:19:43 UTC (rev 185197)
+++ trunk/Source/WebKit2/WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp	2015-06-04 10:55:31 UTC (rev 185198)
@@ -84,7 +84,7 @@
         if (!m_layerTreeContext.contextID)
             return false;
 
-        m_context = GLContext::createContextForWindow(m_layerTreeContext.contextID, GLContext::sharingContext());
+        m_context = GLContext::createContextForWindow(reinterpret_cast<GLNativeWindowType>(m_layerTreeContext.contextID), GLContext::sharingContext());
         if (!m_context)
             return false;
     }
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to