Diff
Modified: trunk/Source/WebCore/ChangeLog (89788 => 89789)
--- trunk/Source/WebCore/ChangeLog 2011-06-27 06:40:47 UTC (rev 89788)
+++ trunk/Source/WebCore/ChangeLog 2011-06-27 06:49:16 UTC (rev 89789)
@@ -1,3 +1,25 @@
+2011-06-26 Adam Barth <[email protected]>
+
+ Reviewed by Eric Seidel.
+
+ Remove LegacyDefaultOptionalArguments from WebAudio IDL files
+ https://bugs.webkit.org/show_bug.cgi?id=63416
+
+ WebAudio isn't that widely used, so it's seems somewhat safe to remove
+ legacy code generation hacks. I'm not an expert on WebAudio, but the
+ API doesn't appear to need many optional arguments.
+
+ There are a bunch of APIs that have custom bindings that look like they
+ could be autogenerated. I've added FIXME comments where appropriate.
+
+ * webaudio/AudioBuffer.idl:
+ * webaudio/AudioContext.idl:
+ * webaudio/AudioListener.idl:
+ * webaudio/AudioNode.idl:
+ * webaudio/AudioPannerNode.idl:
+ * webaudio/AudioParam.idl:
+ * webaudio/RealtimeAnalyserNode.idl:
+
2011-06-26 Yury Semikhatsky <[email protected]>
Reviewed by Pavel Feldman.
Modified: trunk/Source/WebCore/webaudio/AudioBuffer.idl (89788 => 89789)
--- trunk/Source/WebCore/webaudio/AudioBuffer.idl 2011-06-27 06:40:47 UTC (rev 89788)
+++ trunk/Source/WebCore/webaudio/AudioBuffer.idl 2011-06-27 06:49:16 UTC (rev 89789)
@@ -28,7 +28,6 @@
module audio {
interface [
- LegacyDefaultOptionalArguments,
Conditional=WEB_AUDIO
] AudioBuffer {
readonly attribute long length; // in sample-frames
Modified: trunk/Source/WebCore/webaudio/AudioContext.idl (89788 => 89789)
--- trunk/Source/WebCore/webaudio/AudioContext.idl 2011-06-27 06:40:47 UTC (rev 89788)
+++ trunk/Source/WebCore/webaudio/AudioContext.idl 2011-06-27 06:49:16 UTC (rev 89789)
@@ -25,7 +25,6 @@
module webaudio {
interface [
- LegacyDefaultOptionalArguments,
Conditional=WEB_AUDIO,
ActiveDOMObject,
CanBeConstructed,
@@ -48,11 +47,12 @@
// All panning is relative to this listener.
readonly attribute AudioListener listener;
+ // FIXME: Switch from [Custom] to using IDL overloads.
// AudioBuffer createBuffer(in unsigned long numberOfChannels, in unsigned long numberOfFrames, in float sampleRate);
// AudioBuffer createBuffer(in ArrayBuffer buffer, in boolean mixToMono);
[Custom] AudioBuffer createBuffer()
raises(DOMException);
-
+
// Asynchronous audio file data decoding.
void decodeAudioData(in ArrayBuffer audioData, in [Callback] AudioBufferCallback successCallback, in [Optional, Callback] AudioBufferCallback errorCallback)
raises(DOMException);
@@ -75,11 +75,10 @@
// Channel splitting and merging
AudioChannelSplitter createChannelSplitter();
AudioChannelMerger createChannelMerger();
-
+
// Offline rendering
// void prepareOfflineBufferRendering(in unsigned long numberOfChannels, in unsigned long numberOfFrames, in float sampleRate);
attribute EventListener oncomplete;
void startRendering();
-
};
}
Modified: trunk/Source/WebCore/webaudio/AudioListener.idl (89788 => 89789)
--- trunk/Source/WebCore/webaudio/AudioListener.idl 2011-06-27 06:40:47 UTC (rev 89788)
+++ trunk/Source/WebCore/webaudio/AudioListener.idl 2011-06-27 06:49:16 UTC (rev 89789)
@@ -28,7 +28,6 @@
module audio {
interface [
- LegacyDefaultOptionalArguments,
Conditional=WEB_AUDIO
] AudioListener {
attribute float dopplerFactor; // same as OpenAL (default 1.0)
Modified: trunk/Source/WebCore/webaudio/AudioNode.idl (89788 => 89789)
--- trunk/Source/WebCore/webaudio/AudioNode.idl 2011-06-27 06:40:47 UTC (rev 89788)
+++ trunk/Source/WebCore/webaudio/AudioNode.idl 2011-06-27 06:49:16 UTC (rev 89789)
@@ -24,17 +24,18 @@
module audio {
interface [
- LegacyDefaultOptionalArguments,
Conditional=WEB_AUDIO
] AudioNode {
readonly attribute AudioContext context;
readonly attribute unsigned long numberOfInputs;
readonly attribute unsigned long numberOfOutputs;
- [Custom] void connect(in AudioNode destination, in unsigned long output, in unsigned long input)
+ // FIXME: Why does this method need to be Custom?
+ [Custom] void connect(in AudioNode destination, in [Optional] unsigned long output, in [Optional] unsigned long input)
raises(DOMException);
- [Custom] void disconnect(in unsigned long output)
+ // FIXME: Why does this method need to be Custom?
+ [Custom] void disconnect(in [Optional] unsigned long output)
raises(DOMException);
};
}
Modified: trunk/Source/WebCore/webaudio/AudioPannerNode.idl (89788 => 89789)
--- trunk/Source/WebCore/webaudio/AudioPannerNode.idl 2011-06-27 06:40:47 UTC (rev 89788)
+++ trunk/Source/WebCore/webaudio/AudioPannerNode.idl 2011-06-27 06:49:16 UTC (rev 89789)
@@ -24,7 +24,6 @@
module audio {
interface [
- LegacyDefaultOptionalArguments,
Conditional=WEB_AUDIO,
GenerateConstructor,
GenerateToJS
Modified: trunk/Source/WebCore/webaudio/AudioParam.idl (89788 => 89789)
--- trunk/Source/WebCore/webaudio/AudioParam.idl 2011-06-27 06:40:47 UTC (rev 89788)
+++ trunk/Source/WebCore/webaudio/AudioParam.idl 2011-06-27 06:49:16 UTC (rev 89789)
@@ -28,19 +28,18 @@
module webaudio {
interface [
- LegacyDefaultOptionalArguments,
Conditional=WEB_AUDIO
] AudioParam {
attribute float value;
readonly attribute float minValue;
readonly attribute float maxValue;
readonly attribute float defaultValue;
-
+
readonly attribute DOMString name;
// FIXME: Could define units constants here (seconds, decibels, cents, etc.)...
readonly attribute unsigned short units;
-
+
// Parameter automation.
void setValueAtTime(in float value, in float time);
void linearRampToValueAtTime(in float value, in float time);
@@ -52,9 +51,8 @@
// Sets an array of arbitrary parameter values starting at time for the given duration.
// The number of values will be scaled to fit into the desired duration.
void setValueCurveAtTime(in Float32Array values, in float time, in float duration);
-
+
// Cancels all scheduled parameter changes with times greater than or equal to startTime.
void cancelScheduledValues(in float startTime);
-
};
}
Modified: trunk/Source/WebCore/webaudio/RealtimeAnalyserNode.idl (89788 => 89789)
--- trunk/Source/WebCore/webaudio/RealtimeAnalyserNode.idl 2011-06-27 06:40:47 UTC (rev 89788)
+++ trunk/Source/WebCore/webaudio/RealtimeAnalyserNode.idl 2011-06-27 06:49:16 UTC (rev 89789)
@@ -24,7 +24,6 @@
module audio {
interface [
- LegacyDefaultOptionalArguments,
Conditional=WEB_AUDIO,
GenerateToJS
] RealtimeAnalyserNode : AudioNode {
@@ -34,10 +33,10 @@
// minDecibels / maxDecibels represent the range to scale the FFT analysis data for conversion to unsigned byte values.
attribute float minDecibels;
attribute float maxDecibels;
-
+
// A value from 0.0 -> 1.0 where 0.0 represents no time averaging with the last analysis frame.
attribute float smoothingTimeConstant;
-
+
// Copies the current frequency data into the passed array.
// If the array has fewer elements than the frequencyBinCount, the excess elements will be dropped.
void getFloatFrequencyData(in Float32Array array);