[webkit-changes] [WebKit/WebKit] 5cf998: WebGL extension context loss handling is more comp...

Kimmo Kinnunen noreply at github.com
Fri Aug 18 04:48:32 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 5cf998d9e7b5d88a55ad8a402d94b08f2f0eaf34
      https://github.com/WebKit/WebKit/commit/5cf998d9e7b5d88a55ad8a402d94b08f2f0eaf34
  Author: Kimmo Kinnunen <kkinnunen at apple.com>
  Date:   2023-08-18 (Fri, 18 Aug 2023)

  Changed paths:
    M Source/WebCore/Headers.cmake
    M Source/WebCore/WebCore.order
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebCore/bindings/IDLTypes.h
    M Source/WebCore/bindings/js/JSDOMConvert.h
    M Source/WebCore/bindings/js/JSDOMConvertWebGL.cpp
    M Source/WebCore/bindings/js/JSDOMConvertWebGL.h
    M Source/WebCore/bindings/js/JSDOMPromiseDeferredForward.h
    M Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
    M Source/WebCore/html/canvas/ANGLEInstancedArrays.cpp
    M Source/WebCore/html/canvas/ANGLEInstancedArrays.h
    M Source/WebCore/html/canvas/EXTBlendMinMax.cpp
    M Source/WebCore/html/canvas/EXTBlendMinMax.h
    M Source/WebCore/html/canvas/EXTClipControl.cpp
    M Source/WebCore/html/canvas/EXTClipControl.h
    M Source/WebCore/html/canvas/EXTColorBufferFloat.cpp
    M Source/WebCore/html/canvas/EXTColorBufferFloat.h
    M Source/WebCore/html/canvas/EXTColorBufferHalfFloat.cpp
    M Source/WebCore/html/canvas/EXTColorBufferHalfFloat.h
    M Source/WebCore/html/canvas/EXTConservativeDepth.cpp
    M Source/WebCore/html/canvas/EXTConservativeDepth.h
    M Source/WebCore/html/canvas/EXTDepthClamp.cpp
    M Source/WebCore/html/canvas/EXTDepthClamp.h
    M Source/WebCore/html/canvas/EXTDisjointTimerQuery.cpp
    M Source/WebCore/html/canvas/EXTDisjointTimerQuery.h
    M Source/WebCore/html/canvas/EXTDisjointTimerQueryWebGL2.cpp
    M Source/WebCore/html/canvas/EXTDisjointTimerQueryWebGL2.h
    M Source/WebCore/html/canvas/EXTFloatBlend.cpp
    M Source/WebCore/html/canvas/EXTFloatBlend.h
    M Source/WebCore/html/canvas/EXTFragDepth.cpp
    M Source/WebCore/html/canvas/EXTFragDepth.h
    M Source/WebCore/html/canvas/EXTPolygonOffsetClamp.cpp
    M Source/WebCore/html/canvas/EXTPolygonOffsetClamp.h
    M Source/WebCore/html/canvas/EXTRenderSnorm.cpp
    M Source/WebCore/html/canvas/EXTRenderSnorm.h
    M Source/WebCore/html/canvas/EXTShaderTextureLOD.cpp
    M Source/WebCore/html/canvas/EXTShaderTextureLOD.h
    M Source/WebCore/html/canvas/EXTTextureCompressionBPTC.cpp
    M Source/WebCore/html/canvas/EXTTextureCompressionBPTC.h
    M Source/WebCore/html/canvas/EXTTextureCompressionRGTC.cpp
    M Source/WebCore/html/canvas/EXTTextureCompressionRGTC.h
    M Source/WebCore/html/canvas/EXTTextureFilterAnisotropic.cpp
    M Source/WebCore/html/canvas/EXTTextureFilterAnisotropic.h
    M Source/WebCore/html/canvas/EXTTextureMirrorClampToEdge.cpp
    M Source/WebCore/html/canvas/EXTTextureMirrorClampToEdge.h
    M Source/WebCore/html/canvas/EXTTextureNorm16.cpp
    M Source/WebCore/html/canvas/EXTTextureNorm16.h
    M Source/WebCore/html/canvas/EXTsRGB.cpp
    M Source/WebCore/html/canvas/EXTsRGB.h
    M Source/WebCore/html/canvas/KHRParallelShaderCompile.cpp
    M Source/WebCore/html/canvas/KHRParallelShaderCompile.h
    M Source/WebCore/html/canvas/NVShaderNoperspectiveInterpolation.cpp
    M Source/WebCore/html/canvas/NVShaderNoperspectiveInterpolation.h
    M Source/WebCore/html/canvas/OESDrawBuffersIndexed.cpp
    M Source/WebCore/html/canvas/OESDrawBuffersIndexed.h
    M Source/WebCore/html/canvas/OESElementIndexUint.cpp
    M Source/WebCore/html/canvas/OESElementIndexUint.h
    M Source/WebCore/html/canvas/OESFBORenderMipmap.cpp
    M Source/WebCore/html/canvas/OESFBORenderMipmap.h
    M Source/WebCore/html/canvas/OESSampleVariables.cpp
    M Source/WebCore/html/canvas/OESSampleVariables.h
    M Source/WebCore/html/canvas/OESShaderMultisampleInterpolation.cpp
    M Source/WebCore/html/canvas/OESShaderMultisampleInterpolation.h
    M Source/WebCore/html/canvas/OESStandardDerivatives.cpp
    M Source/WebCore/html/canvas/OESStandardDerivatives.h
    M Source/WebCore/html/canvas/OESTextureFloat.cpp
    M Source/WebCore/html/canvas/OESTextureFloat.h
    M Source/WebCore/html/canvas/OESTextureFloatLinear.cpp
    M Source/WebCore/html/canvas/OESTextureFloatLinear.h
    M Source/WebCore/html/canvas/OESTextureHalfFloat.cpp
    M Source/WebCore/html/canvas/OESTextureHalfFloat.h
    M Source/WebCore/html/canvas/OESTextureHalfFloatLinear.cpp
    M Source/WebCore/html/canvas/OESTextureHalfFloatLinear.h
    M Source/WebCore/html/canvas/OESVertexArrayObject.cpp
    M Source/WebCore/html/canvas/OESVertexArrayObject.h
    M Source/WebCore/html/canvas/WebGL2RenderingContext.cpp
    M Source/WebCore/html/canvas/WebGL2RenderingContext.h
    M Source/WebCore/html/canvas/WebGLClipCullDistance.cpp
    M Source/WebCore/html/canvas/WebGLClipCullDistance.h
    M Source/WebCore/html/canvas/WebGLColorBufferFloat.cpp
    M Source/WebCore/html/canvas/WebGLColorBufferFloat.h
    M Source/WebCore/html/canvas/WebGLCompressedTextureASTC.cpp
    M Source/WebCore/html/canvas/WebGLCompressedTextureASTC.h
    M Source/WebCore/html/canvas/WebGLCompressedTextureETC.cpp
    M Source/WebCore/html/canvas/WebGLCompressedTextureETC.h
    M Source/WebCore/html/canvas/WebGLCompressedTextureETC1.cpp
    M Source/WebCore/html/canvas/WebGLCompressedTextureETC1.h
    M Source/WebCore/html/canvas/WebGLCompressedTexturePVRTC.cpp
    M Source/WebCore/html/canvas/WebGLCompressedTexturePVRTC.h
    M Source/WebCore/html/canvas/WebGLCompressedTextureS3TC.cpp
    M Source/WebCore/html/canvas/WebGLCompressedTextureS3TC.h
    M Source/WebCore/html/canvas/WebGLCompressedTextureS3TCsRGB.cpp
    M Source/WebCore/html/canvas/WebGLCompressedTextureS3TCsRGB.h
    M Source/WebCore/html/canvas/WebGLDebugRendererInfo.cpp
    M Source/WebCore/html/canvas/WebGLDebugRendererInfo.h
    M Source/WebCore/html/canvas/WebGLDebugShaders.cpp
    M Source/WebCore/html/canvas/WebGLDebugShaders.h
    M Source/WebCore/html/canvas/WebGLDepthTexture.cpp
    M Source/WebCore/html/canvas/WebGLDepthTexture.h
    M Source/WebCore/html/canvas/WebGLDrawBuffers.cpp
    M Source/WebCore/html/canvas/WebGLDrawBuffers.h
    M Source/WebCore/html/canvas/WebGLDrawInstancedBaseVertexBaseInstance.cpp
    M Source/WebCore/html/canvas/WebGLDrawInstancedBaseVertexBaseInstance.h
    M Source/WebCore/html/canvas/WebGLExtension.h
    A Source/WebCore/html/canvas/WebGLExtensionAny.h
    A Source/WebCore/html/canvas/WebGLExtensionAnyInlines.h
    M Source/WebCore/html/canvas/WebGLLoseContext.cpp
    M Source/WebCore/html/canvas/WebGLLoseContext.h
    M Source/WebCore/html/canvas/WebGLMultiDraw.cpp
    M Source/WebCore/html/canvas/WebGLMultiDraw.h
    M Source/WebCore/html/canvas/WebGLMultiDrawInstancedBaseVertexBaseInstance.cpp
    M Source/WebCore/html/canvas/WebGLMultiDrawInstancedBaseVertexBaseInstance.h
    M Source/WebCore/html/canvas/WebGLPolygonMode.cpp
    M Source/WebCore/html/canvas/WebGLPolygonMode.h
    M Source/WebCore/html/canvas/WebGLProvokingVertex.cpp
    M Source/WebCore/html/canvas/WebGLProvokingVertex.h
    M Source/WebCore/html/canvas/WebGLRenderSharedExponent.cpp
    M Source/WebCore/html/canvas/WebGLRenderSharedExponent.h
    M Source/WebCore/html/canvas/WebGLRenderingContext.cpp
    M Source/WebCore/html/canvas/WebGLRenderingContext.h
    M Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp
    M Source/WebCore/html/canvas/WebGLRenderingContextBase.h
    M Source/WebCore/html/canvas/WebGLRenderingContextBase.idl
    M Source/WebCore/html/canvas/WebGLStencilTexturing.cpp
    M Source/WebCore/html/canvas/WebGLStencilTexturing.h

  Log Message:
  -----------
  WebGL extension context loss handling is more complex than needed
https://bugs.webkit.org/show_bug.cgi?id=260341
rdar://114018527

Reviewed by Dan Glastonbury.

Remove WebGLExtensionScopedContext. It was used to introduce a local
reference to the WebGLRenderingContextBase. When context is lost, the
extension objects are abandoned and the context pointer would be lost.
However, this does not provide any improvement over just a local
variable. Instead, just use a local reference: if (isContextLost())
return; auto& context = this->context();

Some WebGL extensions are only for WebGL 1. This would mean that the
WebGLExtensionScopedContext would downcast the WebGLRenderingContextBase
to the WebGLRenderingContext. The downcast would need additional local
variables, which could have lead to problems in the future. Instead,
make WebGL extensions type safe by storing the actual expected context
type.

This involves replacing the mechanism where WebGLExtension would be used
as the union type and the getType() as the discriminator.  Instead,
introduce WebGLExtensionAny, a union type containing all the extension
types in a type safe manner.

Introduce WebGLExtensionAnyInlines.h that needs to be included in any
compilation unit that instantiates WebGLExtensionAny.

In order to refer to WebGLExtensionAny one must have the contained types
forward declared. Remove all forward declarations in .h files based on
this.

In order to instantiate WebGLExtensionAny one must have the contained
types defined. Remove all #includes in .cpp files based on this.

* Source/WebCore/Headers.cmake:
* Source/WebCore/WebCore.order:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/bindings/IDLTypes.h:
Change WebGLExtension object wrapper to WebGLExtensionAny IDL type.

* Source/WebCore/bindings/js/JSDOMConvert.h:
Remove WebGL specific things from JSDOMConvert. WebGL bindings include
WebGL specific headers explicitly.

* Source/WebCore/bindings/js/JSDOMConvertWebGL.cpp:
(WebCore::convertToJSValue):
* Source/WebCore/bindings/js/JSDOMConvertWebGL.h:
(WebCore::JSConverter<IDLWebGLExtensionAny>::convert):
(WebCore::convertToJSValue): Deleted.
(WebCore::JSConverter<IDLWebGLExtension>::convert): Deleted.
* Source/WebCore/bindings/js/JSDOMPromiseDeferredForward.h:
* Source/WebCore/bindings/scripts/CodeGeneratorJS.pm:
(AddToIncludesForIDLType):
(NativeToJSValueDOMConvertNeedsState):
(NativeToJSValueDOMConvertNeedsGlobalObject):
* Source/WebCore/html/canvas/ANGLEInstancedArrays.cpp:
(WebCore::ANGLEInstancedArrays::ANGLEInstancedArrays):
(WebCore::ANGLEInstancedArrays::drawArraysInstancedANGLE):
(WebCore::ANGLEInstancedArrays::drawElementsInstancedANGLE):
(WebCore::ANGLEInstancedArrays::vertexAttribDivisorANGLE):
* Source/WebCore/html/canvas/ANGLEInstancedArrays.h:
* Source/WebCore/html/canvas/EXTBlendMinMax.cpp:
(WebCore::EXTBlendMinMax::EXTBlendMinMax):
* Source/WebCore/html/canvas/EXTBlendMinMax.h:
* Source/WebCore/html/canvas/EXTClipControl.cpp:
(WebCore::EXTClipControl::EXTClipControl):
(WebCore::EXTClipControl::clipControlEXT):
* Source/WebCore/html/canvas/EXTClipControl.h:
* Source/WebCore/html/canvas/EXTColorBufferFloat.cpp:
(WebCore::EXTColorBufferFloat::EXTColorBufferFloat):
* Source/WebCore/html/canvas/EXTColorBufferFloat.h:
* Source/WebCore/html/canvas/EXTColorBufferHalfFloat.cpp:
(WebCore::EXTColorBufferHalfFloat::EXTColorBufferHalfFloat):
* Source/WebCore/html/canvas/EXTColorBufferHalfFloat.h:
* Source/WebCore/html/canvas/EXTConservativeDepth.cpp:
(WebCore::EXTConservativeDepth::EXTConservativeDepth):
* Source/WebCore/html/canvas/EXTConservativeDepth.h:
* Source/WebCore/html/canvas/EXTDepthClamp.cpp:
(WebCore::EXTDepthClamp::EXTDepthClamp):
* Source/WebCore/html/canvas/EXTDepthClamp.h:
* Source/WebCore/html/canvas/EXTDisjointTimerQuery.cpp:
(WebCore::EXTDisjointTimerQuery::EXTDisjointTimerQuery):
(WebCore::EXTDisjointTimerQuery::createQueryEXT):
(WebCore::EXTDisjointTimerQuery::deleteQueryEXT):
(WebCore::EXTDisjointTimerQuery::isQueryEXT):
(WebCore::EXTDisjointTimerQuery::beginQueryEXT):
(WebCore::EXTDisjointTimerQuery::endQueryEXT):
(WebCore::EXTDisjointTimerQuery::queryCounterEXT):
(WebCore::EXTDisjointTimerQuery::getQueryEXT):
(WebCore::EXTDisjointTimerQuery::getQueryObjectEXT):
* Source/WebCore/html/canvas/EXTDisjointTimerQuery.h:
* Source/WebCore/html/canvas/EXTDisjointTimerQueryWebGL2.cpp:
(WebCore::EXTDisjointTimerQueryWebGL2::EXTDisjointTimerQueryWebGL2):
(WebCore::EXTDisjointTimerQueryWebGL2::queryCounterEXT):
* Source/WebCore/html/canvas/EXTDisjointTimerQueryWebGL2.h:
* Source/WebCore/html/canvas/EXTFloatBlend.cpp:
(WebCore::EXTFloatBlend::EXTFloatBlend):
* Source/WebCore/html/canvas/EXTFloatBlend.h:
* Source/WebCore/html/canvas/EXTFragDepth.cpp:
(WebCore::EXTFragDepth::EXTFragDepth):
* Source/WebCore/html/canvas/EXTFragDepth.h:
* Source/WebCore/html/canvas/EXTPolygonOffsetClamp.cpp:
(WebCore::EXTPolygonOffsetClamp::EXTPolygonOffsetClamp):
(WebCore::EXTPolygonOffsetClamp::polygonOffsetClampEXT):
* Source/WebCore/html/canvas/EXTPolygonOffsetClamp.h:
* Source/WebCore/html/canvas/EXTRenderSnorm.cpp:
(WebCore::EXTRenderSnorm::EXTRenderSnorm):
* Source/WebCore/html/canvas/EXTRenderSnorm.h:
* Source/WebCore/html/canvas/EXTShaderTextureLOD.cpp:
(WebCore::EXTShaderTextureLOD::EXTShaderTextureLOD):
* Source/WebCore/html/canvas/EXTShaderTextureLOD.h:
* Source/WebCore/html/canvas/EXTTextureCompressionBPTC.cpp:
(WebCore::EXTTextureCompressionBPTC::EXTTextureCompressionBPTC):
* Source/WebCore/html/canvas/EXTTextureCompressionBPTC.h:
* Source/WebCore/html/canvas/EXTTextureCompressionRGTC.cpp:
(WebCore::EXTTextureCompressionRGTC::EXTTextureCompressionRGTC):
* Source/WebCore/html/canvas/EXTTextureCompressionRGTC.h:
* Source/WebCore/html/canvas/EXTTextureFilterAnisotropic.cpp:
(WebCore::EXTTextureFilterAnisotropic::EXTTextureFilterAnisotropic):
* Source/WebCore/html/canvas/EXTTextureFilterAnisotropic.h:
* Source/WebCore/html/canvas/EXTTextureMirrorClampToEdge.cpp:
(WebCore::EXTTextureMirrorClampToEdge::EXTTextureMirrorClampToEdge):
* Source/WebCore/html/canvas/EXTTextureMirrorClampToEdge.h:
* Source/WebCore/html/canvas/EXTTextureNorm16.cpp:
(WebCore::EXTTextureNorm16::EXTTextureNorm16):
* Source/WebCore/html/canvas/EXTTextureNorm16.h:
* Source/WebCore/html/canvas/EXTsRGB.cpp:
(WebCore::EXTsRGB::EXTsRGB):
* Source/WebCore/html/canvas/EXTsRGB.h:
* Source/WebCore/html/canvas/KHRParallelShaderCompile.cpp:
(WebCore::KHRParallelShaderCompile::KHRParallelShaderCompile):
* Source/WebCore/html/canvas/KHRParallelShaderCompile.h:
* Source/WebCore/html/canvas/NVShaderNoperspectiveInterpolation.cpp:
(WebCore::NVShaderNoperspectiveInterpolation::NVShaderNoperspectiveInterpolation):
* Source/WebCore/html/canvas/NVShaderNoperspectiveInterpolation.h:
* Source/WebCore/html/canvas/OESDrawBuffersIndexed.cpp:
(WebCore::OESDrawBuffersIndexed::OESDrawBuffersIndexed):
(WebCore::OESDrawBuffersIndexed::enableiOES):
(WebCore::OESDrawBuffersIndexed::disableiOES):
(WebCore::OESDrawBuffersIndexed::blendEquationiOES):
(WebCore::OESDrawBuffersIndexed::blendEquationSeparateiOES):
(WebCore::OESDrawBuffersIndexed::blendFunciOES):
(WebCore::OESDrawBuffersIndexed::blendFuncSeparateiOES):
(WebCore::OESDrawBuffersIndexed::colorMaskiOES):
* Source/WebCore/html/canvas/OESDrawBuffersIndexed.h:
* Source/WebCore/html/canvas/OESElementIndexUint.cpp:
(WebCore::OESElementIndexUint::OESElementIndexUint):
* Source/WebCore/html/canvas/OESElementIndexUint.h:
* Source/WebCore/html/canvas/OESFBORenderMipmap.cpp:
(WebCore::OESFBORenderMipmap::OESFBORenderMipmap):
* Source/WebCore/html/canvas/OESFBORenderMipmap.h:
* Source/WebCore/html/canvas/OESSampleVariables.cpp:
(WebCore::OESSampleVariables::OESSampleVariables):
* Source/WebCore/html/canvas/OESSampleVariables.h:
* Source/WebCore/html/canvas/OESShaderMultisampleInterpolation.cpp:
(WebCore::OESShaderMultisampleInterpolation::OESShaderMultisampleInterpolation):
* Source/WebCore/html/canvas/OESShaderMultisampleInterpolation.h:
* Source/WebCore/html/canvas/OESStandardDerivatives.cpp:
(WebCore::OESStandardDerivatives::OESStandardDerivatives):
* Source/WebCore/html/canvas/OESStandardDerivatives.h:
* Source/WebCore/html/canvas/OESTextureFloat.cpp:
(WebCore::OESTextureFloat::OESTextureFloat):
* Source/WebCore/html/canvas/OESTextureFloat.h:
* Source/WebCore/html/canvas/OESTextureFloatLinear.cpp:
(WebCore::OESTextureFloatLinear::OESTextureFloatLinear):
* Source/WebCore/html/canvas/OESTextureFloatLinear.h:
* Source/WebCore/html/canvas/OESTextureHalfFloat.cpp:
(WebCore::OESTextureHalfFloat::OESTextureHalfFloat):
* Source/WebCore/html/canvas/OESTextureHalfFloat.h:
* Source/WebCore/html/canvas/OESTextureHalfFloatLinear.cpp:
(WebCore::OESTextureHalfFloatLinear::OESTextureHalfFloatLinear):
* Source/WebCore/html/canvas/OESTextureHalfFloatLinear.h:
* Source/WebCore/html/canvas/OESVertexArrayObject.cpp:
(WebCore::OESVertexArrayObject::OESVertexArrayObject):
(WebCore::OESVertexArrayObject::createVertexArrayOES):
(WebCore::OESVertexArrayObject::deleteVertexArrayOES):
(WebCore::OESVertexArrayObject::isVertexArrayOES):
(WebCore::OESVertexArrayObject::bindVertexArrayOES):
* Source/WebCore/html/canvas/OESVertexArrayObject.h:
* Source/WebCore/html/canvas/WebGL2RenderingContext.cpp:
(WebCore::WebGL2RenderingContext::getExtension):
* Source/WebCore/html/canvas/WebGL2RenderingContext.h:
* Source/WebCore/html/canvas/WebGLClipCullDistance.cpp:
(WebCore::WebGLClipCullDistance::WebGLClipCullDistance):
* Source/WebCore/html/canvas/WebGLClipCullDistance.h:
* Source/WebCore/html/canvas/WebGLColorBufferFloat.cpp:
(WebCore::WebGLColorBufferFloat::WebGLColorBufferFloat):
* Source/WebCore/html/canvas/WebGLColorBufferFloat.h:
* Source/WebCore/html/canvas/WebGLCompressedTextureASTC.cpp:
(WebCore::WebGLCompressedTextureASTC::WebGLCompressedTextureASTC):
* Source/WebCore/html/canvas/WebGLCompressedTextureASTC.h:
* Source/WebCore/html/canvas/WebGLCompressedTextureETC.cpp:
(WebCore::WebGLCompressedTextureETC::WebGLCompressedTextureETC):
* Source/WebCore/html/canvas/WebGLCompressedTextureETC.h:
* Source/WebCore/html/canvas/WebGLCompressedTextureETC1.cpp:
(WebCore::WebGLCompressedTextureETC1::WebGLCompressedTextureETC1):
* Source/WebCore/html/canvas/WebGLCompressedTextureETC1.h:
* Source/WebCore/html/canvas/WebGLCompressedTexturePVRTC.cpp:
(WebCore::WebGLCompressedTexturePVRTC::WebGLCompressedTexturePVRTC):
* Source/WebCore/html/canvas/WebGLCompressedTexturePVRTC.h:
* Source/WebCore/html/canvas/WebGLCompressedTextureS3TC.cpp:
(WebCore::WebGLCompressedTextureS3TC::WebGLCompressedTextureS3TC):
* Source/WebCore/html/canvas/WebGLCompressedTextureS3TC.h:
* Source/WebCore/html/canvas/WebGLCompressedTextureS3TCsRGB.cpp:
(WebCore::WebGLCompressedTextureS3TCsRGB::WebGLCompressedTextureS3TCsRGB):
* Source/WebCore/html/canvas/WebGLCompressedTextureS3TCsRGB.h:
* Source/WebCore/html/canvas/WebGLDebugRendererInfo.cpp:
(WebCore::WebGLDebugRendererInfo::WebGLDebugRendererInfo):
* Source/WebCore/html/canvas/WebGLDebugRendererInfo.h:
* Source/WebCore/html/canvas/WebGLDebugShaders.cpp:
(WebCore::WebGLDebugShaders::WebGLDebugShaders):
(WebCore::WebGLDebugShaders::getTranslatedShaderSource):
* Source/WebCore/html/canvas/WebGLDebugShaders.h:
* Source/WebCore/html/canvas/WebGLDepthTexture.cpp:
(WebCore::WebGLDepthTexture::WebGLDepthTexture):
* Source/WebCore/html/canvas/WebGLDepthTexture.h:
* Source/WebCore/html/canvas/WebGLDrawBuffers.cpp:
(WebCore::WebGLDrawBuffers::WebGLDrawBuffers):
(WebCore::WebGLDrawBuffers::drawBuffersWEBGL):
* Source/WebCore/html/canvas/WebGLDrawBuffers.h:
* Source/WebCore/html/canvas/WebGLDrawInstancedBaseVertexBaseInstance.cpp:
(WebCore::WebGLDrawInstancedBaseVertexBaseInstance::WebGLDrawInstancedBaseVertexBaseInstance):
(WebCore::WebGLDrawInstancedBaseVertexBaseInstance::drawArraysInstancedBaseInstanceWEBGL):
(WebCore::WebGLDrawInstancedBaseVertexBaseInstance::drawElementsInstancedBaseVertexBaseInstanceWEBGL):
* Source/WebCore/html/canvas/WebGLDrawInstancedBaseVertexBaseInstance.h:
* Source/WebCore/html/canvas/WebGLExtension.h:
(WebCore::WebGLExtension::context):
(WebCore::WebGLExtension::WebGLExtension):
(WebCore::WebGLExtension::isContextLost const):
(): Deleted.
(WebCore::WebGLExtension::context const): Deleted.
(WebCore::WebGLExtension::isLostContext const): Deleted.
(WebCore::WebGLExtension::name const): Deleted.
(WebCore::WebGLExtensionScopedContext::WebGLExtensionScopedContext): Deleted.
(WebCore::root): Deleted.
* Source/WebCore/html/canvas/WebGLExtensionAny.h: Added.
* Source/WebCore/html/canvas/WebGLExtensionAnyInlines.h: Added.
* Source/WebCore/html/canvas/WebGLLoseContext.cpp:
(WebCore::WebGLLoseContext::WebGLLoseContext):
(WebCore::WebGLLoseContext::loseContext):
(WebCore::WebGLLoseContext::restoreContext):
* Source/WebCore/html/canvas/WebGLLoseContext.h:
* Source/WebCore/html/canvas/WebGLMultiDraw.cpp:
(WebCore::WebGLMultiDraw::WebGLMultiDraw):
(WebCore::WebGLMultiDraw::multiDrawArraysWEBGL):
(WebCore::WebGLMultiDraw::multiDrawArraysInstancedWEBGL):
(WebCore::WebGLMultiDraw::multiDrawElementsWEBGL):
(WebCore::WebGLMultiDraw::multiDrawElementsInstancedWEBGL):
(WebCore::WebGLMultiDraw::validateDrawcount):
(WebCore::WebGLMultiDraw::validateOffset):
* Source/WebCore/html/canvas/WebGLMultiDraw.h:
* Source/WebCore/html/canvas/WebGLMultiDrawInstancedBaseVertexBaseInstance.cpp:
(WebCore::WebGLMultiDrawInstancedBaseVertexBaseInstance::WebGLMultiDrawInstancedBaseVertexBaseInstance):
(WebCore::WebGLMultiDrawInstancedBaseVertexBaseInstance::multiDrawArraysInstancedBaseInstanceWEBGL):
(WebCore::WebGLMultiDrawInstancedBaseVertexBaseInstance::multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL):
(WebCore::WebGLMultiDrawInstancedBaseVertexBaseInstance::validateDrawcount):
(WebCore::WebGLMultiDrawInstancedBaseVertexBaseInstance::validateOffset):
* Source/WebCore/html/canvas/WebGLMultiDrawInstancedBaseVertexBaseInstance.h:
* Source/WebCore/html/canvas/WebGLPolygonMode.cpp:
(WebCore::WebGLPolygonMode::WebGLPolygonMode):
(WebCore::WebGLPolygonMode::polygonModeWEBGL):
* Source/WebCore/html/canvas/WebGLPolygonMode.h:
* Source/WebCore/html/canvas/WebGLProvokingVertex.cpp:
(WebCore::WebGLProvokingVertex::WebGLProvokingVertex):
(WebCore::WebGLProvokingVertex::provokingVertexWEBGL):
* Source/WebCore/html/canvas/WebGLProvokingVertex.h:
* Source/WebCore/html/canvas/WebGLRenderSharedExponent.cpp:
(WebCore::WebGLRenderSharedExponent::WebGLRenderSharedExponent):
* Source/WebCore/html/canvas/WebGLRenderSharedExponent.h:
* Source/WebCore/html/canvas/WebGLRenderingContext.cpp:
(WebCore::WebGLRenderingContext::getExtension):
(WebCore::root):
* Source/WebCore/html/canvas/WebGLRenderingContext.h:
* Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:
(WebCore::root):
* Source/WebCore/html/canvas/WebGLRenderingContextBase.h:
* Source/WebCore/html/canvas/WebGLRenderingContextBase.idl:
* Source/WebCore/html/canvas/WebGLStencilTexturing.cpp:
(WebCore::WebGLStencilTexturing::WebGLStencilTexturing):
* Source/WebCore/html/canvas/WebGLStencilTexturing.h:

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




More information about the webkit-changes mailing list