Implement WebIDL-style string constants in WebAudio
authorcrogers@google.com <crogers@google.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 2 Jan 2013 20:27:40 +0000 (20:27 +0000)
committercrogers@google.com <crogers@google.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 2 Jan 2013 20:27:40 +0000 (20:27 +0000)
commitbfb943b4930a645478e76c03208943bb72be26d2
treeb96b533f82313da43d6992454db1d56669350bbb
parent026428264fc566b849801e71eb131cbf8afef045
Implement WebIDL-style string constants in WebAudio
https://bugs.webkit.org/show_bug.cgi?id=105058

Reviewed by Kentaro Hara.

Source/WebCore:

See Deprecation Notes for more detail:
https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html#DeprecationNotes

PannerNode, BiquadFilterNode, OscillatorNode constants must support WebIDL-style string constants.
Legacy support in the setters for the old integer values should be supported.

This patch handles the changes for OscillatorNode.

* GNUmakefile.list.am:
* Modules/webaudio/OscillatorNode.cpp:
(WebCore::OscillatorNode::OscillatorNode):
(WebCore::OscillatorNode::type):
(WebCore):
(WebCore::OscillatorNode::setType):
* Modules/webaudio/OscillatorNode.h:
* Modules/webaudio/OscillatorNode.idl:
* Target.pri:
* UseJSC.cmake:
* UseV8.cmake:
* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSOscillatorNodeCustom.cpp: Copied from Source/WebCore/Modules/webaudio/OscillatorNode.idl.
(WebCore):
(WebCore::JSOscillatorNode::setType):
* bindings/v8/custom/V8OscillatorNodeCustom.cpp: Copied from Source/WebCore/Modules/webaudio/OscillatorNode.idl.
(WebCore):
(WebCore::V8OscillatorNode::typeAccessorSetter):

LayoutTests:

* webaudio/oscillator-basic-expected.txt:
* webaudio/oscillator-basic.html:
* webaudio/resources/audio-testing.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@138631 268f45cc-cd09-0410-ab3c-d52691b4dbfc
16 files changed:
LayoutTests/ChangeLog
LayoutTests/webaudio/oscillator-basic-expected.txt
LayoutTests/webaudio/oscillator-basic.html
LayoutTests/webaudio/resources/audio-testing.js
Source/WebCore/ChangeLog
Source/WebCore/GNUmakefile.list.am
Source/WebCore/Modules/webaudio/OscillatorNode.cpp
Source/WebCore/Modules/webaudio/OscillatorNode.h
Source/WebCore/Modules/webaudio/OscillatorNode.idl
Source/WebCore/Target.pri
Source/WebCore/UseJSC.cmake
Source/WebCore/UseV8.cmake
Source/WebCore/WebCore.gypi
Source/WebCore/WebCore.xcodeproj/project.pbxproj
Source/WebCore/bindings/js/JSOscillatorNodeCustom.cpp [new file with mode: 0644]
Source/WebCore/bindings/v8/custom/V8OscillatorNodeCustom.cpp [new file with mode: 0644]