RESOLVED FIXED 171961
WebGLRenderingContext should implement WebGLRenderingContextBase
https://bugs.webkit.org/show_bug.cgi?id=171961
Summary WebGLRenderingContext should implement WebGLRenderingContextBase
Dean Jackson
Reported 2017-05-10 19:50:30 PDT
WebGLRenderingContext should implement WebGLRenderingContextBase
Attachments
Patch (64.42 KB, patch)
2017-05-10 20:00 PDT, Dean Jackson
no flags
Patch (74.64 KB, patch)
2017-05-11 13:52 PDT, Dean Jackson
sam: review+
Patch (66.86 KB, patch)
2017-05-11 14:29 PDT, Dean Jackson
no flags
Radar WebKit Bug Importer
Comment 1 2017-05-10 19:53:21 PDT
Dean Jackson
Comment 2 2017-05-10 20:00:01 PDT
Sam Weinig
Comment 3 2017-05-10 22:01:43 PDT
Comment on attachment 309678 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=309678&action=review Looks good! > Source/WebCore/bindings/js/JSWebGLRenderingContextBaseCustom.cpp:75 > void JSWebGLRenderingContextBase::visitAdditionalChildren(SlotVisitor& visitor) > { > visitor.addOpaqueRoot(&wrapped()); > - visitor.addOpaqueRoot(root(wrapped().canvas())); > + visitor.addOpaqueRoot(WebCore::root(wrapped().canvas())); I don't think this file (and the generated ones) needs to be in the project at all anymore. No one should ever be instantiating or referring to a JSWebGLRenderingContextBase. For an example of an interface that is just used for "implements", see ChildNode.idl. Perhaps we should have an extended IDL that means this is not a real interface.
Dean Jackson
Comment 4 2017-05-11 13:52:34 PDT
Sam Weinig
Comment 5 2017-05-11 13:57:47 PDT
Comment on attachment 309773 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=309773&action=review > Source/WebCore/bindings/js/JSDocumentCustom.cpp:160 > + if (is<WebGL2RenderingContext>(*context)) > + return toJS(&state, globalObject(), downcast<WebGL2RenderingContext>(*context)); Should this be in a WEBGL2 #ifdef? Do we need a WEBGL2 #ifdef at all? > Source/WebCore/bindings/js/JSHTMLCanvasElementCustom.cpp:74 > + if (is<WebGL2RenderingContext>(*context)) > + return toJS<IDLNullable<IDLInterface<WebGL2RenderingContext>>>(state, *globalObject(), static_cast<WebGL2RenderingContext*>(context)); Should this be in a WEBGL2 #ifdef? Do we need a WEBGL2 #ifdef at all? > Source/WebCore/html/canvas/WebGL2RenderingContext.idl:340 > // WebGL2: This comment can probably also go.
Dean Jackson
Comment 6 2017-05-11 14:29:19 PDT
Dean Jackson
Comment 7 2017-05-11 14:40:19 PDT
Note You need to log in before you can comment on or make changes to this bug.