Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 85958c82a712c120494f04dc54d3f7b681a052a9
https://github.com/WebKit/WebKit/commit/85958c82a712c120494f04dc54d3f7b681a052a9
Author: Carlos Garcia Campos <[email protected]>
Date: 2024-02-26 (Mon, 26 Feb 2024)
Changed paths:
M Source/WebCore/Headers.cmake
M Source/WebCore/PlatformPlayStation.cmake
M Source/WebCore/PlatformWin.cmake
M Source/WebCore/SourcesGTK.txt
M Source/WebCore/SourcesWPE.txt
M Source/WebCore/platform/graphics/egl/GLContext.cpp
M Source/WebCore/platform/graphics/egl/GLContext.h
A Source/WebCore/platform/graphics/egl/GLContextWrapper.cpp
A Source/WebCore/platform/graphics/egl/GLContextWrapper.h
M
Source/WebCore/platform/graphics/texmap/GraphicsContextGLTextureMapperANGLE.cpp
M
Source/WebCore/platform/graphics/texmap/GraphicsContextGLTextureMapperANGLE.h
Log Message:
-----------
[TextureMapper] Add GLContextWrapper to handle the current GL context
https://bugs.webkit.org/show_bug.cgi?id=270078
Reviewed by Miguel Gomez.
We currently have GLContext handling the current context, but it doesn't
always work. For example, if there's WebGL content, after ANGLE context
is made current. This is not problematic with Cairo because only ANGLE
is making it context current in the main thread, but with Skia there's
another GL context that is made current in the main thread when using
the GPU renderer.
GLContextWrapper is a new class to handle the current GL context,
implemented by GLContext and GraphicsContextGLTextureMapperANGLE.
* Source/WebCore/Headers.cmake:
* Source/WebCore/PlatformPlayStation.cmake:
* Source/WebCore/PlatformWin.cmake:
* Source/WebCore/SourcesGTK.txt:
* Source/WebCore/SourcesWPE.txt:
* Source/WebCore/platform/graphics/egl/GLContext.cpp:
(WebCore::GLContext::~GLContext):
(WebCore::GLContext::makeCurrentImpl):
(WebCore::GLContext::unmakeCurrentImpl):
(WebCore::GLContext::makeContextCurrent):
(WebCore::GLContext::unmakeContextCurrent):
(WebCore::GLContext::current):
(WebCore::GLContext::ScopedGLContext::ScopedGLContext):
(WebCore::GLContext::ScopedGLContext::~ScopedGLContext):
(WebCore::GLContext::ScopedGLContextCurrent::ScopedGLContextCurrent):
(WebCore::GLContext::ScopedGLContextCurrent::~ScopedGLContextCurrent):
(): Deleted.
* Source/WebCore/platform/graphics/egl/GLContext.h:
(WebCore::GLContext::display const): Deleted.
(WebCore::GLContext::config const): Deleted.
* Source/WebCore/platform/graphics/egl/GLContextWrapper.cpp: Added.
(WebCore::GLContextWrapper::~GLContextWrapper):
(WebCore::GLContextWrapper::currentContext):
(WebCore::GLContextWrapper::makeCurrent):
(WebCore::GLContextWrapper::unmakeCurrent):
* Source/WebCore/platform/graphics/egl/GLContextWrapper.h: Added.
*
Source/WebCore/platform/graphics/texmap/GraphicsContextGLTextureMapperANGLE.cpp:
(WebCore::GraphicsContextGLANGLE::makeContextCurrent):
(WebCore::GraphicsContextGLTextureMapperANGLE::makeCurrentImpl):
(WebCore::GraphicsContextGLTextureMapperANGLE::unmakeCurrentImpl):
* Source/WebCore/platform/graphics/texmap/GraphicsContextGLTextureMapperANGLE.h:
Canonical link: https://commits.webkit.org/275316@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes