Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(30)

Issue 13046002: Revert 146458 "[EFL][WebGL] Implement a common GraphicsSurface I..." (Closed)

Created:
7 years, 9 months ago by kareng
Modified:
7 years, 9 months ago
Reviewers:
commit-queue
CC:
chromium-reviews
Base URL:
http://svn.webkit.org/repository/webkit/branches/chromium/1451/
Visibility:
Public.

Description

Revert 146458 "[EFL][WebGL] Implement a common GraphicsSurface I..." > [EFL][WebGL] Implement a common GraphicsSurface Implementation. > https://bugs.webkit.org/show_bug.cgi?id=111759 > > Patch by Kondapally Kalyan <kalyan.kondapally@intel.com>; on 2013-03-21 > Reviewed by Kenneth Rohde Christiansen. > > Covered by existing WebGL tests. > > This is in preparation to add transport surface support for GLES2. > This patch makes it easy to share the core logic of using > Transport Surface and client on GLX and GLES2 backends without > any code duplication. > > * PlatformEfl.cmake: > * platform/graphics/efl/GraphicsContext3DPrivate.cpp: > (WebCore::GraphicsContext3DPrivate::initialize): > (WebCore::GraphicsContext3DPrivate::releaseResources): > (WebCore::GraphicsContext3DPrivate::prepareBuffer): > (WebCore::GraphicsContext3DPrivate::createGraphicsSurface): > (WebCore::GraphicsContext3DPrivate::didResizeCanvas): > (WebCore::GraphicsContext3DPrivate::copyToGraphicsSurface): > * platform/graphics/efl/GraphicsContext3DPrivate.h: > (GraphicsContext3DPrivate): > > TransportSurface related code is moved to GraphicsSurfaceCommon. > As GraphicsSurface is deleted on resize, added logic to ensure that > current buffer is not deleted before having the shared buffer > with correct size. This would avoid any flashing during resize. > > * platform/graphics/opengl/GLPlatformSurface.cpp: > (WebCore::GLPlatformSurface::createTransportSurface): > * platform/graphics/opengl/GLPlatformSurface.h: > * platform/graphics/surfaces/efl/GLTransportSurface.cpp: Renamed from Source/WebCore/platform/graphics/surfaces/GLTransportSurface.cpp. > (WebCore): > (WebCore::GLTransportSurface::GLTransportSurface): > (WebCore::GLTransportSurface::~GLTransportSurface): > (WebCore::GLTransportSurface::updateContents): > (WebCore::GLTransportSurface::setGeometry): > (WebCore::GLTransportSurface::destroy): > (WebCore::GLTransportSurface::draw): > (WebCore::GLTransportSurface::bindArrayBuffer): > (WebCore::GLTransportSurface::updateTransformationMatrix): > (WebCore::GLTransportSurface::initializeShaderProgram): > (WebCore::GLTransportSurfaceClient::createTransportSurfaceClient): > (WebCore::GLTransportSurfaceClient::GLTransportSurfaceClient): > (WebCore::GLTransportSurfaceClient::~GLTransportSurfaceClient): > (WebCore::GLTransportSurfaceClient::destroy): > (WebCore::GLTransportSurfaceClient::prepareTexture): > (WebCore::GLTransportSurfaceClient::createTexture): > * platform/graphics/surfaces/efl/GLTransportSurface.h: Renamed from Source/WebCore/platform/graphics/surfaces/GLTransportSurface.h. > (WebCore): > (GLTransportSurface): > (GLTransportSurfaceClient): > (WebCore::GLTransportSurfaceClient::texture): > (WebCore::GLTransportSurfaceClient::hasAlpha): > > Moved TransportSurface to EFL folder as this is being used by EFL port only. > Added a base class for TransportSurfaceClient. > > * platform/graphics/surfaces/efl/GraphicsSurfaceCommon.cpp: Added. > (WebCore): > (GraphicsSurfacePrivate): > (WebCore::GraphicsSurfacePrivate::GraphicsSurfacePrivate): > (WebCore::GraphicsSurfacePrivate::~GraphicsSurfacePrivate): > (WebCore::GraphicsSurfacePrivate::destroy): > (WebCore::GraphicsSurfacePrivate::initializeTransportSurface): > (WebCore::GraphicsSurfacePrivate::makeContextCurrent): > (WebCore::GraphicsSurfacePrivate::copyFromTexture): > (WebCore::GraphicsSurfacePrivate::handle): > (WebCore::GraphicsSurfacePrivate::updateClientBuffer): > (WebCore::GraphicsSurfacePrivate::flags): > (WebCore::GraphicsSurfacePrivate::rect): > (WebCore::GraphicsSurfacePrivate::size): > (WebCore::GraphicsSurfacePrivate::textureId): > (WebCore::GraphicsSurfacePrivate::initializeClient): > (WebCore::GraphicsSurface::platformExport): > (WebCore::GraphicsSurface::platformGetTextureID): > (WebCore::GraphicsSurface::platformCopyToGLTexture): > (WebCore::GraphicsSurface::platformCopyFromTexture): > (WebCore::GraphicsSurface::platformPaintToTextureMapper): > (WebCore::GraphicsSurface::platformFrontBuffer): > (WebCore::GraphicsSurface::platformSwapBuffers): > (WebCore::GraphicsSurface::platformSize): > (WebCore::GraphicsSurface::platformCreate): > (WebCore::GraphicsSurface::platformImport): > (WebCore::GraphicsSurface::platformLock): > (WebCore::GraphicsSurface::platformUnlock): > (WebCore::GraphicsSurface::platformDestroy): > (WebCore::GraphicsSurface::platformBeginPaint): > (WebCore::GraphicsSurface::createReadOnlyImage): > > GraphicsSurface implementation to be shared by both GLX and GLES2. > > * platform/graphics/surfaces/egl/EGLSurface.cpp: > (WebCore::EGLWindowTransportSurface::EGLWindowTransportSurface): > * platform/graphics/surfaces/egl/EGLSurface.h: > (EGLWindowTransportSurface): > * platform/graphics/surfaces/glx/GLXSurface.cpp: > (WebCore): > (WebCore::resolveGLMethods): > (WebCore::isMesaGLX): > (WebCore::GLXTransportSurface::GLXTransportSurface): > (WebCore::GLXTransportSurfaceClient::GLXTransportSurfaceClient): > (WebCore::GLXTransportSurfaceClient::~GLXTransportSurfaceClient): > (WebCore::GLXTransportSurfaceClient::destroy): > (WebCore::GLXTransportSurfaceClient::prepareTexture): > * platform/graphics/surfaces/glx/GLXSurface.h: > (GLXTransportSurface): > (GLXTransportSurfaceClient): > (WebCore): > GLXTransportSurfaceClient implementation. TBR=commit-queue@webkit.org Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=146733

Patch Set 1 #

Messages

Total messages: 2 (0 generated)
kareng
7 years, 9 months ago (2013-03-24 19:13:48 UTC) #1
kareng
7 years, 9 months ago (2013-03-24 19:14:17 UTC) #2
Message was sent while issue was closed.
Committed patchset #1 manually as r146733.

Powered by Google App Engine
This is Rietveld 408576698