Index: Source/platform/graphics/filters/custom/FECustomFilter.cpp |
diff --git a/Source/platform/graphics/filters/custom/FECustomFilter.cpp b/Source/platform/graphics/filters/custom/FECustomFilter.cpp |
index bcce901401aee8ded62a9a714f10086019607a6e..f8f3735ed30aa184390e34af417df8ad4368a6ef 100644 |
--- a/Source/platform/graphics/filters/custom/FECustomFilter.cpp |
+++ b/Source/platform/graphics/filters/custom/FECustomFilter.cpp |
@@ -32,11 +32,11 @@ |
#include "config.h" |
#include "platform/graphics/filters/custom/FECustomFilter.h" |
-#include "platform/graphics/Extensions3D.h" |
#include "platform/graphics/GraphicsContext3D.h" |
#include "platform/graphics/filters/custom/CustomFilterRenderer.h" |
#include "platform/graphics/filters/custom/CustomFilterValidatedProgram.h" |
#include "platform/text/TextStream.h" |
+#include "public/platform/WebGraphicsContext3D.h" |
#include "wtf/Uint8ClampedArray.h" |
namespace WebCore { |
@@ -224,16 +224,14 @@ bool FECustomFilter::createMultisampleBuffer() |
ASSERT(!m_triedMultisampleBuffer); |
m_triedMultisampleBuffer = true; |
- Extensions3D* extensions = m_context->extensions(); |
- if (!extensions |
- || !extensions->supports("GL_ANGLE_framebuffer_multisample") |
- || !extensions->supports("GL_ANGLE_framebuffer_blit") |
- || !extensions->supports("GL_OES_rgb8_rgba8")) |
+ if (!m_context->supportsExtension("GL_ANGLE_framebuffer_multisample") |
+ || !m_context->supportsExtension("GL_ANGLE_framebuffer_blit") |
+ || !m_context->supportsExtension("GL_OES_rgb8_rgba8")) |
return false; |
- extensions->ensureEnabled("GL_ANGLE_framebuffer_blit"); |
- extensions->ensureEnabled("GL_ANGLE_framebuffer_multisample"); |
- extensions->ensureEnabled("GL_OES_rgb8_rgba8"); |
+ m_context->ensureExtensionEnabled("GL_ANGLE_framebuffer_blit"); |
+ m_context->ensureExtensionEnabled("GL_ANGLE_framebuffer_multisample"); |
+ m_context->ensureExtensionEnabled("GL_OES_rgb8_rgba8"); |
if (!m_multisampleFrameBuffer) |
m_multisampleFrameBuffer = m_context->createFramebuffer(); |
@@ -248,14 +246,13 @@ bool FECustomFilter::createMultisampleBuffer() |
void FECustomFilter::resolveMultisampleBuffer() |
{ |
ASSERT(m_triedMultisampleBuffer && m_multisampleFrameBuffer && m_multisampleRenderBuffer && m_multisampleDepthBuffer); |
- m_context->bindFramebuffer(Extensions3D::READ_FRAMEBUFFER, m_multisampleFrameBuffer); |
- m_context->bindFramebuffer(Extensions3D::DRAW_FRAMEBUFFER, m_frameBuffer); |
+ m_context->bindFramebuffer(GL_READ_FRAMEBUFFER_ANGLE, m_multisampleFrameBuffer); |
+ m_context->bindFramebuffer(GL_DRAW_FRAMEBUFFER_ANGLE, m_frameBuffer); |
- ASSERT(m_context->extensions()); |
- m_context->extensions()->blitFramebuffer(0, 0, m_contextSize.width(), m_contextSize.height(), 0, 0, m_contextSize.width(), m_contextSize.height(), GL_COLOR_BUFFER_BIT, GL_NEAREST); |
+ m_context->webContext()->blitFramebufferCHROMIUM(0, 0, m_contextSize.width(), m_contextSize.height(), 0, 0, m_contextSize.width(), m_contextSize.height(), GL_COLOR_BUFFER_BIT, GL_NEAREST); |
- m_context->bindFramebuffer(Extensions3D::READ_FRAMEBUFFER, 0); |
- m_context->bindFramebuffer(Extensions3D::DRAW_FRAMEBUFFER, 0); |
+ m_context->bindFramebuffer(GL_READ_FRAMEBUFFER_ANGLE, 0); |
+ m_context->bindFramebuffer(GL_DRAW_FRAMEBUFFER_ANGLE, 0); |
m_context->bindFramebuffer(GL_FRAMEBUFFER, m_frameBuffer); |
} |
@@ -275,24 +272,21 @@ bool FECustomFilter::resizeMultisampleBuffers(const IntSize& newContextSize) |
static const int kMaxSampleCount = 4; |
int maxSupportedSampleCount = 0; |
- m_context->getIntegerv(Extensions3D::MAX_SAMPLES, &maxSupportedSampleCount); |
+ m_context->getIntegerv(GL_MAX_SAMPLES_ANGLE, &maxSupportedSampleCount); |
int sampleCount = std::min(kMaxSampleCount, maxSupportedSampleCount); |
if (!sampleCount) { |
deleteMultisampleRenderBuffers(); |
return false; |
} |
- Extensions3D* extensions = m_context->extensions(); |
- ASSERT(extensions); |
- |
m_context->bindFramebuffer(GL_FRAMEBUFFER, m_multisampleFrameBuffer); |
m_context->bindRenderbuffer(GL_RENDERBUFFER, m_multisampleRenderBuffer); |
- extensions->renderbufferStorageMultisample(GL_RENDERBUFFER, sampleCount, Extensions3D::RGBA8_OES, newContextSize.width(), newContextSize.height()); |
+ m_context->webContext()->renderbufferStorageMultisampleCHROMIUM(GL_RENDERBUFFER, sampleCount, GL_RGBA8_OES, newContextSize.width(), newContextSize.height()); |
m_context->framebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_RENDERBUFFER, m_multisampleRenderBuffer); |
m_context->bindRenderbuffer(GL_RENDERBUFFER, m_multisampleDepthBuffer); |
- extensions->renderbufferStorageMultisample(GL_RENDERBUFFER, sampleCount, GL_DEPTH_COMPONENT16, newContextSize.width(), newContextSize.height()); |
+ m_context->webContext()->renderbufferStorageMultisampleCHROMIUM(GL_RENDERBUFFER, sampleCount, GL_DEPTH_COMPONENT16, newContextSize.width(), newContextSize.height()); |
m_context->framebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, m_multisampleDepthBuffer); |
m_context->bindRenderbuffer(GL_RENDERBUFFER, 0); |