Title: [101723] trunk
Revision
101723
Author
hara...@chromium.org
Date
2011-12-01 16:59:17 -0800 (Thu, 01 Dec 2011)

Log Message

Replace a custom constructor of window.Audio with the [NamedConstructor] IDL
https://bugs.webkit.org/show_bug.cgi?id=73496

Reviewed by Adam Barth.

Removes JSAudioConstructor.{h,cpp} and generates the constructor of window.Audio
by the [NamedConstructor] IDL.

Source/WebCore:

Tests: fast/js/custom-constructors.html
       media/audio-constructor.html
       media/audio-constructor-src.html
       media/audio-constructor-preload.html
       media/audio-controls-do-not-fade-out.html
       media/audio-controls-rendering.html

* GNUmakefile.list.am: Removed JSAudioConstructor.{h,cpp}.
* Target.pri: Ditto.
* UseJSC.cmake: Ditto.
* WebCore.gypi: Ditto.
* WebCore.order: Ditto.
* WebCore.vcproj/WebCore.vcproj: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* bindings/js/JSBindingsAllInOne.cpp: Ditto.

* bindings/js/JSAudioConstructor.cpp: Removed.
* bindings/js/JSAudioConstructor.h: Removed.
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::audio): Specifies the NamedConstructor.
* page/DOMWindow.idl: Removed the [JSCustomConstructor] IDL.

LayoutTests:

* platform/mac/fast/dom/Window/window-properties-expected.txt: Updated the test result.

Modified Paths

Removed Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (101722 => 101723)


--- trunk/LayoutTests/ChangeLog	2011-12-02 00:52:28 UTC (rev 101722)
+++ trunk/LayoutTests/ChangeLog	2011-12-02 00:59:17 UTC (rev 101723)
@@ -1,3 +1,15 @@
+2011-12-01  Kentaro Hara  <hara...@chromium.org>
+
+        Replace a custom constructor of window.Audio with the [NamedConstructor] IDL
+        https://bugs.webkit.org/show_bug.cgi?id=73496
+
+        Reviewed by Adam Barth.
+
+        Removes JSAudioConstructor.{h,cpp} and generates the constructor of window.Audio
+        by the [NamedConstructor] IDL.
+
+        * platform/mac/fast/dom/Window/window-properties-expected.txt: Updated the test result.
+
 2011-12-01  Vincent Scheib  <sch...@chromium.org>
 
         [Chromium] Marking animations/play-state.html even flakier in test_expectations

Modified: trunk/LayoutTests/platform/mac/fast/dom/Window/window-properties-expected.txt (101722 => 101723)


--- trunk/LayoutTests/platform/mac/fast/dom/Window/window-properties-expected.txt	2011-12-02 00:52:28 UTC (rev 101722)
+++ trunk/LayoutTests/platform/mac/fast/dom/Window/window-properties-expected.txt	2011-12-02 00:59:17 UTC (rev 101723)
@@ -42,7 +42,6 @@
 window.Attr.prototype.removeEventListener [function]
 window.Attr.prototype.replaceChild [function]
 window.Audio [object AudioConstructor]
-window.Audio.length [number]
 window.Audio.prototype [object HTMLAudioElementPrototype]
 window.Audio.prototype.ALLOW_KEYBOARD_INPUT [number]
 window.Audio.prototype.ATTRIBUTE_NODE [number]

Modified: trunk/Source/WebCore/ChangeLog (101722 => 101723)


--- trunk/Source/WebCore/ChangeLog	2011-12-02 00:52:28 UTC (rev 101722)
+++ trunk/Source/WebCore/ChangeLog	2011-12-02 00:59:17 UTC (rev 101723)
@@ -1,3 +1,35 @@
+2011-12-01  Kentaro Hara  <hara...@chromium.org>
+
+        Replace a custom constructor of window.Audio with the [NamedConstructor] IDL
+        https://bugs.webkit.org/show_bug.cgi?id=73496
+
+        Reviewed by Adam Barth.
+
+        Removes JSAudioConstructor.{h,cpp} and generates the constructor of window.Audio
+        by the [NamedConstructor] IDL.
+
+        Tests: fast/js/custom-constructors.html
+               media/audio-constructor.html
+               media/audio-constructor-src.html
+               media/audio-constructor-preload.html
+               media/audio-controls-do-not-fade-out.html
+               media/audio-controls-rendering.html
+
+        * GNUmakefile.list.am: Removed JSAudioConstructor.{h,cpp}.
+        * Target.pri: Ditto.
+        * UseJSC.cmake: Ditto.
+        * WebCore.gypi: Ditto.
+        * WebCore.order: Ditto.
+        * WebCore.vcproj/WebCore.vcproj: Ditto.
+        * WebCore.xcodeproj/project.pbxproj: Ditto.
+        * bindings/js/JSBindingsAllInOne.cpp: Ditto.
+
+        * bindings/js/JSAudioConstructor.cpp: Removed.
+        * bindings/js/JSAudioConstructor.h: Removed.
+        * bindings/js/JSDOMWindowCustom.cpp:
+        (WebCore::JSDOMWindow::audio): Specifies the NamedConstructor.
+        * page/DOMWindow.idl: Removed the [JSCustomConstructor] IDL.
+
 2011-12-01  Mark Pilgrim  <pilg...@chromium.org>
 
         [FileSystem API] DirectoryEntry.removeRecursively successCallback is required

Modified: trunk/Source/WebCore/GNUmakefile.list.am (101722 => 101723)


--- trunk/Source/WebCore/GNUmakefile.list.am	2011-12-02 00:52:28 UTC (rev 101722)
+++ trunk/Source/WebCore/GNUmakefile.list.am	2011-12-02 00:59:17 UTC (rev 101723)
@@ -708,8 +708,6 @@
 	Source/WebCore/bindings/js/JSArrayBufferCustom.cpp \
 	Source/WebCore/bindings/js/JSArrayBufferViewHelper.h \
 	Source/WebCore/bindings/js/JSAttrCustom.cpp \
-	Source/WebCore/bindings/js/JSAudioConstructor.cpp \
-	Source/WebCore/bindings/js/JSAudioConstructor.h \
 	Source/WebCore/bindings/js/JSCDATASectionCustom.cpp \
 	Source/WebCore/bindings/js/JSCSSFontFaceRuleCustom.cpp \
 	Source/WebCore/bindings/js/JSCSSImportRuleCustom.cpp \

Modified: trunk/Source/WebCore/Target.pri (101722 => 101723)


--- trunk/Source/WebCore/Target.pri	2011-12-02 00:52:28 UTC (rev 101722)
+++ trunk/Source/WebCore/Target.pri	2011-12-02 00:59:17 UTC (rev 101723)
@@ -1405,7 +1405,6 @@
         bindings/js/DOMObjectHashTableMap.h \
         bindings/js/DOMWrapperWorld.h \
         bindings/js/JSArrayBufferViewHelper.h \
-        bindings/js/JSAudioConstructor.h \
         bindings/js/JSCSSStyleDeclarationCustom.h \
         bindings/js/JSCallbackData.h \
         bindings/js/JSCustomVoidCallback.h \
@@ -3101,11 +3100,6 @@
         rendering/RenderVideo.cpp \
         rendering/RenderMedia.cpp
 
-    !v8 {
-        SOURCES += \
-            bindings/js/JSAudioConstructor.cpp
-    }
-
     contains(DEFINES, WTF_USE_QTKIT=1) {
         INCLUDEPATH += \
             $$SOURCE_DIR/../WebKitLibraries/ \

Modified: trunk/Source/WebCore/UseJSC.cmake (101722 => 101723)


--- trunk/Source/WebCore/UseJSC.cmake	2011-12-02 00:52:28 UTC (rev 101722)
+++ trunk/Source/WebCore/UseJSC.cmake	2011-12-02 00:59:17 UTC (rev 101723)
@@ -236,12 +236,6 @@
     )
 ENDIF ()
 
-IF (ENABLE_VIDEO)
-    LIST(APPEND WebCore_SOURCES
-        bindings/js/JSAudioConstructor.cpp
-    )
-ENDIF ()
-
 IF (ENABLE_WEBGL)
     LIST(APPEND WebCore_SOURCES
         bindings/js/JSWebGLRenderingContextCustom.cpp

Modified: trunk/Source/WebCore/WebCore.gypi (101722 => 101723)


--- trunk/Source/WebCore/WebCore.gypi	2011-12-02 00:52:28 UTC (rev 101722)
+++ trunk/Source/WebCore/WebCore.gypi	2011-12-02 00:59:17 UTC (rev 101723)
@@ -1807,8 +1807,6 @@
             'bindings/js/JSArrayBufferViewHelper.h',
             'bindings/js/JSAttrCustom.cpp',
             'bindings/js/JSAudioBufferSourceNodeCustom.cpp',
-            'bindings/js/JSAudioConstructor.cpp',
-            'bindings/js/JSAudioConstructor.h',
             'bindings/js/JSAudioContextCustom.cpp',
             'bindings/js/JSAudioNodeCustom.cpp',
             'bindings/js/JSBindingsAllInOne.cpp',

Modified: trunk/Source/WebCore/WebCore.order (101722 => 101723)


--- trunk/Source/WebCore/WebCore.order	2011-12-02 00:52:28 UTC (rev 101722)
+++ trunk/Source/WebCore/WebCore.order	2011-12-02 00:59:17 UTC (rev 101723)
@@ -20767,8 +20767,6 @@
 __ZN7WebCore19JSSVGAnimatedString15createPrototypeEPN3JSC9ExecStateEPNS1_14JSGlobalObjectE
 __ZN7WebCore27jsDOMWindowAudioConstructorEPN3JSC9ExecStateENS0_7JSValueERKNS0_10IdentifierE
 __ZNK7WebCore11JSDOMWindow5audioEPN3JSC9ExecStateE
-__ZN7WebCore17getDOMConstructorINS_18JSAudioConstructorEEEPN3JSC8JSObjectEPNS2_9ExecStateEPKNS_17JSDOMGlobalObjectE
-__ZN7WebCore18JSAudioConstructorC1EPN3JSC9ExecStateEPNS1_9StructureEPNS_17JSDOMGlobalObjectE
 __ZN7WebCore27JSHTMLAudioElementPrototype4selfEPN3JSC9ExecStateEPNS1_14JSGlobalObjectE
 __ZN7WebCore34jsDOMWindowDocumentTypeConstructorEPN3JSC9ExecStateENS0_7JSValueERKNS0_10IdentifierE
 __ZN7WebCore14JSDocumentType14getConstructorEPN3JSC9ExecStateEPNS1_14JSGlobalObjectE
@@ -21141,7 +21139,6 @@
 __ZNK7WebCore6Chrome11canRunModalEv
 __ZN7WebCore17JSAttrConstructor18getOwnPropertySlotEPN3JSC9ExecStateERKNS1_10IdentifierERNS1_12PropertySlotE
 __ZN3JSC18getStaticValueSlotIN7WebCore17JSAttrConstructorENS1_12JSDOMWrapperEEEbPNS_9ExecStateEPKNS_9HashTableEPT_RKNS_10IdentifierERNS_12PropertySlotE
-__ZN7WebCore18JSAudioConstructor16getConstructDataERN3JSC13ConstructDataE
 __ZN7WebCoreL14constructAudioEPN3JSC9ExecStateE
 __ZN7WebCore16HTMLAudioElement22createForJSConstructorEPNS_8DocumentERKN3WTF6StringE
 __ZN7WebCore16HTMLMediaElement10setPreloadERKN3WTF6StringE
@@ -21893,7 +21890,6 @@
 __ZN7WebCore30JSHTMLOutputElementConstructorD1Ev
 __ZN7WebCore30JSSVGAnimatedStringConstructorD1Ev
 __ZN7WebCore28JSSVGAnimatedStringPrototypeD1Ev
-__ZN7WebCore18JSAudioConstructorD1Ev
 __ZN7WebCore25JSDocumentTypeConstructorD1Ev
 __ZN7WebCore17JSCryptoPrototypeD1Ev
 __ZN7WebCore20JSUIEventConstructorD1Ev

Modified: trunk/Source/WebCore/WebCore.vcproj/WebCore.vcproj (101722 => 101723)


--- trunk/Source/WebCore/WebCore.vcproj/WebCore.vcproj	2011-12-02 00:52:28 UTC (rev 101722)
+++ trunk/Source/WebCore/WebCore.vcproj/WebCore.vcproj	2011-12-02 00:59:17 UTC (rev 101723)
@@ -58809,62 +58809,6 @@
 					</FileConfiguration>
 				</File>
 				<File
-					RelativePath="..\bindings\js\JSAudioConstructor.cpp"
-					>
-					<FileConfiguration
-						Name="Debug|Win32"
-						ExcludedFromBuild="true"
-						>
-						<Tool
-							Name="VCCLCompilerTool"
-						/>
-					</FileConfiguration>
-					<FileConfiguration
-						Name="Release|Win32"
-						ExcludedFromBuild="true"
-						>
-						<Tool
-							Name="VCCLCompilerTool"
-						/>
-					</FileConfiguration>
-					<FileConfiguration
-						Name="Debug_Cairo_CFLite|Win32"
-						ExcludedFromBuild="true"
-						>
-						<Tool
-							Name="VCCLCompilerTool"
-						/>
-					</FileConfiguration>
-					<FileConfiguration
-						Name="Release_Cairo_CFLite|Win32"
-						ExcludedFromBuild="true"
-						>
-						<Tool
-							Name="VCCLCompilerTool"
-						/>
-					</FileConfiguration>
-					<FileConfiguration
-						Name="Debug_All|Win32"
-						ExcludedFromBuild="true"
-						>
-						<Tool
-							Name="VCCLCompilerTool"
-						/>
-					</FileConfiguration>
-					<FileConfiguration
-						Name="Production|Win32"
-						ExcludedFromBuild="true"
-						>
-						<Tool
-							Name="VCCLCompilerTool"
-						/>
-					</FileConfiguration>
-				</File>
-				<File
-					RelativePath="..\bindings\js\JSAudioConstructor.h"
-					>
-				</File>
-				<File
 					RelativePath="..\bindings\js\JSBindingsAllInOne.cpp"
 					>
 				</File>

Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (101722 => 101723)


--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj	2011-12-02 00:52:28 UTC (rev 101722)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj	2011-12-02 00:59:17 UTC (rev 101723)
@@ -5989,8 +5989,6 @@
 		E4C279590CF9741900E97B98 /* RenderMedia.h in Headers */ = {isa = PBXBuildFile; fileRef = E4C279570CF9741900E97B98 /* RenderMedia.h */; };
 		E4D687770ED7AE3D006EA978 /* PurgeableBufferMac.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4D687760ED7AE3D006EA978 /* PurgeableBufferMac.cpp */; };
 		E4D687790ED7AE4F006EA978 /* PurgeableBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = E4D687780ED7AE4F006EA978 /* PurgeableBuffer.h */; };
-		E4EEFFC80D34550C00469A58 /* JSAudioConstructor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4EEFFC60D34550C00469A58 /* JSAudioConstructor.cpp */; };
-		E4EEFFC90D34550C00469A58 /* JSAudioConstructor.h in Headers */ = {isa = PBXBuildFile; fileRef = E4EEFFC70D34550C00469A58 /* JSAudioConstructor.h */; };
 		ED2BA83C09A24B91006C0AC4 /* DocumentMarker.h in Headers */ = {isa = PBXBuildFile; fileRef = ED2BA83B09A24B91006C0AC4 /* DocumentMarker.h */; settings = {ATTRIBUTES = (Private, ); }; };
 		ED501DC60B249F2900AE18D9 /* EditorMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = ED501DC50B249F2900AE18D9 /* EditorMac.mm */; };
 		EDE3A5000C7A430600956A37 /* ColorMac.h in Headers */ = {isa = PBXBuildFile; fileRef = EDE3A4FF0C7A430600956A37 /* ColorMac.h */; settings = {ATTRIBUTES = (Private, ); }; };
@@ -13357,8 +13355,6 @@
 		E4C279570CF9741900E97B98 /* RenderMedia.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderMedia.h; sourceTree = "<group>"; };
 		E4D687760ED7AE3D006EA978 /* PurgeableBufferMac.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PurgeableBufferMac.cpp; sourceTree = "<group>"; };
 		E4D687780ED7AE4F006EA978 /* PurgeableBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PurgeableBuffer.h; sourceTree = "<group>"; };
-		E4EEFFC60D34550C00469A58 /* JSAudioConstructor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSAudioConstructor.cpp; sourceTree = "<group>"; };
-		E4EEFFC70D34550C00469A58 /* JSAudioConstructor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSAudioConstructor.h; sourceTree = "<group>"; };
 		ED2BA83B09A24B91006C0AC4 /* DocumentMarker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DocumentMarker.h; sourceTree = "<group>"; };
 		ED501DC50B249F2900AE18D9 /* EditorMac.mm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.objcpp; name = EditorMac.mm; path = mac/EditorMac.mm; sourceTree = "<group>"; };
 		EDE3A4FF0C7A430600956A37 /* ColorMac.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ColorMac.h; sourceTree = "<group>"; };
@@ -20046,8 +20042,6 @@
 		BCCE58B41061E925008FB35A /* Constructors */ = {
 			isa = PBXGroup;
 			children = (
-				E4EEFFC60D34550C00469A58 /* JSAudioConstructor.cpp */,
-				E4EEFFC70D34550C00469A58 /* JSAudioConstructor.h */,
 				BC6C49F10D7DBA0500FFA558 /* JSImageConstructor.cpp */,
 				BC6C49F20D7DBA0500FFA558 /* JSImageConstructor.h */,
 				A826E8AD0A1A8F2300CD1BB6 /* JSOptionConstructor.cpp */,
@@ -23121,7 +23115,6 @@
 				FDA15EA012B03EE1003A583A /* JSAudioBufferSourceNode.h in Headers */,
 				FDA15EA212B03EE1003A583A /* JSAudioChannelMerger.h in Headers */,
 				FDA15EA412B03EE1003A583A /* JSAudioChannelSplitter.h in Headers */,
-				E4EEFFC90D34550C00469A58 /* JSAudioConstructor.h in Headers */,
 				FDA15EA612B03EE1003A583A /* JSAudioContext.h in Headers */,
 				FDA15EA812B03EE1003A583A /* JSAudioDestinationNode.h in Headers */,
 				FDA15EAA12B03EE1003A583A /* JSAudioGain.h in Headers */,
@@ -26101,7 +26094,6 @@
 				FDEAAAF312B02EE400DCF33B /* JSAudioBufferSourceNodeCustom.cpp in Sources */,
 				FDA15EA112B03EE1003A583A /* JSAudioChannelMerger.cpp in Sources */,
 				FDA15EA312B03EE1003A583A /* JSAudioChannelSplitter.cpp in Sources */,
-				E4EEFFC80D34550C00469A58 /* JSAudioConstructor.cpp in Sources */,
 				FDA15EA512B03EE1003A583A /* JSAudioContext.cpp in Sources */,
 				FDEAAAF412B02EE400DCF33B /* JSAudioContextCustom.cpp in Sources */,
 				FDA15EA712B03EE1003A583A /* JSAudioDestinationNode.cpp in Sources */,

Deleted: trunk/Source/WebCore/bindings/js/JSAudioConstructor.cpp (101722 => 101723)


--- trunk/Source/WebCore/bindings/js/JSAudioConstructor.cpp	2011-12-02 00:52:28 UTC (rev 101722)
+++ trunk/Source/WebCore/bindings/js/JSAudioConstructor.cpp	2011-12-02 00:59:17 UTC (rev 101723)
@@ -1,86 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2010 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "config.h"
-
-#if ENABLE(VIDEO)
-
-#include "JSAudioConstructor.h"
-
-#include "HTMLAudioElement.h"
-#include "JSHTMLAudioElement.h"
-#include <runtime/Error.h>
-
-using namespace JSC;
-
-namespace WebCore {
-
-const ClassInfo JSAudioConstructor::s_info = { "AudioConstructor", &DOMConstructorWithDocument::s_info, 0, 0, CREATE_METHOD_TABLE(JSAudioConstructor) };
-
-JSAudioConstructor::JSAudioConstructor(Structure* structure, JSDOMGlobalObject* globalObject)
-    : DOMConstructorWithDocument(structure, globalObject)
-{
-}
-
-void JSAudioConstructor::finishCreation(ExecState* exec, JSDOMGlobalObject* globalObject)
-{
-    Base::finishCreation(globalObject);
-    ASSERT(inherits(&s_info));
-    putDirect(exec->globalData(), exec->propertyNames().prototype, JSHTMLAudioElementPrototype::self(exec, globalObject), None);
-    putDirect(exec->globalData(), exec->propertyNames().length, jsNumber(1), ReadOnly | DontDelete | DontEnum);
-}
-
-static EncodedJSValue JSC_HOST_CALL constructAudio(ExecState* exec)
-{
-    JSAudioConstructor* jsConstructor = static_cast<JSAudioConstructor*>(exec->callee());
-
-    Document* document = jsConstructor->document();
-    if (!document)
-        return throwVMError(exec, createReferenceError(exec, "Audio constructor associated document is unavailable"));
-
-    // Calling toJS on the document causes the JS document wrapper to be
-    // added to the window object. This is done to ensure that JSDocument::visitChildren
-    // will be called, which will cause the audio element to be marked if necessary.
-    toJS(exec, jsConstructor->globalObject(), document);
-
-    // FIXME: This converts an undefined argument to the string "undefined", but possibly we
-    // should treat it as if no argument was passed instead, by checking the value of exec->argument
-    // rather than looking at exec->argumentCount.
-    String src;
-    if (exec->argumentCount() > 0)
-        src = ""
-    return JSValue::encode(asObject(toJS(exec, jsConstructor->globalObject(),
-        HTMLAudioElement::createForJSConstructor(document, src))));
-}
-
-ConstructType JSAudioConstructor::getConstructData(JSCell*, ConstructData& constructData)
-{
-    constructData.native.function = constructAudio;
-    return ConstructTypeHost;
-}
-
-} // namespace WebCore
-
-#endif // ENABLE(VIDEO)

Deleted: trunk/Source/WebCore/bindings/js/JSAudioConstructor.h (101722 => 101723)


--- trunk/Source/WebCore/bindings/js/JSAudioConstructor.h	2011-12-02 00:52:28 UTC (rev 101722)
+++ trunk/Source/WebCore/bindings/js/JSAudioConstructor.h	2011-12-02 00:59:17 UTC (rev 101723)
@@ -1,65 +0,0 @@
-/*
- * Copyright (C) 2007, 2008 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
- */
-
-#ifndef JSAudioConstructor_h
-#define JSAudioConstructor_h
-
-#if ENABLE(VIDEO)
-
-#include "JSDOMBinding.h"
-#include "JSDocument.h"
-#include <wtf/RefPtr.h>
-
-namespace WebCore {
-
-    class JSAudioConstructor : public DOMConstructorWithDocument {
-    public:
-        typedef DOMConstructorWithDocument Base;
-
-        static JSAudioConstructor* create(JSC::ExecState* exec, JSC::Structure* structure, JSDOMGlobalObject* globalObject)
-        {
-            JSAudioConstructor* constructor = new (JSC::allocateCell<JSAudioConstructor>(*exec->heap())) JSAudioConstructor(structure, globalObject);
-            constructor->finishCreation(exec, globalObject);
-            return constructor;
-        }
-
-        static JSC::Structure* createStructure(JSC::JSGlobalData& globalData, JSC::JSGlobalObject* globalObject, JSC::JSValue prototype)
-        {
-            return JSC::Structure::create(globalData, globalObject, prototype, JSC::TypeInfo(JSC::ObjectType, StructureFlags), &s_info);
-        }
-
-        static const JSC::ClassInfo s_info;
-
-    private:
-        JSAudioConstructor(JSC::Structure*, JSDOMGlobalObject*);
-        void finishCreation(JSC::ExecState*, JSDOMGlobalObject*);
-        static JSC::ConstructType getConstructData(JSC::JSCell*, JSC::ConstructData&);
-    };
-
-} // namespace WebCore
-
-#endif // ENABLE(VIDEO)
-
-#endif // JSAudioConstructor_h

Modified: trunk/Source/WebCore/bindings/js/JSBindingsAllInOne.cpp (101722 => 101723)


--- trunk/Source/WebCore/bindings/js/JSBindingsAllInOne.cpp	2011-12-02 00:52:28 UTC (rev 101722)
+++ trunk/Source/WebCore/bindings/js/JSBindingsAllInOne.cpp	2011-12-02 00:59:17 UTC (rev 101723)
@@ -31,7 +31,6 @@
 #include "GCController.cpp"
 #include "JSArrayBufferCustom.cpp"
 #include "JSAttrCustom.cpp"
-#include "JSAudioConstructor.cpp"
 #include "JSCDATASectionCustom.cpp"
 #include "JSCSSFontFaceRuleCustom.cpp"
 #include "JSCSSImportRuleCustom.cpp"

Modified: trunk/Source/WebCore/bindings/js/JSDOMWindowCustom.cpp (101722 => 101723)


--- trunk/Source/WebCore/bindings/js/JSDOMWindowCustom.cpp	2011-12-02 00:52:28 UTC (rev 101722)
+++ trunk/Source/WebCore/bindings/js/JSDOMWindowCustom.cpp	2011-12-02 00:59:17 UTC (rev 101723)
@@ -26,13 +26,13 @@
 #include "HTMLDocument.h"
 #include "History.h"
 #include "JSArrayBuffer.h"
-#include "JSAudioConstructor.h"
 #include "JSDataView.h"
 #include "JSEvent.h"
 #include "JSEventListener.h"
 #include "JSEventSource.h"
 #include "JSFloat32Array.h"
 #include "JSFloat64Array.h"
+#include "JSHTMLAudioElement.h"
 #include "JSHTMLCollection.h"
 #include "JSHistory.h"
 #include "JSImageConstructor.h"
@@ -496,7 +496,7 @@
 {
     if (!MediaPlayer::isAvailable())
         return jsUndefined();
-    return getDOMConstructor<JSAudioConstructor>(exec, this);
+    return getDOMConstructor<JSHTMLAudioElementNamedConstructor>(exec, this);
 }
 #endif
 

Modified: trunk/Source/WebCore/page/DOMWindow.idl (101722 => 101723)


--- trunk/Source/WebCore/page/DOMWindow.idl	2011-12-02 00:52:28 UTC (rev 101722)
+++ trunk/Source/WebCore/page/DOMWindow.idl	2011-12-02 00:59:17 UTC (rev 101723)
@@ -629,7 +629,7 @@
 
         attribute StorageConstructor Storage;
 
-        attribute [JSCCustomGetter, JSCustomConstructor, Conditional=VIDEO, EnabledAtRuntime] HTMLAudioElementConstructorConstructor Audio; // Usable with the new operator
+        attribute [JSCCustomGetter, Conditional=VIDEO, EnabledAtRuntime] HTMLAudioElementConstructorConstructor Audio; // Usable with the new operator
         attribute [Conditional=VIDEO, EnabledAtRuntime] HTMLAudioElementConstructor HTMLAudioElement;
         attribute [Conditional=VIDEO, EnabledAtRuntime] HTMLMediaElementConstructor HTMLMediaElement;
         attribute [Conditional=VIDEO, EnabledAtRuntime] HTMLVideoElementConstructor HTMLVideoElement;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to