summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/platform/graphics/GraphicsContext3D.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebCore/platform/graphics/GraphicsContext3D.h')
-rw-r--r--Source/WebCore/platform/graphics/GraphicsContext3D.h31
1 files changed, 17 insertions, 14 deletions
diff --git a/Source/WebCore/platform/graphics/GraphicsContext3D.h b/Source/WebCore/platform/graphics/GraphicsContext3D.h
index 940394e3b..e7d7f9a7f 100644
--- a/Source/WebCore/platform/graphics/GraphicsContext3D.h
+++ b/Source/WebCore/platform/graphics/GraphicsContext3D.h
@@ -65,6 +65,7 @@ QT_BEGIN_NAMESPACE
class QPainter;
class QRect;
class QOpenGLContext;
+class QOpenGLExtensions;
class QSurface;
QT_END_NAMESPACE
#elif PLATFORM(GTK) || PLATFORM(EFL) || PLATFORM(WIN_CAIRO)
@@ -95,14 +96,9 @@ const Platform3DObject NullPlatform3DObject = 0;
namespace WebCore {
class Extensions3D;
-#if USE(OPENGL_ES_2)
+class Extensions3DOpenGLCommon;
class Extensions3DOpenGLES;
-#else
class Extensions3DOpenGL;
-#endif
-#if PLATFORM(QT)
-class Extensions3DQt;
-#endif
class HostWindow;
class Image;
class ImageBuffer;
@@ -690,7 +686,7 @@ public:
ALREADY_SIGNALED = 0x911A,
TIMEOUT_EXPIRED = 0x911B,
CONDITION_SATISFIED = 0x911C,
-#if PLATFORM(WIN)
+#if OS(WINDOWS)
WAIT_FAILED_WIN = 0x911D,
#else
WAIT_FAILED = 0x911D,
@@ -1417,17 +1413,15 @@ private:
String mappedSymbolName(Platform3DObject shaders[2], size_t count, const String& name);
String originalSymbolName(Platform3DObject program, ANGLEShaderSymbolType, const String& name);
+#if !PLATFORM(QT)
ANGLEWebKitBridge m_compiler;
+#endif
std::unique_ptr<ShaderNameHash> nameHashMapForShaders;
-#if (PLATFORM(QT) && defined(QT_OPENGL_ES_2)) || ((PLATFORM(GTK) || PLATFORM(EFL) || PLATFORM(WIN)) && USE(OPENGL_ES_2))
- friend class Extensions3DOpenGLES;
- std::unique_ptr<Extensions3DOpenGLES> m_extensions;
-#else
+ std::unique_ptr<Extensions3DOpenGLCommon> m_extensions;
friend class Extensions3DOpenGL;
- std::unique_ptr<Extensions3DOpenGL> m_extensions;
-#endif
+ friend class Extensions3DOpenGLES;
friend class Extensions3DOpenGLCommon;
Attributes m_attrs;
@@ -1470,9 +1464,18 @@ private:
// Errors raised by synthesizeGLError().
ListHashSet<GC3Denum> m_syntheticErrors;
+#if PLATFORM(QT)
+ QOpenGLExtensions* m_functions;
+#endif
+
friend class GraphicsContext3DPrivate;
std::unique_ptr<GraphicsContext3DPrivate> m_private;
-
+
+#if PLATFORM(QT)
+ // Must be initialized after m_private so that isGLES2Compliant works
+ ANGLEWebKitBridge m_compiler;
+#endif
+
WebGLRenderingContextBase* m_webglContext;
};