Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 05bd97a27164d3373bd61101c2f995d292bc36f0
      
https://github.com/WebKit/WebKit/commit/05bd97a27164d3373bd61101c2f995d292bc36f0
  Author: Kimmo Kinnunen <kkinnu...@apple.com>
  Date:   2023-11-17 (Fri, 17 Nov 2023)

  Changed paths:
    M Source/WebCore/CMakeLists.txt
    M Source/WebCore/Modules/webxr/WebXROpaqueFramebuffer.cpp
    M Source/WebCore/Sources.txt
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebCore/html/canvas/WebGL2RenderingContext.cpp
    M Source/WebCore/html/canvas/WebGL2RenderingContext.h
    M Source/WebCore/html/canvas/WebGLDrawInstancedBaseVertexBaseInstance.cpp
    M Source/WebCore/html/canvas/WebGLMultiDraw.cpp
    M 
Source/WebCore/html/canvas/WebGLMultiDrawInstancedBaseVertexBaseInstance.cpp
    M Source/WebCore/html/canvas/WebGLRenderingContext.cpp
    M Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp
    M Source/WebCore/html/canvas/WebGLRenderingContextBase.h
    A Source/WebCore/html/canvas/WebGLUtilities.cpp
    A Source/WebCore/html/canvas/WebGLUtilities.h

  Log Message:
  -----------
  WebXROpaqueFramebuffer queries state from GPUP
https://bugs.webkit.org/show_bug.cgi?id=264248
rdar://117992444

Reviewed by Dan Glastonbury.

The context state is available in WebGLRenderingContextBase, and thus
it should not be queried from the underlying OpenGL context.

Add Scoped*Restore classes to encapsulate restoring the state from
the WebGL context. These will also be used when default framebuffer
implementation is moved from the underlying context to the webgl context
level.

Move all the scoped helpers to WebGLUtilities.h so they're available
to all the WebGL implementation files.

This is work towards supporting premultipliedAlpha=false compositing.

* Source/WebCore/CMakeLists.txt:
* Source/WebCore/Modules/webxr/WebXROpaqueFramebuffer.cpp:
(WebCore::WebXROpaqueFramebuffer::startFrame):
(WebCore::WebXROpaqueFramebuffer::endFrame):
(WebCore::WebXROpaqueFramebuffer::setupFramebuffer):
* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/html/canvas/WebGL2RenderingContext.cpp:
(WebCore::WebGL2RenderingContext::drawRangeElements):
* Source/WebCore/html/canvas/WebGL2RenderingContext.h:
* Source/WebCore/html/canvas/WebGLDrawInstancedBaseVertexBaseInstance.cpp:
(WebCore::WebGLDrawInstancedBaseVertexBaseInstance::drawArraysInstancedBaseInstanceWEBGL):
(WebCore::WebGLDrawInstancedBaseVertexBaseInstance::drawElementsInstancedBaseVertexBaseInstanceWEBGL):
* Source/WebCore/html/canvas/WebGLMultiDraw.cpp:
(WebCore::WebGLMultiDraw::multiDrawArraysWEBGL):
(WebCore::WebGLMultiDraw::multiDrawArraysInstancedWEBGL):
(WebCore::WebGLMultiDraw::multiDrawElementsWEBGL):
(WebCore::WebGLMultiDraw::multiDrawElementsInstancedWEBGL):
* Source/WebCore/html/canvas/WebGLMultiDrawInstancedBaseVertexBaseInstance.cpp:
(WebCore::WebGLMultiDrawInstancedBaseVertexBaseInstance::multiDrawArraysInstancedBaseInstanceWEBGL):
(WebCore::WebGLMultiDrawInstancedBaseVertexBaseInstance::multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL):
* Source/WebCore/html/canvas/WebGLRenderingContext.cpp:
* Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:
(WebCore::WebGLRenderingContextBase::drawArrays):
(WebCore::WebGLRenderingContextBase::drawElements):
(WebCore::WebGLRenderingContextBase::drawArraysInstanced):
(WebCore::WebGLRenderingContextBase::drawElementsInstanced):
(WebCore::ScopedTightUnpackParameters::ScopedTightUnpackParameters): Deleted.
(WebCore::ScopedTightUnpackParameters::~ScopedTightUnpackParameters): Deleted.
(WebCore::ScopedTightUnpackParameters::set): Deleted.
(WebCore::ScopedDisableRasterizerDiscard::ScopedDisableRasterizerDiscard): 
Deleted.
(WebCore::ScopedDisableRasterizerDiscard::~ScopedDisableRasterizerDiscard): 
Deleted.
(WebCore::ScopedEnableBackbuffer::ScopedEnableBackbuffer): Deleted.
(WebCore::ScopedEnableBackbuffer::~ScopedEnableBackbuffer): Deleted.
(WebCore::ScopedDisableScissorTest::ScopedDisableScissorTest): Deleted.
(WebCore::ScopedDisableScissorTest::~ScopedDisableScissorTest): Deleted.
(WebCore::InspectorScopedShaderProgramHighlight::InspectorScopedShaderProgramHighlight):
 Deleted.
(WebCore::InspectorScopedShaderProgramHighlight::~InspectorScopedShaderProgramHighlight):
 Deleted.
(WebCore::InspectorScopedShaderProgramHighlight::showHighlight): Deleted.
(WebCore::InspectorScopedShaderProgramHighlight::hideHighlight): Deleted.
* Source/WebCore/html/canvas/WebGLRenderingContextBase.h:

Canonical link: https://commits.webkit.org/270886@main


_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to