Title: [222985] trunk/Source/WebCore
Revision
222985
Author
[email protected]
Date
2017-10-06 09:49:50 -0700 (Fri, 06 Oct 2017)

Log Message

Create bindings for WebGL2's versions of texImage2D.
https://bugs.webkit.org/show_bug.cgi?id=178006

Reviewed by Dean Jackson.

No new tests: not much point in adding tests now; this method doesn't
do anything anyway.

* html/canvas/WebGL2RenderingContext.cpp:
(WebCore::WebGL2RenderingContext::texImage2D):
* html/canvas/WebGL2RenderingContext.h:
* html/canvas/WebGL2RenderingContext.idl:
* html/canvas/WebGLRenderingContext.idl:
* html/canvas/WebGLRenderingContextBase.idl:

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (222984 => 222985)


--- trunk/Source/WebCore/ChangeLog	2017-10-06 16:40:53 UTC (rev 222984)
+++ trunk/Source/WebCore/ChangeLog	2017-10-06 16:49:50 UTC (rev 222985)
@@ -1,3 +1,20 @@
+2017-10-06  Ms2ger  <[email protected]>
+
+        Create bindings for WebGL2's versions of texImage2D.
+        https://bugs.webkit.org/show_bug.cgi?id=178006
+
+        Reviewed by Dean Jackson.
+
+        No new tests: not much point in adding tests now; this method doesn't
+        do anything anyway.
+
+        * html/canvas/WebGL2RenderingContext.cpp:
+        (WebCore::WebGL2RenderingContext::texImage2D):
+        * html/canvas/WebGL2RenderingContext.h:
+        * html/canvas/WebGL2RenderingContext.idl:
+        * html/canvas/WebGLRenderingContext.idl:
+        * html/canvas/WebGLRenderingContextBase.idl:
+
 2017-10-06  Brady Eidson  <[email protected]>
 
         Add (entirely incorrect) fetching of ServiceWorker scripts.

Modified: trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.cpp (222984 => 222985)


--- trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.cpp	2017-10-06 16:40:53 UTC (rev 222984)
+++ trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.cpp	2017-10-06 16:49:50 UTC (rev 222985)
@@ -479,6 +479,18 @@
 {
 }
 
+void WebGL2RenderingContext::texImage2D(GC3Denum, GC3Dint, GC3Dint, GC3Dsizei, GC3Dsizei, GC3Dint, GC3Denum, GC3Denum, GC3Dint64)
+{
+}
+
+void WebGL2RenderingContext::texImage2D(GC3Denum, GC3Dint, GC3Dint, GC3Dsizei, GC3Dsizei, GC3Dint, GC3Denum, GC3Denum, TexImageSource&&)
+{
+}
+
+void WebGL2RenderingContext::texImage2D(GC3Denum, GC3Dint, GC3Dint, GC3Dsizei, GC3Dsizei, GC3Dint, GC3Denum, GC3Denum, RefPtr<ArrayBufferView>&&, GC3Duint)
+{
+}
+
 void WebGL2RenderingContext::texImage3D(GC3Denum, GC3Dint, GC3Dint, GC3Dsizei, GC3Dsizei, GC3Dsizei, GC3Dint, GC3Denum, GC3Denum, RefPtr<ArrayBufferView>&&)
 {
 }

Modified: trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.h (222984 => 222985)


--- trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.h	2017-10-06 16:40:53 UTC (rev 222984)
+++ trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.h	2017-10-06 16:49:50 UTC (rev 222985)
@@ -65,6 +65,12 @@
     // Texture objects
     void texStorage2D(GC3Denum target, GC3Dsizei levels, GC3Denum internalFormat, GC3Dsizei width, GC3Dsizei height);
     void texStorage3D(GC3Denum target, GC3Dsizei levels, GC3Denum internalFormat, GC3Dsizei width, GC3Dsizei height, GC3Dsizei depth);
+
+    using WebGLRenderingContextBase::texImage2D;
+    void texImage2D(GC3Denum target, GC3Dint level, GC3Dint internalformat, GC3Dsizei width, GC3Dsizei height, GC3Dint border, GC3Denum format, GC3Denum type, GC3Dint64 pboOffset);
+    void texImage2D(GC3Denum target, GC3Dint level, GC3Dint internalformat, GC3Dsizei width, GC3Dsizei height, GC3Dint border, GC3Denum format, GC3Denum type, TexImageSource&&);
+    void texImage2D(GC3Denum target, GC3Dint level, GC3Dint internalformat, GC3Dsizei width, GC3Dsizei height, GC3Dint border, GC3Denum format, GC3Denum type, RefPtr<ArrayBufferView>&& srcData, GC3Duint srcOffset);
+
     void texImage3D(GC3Denum target, GC3Dint level, GC3Dint internalformat, GC3Dsizei width, GC3Dsizei height, GC3Dsizei depth, GC3Dint border, GC3Denum format, GC3Denum type, RefPtr<ArrayBufferView>&& pixels);
 
     void texSubImage3D(GC3Denum target, GC3Dint level, GC3Dint xoffset, GC3Dint yoffset, GC3Dint zoffset, GC3Dsizei width, GC3Dsizei height, GC3Dsizei depth, GC3Denum format, GC3Denum type, RefPtr<ArrayBufferView>&& pixels);

Modified: trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.idl (222984 => 222985)


--- trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.idl	2017-10-06 16:40:53 UTC (rev 222984)
+++ trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.idl	2017-10-06 16:49:50 UTC (rev 222985)
@@ -363,6 +363,16 @@
     /* Texture objects */
     void texStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
     void texStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
+
+    // WebGL1 legacy entrypoints:
+    void texImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, ArrayBufferView? pixels);
+    [MayThrowException] void texImage2D(GLenum target, GLint level, GLenum internalformat, GLenum format, GLenum type, TexImageSource? source);
+
+    // WebGL2 entrypoints:
+    void texImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, GLintptr pboOffset);
+    void texImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, TexImageSource source);
+    void texImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, ArrayBufferView srcData, GLuint srcOffset);
+
     void texImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, ArrayBufferView? pixels);
 
     void texSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, ArrayBufferView? pixels);

Modified: trunk/Source/WebCore/html/canvas/WebGLRenderingContext.idl (222984 => 222985)


--- trunk/Source/WebCore/html/canvas/WebGLRenderingContext.idl	2017-10-06 16:40:53 UTC (rev 222984)
+++ trunk/Source/WebCore/html/canvas/WebGLRenderingContext.idl	2017-10-06 16:49:50 UTC (rev 222985)
@@ -27,6 +27,13 @@
 typedef long GLint;
 typedef long GLsizei;
 
+// FIXME: Should allow ImageBitmap too.
+#ifdef ENABLE_VIDEO
+typedef (ImageData or HTMLImageElement or HTMLCanvasElement or HTMLVideoElement) TexImageSource;
+#else
+typedef (ImageData or HTMLImageElement or HTMLCanvasElement) TexImageSource;
+#endif
+
 [
     Conditional=WEBGL,
     JSCustomMarkFunction,
@@ -35,8 +42,12 @@
     ExportMacro=WEBCORE_EXPORT,
     CallTracingCallback=recordCanvasAction,
 ] interface WebGLRenderingContext {
-    // This method is placed outside of WebGLRenderingContextBase to avoid
+    // These methods are placed outside of WebGLRenderingContextBase to avoid
     // conficts with overloads in WebGL2RenderingContext.
+
+    void texImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, ArrayBufferView? pixels);
+    [MayThrowException] void texImage2D(GLenum target, GLint level, GLenum internalformat, GLenum format, GLenum type, TexImageSource? source);
+
     void compressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, ArrayBufferView data);
 };
 

Modified: trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.idl (222984 => 222985)


--- trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.idl	2017-10-06 16:40:53 UTC (rev 222984)
+++ trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.idl	2017-10-06 16:49:50 UTC (rev 222985)
@@ -623,9 +623,6 @@
     void texParameteri(GLenum target, GLenum pname, GLint param);
 
     // Supported forms:
-    void texImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, ArrayBufferView? pixels);
-    [MayThrowException] void texImage2D(GLenum target, GLint level, GLenum internalformat, GLenum format, GLenum type, TexImageSource? source);
-
     void texSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, ArrayBufferView? pixels);
     [MayThrowException] void texSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLenum format, GLenum type, TexImageSource? source);
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to