[WebGL] Support for texImage2D of type HALF_FLOAT_OES with ArrayBufferView.
https://bugs.webkit.org/show_bug.cgi?id=110818

Reviewed by Kenneth Russell.

As per OES_texture_half_float specification texImage2D and texSubImage2D entry
points taking ArrayBufferView should extended to accept null with the pixel type
HALF_FLOAT_OES.

Source/WebCore:

Tests: fast/canvas/webgl/oes-texture-half-float-not-supported.html
       fast/canvas/webgl/oes-texture-half-float.html

* CMakeLists.txt:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSWebGLRenderingContextCustom.cpp:
(WebCore::toJS):
* bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
(WebCore::toV8Object):
* html/canvas/OESTextureHalfFloat.cpp: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
(WebCore):
(WebCore::OESTextureHalfFloat::OESTextureHalfFloat):
(WebCore::OESTextureHalfFloat::~OESTextureHalfFloat):
(WebCore::OESTextureHalfFloat::getName):
(WebCore::OESTextureHalfFloat::create):
* html/canvas/OESTextureHalfFloat.h: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
(WebCore):
(OESTextureHalfFloat):
* html/canvas/OESTextureHalfFloat.idl: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
* html/canvas/WebGLExtension.h:
* html/canvas/WebGLRenderingContext.cpp:
(WebCore):
(WebCore::WebGLRenderingContext::getExtension):
(WebCore::WebGLRenderingContext::texImage2D):
(WebCore::WebGLRenderingContext::texSubImage2D):
(WebCore::WebGLRenderingContext::validateTexFuncFormatAndType):
(WebCore::WebGLRenderingContext::validateTexFuncData):
* html/canvas/WebGLRenderingContext.h:
(WebCore):
(WebGLRenderingContext):
* html/canvas/WebGLRenderingContext.idl:
* platform/graphics/Extensions3D.h:
(Extensions3D):
* platform/graphics/GraphicsContext3D.cpp:
(WebCore::GraphicsContext3D::computeFormatAndTypeParameters):
* platform/graphics/GraphicsContext3D.h:
* platform/graphics/GraphicsTypes3D.h:
* platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
(WebCore::GraphicsContext3D::texImage2D):

LayoutTests:

* fast/canvas/webgl/constants.html:
* fast/canvas/webgl/oes-texture-half-float-expected.txt: Added.
* fast/canvas/webgl/oes-texture-half-float-not-supported-expected.txt: Added.
* fast/canvas/webgl/oes-texture-half-float-not-supported.html: Added.
* fast/canvas/webgl/oes-texture-half-float.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144535 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix a typo in my previous commit (r144534).

* platform/win/PasteboardWin.cpp:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144536 268f45cc-cd09-0410-ab3c-d52691b4dbfc