WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
[patch]
Patch
bug-118326-20130705153300.patch (text/plain), 32.80 KB, created by
Hugo Parente Lima
on 2013-07-05 11:36:38 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Hugo Parente Lima
Created:
2013-07-05 11:36:38 PDT
Size:
32.80 KB
patch
obsolete
>Subversion Revision: 152419 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index 9a63ecaf07c9baccd4c19861c3388977916382cd..2189eb3ad902b664b78bb885cc2dab786f1edc39 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,57 @@ >+2013-07-05 Hugo Parente Lima <hugo.lima@openbossa.org> >+ >+ Preparing WebCore to receive Nix Port >+ https://bugs.webkit.org/show_bug.cgi?id=118326 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Only adding the compilation directives that are Nix specific, in the >+ existent WebCore files >+ >+ * loader/FrameLoader.cpp: >+ (WebCore::FrameLoader::defaultObjectContentType): >+ * platform/Cursor.h: >+ * platform/DragData.h: >+ * platform/DragImage.h: >+ * platform/FileSystem.h: >+ * platform/RunLoop.h: >+ * platform/Widget.h: >+ * platform/audio/FFTFrame.h: >+ * platform/audio/HRTFElevation.cpp: >+ * platform/cairo/WidgetBackingStore.h: >+ * platform/graphics/ANGLEWebKitBridge.h: >+ * platform/graphics/FontPlatformData.h: >+ * platform/graphics/GraphicsContext3D.cpp: >+ * platform/graphics/GraphicsContext3D.h: >+ * platform/graphics/OpenGLESShims.h: >+ * platform/graphics/OpenGLShims.cpp: >+ (WebCore::getProcAddress): >+ * platform/graphics/OpenGLShims.h: >+ * platform/graphics/PlatformLayer.h: >+ * platform/graphics/cairo/GLContext.cpp: >+ (WebCore::GLContext::createContextForWindow): >+ * platform/graphics/cairo/GraphicsContext3DPrivate.cpp: >+ (WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate): >+ * platform/graphics/freetype/FontPlatformDataFreeType.cpp: >+ * platform/graphics/opengl/Extensions3DOpenGL.cpp: >+ (WebCore::Extensions3DOpenGL::createVertexArrayOES): >+ (WebCore::Extensions3DOpenGL::deleteVertexArrayOES): >+ (WebCore::Extensions3DOpenGL::isVertexArrayOES): >+ (WebCore::Extensions3DOpenGL::bindVertexArrayOES): >+ (WebCore::Extensions3DOpenGL::supportsExtension): >+ * platform/graphics/opengl/Extensions3DOpenGL.h: >+ * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp: >+ * platform/graphics/opengl/Extensions3DOpenGLES.h: >+ * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: >+ * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp: >+ (WebCore::GraphicsContext3D::reshape): >+ * platform/graphics/texmap/TextureMapper.h: >+ * plugins/PluginPackage.cpp: >+ * plugins/PluginView.cpp: >+ (WebCore::PluginView::PluginView): >+ * plugins/PluginView.h: >+ * plugins/PluginViewNone.cpp: >+ > 2013-07-05 Benjamin Dupont <bdupont@nds.com> > > Segmentation fault occurred when ICU data library doesn't embed the expected encoding. >diff --git a/Source/WebCore/loader/FrameLoader.cpp b/Source/WebCore/loader/FrameLoader.cpp >index 83d42f3d4094d7d02411ff212050fd1cd8cbf32d..5259e4bd43e0e12e7b5ac37008416a68add7a9b1 100644 >--- a/Source/WebCore/loader/FrameLoader.cpp >+++ b/Source/WebCore/loader/FrameLoader.cpp >@@ -898,7 +898,7 @@ ObjectContentType FrameLoader::defaultObjectContentType(const KURL& url, const S > if (mimeType.isEmpty()) > mimeType = mimeTypeFromURL(url); > >-#if !PLATFORM(MAC) && !PLATFORM(EFL) // Mac has no PluginDatabase, nor does Chromium or EFL >+#if !PLATFORM(MAC) && !PLATFORM(EFL) && !PLATFORM(NIX) // Mac has no PluginDatabase, nor does Nix or EFL > if (mimeType.isEmpty()) { > String decodedPath = decodeURLEscapeSequences(url.path()); > mimeType = PluginDatabase::installedPlugins()->MIMETypeForExtension(decodedPath.substring(decodedPath.reverseFind('.') + 1)); >@@ -908,7 +908,7 @@ ObjectContentType FrameLoader::defaultObjectContentType(const KURL& url, const S > if (mimeType.isEmpty()) > return ObjectContentFrame; // Go ahead and hope that we can display the content. > >-#if !PLATFORM(MAC) && !PLATFORM(EFL) // Mac has no PluginDatabase, nor does Chromium or EFL >+#if !PLATFORM(MAC) && !PLATFORM(EFL) && !PLATFORM(NIX) // Mac has no PluginDatabase, nor does Nix or EFL > bool plugInSupportsMIMEType = PluginDatabase::installedPlugins()->isMIMETypeRegistered(mimeType); > #else > bool plugInSupportsMIMEType = false; >diff --git a/Source/WebCore/platform/Cursor.h b/Source/WebCore/platform/Cursor.h >index c240e5754ac0bdc20816dda8f82c2f1ad411fa47..d35420d003f4780b716bdff252aa1cb3f61ab6f8 100644 >--- a/Source/WebCore/platform/Cursor.h >+++ b/Source/WebCore/platform/Cursor.h >@@ -56,7 +56,7 @@ typedef HICON HCURSOR; > #endif > > // Looks like it's just PLATFORM(BLACKBERRY) still not using this? >-#if PLATFORM(WIN) || PLATFORM(MAC) || PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) >+#if PLATFORM(WIN) || PLATFORM(MAC) || PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(NIX) > #define WTF_USE_LAZY_NATIVE_CURSOR 1 > #endif > >@@ -79,7 +79,7 @@ namespace WebCore { > typedef NSCursor *PlatformCursor; > #elif PLATFORM(GTK) > typedef GRefPtr<GdkCursor> PlatformCursor; >-#elif PLATFORM(EFL) >+#elif PLATFORM(EFL) || PLATFORM(NIX) > typedef const char* PlatformCursor; > #elif PLATFORM(QT) && !defined(QT_NO_CURSOR) > // Do not need to be shared but need to be created dynamically via ensurePlatformCursor. >diff --git a/Source/WebCore/platform/DragData.h b/Source/WebCore/platform/DragData.h >index 644492670d9b778c6e6e26bd009ec38e79d75155..74efff553368a537ea958bb1262b7945a2af844f 100644 >--- a/Source/WebCore/platform/DragData.h >+++ b/Source/WebCore/platform/DragData.h >@@ -59,7 +59,7 @@ namespace WebCore { > class DataObjectGtk; > } > typedef WebCore::DataObjectGtk* DragDataRef; >-#elif PLATFORM(EFL) || PLATFORM(BLACKBERRY) >+#elif PLATFORM(EFL) || PLATFORM(BLACKBERRY) || PLATFORM(NIX) > typedef void* DragDataRef; > #endif > >diff --git a/Source/WebCore/platform/DragImage.h b/Source/WebCore/platform/DragImage.h >index ec10b2ce84175d398edb172bb3fa3435dfad5c9a..942331edc7df51594c80e6558322826443946ea2 100644 >--- a/Source/WebCore/platform/DragImage.h >+++ b/Source/WebCore/platform/DragImage.h >@@ -41,7 +41,7 @@ class QPixmap; > QT_END_NAMESPACE > #elif PLATFORM(WIN) > typedef struct HBITMAP__* HBITMAP; >-#elif PLATFORM(GTK) >+#elif PLATFORM(GTK) || PLATFORM(NIX) > typedef struct _cairo_surface cairo_surface_t; > #endif > >@@ -60,7 +60,7 @@ namespace WebCore { > typedef QPixmap* DragImageRef; > #elif PLATFORM(WIN) > typedef HBITMAP DragImageRef; >-#elif PLATFORM(GTK) >+#elif PLATFORM(GTK) || PLATFORM(NIX) > typedef cairo_surface_t* DragImageRef; > #elif PLATFORM(EFL) || PLATFORM(BLACKBERRY) > typedef void* DragImageRef; >diff --git a/Source/WebCore/platform/FileSystem.h b/Source/WebCore/platform/FileSystem.h >index e1d5b7e480dde8e4b5079921a7b1e6ce1deb4a0b..aa30c2f98515d9d3b8a8c1a3d20942eefd7b3512 100644 >--- a/Source/WebCore/platform/FileSystem.h >+++ b/Source/WebCore/platform/FileSystem.h >@@ -61,7 +61,7 @@ typedef struct HINSTANCE__* HINSTANCE; > typedef HINSTANCE HMODULE; > #endif > >-#if PLATFORM(GTK) >+#if PLATFORM(GTK) || PLATFORM(NIX) > typedef struct _GFileIOStream GFileIOStream; > typedef struct _GModule GModule; > #endif >@@ -75,7 +75,7 @@ namespace WebCore { > // PlatformModule > #if OS(WINDOWS) > typedef HMODULE PlatformModule; >-#elif PLATFORM(GTK) >+#elif PLATFORM(GTK) || PLATFORM(NIX) > typedef GModule* PlatformModule; > #elif PLATFORM(EFL) > typedef Eina_Module* PlatformModule; >@@ -120,7 +120,7 @@ typedef unsigned PlatformModuleVersion; > #if PLATFORM(QT) > typedef QFile* PlatformFileHandle; > const PlatformFileHandle invalidPlatformFileHandle = 0; >-#elif PLATFORM(GTK) >+#elif PLATFORM(GTK) || PLATFORM(NIX) > typedef GFileIOStream* PlatformFileHandle; > const PlatformFileHandle invalidPlatformFileHandle = 0; > #elif OS(WINDOWS) >@@ -212,7 +212,7 @@ RetainPtr<CFURLRef> pathAsURL(const String&); > void setMetadataURL(String& URLString, const String& referrer, const String& path); > #endif > >-#if PLATFORM(GTK) >+#if PLATFORM(GTK) || PLATFORM(NIX) > String filenameToString(const char*); > String filenameForDisplay(const String&); > CString applicationDirectoryPath(); >diff --git a/Source/WebCore/platform/RunLoop.h b/Source/WebCore/platform/RunLoop.h >index b7f01bcad5796d10acac5d6e8d941d3995c3e393..76f7938f3deb2a55f9f28d2ba9e331dd449d48a2 100644 >--- a/Source/WebCore/platform/RunLoop.h >+++ b/Source/WebCore/platform/RunLoop.h >@@ -36,7 +36,7 @@ > #include <wtf/RetainPtr.h> > #include <wtf/Threading.h> > >-#if PLATFORM(GTK) >+#if PLATFORM(GTK) || PLATFORM(NIX) > #include <wtf/gobject/GRefPtr.h> > #endif > >@@ -99,7 +99,7 @@ public: > static void timerFired(RunLoop*, int ID); > int m_ID; > bool m_isRepeating; >-#elif PLATFORM(GTK) >+#elif PLATFORM(GTK) || PLATFORM(NIX) > static gboolean timerFiredCallback(RunLoop::TimerBase*); > gboolean isRepeating() const { return m_isRepeating; } > void clearTimerSource(); >@@ -159,7 +159,7 @@ private: > TimerMap m_activeTimers; > class TimerObject; > TimerObject* m_timerObject; >-#elif PLATFORM(GTK) >+#elif PLATFORM(GTK) || PLATFORM(NIX) > public: > static gboolean queueWork(RunLoop*); > GMainLoop* innermostLoop(); >diff --git a/Source/WebCore/platform/Widget.h b/Source/WebCore/platform/Widget.h >index a4a18a088b3ad89de480f5aa7448d7419a26da05..ef98c4de02cbfc96ea0389e4a6f9954964b5cf1b 100644 >--- a/Source/WebCore/platform/Widget.h >+++ b/Source/WebCore/platform/Widget.h >@@ -65,7 +65,7 @@ QT_END_NAMESPACE > typedef QObject* PlatformWidget; > #endif > >-#if PLATFORM(BLACKBERRY) >+#if PLATFORM(BLACKBERRY) || PLATFORM(NIX) > typedef void* PlatformWidget; > #endif > >diff --git a/Source/WebCore/platform/audio/FFTFrame.h b/Source/WebCore/platform/audio/FFTFrame.h >index 115c8f8c6e38a6ec52bb3701060480e251ede3cf..5ffb7fd001f5737f4aac68f1a943d4f37c4413d1 100644 >--- a/Source/WebCore/platform/audio/FFTFrame.h >+++ b/Source/WebCore/platform/audio/FFTFrame.h >@@ -67,6 +67,11 @@ struct RDFTContext; > #include <ipps.h> > #endif // USE(WEBAUDIO_IPP) > >+#if PLATFORM(NIX) >+#include <cmath> >+#include <public/WebFFTFrame.h> >+#endif >+ > #include <wtf/Forward.h> > #include <wtf/PassOwnPtr.h> > #include <wtf/Threading.h> >@@ -178,6 +183,11 @@ private: > AudioFloatArray m_imagData; > #endif // USE(WEBAUDIO_IPP) > >+#if PLATFORM(NIX) >+ void scalePlanarData(float scale); >+ OwnPtr<WebKit::WebFFTFrame> m_fftFrame; >+#endif // PLATFORM(NIX) >+ > #if USE(WEBAUDIO_OPENMAX_DL_FFT) > static OMXFFTSpec_R_F32* contextForSize(unsigned log2FFTSize); > >diff --git a/Source/WebCore/platform/audio/HRTFElevation.cpp b/Source/WebCore/platform/audio/HRTFElevation.cpp >index 4aaa1c02171ee58f6deeac325cc426aafe145277..5596608029ca60ab1fa98170e0f50b531645eeda 100644 >--- a/Source/WebCore/platform/audio/HRTFElevation.cpp >+++ b/Source/WebCore/platform/audio/HRTFElevation.cpp >@@ -61,7 +61,7 @@ const size_t ResponseFrameSize = 256; > // The impulse responses may be resampled to a different sample-rate (depending on the audio hardware) when they are loaded. > const float ResponseSampleRate = 44100; > >-#if PLATFORM(MAC) || USE(WEBAUDIO_GSTREAMER) >+#if PLATFORM(MAC) || USE(WEBAUDIO_GSTREAMER) || PLATFORM(NIX) > #define USE_CONCATENATED_IMPULSE_RESPONSES > #endif > >diff --git a/Source/WebCore/platform/cairo/WidgetBackingStore.h b/Source/WebCore/platform/cairo/WidgetBackingStore.h >index a7220be0a36217549be036752522688c0c4e1bf9..d40bfbb908b028a10411b1d61c9f18344df4d1f5 100644 >--- a/Source/WebCore/platform/cairo/WidgetBackingStore.h >+++ b/Source/WebCore/platform/cairo/WidgetBackingStore.h >@@ -39,6 +39,8 @@ namespace WebCore { > typedef GtkWidget* PlatformWidget; > #elif PLATFORM(EFL) > typedef Evas_Object* PlatformWidget; >+#elif PLATFORM(NIX) >+typedef void* PlatformWidget; > #endif > > class WidgetBackingStore { >diff --git a/Source/WebCore/platform/graphics/ANGLEWebKitBridge.h b/Source/WebCore/platform/graphics/ANGLEWebKitBridge.h >index 83c2e004c5e06d956a1654c4018340d4f840abb8..8c8f3c7387e6f92a384ccb89b4f2921404b65021 100644 >--- a/Source/WebCore/platform/graphics/ANGLEWebKitBridge.h >+++ b/Source/WebCore/platform/graphics/ANGLEWebKitBridge.h >@@ -29,7 +29,7 @@ > #include <wtf/text/CString.h> > #include <wtf/text/WTFString.h> > >-#if !PLATFORM(GTK) && !PLATFORM(EFL) && !PLATFORM(BLACKBERRY) && !PLATFORM(QT) && !PLATFORM(WIN) >+#if !PLATFORM(GTK) && !PLATFORM(EFL) && !PLATFORM(BLACKBERRY) && !PLATFORM(QT) && !PLATFORM(WIN) && !PLATFORM(NIX) > #include "ANGLE/ShaderLang.h" > #elif PLATFORM(WIN) > #include "GLSLANG/ShaderLang.h" >diff --git a/Source/WebCore/platform/graphics/FontPlatformData.h b/Source/WebCore/platform/graphics/FontPlatformData.h >index 32969f0ad6b6df0b95062fde8f1db43637458871..4c05e8f6075d351b338f0742bb1d6e5c1e114069 100644 >--- a/Source/WebCore/platform/graphics/FontPlatformData.h >+++ b/Source/WebCore/platform/graphics/FontPlatformData.h >@@ -29,7 +29,7 @@ > #include "qt/FontPlatformData.h" > #elif USE(WINGDI) > #include "wince/FontPlatformData.h" >-#elif PLATFORM(EFL) || PLATFORM(GTK) >+#elif PLATFORM(EFL) || PLATFORM(GTK) || PLATFORM(NIX) > #include "freetype/FontPlatformData.h" > #else > >diff --git a/Source/WebCore/platform/graphics/GraphicsContext3D.cpp b/Source/WebCore/platform/graphics/GraphicsContext3D.cpp >index ce0776fb5b9e759dcc0c9ab25c69b495b0296db6..fa96941e90ef3b4550b8539e4c9c7cbba3ebbf06 100644 >--- a/Source/WebCore/platform/graphics/GraphicsContext3D.cpp >+++ b/Source/WebCore/platform/graphics/GraphicsContext3D.cpp >@@ -1474,7 +1474,7 @@ unsigned GraphicsContext3D::getChannelBitsByFormat(GC3Denum format) > } > } > >-#if !PLATFORM(BLACKBERRY) && !PLATFORM(QT) && !PLATFORM(GTK) && !PLATFORM(EFL) && !PLATFORM(MAC) && !PLATFORM(WIN) >+#if !PLATFORM(BLACKBERRY) && !PLATFORM(QT) && !PLATFORM(GTK) && !PLATFORM(EFL) && !PLATFORM(MAC) && !PLATFORM(WIN) && !PLATFORM(NIX) > PlatformGraphicsContext3D GraphicsContext3D::platformGraphicsContext3D() const > { > return NullPlatformGraphicsContext3D; >diff --git a/Source/WebCore/platform/graphics/GraphicsContext3D.h b/Source/WebCore/platform/graphics/GraphicsContext3D.h >index ab4672737ba2dfd4e51d346b09154a88f34ad5ee..aa3977b2bac161f69d41b7f2d2a2d62ae5f00f30 100644 >--- a/Source/WebCore/platform/graphics/GraphicsContext3D.h >+++ b/Source/WebCore/platform/graphics/GraphicsContext3D.h >@@ -47,7 +47,7 @@ > #undef VERSION > #endif > >-#if PLATFORM(MAC) || PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(BLACKBERRY) || PLATFORM(WIN) >+#if PLATFORM(MAC) || PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(BLACKBERRY) || PLATFORM(WIN) || PLATFORM(NIX) > #include "ANGLEWebKitBridge.h" > #endif > >@@ -62,7 +62,7 @@ class QRect; > class QOpenGLContext; > class QSurface; > QT_END_NAMESPACE >-#elif PLATFORM(GTK) || PLATFORM(EFL) >+#elif PLATFORM(GTK) || PLATFORM(EFL) || PLATFORM(NIX) > typedef unsigned int GLuint; > #endif > >@@ -496,7 +496,7 @@ public: > > bool makeContextCurrent(); > >-#if PLATFORM(MAC) || PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(BLACKBERRY) || PLATFORM(WIN) >+#if PLATFORM(MAC) || PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(BLACKBERRY) || PLATFORM(WIN) || PLATFORM(NIX) > // With multisampling on, blit from multisampleFBO to regular FBO. > void prepareTexture(); > #endif >@@ -921,7 +921,7 @@ private: > // Destination data will have no gaps between rows. > static bool packPixels(const uint8_t* sourceData, DataFormat sourceDataFormat, unsigned width, unsigned height, unsigned sourceUnpackAlignment, unsigned destinationFormat, unsigned destinationType, AlphaOp, void* destinationData, bool flipY); > >-#if PLATFORM(MAC) || PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(BLACKBERRY) || PLATFORM(WIN) >+#if PLATFORM(MAC) || PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(BLACKBERRY) || PLATFORM(WIN) || PLATFORM(NIX) > // Take into account the user's requested context creation attributes, > // in particular stencil and antialias, and determine which could or > // could not be honored based on the capabilities of the OpenGL >@@ -942,7 +942,7 @@ private: > > bool reshapeFBOs(const IntSize&); > void resolveMultisamplingIfNecessary(const IntRect& = IntRect()); >-#if (PLATFORM(QT) || PLATFORM(EFL)) && USE(GRAPHICS_SURFACE) >+#if (PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(NIX)) && USE(GRAPHICS_SURFACE) > void createGraphicsSurfaces(const IntSize&); > #endif > >@@ -959,7 +959,7 @@ private: > void* m_context; > #endif > >-#if PLATFORM(MAC) || PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(BLACKBERRY) || PLATFORM(WIN) >+#if PLATFORM(MAC) || PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(BLACKBERRY) || PLATFORM(WIN) || PLATFORM(NIX) > struct SymbolInfo { > SymbolInfo() > : type(0) >diff --git a/Source/WebCore/platform/graphics/OpenGLESShims.h b/Source/WebCore/platform/graphics/OpenGLESShims.h >index c06b67c68aa63c6ba269e64eaa91ed1457bfd3de..7256f41d3d232235e7ee9c0f52e7a149a45cabea 100644 >--- a/Source/WebCore/platform/graphics/OpenGLESShims.h >+++ b/Source/WebCore/platform/graphics/OpenGLESShims.h >@@ -26,7 +26,7 @@ > #ifndef OpenGLESShims_h > #define OpenGLESShims_h > >-#if PLATFORM(BLACKBERRY) || PLATFORM(QT) || PLATFORM(GTK) || PLATFORM(EFL) || PLATFORM(WIN) >+#if PLATFORM(BLACKBERRY) || PLATFORM(QT) || PLATFORM(GTK) || PLATFORM(EFL) || PLATFORM(WIN) || PLATFORM(NIX) > #define glBindFramebufferEXT glBindFramebuffer > #define glFramebufferTexture2DEXT glFramebufferTexture2D > #define glBindRenderbufferEXT glBindRenderbuffer >diff --git a/Source/WebCore/platform/graphics/OpenGLShims.cpp b/Source/WebCore/platform/graphics/OpenGLShims.cpp >index 13947ae0681ec54d1e8d99a78f59088e88bbf07c..6a03bfe60000457bf7bcdff107ee13dc2d188b20 100644 >--- a/Source/WebCore/platform/graphics/OpenGLShims.cpp >+++ b/Source/WebCore/platform/graphics/OpenGLShims.cpp >@@ -26,6 +26,10 @@ > #include <dlfcn.h> > #endif > >+#if PLATFORM(NIX) && USE(EGL) >+#include <EGL/egl.h> >+#endif >+ > #include <wtf/text/CString.h> > #include <wtf/text/WTFString.h> > >@@ -49,6 +53,11 @@ static void* getProcAddress(const char* procName) > { > return GetProcAddress(GetModuleHandleA("libGLESv2"), procName); > } >+#elif PLATFORM(NIX) && USE(EGL) >+static void* getProcAddress(const char* procName) >+{ >+ return reinterpret_cast<void*>(eglGetProcAddress(procName)); >+} > #else > typedef void* (*glGetProcAddressType) (const char* procName); > static void* getProcAddress(const char* procName) >@@ -106,7 +115,7 @@ static void* lookupOpenGLFunctionAddress(const char* functionName, bool* success > return target; > } > >-#if PLATFORM(QT) && defined(QT_OPENGL_ES_2) >+#if (PLATFORM(QT) && defined(QT_OPENGL_ES_2)) || (PLATFORM(NIX) && USE(OPENGL_ES_2)) > > // With Angle only EGL/GLES2 extensions are available through eglGetProcAddress, not the regular standardized functions. > #define ASSIGN_FUNCTION_TABLE_ENTRY(FunctionName, success) \ >diff --git a/Source/WebCore/platform/graphics/OpenGLShims.h b/Source/WebCore/platform/graphics/OpenGLShims.h >index 8f794211fa40c645068bcef3ada8c01f6696a5c7..a73099f4e6819c82e440dd393dcc1d7dd2d7094a 100644 >--- a/Source/WebCore/platform/graphics/OpenGLShims.h >+++ b/Source/WebCore/platform/graphics/OpenGLShims.h >@@ -25,6 +25,8 @@ > #include <qopenglfunctions.h> > #include <QOpenGLContext> > #include <QSurface> >+#elif PLATFORM(NIX) && USE(OPENGL_ES_2) >+#include <GLES2/gl2.h> > #else > #include <GL/gl.h> > #include <GL/glext.h> >diff --git a/Source/WebCore/platform/graphics/PlatformLayer.h b/Source/WebCore/platform/graphics/PlatformLayer.h >index a17c19edfdf18436ac0ac97c6657b543ca7b989f..36a93e9dabe33708d5289d1a181a1dff0f679030 100644 >--- a/Source/WebCore/platform/graphics/PlatformLayer.h >+++ b/Source/WebCore/platform/graphics/PlatformLayer.h >@@ -45,7 +45,7 @@ class TextureMapperPlatformLayer; > typedef TextureMapperPlatformLayer PlatformLayer; > }; > #endif >-#elif PLATFORM(EFL) >+#elif PLATFORM(EFL) || PLATFORM(NIX) > #if USE(TEXTURE_MAPPER) > namespace WebCore { > class TextureMapperPlatformLayer; >diff --git a/Source/WebCore/platform/graphics/cairo/GLContext.cpp b/Source/WebCore/platform/graphics/cairo/GLContext.cpp >index 687c5ea127c3073c7e572297ada8db8c16f2515a..bc72378867d8358a426ead57a597ea2d82c45c32 100644 >--- a/Source/WebCore/platform/graphics/cairo/GLContext.cpp >+++ b/Source/WebCore/platform/graphics/cairo/GLContext.cpp >@@ -19,7 +19,7 @@ > #include "config.h" > #include "GLContext.h" > >-#if USE(OPENGL) >+#if USE(OPENGL) || (PLATFORM(NIX) && USE(OPENGL_ES_2)) > > #if USE(EGL) > #include "GLContextEGL.h" >@@ -159,6 +159,7 @@ PassOwnPtr<GLContext> GLContext::createContextForWindow(uint64_t windowHandle, G > } > #endif > >+#if !PLATFORM(NIX) > #if USE(GLX) > if (OwnPtr<GLContext> glxContext = GLContextGLX::createContext(windowHandle, sharingContext)) > return glxContext.release(); >@@ -167,6 +168,7 @@ PassOwnPtr<GLContext> GLContext::createContextForWindow(uint64_t windowHandle, G > if (OwnPtr<GLContext> eglContext = GLContextEGL::createContext(windowHandle, sharingContext)) > return eglContext.release(); > #endif >+#endif > return nullptr; > } > >diff --git a/Source/WebCore/platform/graphics/cairo/GraphicsContext3DPrivate.cpp b/Source/WebCore/platform/graphics/cairo/GraphicsContext3DPrivate.cpp >index aa7fec17922c32a8bf7ea6502e1d68c9e53e8a75..d671e7a5c102eecdc46cabaac5e5290bbd69d57e 100644 >--- a/Source/WebCore/platform/graphics/cairo/GraphicsContext3DPrivate.cpp >+++ b/Source/WebCore/platform/graphics/cairo/GraphicsContext3DPrivate.cpp >@@ -27,6 +27,10 @@ > #include "PlatformContextCairo.h" > #include <wtf/OwnArrayPtr.h> > >+#if PLATFORM(NIX) && USE(EGL) >+#include "GLContextFromCurrentEGL.h" >+#endif >+ > #if USE(OPENGL_ES_2) > #include <GLES2/gl2.h> > #include <GLES2/gl2ext.h> >@@ -56,6 +60,9 @@ GraphicsContext3DPrivate::GraphicsContext3DPrivate(GraphicsContext3D* context, G > m_glContext = GLContext::createOffscreenContext(GLContext::sharingContext()); > break; > case GraphicsContext3D::RenderToCurrentGLContext: >+#if PLATFORM(NIX) && USE(EGL) >+ m_glContext = GLContextFromCurrentEGL::createFromCurrentGLContext(); >+#endif > break; > case GraphicsContext3D::RenderDirectlyToHostWindow: > ASSERT_NOT_REACHED(); >diff --git a/Source/WebCore/platform/graphics/freetype/FontPlatformDataFreeType.cpp b/Source/WebCore/platform/graphics/freetype/FontPlatformDataFreeType.cpp >index a2d591ba7559e7f392233c6d60e0e8df7e880d11..4a79a0c19b119ce5c54ec375fb7b55b722549118 100644 >--- a/Source/WebCore/platform/graphics/freetype/FontPlatformDataFreeType.cpp >+++ b/Source/WebCore/platform/graphics/freetype/FontPlatformDataFreeType.cpp >@@ -31,7 +31,7 @@ > #include <fontconfig/fcfreetype.h> > #include <wtf/text/WTFString.h> > >-#if !PLATFORM(EFL) >+#if !PLATFORM(EFL) && !PLATFORM(NIX) > #include <gdk/gdk.h> > #endif > >diff --git a/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.cpp b/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.cpp >index 0905c9213f1112850e8531d5278e0828904f4444..194799f4d98ede8cc756c72d92b1f1b938faa6a5 100644 >--- a/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.cpp >+++ b/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.cpp >@@ -35,7 +35,7 @@ > #if PLATFORM(MAC) > #include "ANGLE/ShaderLang.h" > #include <OpenGL/gl.h> >-#elif PLATFORM(GTK) || PLATFORM(EFL) || PLATFORM(QT) || PLATFORM(WIN) >+#elif PLATFORM(GTK) || PLATFORM(EFL) || PLATFORM(QT) || PLATFORM(WIN) || PLATFORM(NIX) > #include "OpenGLShims.h" > #endif > >@@ -65,7 +65,7 @@ Platform3DObject Extensions3DOpenGL::createVertexArrayOES() > { > m_context->makeContextCurrent(); > GLuint array = 0; >-#if (PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL)) || PLATFORM(WIN) >+#if (PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(WIN) || PLATFORM(NIX)) > if (isVertexArrayObjectSupported()) > glGenVertexArrays(1, &array); > #elif defined(GL_APPLE_vertex_array_object) && GL_APPLE_vertex_array_object >@@ -80,7 +80,7 @@ void Extensions3DOpenGL::deleteVertexArrayOES(Platform3DObject array) > return; > > m_context->makeContextCurrent(); >-#if (PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(WIN)) >+#if (PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(WIN) || PLATFORM(NIX)) > if (isVertexArrayObjectSupported()) > glDeleteVertexArrays(1, &array); > #elif defined(GL_APPLE_vertex_array_object) && GL_APPLE_vertex_array_object >@@ -94,7 +94,7 @@ GC3Dboolean Extensions3DOpenGL::isVertexArrayOES(Platform3DObject array) > return GL_FALSE; > > m_context->makeContextCurrent(); >-#if (PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(WIN)) >+#if (PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(WIN) || PLATFORM(NIX)) > if (isVertexArrayObjectSupported()) > return glIsVertexArray(array); > #elif defined(GL_APPLE_vertex_array_object) && GL_APPLE_vertex_array_object >@@ -106,7 +106,7 @@ GC3Dboolean Extensions3DOpenGL::isVertexArrayOES(Platform3DObject array) > void Extensions3DOpenGL::bindVertexArrayOES(Platform3DObject array) > { > m_context->makeContextCurrent(); >-#if (PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(WIN)) >+#if (PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(WIN) || PLATFORM(NIX)) > if (isVertexArrayObjectSupported()) > glBindVertexArray(array); > #elif defined(GL_APPLE_vertex_array_object) && GL_APPLE_vertex_array_object >@@ -160,7 +160,7 @@ bool Extensions3DOpenGL::supportsExtension(const String& name) > > // GL_OES_vertex_array_object > if (name == "GL_OES_vertex_array_object") { >-#if (PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL)) >+#if (PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(NIX)) > return m_availableExtensions.contains("GL_ARB_vertex_array_object"); > #else > return m_availableExtensions.contains("GL_APPLE_vertex_array_object"); >@@ -205,7 +205,7 @@ String Extensions3DOpenGL::getExtensions() > return String(reinterpret_cast<const char*>(::glGetString(GL_EXTENSIONS))); > } > >-#if (PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(WIN)) >+#if (PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(WIN) || PLATFORM(NIX)) > bool Extensions3DOpenGL::isVertexArrayObjectSupported() > { > static const bool supportsVertexArrayObject = supports("GL_OES_vertex_array_object"); >diff --git a/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.h b/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.h >index f9d69e9f46c7a0f2fc963da9cb4a509a5ca1171b..4c0e0bc233007b8beb2aa1ae7b7bd2c5d55a49fb 100644 >--- a/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.h >+++ b/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.h >@@ -60,7 +60,7 @@ protected: > > virtual bool supportsExtension(const WTF::String&); > virtual String getExtensions(); >-#if (PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(WIN)) >+#if (PLATFORM(GTK) || PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(WIN) || PLATFORM(NIX)) > private: > bool isVertexArrayObjectSupported(); > #endif >diff --git a/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp b/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp >index f413a675a6c939315d5954b424be7eaae756a753..b0f7f9e7b78af9450f9a83b5335b1a54d3a3c042 100644 >--- a/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp >+++ b/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp >@@ -42,7 +42,7 @@ > #include <GLES2/gl2ext.h> > #elif PLATFORM(MAC) > #include <OpenGL/gl.h> >-#elif PLATFORM(GTK) || PLATFORM(EFL) || PLATFORM(QT) || PLATFORM(WIN) >+#elif PLATFORM(GTK) || PLATFORM(EFL) || PLATFORM(QT) || PLATFORM(WIN) || PLATFORM(NIX) > #include "OpenGLShims.h" > #endif > >diff --git a/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLES.h b/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLES.h >index 21ec2e5729dc8d9a05f06242fd57b4e1c4ad5ada..e3ac1ec8fbc2ea7e31a851aee9b0eaebff8afa59 100644 >--- a/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLES.h >+++ b/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLES.h >@@ -69,6 +69,11 @@ typedef void (GL_APIENTRYP PFNGLGETNUNIFORMFVEXTPROC) (GLuint program, GLint loc > typedef void (GL_APIENTRYP PFNGLGETNUNIFORMIVEXTPROC) (GLuint program, GLint location, GC3Dsizei bufSize, GLint *params); > #endif > >+#if PLATFORM(NIX) && USE(OPENGL_ES_2) && !GL_IMG_multisampled_render_to_texture >+// on rPi, PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMG is called PFNGLCLIPPLANEXIMG. >+typedef PFNGLCLIPPLANEXIMG PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMG; >+#endif >+ > namespace WebCore { > > class Extensions3DOpenGLES : public Extensions3DOpenGLCommon { >diff --git a/Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp b/Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp >index fbdca0e0712c5ae102af136c3457a2b9ceb33200..e7df94db2b64a29b27c62176cc1a4fdd5d197a06 100644 >--- a/Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp >+++ b/Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp >@@ -42,7 +42,7 @@ > > #if PLATFORM(MAC) > #include <OpenGL/gl.h> >-#elif PLATFORM(GTK) || PLATFORM(EFL) || PLATFORM(QT) || PLATFORM(WIN) >+#elif PLATFORM(GTK) || PLATFORM(EFL) || PLATFORM(QT) || PLATFORM(WIN) || PLATFORM(NIX) > #include "OpenGLShims.h" > #endif > >diff --git a/Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp b/Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp >index 89d2b3f0e827012360a77d0f8ba64b2d0c4393d1..4d7de535c1024bc56b779d3f3d607b79d9fca4e9 100644 >--- a/Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp >+++ b/Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp >@@ -59,7 +59,7 @@ > #include "OpenGLESShims.h" > #elif PLATFORM(MAC) > #include <OpenGL/gl.h> >-#elif PLATFORM(GTK) || PLATFORM(EFL) || PLATFORM(QT) || PLATFORM(WIN) >+#elif PLATFORM(GTK) || PLATFORM(EFL) || PLATFORM(QT) || PLATFORM(WIN) || PLATFORM(NIX) > #include "OpenGLShims.h" > #endif > >@@ -221,7 +221,7 @@ void GraphicsContext3D::reshape(int width, int height) > if (width == m_currentWidth && height == m_currentHeight) > return; > >-#if (PLATFORM(QT) || PLATFORM(EFL)) && USE(GRAPHICS_SURFACE) >+#if (PLATFORM(QT) || PLATFORM(EFL) || PLATFORM(NIX)) && USE(GRAPHICS_SURFACE) > ::glFlush(); // Make sure all GL calls have been committed before resizing. > createGraphicsSurfaces(IntSize(width, height)); > #endif >diff --git a/Source/WebCore/platform/graphics/texmap/TextureMapper.h b/Source/WebCore/platform/graphics/texmap/TextureMapper.h >index 6ec675794283248e2586ffe642fe152b6a0ac385..d3c05e6bca42df5f2201dc5a169ac606696e8cb1 100644 >--- a/Source/WebCore/platform/graphics/texmap/TextureMapper.h >+++ b/Source/WebCore/platform/graphics/texmap/TextureMapper.h >@@ -28,7 +28,7 @@ > #define TEXMAP_OPENGL_ES_2 > #endif > #endif >-#if (PLATFORM(GTK) || PLATFORM(EFL)) && USE(OPENGL_ES_2) >+#if (PLATFORM(GTK) || PLATFORM(EFL) || PLATFORM(NIX)) && USE(OPENGL_ES_2) > #define TEXMAP_OPENGL_ES_2 > #endif > >diff --git a/Source/WebCore/plugins/PluginPackage.cpp b/Source/WebCore/plugins/PluginPackage.cpp >index d2b6f52f93c94c2bf337c8e39fbbbce197858daf..f9e22190092bf9c856bfa5f4be6bea5333e32cec 100644 >--- a/Source/WebCore/plugins/PluginPackage.cpp >+++ b/Source/WebCore/plugins/PluginPackage.cpp >@@ -177,7 +177,7 @@ PassRefPtr<PluginPackage> PluginPackage::createPackageFromCache(const String& pa > } > #endif > >-#if defined(XP_UNIX) >+#if defined(XP_UNIX) && !PLATFORM(NIX) > void PluginPackage::determineQuirks(const String& mimeType) > { > if (MIMETypeRegistry::isJavaAppletMIMEType(mimeType)) { >diff --git a/Source/WebCore/plugins/PluginView.cpp b/Source/WebCore/plugins/PluginView.cpp >index 618b368bd3a46f01cda90687b64bebd4b1cf4eaf..7cffa7eb64b3304b0be3c39e0fec8b2ec551480f 100644 >--- a/Source/WebCore/plugins/PluginView.cpp >+++ b/Source/WebCore/plugins/PluginView.cpp >@@ -831,7 +831,7 @@ PluginView::PluginView(Frame* parentFrame, const IntSize& size, PluginPackage* p > , m_wmPrintHDC(0) > , m_haveUpdatedPluginWidget(false) > #endif >-#if (PLATFORM(QT) && OS(WINDOWS)) || PLATFORM(EFL) >+#if (PLATFORM(QT) && OS(WINDOWS)) || PLATFORM(EFL) || PLATFORM(NIX) > , m_window(0) > #endif > #if defined(XP_MACOSX) >diff --git a/Source/WebCore/plugins/PluginView.h b/Source/WebCore/plugins/PluginView.h >index a81bd0ad49e200a0ce2418cb36c998480019797f..327760f6f4b5054fc7ed25b814a366fc429f61d2 100644 >--- a/Source/WebCore/plugins/PluginView.h >+++ b/Source/WebCore/plugins/PluginView.h >@@ -383,7 +383,7 @@ namespace WebCore { > bool m_haveUpdatedPluginWidget; > #endif > >-#if ((PLATFORM(GTK) || PLATFORM(QT)) && OS(WINDOWS)) || PLATFORM(EFL) >+#if ((PLATFORM(GTK) || PLATFORM(QT)) && OS(WINDOWS)) || PLATFORM(EFL) || PLATFORM(NIX) > // On Mac OSX and Qt/Windows the plugin does not have its own native widget, > // but is using the containing window as its reference for positioning/painting. > PlatformPluginWidget m_window; >diff --git a/Source/WebCore/plugins/PluginViewNone.cpp b/Source/WebCore/plugins/PluginViewNone.cpp >index 0c945fb64bba6de42ba897d3275feff4d5f2babe..498ab76bac6b11c6d6b55db2559d47561d220b87 100644 >--- a/Source/WebCore/plugins/PluginViewNone.cpp >+++ b/Source/WebCore/plugins/PluginViewNone.cpp >@@ -132,7 +132,7 @@ void PluginView::handleFocusOutEvent() > // ports using PluginView, but until then, if new functions like this are > // added, please make sure they have the proper platform #ifs so that changes > // do not break ports who compile both this file and PluginView.cpp. >-#if PLATFORM(MAC) || PLATFORM(EFL) || (OS(WINCE) && !PLATFORM(QT)) || (PLATFORM(QT) && !OS(WINCE)) >+#if PLATFORM(MAC) || PLATFORM(EFL) || (OS(WINCE) && !PLATFORM(QT)) || (PLATFORM(QT) && !OS(WINCE)) || PLATFORM(NIX) > #if ENABLE(NETSCAPE_PLUGIN_API) > void PluginView::keepAlive(NPP) > {
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 118326
:
205945
|
206164
|
206679
|
211040