[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.19-706-ge5415e9

eric at webkit.org eric at webkit.org
Thu Feb 4 21:31:51 UTC 2010


The following commit has been merged in the webkit-1.1 branch:
commit 9492f2182252cae6ef04310a7d05173cf6752d32
Author: eric at webkit.org <eric at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Fri Jan 29 04:49:39 2010 +0000

    2010-01-28  Kavita Kanetkar  <kkanetkar at chromium.org>
    
            Reviewed by Dimitri Glazkov.
    
            [V8] Generate header declaration for custom constructor callbacks
            https://bugs.webkit.org/show_bug.cgi?id=33680
    
            Added handling of 'CanBeConstructed' and 'OmitConstructor' and a new extended attribute
            CustomConstructor'.
    
            Deleted implementation .cpp files for corresponding 'CanBeConstructed'
            extended attributes. These are now generated via CodeGeneratorV8.pm
            Treating 'OmitConstructor' and 'CustomConstructor' to be the same in
            CodeGeneratorJS.pm
            Cleaned idls that had 'CustomConstructor' and 'OmitConstructor' together, and
            same with CustomConstructor and CanBeConstructed.
    
            * Android.v8bindings.mk:
            * WebCore.gypi: Removed deps for classes being generated.
            * bindings/scripts/CodeGeneratorJS.pm: OmitConstructor and CustomConstructor have the same behavior in generator.
            * bindings/scripts/CodeGeneratorV8.pm: Generating the callbacks for constructors.
            * bindings/v8/V8DOMWrapper.cpp: Removed manual calls to SetCallHandler() for constructor callbacks.
            (WebCore::V8DOMWrapper::getTemplate):
            * bindings/v8/custom/V8CustomBinding.h: Removed manual declarations of constructor callbacks.
            * bindings/v8/custom/V8DOMParserConstructor.cpp:
            * bindings/v8/custom/V8EventSourceConstructor.cpp:
            (WebCore::V8EventSource::constructorCallback):
            * bindings/v8/custom/V8MessageChannelConstructor.cpp:
            (WebCore::V8MessageChannel::constructorCallback):
            * bindings/v8/custom/V8SharedWorkerCustom.cpp:
            (WebCore::V8SharedWorker::constructorCallback):
            * bindings/v8/custom/V8WebGLArrayBufferCustom.cpp:
            (WebCore::V8WebGLArrayBuffer::constructorCallback):
            * bindings/v8/custom/V8WebGLByteArrayCustom.cpp:
            (WebCore::V8WebGLByteArray::constructorCallback):
            * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp:
            (WebCore::V8WebGLFloatArray::constructorCallback):
            * bindings/v8/custom/V8WebGLIntArrayCustom.cpp:
            (WebCore::V8WebGLIntArray::constructorCallback):
            * bindings/v8/custom/V8WebGLShortArrayCustom.cpp:
            (WebCore::V8WebGLShortArray::constructorCallback):
            * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp:
            (WebCore::V8WebGLUnsignedByteArray::constructorCallback):
            * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp:
            (WebCore::V8WebGLUnsignedIntArray::constructorCallback):
            * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp:
            (WebCore::V8WebGLUnsignedShortArray::constructorCallback):
            * bindings/v8/custom/V8WebKitCSSMatrixConstructor.cpp:
            (WebCore::V8WebKitCSSMatrix::constructorCallback):
            * bindings/v8/custom/V8WebKitPointConstructor.cpp:
            (WebCore::V8WebKitPoint::constructorCallback):
            * bindings/v8/custom/V8WebSocketCustom.cpp:
            (WebCore::V8WebSocket::constructorCallback):
            * bindings/v8/custom/V8WorkerCustom.cpp:
            (WebCore::V8Worker::constructorCallback):
            * bindings/v8/custom/V8XMLHttpRequestConstructor.cpp:
            (WebCore::V8XMLHttpRequest::constructorCallback):
            * bindings/v8/custom/V8XMLSerializerConstructor.cpp:
            * bindings/v8/custom/V8XPathEvaluatorConstructor.cpp: Deleted the file. Implementation now being generated.
            * bindings/v8/custom/V8XSLTProcessorCustom.cpp: Deleted the file. Implementation now being generated.
            (WebCore::V8XSLTProcessor::constructorCallback): Deleted the file. Implementation now being generated.
            * css/WebKitCSSMatrix.idl: Added CustomConstructor attribute.
            * dom/MessageChannel.idl: Added CustomConstructor attribute.
            * html/canvas/WebGLArrayBuffer.idl: Added CustomConstructor attribute.
            * html/canvas/WebGLByteArray.idl: Added CustomConstructor attribute.
            * html/canvas/WebGLFloatArray.idl: Added CustomConstructor attribute.
            * html/canvas/WebGLIntArray.idl: Added CustomConstructor attribute.
            * html/canvas/WebGLShortArray.idl: Added CustomConstructor attribute.
            * html/canvas/WebGLUnsignedByteArray.idl: Added CustomConstructor attribute.
            * html/canvas/WebGLUnsignedIntArray.idl: Added CustomConstructor attribute.
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@54042 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/Android.v8bindings.mk b/WebCore/Android.v8bindings.mk
index 2c2bc44..1230bc2 100644
--- a/WebCore/Android.v8bindings.mk
+++ b/WebCore/Android.v8bindings.mk
@@ -101,7 +101,6 @@ LOCAL_SRC_FILES += \
 	bindings/v8/custom/V8CustomSQLTransactionErrorCallback.cpp \
 	bindings/v8/custom/V8CustomVoidCallback.cpp \
 	bindings/v8/custom/V8DOMApplicationCacheCustom.cpp \
-	bindings/v8/custom/V8DOMParserConstructor.cpp \
 	bindings/v8/custom/V8DOMWindowCustom.cpp \
 	bindings/v8/custom/V8DataGridColumnListCustom.cpp \
 	bindings/v8/custom/V8DatabaseCustom.cpp \
@@ -163,8 +162,7 @@ LOCAL_SRC_FILES += \
 	bindings/v8/custom/V8WorkerCustom.cpp \
 	bindings/v8/custom/V8XMLHttpRequestConstructor.cpp \
 	bindings/v8/custom/V8XMLHttpRequestCustom.cpp \
-	bindings/v8/custom/V8XMLHttpRequestUploadCustom.cpp \
-	bindings/v8/custom/V8XMLSerializerConstructor.cpp
+	bindings/v8/custom/V8XMLHttpRequestUploadCustom.cpp
 
 LOCAL_SRC_FILES += \
 	bridge/jni/JNIUtility.cpp
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index abe39e9..8aa837c 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,74 @@
+2010-01-28  Kavita Kanetkar  <kkanetkar at chromium.org>
+
+        Reviewed by Dimitri Glazkov.
+
+        [V8] Generate header declaration for custom constructor callbacks
+        https://bugs.webkit.org/show_bug.cgi?id=33680
+
+        Added handling of 'CanBeConstructed' and 'OmitConstructor' and a new extended attribute
+        CustomConstructor'.
+
+        Deleted implementation .cpp files for corresponding 'CanBeConstructed'
+        extended attributes. These are now generated via CodeGeneratorV8.pm
+        Treating 'OmitConstructor' and 'CustomConstructor' to be the same in
+        CodeGeneratorJS.pm
+        Cleaned idls that had 'CustomConstructor' and 'OmitConstructor' together, and
+        same with CustomConstructor and CanBeConstructed.
+
+        * Android.v8bindings.mk:
+        * WebCore.gypi: Removed deps for classes being generated.
+        * bindings/scripts/CodeGeneratorJS.pm: OmitConstructor and CustomConstructor have the same behavior in generator.
+        * bindings/scripts/CodeGeneratorV8.pm: Generating the callbacks for constructors.
+        * bindings/v8/V8DOMWrapper.cpp: Removed manual calls to SetCallHandler() for constructor callbacks.
+        (WebCore::V8DOMWrapper::getTemplate):
+        * bindings/v8/custom/V8CustomBinding.h: Removed manual declarations of constructor callbacks.
+        * bindings/v8/custom/V8DOMParserConstructor.cpp:
+        * bindings/v8/custom/V8EventSourceConstructor.cpp:
+        (WebCore::V8EventSource::constructorCallback):
+        * bindings/v8/custom/V8MessageChannelConstructor.cpp:
+        (WebCore::V8MessageChannel::constructorCallback):
+        * bindings/v8/custom/V8SharedWorkerCustom.cpp:
+        (WebCore::V8SharedWorker::constructorCallback):
+        * bindings/v8/custom/V8WebGLArrayBufferCustom.cpp:
+        (WebCore::V8WebGLArrayBuffer::constructorCallback):
+        * bindings/v8/custom/V8WebGLByteArrayCustom.cpp:
+        (WebCore::V8WebGLByteArray::constructorCallback):
+        * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp:
+        (WebCore::V8WebGLFloatArray::constructorCallback):
+        * bindings/v8/custom/V8WebGLIntArrayCustom.cpp:
+        (WebCore::V8WebGLIntArray::constructorCallback):
+        * bindings/v8/custom/V8WebGLShortArrayCustom.cpp:
+        (WebCore::V8WebGLShortArray::constructorCallback):
+        * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp:
+        (WebCore::V8WebGLUnsignedByteArray::constructorCallback):
+        * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp:
+        (WebCore::V8WebGLUnsignedIntArray::constructorCallback):
+        * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp:
+        (WebCore::V8WebGLUnsignedShortArray::constructorCallback):
+        * bindings/v8/custom/V8WebKitCSSMatrixConstructor.cpp:
+        (WebCore::V8WebKitCSSMatrix::constructorCallback):
+        * bindings/v8/custom/V8WebKitPointConstructor.cpp:
+        (WebCore::V8WebKitPoint::constructorCallback):
+        * bindings/v8/custom/V8WebSocketCustom.cpp:
+        (WebCore::V8WebSocket::constructorCallback):
+        * bindings/v8/custom/V8WorkerCustom.cpp:
+        (WebCore::V8Worker::constructorCallback):
+        * bindings/v8/custom/V8XMLHttpRequestConstructor.cpp:
+        (WebCore::V8XMLHttpRequest::constructorCallback):
+        * bindings/v8/custom/V8XMLSerializerConstructor.cpp:
+        * bindings/v8/custom/V8XPathEvaluatorConstructor.cpp: Deleted the file. Implementation now being generated.
+        * bindings/v8/custom/V8XSLTProcessorCustom.cpp: Deleted the file. Implementation now being generated.
+        (WebCore::V8XSLTProcessor::constructorCallback): Deleted the file. Implementation now being generated.
+        * css/WebKitCSSMatrix.idl: Added CustomConstructor attribute.
+        * dom/MessageChannel.idl: Added CustomConstructor attribute.
+        * html/canvas/WebGLArrayBuffer.idl: Added CustomConstructor attribute.
+        * html/canvas/WebGLByteArray.idl: Added CustomConstructor attribute.
+        * html/canvas/WebGLFloatArray.idl: Added CustomConstructor attribute.
+        * html/canvas/WebGLIntArray.idl: Added CustomConstructor attribute.
+        * html/canvas/WebGLShortArray.idl: Added CustomConstructor attribute.
+        * html/canvas/WebGLUnsignedByteArray.idl: Added CustomConstructor attribute.
+        * html/canvas/WebGLUnsignedIntArray.idl: Added CustomConstructor attribute.
+
 2010-01-28  Steve Block  <steveblock at google.com>
 
         Reviewed by David Levin.
diff --git a/WebCore/WebCore.gypi b/WebCore/WebCore.gypi
index 08f735b..98dc28d 100644
--- a/WebCore/WebCore.gypi
+++ b/WebCore/WebCore.gypi
@@ -689,7 +689,6 @@
             'bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp',
             'bindings/v8/custom/V8DocumentLocationCustom.cpp',
             'bindings/v8/custom/V8DOMApplicationCacheCustom.cpp',
-            'bindings/v8/custom/V8DOMParserConstructor.cpp',
             'bindings/v8/custom/V8DOMWindowCustom.cpp',
             'bindings/v8/custom/V8DocumentCustom.cpp',
             'bindings/v8/custom/V8ElementCustom.cpp',
@@ -752,8 +751,6 @@
             'bindings/v8/custom/V8XMLHttpRequestConstructor.cpp',
             'bindings/v8/custom/V8XMLHttpRequestCustom.cpp',
             'bindings/v8/custom/V8XMLHttpRequestUploadCustom.cpp',
-            'bindings/v8/custom/V8XMLSerializerConstructor.cpp',
-            'bindings/v8/custom/V8XPathEvaluatorConstructor.cpp',
             'bindings/v8/custom/V8XSLTProcessorCustom.cpp',
             'bindings/v8/DateExtension.cpp',
             'bindings/v8/DateExtension.h',
diff --git a/WebCore/bindings/scripts/CodeGeneratorJS.pm b/WebCore/bindings/scripts/CodeGeneratorJS.pm
index f22df02..8332e4a 100644
--- a/WebCore/bindings/scripts/CodeGeneratorJS.pm
+++ b/WebCore/bindings/scripts/CodeGeneratorJS.pm
@@ -552,7 +552,8 @@ sub GenerateHeader
     $implIncludes{"${className}Custom.h"} = 1 if $dataNode->extendedAttributes->{"CustomHeader"} || $dataNode->extendedAttributes->{"CustomPutFunction"} || $dataNode->extendedAttributes->{"DelegatingPutFunction"};
 
     my $hasGetter = $numAttributes > 0 
-                 || !$dataNode->extendedAttributes->{"OmitConstructor"}
+                 || !($dataNode->extendedAttributes->{"OmitConstructor"}
+                 || $dataNode->extendedAttributes->{"CustomConstructor"})
                  || $dataNode->extendedAttributes->{"HasIndexGetter"}
                  || $dataNode->extendedAttributes->{"HasCustomIndexGetter"}
                  || $dataNode->extendedAttributes->{"HasNumericIndexGetter"}
@@ -655,7 +656,7 @@ sub GenerateHeader
     }
 
     # Constructor object getter
-    push(@headerContent, "    static JSC::JSValue getConstructor(JSC::ExecState*, JSC::JSGlobalObject*);\n") if !$dataNode->extendedAttributes->{"OmitConstructor"};
+    push(@headerContent, "    static JSC::JSValue getConstructor(JSC::ExecState*, JSC::JSGlobalObject*);\n") if (!($dataNode->extendedAttributes->{"OmitConstructor"} || $dataNode->extendedAttributes->{"CustomConstructor"}));
 
     my $numCustomFunctions = 0;
     my $numCustomAttributes = 0;
@@ -838,7 +839,7 @@ sub GenerateHeader
         }
     }
 
-    if ($numAttributes > 0 || !$dataNode->extendedAttributes->{"OmitConstructor"}) {
+    if ($numAttributes > 0 || !($dataNode->extendedAttributes->{"OmitConstructor"} || $dataNode->extendedAttributes->{"CustomConstructor"})) {
         push(@headerContent,"// Attributes\n\n");
         foreach my $attribute (@{$dataNode->attributes}) {
             my $getter = "js" . $interfaceName . $codeGenerator->WK_ucfirst($attribute->signature->name) . ($attribute->signature->type =~ /Constructor$/ ? "Constructor" : "");
@@ -849,7 +850,7 @@ sub GenerateHeader
             }
         }
         
-        if (!$dataNode->extendedAttributes->{"OmitConstructor"}) {
+        if (!($dataNode->extendedAttributes->{"OmitConstructor"} || $dataNode->extendedAttributes->{"CustomConstructor"})) {
             my $getter = "js" . $interfaceName . "Constructor";
             push(@headerContent, "JSC::JSValue ${getter}(JSC::ExecState*, const JSC::Identifier&, const JSC::PropertySlot&);\n");
         }
@@ -918,7 +919,7 @@ sub GenerateImplementation
 
     # - Add all attributes in a hashtable definition
     my $numAttributes = @{$dataNode->attributes};
-    $numAttributes++ if !$dataNode->extendedAttributes->{"OmitConstructor"};
+    $numAttributes++ if (!($dataNode->extendedAttributes->{"OmitConstructor"} || $dataNode->extendedAttributes->{"CustomConstructor"}));
 
     if ($numAttributes > 0) {
         my $hashSize = $numAttributes;
@@ -959,7 +960,7 @@ sub GenerateImplementation
             }
         }
 
-        if (!$dataNode->extendedAttributes->{"OmitConstructor"}) {
+        if (!($dataNode->extendedAttributes->{"OmitConstructor"} || $dataNode->extendedAttributes->{"CustomConstructor"})) {
             push(@hashKeys, "constructor");
             my $getter = "js" . $interfaceName . "Constructor";
             push(@hashValue1, $getter);
@@ -977,7 +978,7 @@ sub GenerateImplementation
     my $numFunctions = @{$dataNode->functions};
 
     # - Add all constants
-    if (!$dataNode->extendedAttributes->{"OmitConstructor"}) {
+    if (!($dataNode->extendedAttributes->{"OmitConstructor"} || $dataNode->extendedAttributes->{"CustomConstructor"})) {
         $hashSize = $numConstants;
         $hashName = $className . "ConstructorTable";
 
@@ -1213,7 +1214,8 @@ sub GenerateImplementation
     }
 
     my $hasGetter = $numAttributes > 0 
-                 || !$dataNode->extendedAttributes->{"OmitConstructor"} 
+                 || !($dataNode->extendedAttributes->{"OmitConstructor"} 
+                 || $dataNode->extendedAttributes->{"CustomConstructor"})
                  || $dataNode->extendedAttributes->{"HasIndexGetter"}
                  || $dataNode->extendedAttributes->{"HasCustomIndexGetter"}
                  || $dataNode->extendedAttributes->{"HasNumericIndexGetter"}
@@ -1364,7 +1366,7 @@ sub GenerateImplementation
                 push(@implContent, "\n");
             }
 
-            if (!$dataNode->extendedAttributes->{"OmitConstructor"}) {
+            if (!($dataNode->extendedAttributes->{"OmitConstructor"} || $dataNode->extendedAttributes->{"CustomConstructor"})) {
                 my $constructorFunctionName = "js" . $interfaceName . "Constructor";
 
                 push(@implContent, "JSValue ${constructorFunctionName}(ExecState* exec, const Identifier&, const PropertySlot& slot)\n");
@@ -1505,7 +1507,7 @@ sub GenerateImplementation
         push(@implContent, "}\n\n");
     }
 
-    if (!$dataNode->extendedAttributes->{"OmitConstructor"}) {
+    if (!($dataNode->extendedAttributes->{"OmitConstructor"} || $dataNode->extendedAttributes->{"CustomConstructor"})) {
         push(@implContent, "JSValue ${className}::getConstructor(ExecState* exec, JSGlobalObject* globalObject)\n{\n");
         push(@implContent, "    return getDOMConstructor<${className}Constructor>(exec, static_cast<JSDOMGlobalObject*>(globalObject));\n");
         push(@implContent, "}\n\n");
diff --git a/WebCore/bindings/scripts/CodeGeneratorV8.pm b/WebCore/bindings/scripts/CodeGeneratorV8.pm
index 0631679..336b0ab 100644
--- a/WebCore/bindings/scripts/CodeGeneratorV8.pm
+++ b/WebCore/bindings/scripts/CodeGeneratorV8.pm
@@ -299,6 +299,12 @@ END
             push(@enabledAtRuntime, $function);
         }
     }
+
+    if ($dataNode->extendedAttributes->{"CustomConstructor"} || $dataNode->extendedAttributes->{"CanBeConstructed"}) {
+        push(@headerContent, <<END);
+  static v8::Handle<v8::Value> constructorCallback(const v8::Arguments& args);
+END
+    }
     
     foreach my $attribute (@{$dataNode->attributes}) {
         my $name = $attribute->signature->name;
@@ -1534,7 +1540,7 @@ sub GenerateImplementation
     if ($hasConstructors) {
         GenerateConstructorGetter($implClassName, $classIndex);
     }
-
+   
     my $indexer;
     my $namedPropertyGetter;
     # Generate methods for functions.
@@ -1652,6 +1658,17 @@ END
 
     push(@implContentDecls, "} // namespace ${interfaceName}Internal\n\n");
 
+    # In namespace WebCore, add generated implementation for 'CanBeConstructed'.
+    if ($dataNode->extendedAttributes->{"CanBeConstructed"} && !$dataNode->extendedAttributes->{"CustomConstructor"}) {
+        push(@implContent, <<END);
+ v8::Handle<v8::Value> ${className}::constructorCallback(const v8::Arguments& args)
+  {
+    INC_STATS("DOM.${interfaceName}.Contructor");
+    return V8Proxy::constructDOMObject<V8ClassIndex::${classIndex}, $interfaceName>(args);
+  }
+END
+   }
+
     my $access_check = "";
     if ($dataNode->extendedAttributes->{"CheckDomainSecurity"} && !($interfaceName eq "DOMWindow")) {
         $access_check = "instance->SetAccessCheckCallbacks(V8${interfaceName}::namedSecurityCheck, V8${interfaceName}::indexedSecurityCheck, v8::Integer::New(V8ClassIndex::ToInt(V8ClassIndex::${classIndex})));";
@@ -1691,7 +1708,6 @@ static v8::Persistent<v8::FunctionTemplate> Configure${className}Template(v8::Pe
   v8::Local<v8::Signature> default_signature = configureTemplate(desc, \"${interfaceName}\",
       V8ClassIndex::$parentClassIndex, V8${interfaceName}::internalFieldCount,
 END
-
     # Set up our attributes if we have them
     if ($has_attributes) {
         push(@implContent, <<END);
@@ -1713,6 +1729,12 @@ END
 END
     }
 
+    if ($dataNode->extendedAttributes->{"CustomConstructor"} || $dataNode->extendedAttributes->{"CanBeConstructed"}) {
+        push(@implContent, <<END);
+      desc->SetCallHandler(V8${interfaceName}::constructorCallback);
+END
+    }
+
     if ($access_check or @enabledAtRuntime or @{$dataNode->functions} or $has_constants) {
     push(@implContent,  <<END);
   v8::Local<v8::ObjectTemplate> instance = desc->InstanceTemplate();
diff --git a/WebCore/bindings/v8/V8DOMWrapper.cpp b/WebCore/bindings/v8/V8DOMWrapper.cpp
index eb35c1e..2a8713e 100644
--- a/WebCore/bindings/v8/V8DOMWrapper.cpp
+++ b/WebCore/bindings/v8/V8DOMWrapper.cpp
@@ -254,95 +254,6 @@ v8::Persistent<v8::FunctionTemplate> V8DOMWrapper::getTemplate(V8ClassIndex::V8W
     // Not in the cache.
     FunctionTemplateFactory factory = V8ClassIndex::GetFactory(type);
     v8::Persistent<v8::FunctionTemplate> descriptor = factory();
-    switch (type) {
-    case V8ClassIndex::MESSAGECHANNEL: {
-        descriptor->SetCallHandler(USE_CALLBACK(MessageChannelConstructor));
-        break;
-    }
-
-#if ENABLE(EVENTSOURCE)
-    case V8ClassIndex::EVENTSOURCE: {
-        descriptor->SetCallHandler(USE_CALLBACK(EventSourceConstructor));
-        break;
-    }
-#endif
-
-#if ENABLE(WORKERS)
-    case V8ClassIndex::WORKER: {
-        descriptor->SetCallHandler(USE_CALLBACK(WorkerConstructor));
-        break;
-    }
-#endif // WORKERS
-
-#if ENABLE(SHARED_WORKERS)
-    case V8ClassIndex::SHAREDWORKER: {
-        descriptor->SetCallHandler(USE_CALLBACK(SharedWorkerConstructor));
-        break;
-    }
-#endif // SHARED_WORKERS
-
-#if ENABLE(3D_CANVAS)
-    // The following objects are created from JavaScript.
-    case V8ClassIndex::WEBGLARRAYBUFFER:
-        descriptor->SetCallHandler(USE_CALLBACK(WebGLArrayBufferConstructor));
-        break;
-    case V8ClassIndex::WEBGLBYTEARRAY:
-        descriptor->SetCallHandler(USE_CALLBACK(WebGLByteArrayConstructor));
-        break;
-    case V8ClassIndex::WEBGLFLOATARRAY:
-        descriptor->SetCallHandler(USE_CALLBACK(WebGLFloatArrayConstructor));
-        break;
-    case V8ClassIndex::WEBGLINTARRAY:
-        descriptor->SetCallHandler(USE_CALLBACK(WebGLIntArrayConstructor));
-        break;
-    case V8ClassIndex::WEBGLSHORTARRAY:
-        descriptor->SetCallHandler(USE_CALLBACK(WebGLShortArrayConstructor));
-        break;
-    case V8ClassIndex::WEBGLUNSIGNEDBYTEARRAY:
-        descriptor->SetCallHandler(USE_CALLBACK(WebGLUnsignedByteArrayConstructor));
-        break;
-    case V8ClassIndex::WEBGLUNSIGNEDINTARRAY:
-        descriptor->SetCallHandler(USE_CALLBACK(WebGLUnsignedIntArrayConstructor));
-        break;
-    case V8ClassIndex::WEBGLUNSIGNEDSHORTARRAY:
-        descriptor->SetCallHandler(USE_CALLBACK(WebGLUnsignedShortArrayConstructor));
-        break;
-#endif
-    case V8ClassIndex::DOMPARSER:
-        descriptor->SetCallHandler(USE_CALLBACK(DOMParserConstructor));
-        break;
-    case V8ClassIndex::WEBKITCSSMATRIX:
-        descriptor->SetCallHandler(USE_CALLBACK(WebKitCSSMatrixConstructor));
-        break;
-    case V8ClassIndex::WEBKITPOINT:
-        descriptor->SetCallHandler(USE_CALLBACK(WebKitPointConstructor));
-        break;
-#if ENABLE(WEB_SOCKETS)
-    case V8ClassIndex::WEBSOCKET: {
-        descriptor->SetCallHandler(USE_CALLBACK(WebSocketConstructor));
-        break;
-    }
-#endif
-    case V8ClassIndex::XMLSERIALIZER:
-        descriptor->SetCallHandler(USE_CALLBACK(XMLSerializerConstructor));
-        break;
-    case V8ClassIndex::XMLHTTPREQUEST: {
-        descriptor->SetCallHandler(USE_CALLBACK(XMLHttpRequestConstructor));
-        break;
-    }
-#if ENABLE(XPATH)
-    case V8ClassIndex::XPATHEVALUATOR:
-        descriptor->SetCallHandler(USE_CALLBACK(XPathEvaluatorConstructor));
-        break;
-#endif
-#if ENABLE(XSLT)
-    case V8ClassIndex::XSLTPROCESSOR:
-        descriptor->SetCallHandler(USE_CALLBACK(XSLTProcessorConstructor));
-        break;
-#endif
-    default:
-        break;
-    }
 
     *cacheCell = descriptor;
     return descriptor;
diff --git a/WebCore/bindings/v8/custom/V8CustomBinding.h b/WebCore/bindings/v8/custom/V8CustomBinding.h
index 801c3d2..0c96cb1 100644
--- a/WebCore/bindings/v8/custom/V8CustomBinding.h
+++ b/WebCore/bindings/v8/custom/V8CustomBinding.h
@@ -40,44 +40,9 @@ namespace WebCore {
 #define DECLARE_CALLBACK(NAME) static v8::Handle<v8::Value> v8##NAME##Callback(const v8::Arguments& args)
 #define USE_CALLBACK(NAME) V8Custom::v8##NAME##Callback
 
-        DECLARE_CALLBACK(DOMParserConstructor);
         DECLARE_CALLBACK(HTMLAudioElementConstructor);
         DECLARE_CALLBACK(HTMLImageElementConstructor);
         DECLARE_CALLBACK(HTMLOptionElementConstructor);
-        DECLARE_CALLBACK(MessageChannelConstructor);
-        DECLARE_CALLBACK(WebKitCSSMatrixConstructor);
-        DECLARE_CALLBACK(WebKitPointConstructor);
-        DECLARE_CALLBACK(XMLHttpRequestConstructor);
-        DECLARE_CALLBACK(XMLSerializerConstructor);
-        DECLARE_CALLBACK(XPathEvaluatorConstructor);
-        DECLARE_CALLBACK(XSLTProcessorConstructor);
-
-#if ENABLE(3D_CANVAS)
-        DECLARE_CALLBACK(WebGLArrayBufferConstructor);
-        DECLARE_CALLBACK(WebGLByteArrayConstructor);
-        DECLARE_CALLBACK(WebGLFloatArrayConstructor);
-        DECLARE_CALLBACK(WebGLIntArrayConstructor);
-        DECLARE_CALLBACK(WebGLShortArrayConstructor);
-        DECLARE_CALLBACK(WebGLUnsignedByteArrayConstructor);
-        DECLARE_CALLBACK(WebGLUnsignedIntArrayConstructor);
-        DECLARE_CALLBACK(WebGLUnsignedShortArrayConstructor);
-#endif
-
-#if ENABLE(WORKERS)
-        DECLARE_CALLBACK(WorkerConstructor);
-#endif
-
-#if ENABLE(SHARED_WORKERS)
-        DECLARE_CALLBACK(SharedWorkerConstructor);
-#endif
-
-#if ENABLE(WEB_SOCKETS)
-        DECLARE_CALLBACK(WebSocketConstructor);
-#endif
-
-#if ENABLE(EVENTSOURCE)
-        DECLARE_CALLBACK(EventSourceConstructor);
-#endif
 
 #undef DECLARE_CALLBACK
     };
diff --git a/WebCore/bindings/v8/custom/V8DOMParserConstructor.cpp b/WebCore/bindings/v8/custom/V8DOMParserConstructor.cpp
deleted file mode 100644
index 117f31c..0000000
--- a/WebCore/bindings/v8/custom/V8DOMParserConstructor.cpp
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Copyright (C) 2009 Google 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:
- *
- *     * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *     * 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.
- *     * Neither the name of Google Inc. nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- * 
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "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 THE COPYRIGHT
- * OWNER 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"
-#include "DOMParser.h"
-
-#include "V8Binding.h"
-#include "V8Proxy.h"
-
-namespace WebCore {
-
-v8::Handle<v8::Value> V8Custom::v8DOMParserConstructorCallback(const v8::Arguments& args)
-{
-    INC_STATS("DOM.DOMParser.Contructor");
-    return V8Proxy::constructDOMObject<V8ClassIndex::DOMPARSER, DOMParser>(args);
-}
-
-} // namespace WebCore
diff --git a/WebCore/bindings/v8/custom/V8EventSourceConstructor.cpp b/WebCore/bindings/v8/custom/V8EventSourceConstructor.cpp
index 8c3e015..458c35d 100644
--- a/WebCore/bindings/v8/custom/V8EventSourceConstructor.cpp
+++ b/WebCore/bindings/v8/custom/V8EventSourceConstructor.cpp
@@ -44,7 +44,7 @@
 
 namespace WebCore {
 
-v8::Handle<v8::Value> V8Custom::v8EventSourceConstructorCallback(const v8::Arguments& args)
+v8::Handle<v8::Value> V8EventSource::constructorCallback(const v8::Arguments& args)
 {
     INC_STATS("DOM.EventSource.Constructor");
 
diff --git a/WebCore/bindings/v8/custom/V8MessageChannelConstructor.cpp b/WebCore/bindings/v8/custom/V8MessageChannelConstructor.cpp
index 7a3ed4b..3ea8e26 100644
--- a/WebCore/bindings/v8/custom/V8MessageChannelConstructor.cpp
+++ b/WebCore/bindings/v8/custom/V8MessageChannelConstructor.cpp
@@ -44,7 +44,7 @@
 
 namespace WebCore {
 
-v8::Handle<v8::Value> V8Custom::v8MessageChannelConstructorCallback(const v8::Arguments& args)
+v8::Handle<v8::Value> V8MessageChannel::constructorCallback(const v8::Arguments& args)
 {
     INC_STATS("DOM.MessageChannel.Constructor");
     // FIXME: The logic here is almost exact duplicate of V8::constructDOMObject.
diff --git a/WebCore/bindings/v8/custom/V8SharedWorkerCustom.cpp b/WebCore/bindings/v8/custom/V8SharedWorkerCustom.cpp
index 14a13cc..549de94 100644
--- a/WebCore/bindings/v8/custom/V8SharedWorkerCustom.cpp
+++ b/WebCore/bindings/v8/custom/V8SharedWorkerCustom.cpp
@@ -32,7 +32,7 @@
 
 #if ENABLE(SHARED_WORKERS)
 
-#include "SharedWorker.h"
+#include "V8SharedWorker.h"
 
 #include "ExceptionCode.h"
 #include "Frame.h"
@@ -45,7 +45,7 @@
 
 namespace WebCore {
 
-v8::Handle<v8::Value> V8Custom::v8SharedWorkerConstructorCallback(const v8::Arguments& args)
+v8::Handle<v8::Value> V8SharedWorker::constructorCallback(const v8::Arguments& args)
 {
     INC_STATS(L"DOM.SharedWorker.Constructor");
 
diff --git a/WebCore/bindings/v8/custom/V8WebGLArrayBufferCustom.cpp b/WebCore/bindings/v8/custom/V8WebGLArrayBufferCustom.cpp
index 0f83d51..bc167c5 100644
--- a/WebCore/bindings/v8/custom/V8WebGLArrayBufferCustom.cpp
+++ b/WebCore/bindings/v8/custom/V8WebGLArrayBufferCustom.cpp
@@ -41,7 +41,7 @@
 
 namespace WebCore {
 
-v8::Handle<v8::Value> V8Custom::v8WebGLArrayBufferConstructorCallback(const v8::Arguments& args)
+v8::Handle<v8::Value> V8WebGLArrayBuffer::constructorCallback(const v8::Arguments& args)
 {
     INC_STATS("DOM.WebGLArrayBuffer.Constructor");
 
diff --git a/WebCore/bindings/v8/custom/V8WebGLByteArrayCustom.cpp b/WebCore/bindings/v8/custom/V8WebGLByteArrayCustom.cpp
index 7b4e5c2..6d52c83 100644
--- a/WebCore/bindings/v8/custom/V8WebGLByteArrayCustom.cpp
+++ b/WebCore/bindings/v8/custom/V8WebGLByteArrayCustom.cpp
@@ -44,7 +44,7 @@
 
 namespace WebCore {
 
-v8::Handle<v8::Value> V8Custom::v8WebGLByteArrayConstructorCallback(const v8::Arguments& args)
+v8::Handle<v8::Value> V8WebGLByteArray::constructorCallback(const v8::Arguments& args)
 {
     INC_STATS("DOM.WebGLByteArray.Contructor");
 
diff --git a/WebCore/bindings/v8/custom/V8WebGLFloatArrayCustom.cpp b/WebCore/bindings/v8/custom/V8WebGLFloatArrayCustom.cpp
index a6e9f56..4d4b0e2 100644
--- a/WebCore/bindings/v8/custom/V8WebGLFloatArrayCustom.cpp
+++ b/WebCore/bindings/v8/custom/V8WebGLFloatArrayCustom.cpp
@@ -44,7 +44,7 @@
 
 namespace WebCore {
 
-v8::Handle<v8::Value> V8Custom::v8WebGLFloatArrayConstructorCallback(const v8::Arguments& args)
+v8::Handle<v8::Value> V8WebGLFloatArray::constructorCallback(const v8::Arguments& args)
 {
     INC_STATS("DOM.WebGLFloatArray.Contructor");
 
diff --git a/WebCore/bindings/v8/custom/V8WebGLIntArrayCustom.cpp b/WebCore/bindings/v8/custom/V8WebGLIntArrayCustom.cpp
index 6835d25..7dde0a0 100644
--- a/WebCore/bindings/v8/custom/V8WebGLIntArrayCustom.cpp
+++ b/WebCore/bindings/v8/custom/V8WebGLIntArrayCustom.cpp
@@ -44,7 +44,7 @@
 
 namespace WebCore {
 
-v8::Handle<v8::Value> V8Custom::v8WebGLIntArrayConstructorCallback(const v8::Arguments& args)
+v8::Handle<v8::Value> V8WebGLIntArray::constructorCallback(const v8::Arguments& args)
 {
     INC_STATS("DOM.WebGLIntArray.Contructor");
 
diff --git a/WebCore/bindings/v8/custom/V8WebGLShortArrayCustom.cpp b/WebCore/bindings/v8/custom/V8WebGLShortArrayCustom.cpp
index 436c73b..9d3b478 100644
--- a/WebCore/bindings/v8/custom/V8WebGLShortArrayCustom.cpp
+++ b/WebCore/bindings/v8/custom/V8WebGLShortArrayCustom.cpp
@@ -44,7 +44,7 @@
 
 namespace WebCore {
 
-v8::Handle<v8::Value> V8Custom::v8WebGLShortArrayConstructorCallback(const v8::Arguments& args)
+v8::Handle<v8::Value> V8WebGLShortArray::constructorCallback(const v8::Arguments& args)
 {
     INC_STATS("DOM.WebGLShortArray.Contructor");
 
diff --git a/WebCore/bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp b/WebCore/bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp
index 6ac3fd9..3cc658a 100644
--- a/WebCore/bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp
+++ b/WebCore/bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp
@@ -44,7 +44,7 @@
 
 namespace WebCore {
 
-v8::Handle<v8::Value> V8Custom::v8WebGLUnsignedByteArrayConstructorCallback(const v8::Arguments& args)
+v8::Handle<v8::Value> V8WebGLUnsignedByteArray::constructorCallback(const v8::Arguments& args)
 {
     INC_STATS("DOM.WebGLUnsignedByteArray.Contructor");
 
diff --git a/WebCore/bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp b/WebCore/bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp
index f9eb882..93ccbd4 100644
--- a/WebCore/bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp
+++ b/WebCore/bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp
@@ -44,7 +44,7 @@
 
 namespace WebCore {
 
-v8::Handle<v8::Value> V8Custom::v8WebGLUnsignedIntArrayConstructorCallback(const v8::Arguments& args)
+v8::Handle<v8::Value> V8WebGLUnsignedIntArray::constructorCallback(const v8::Arguments& args)
 {
     INC_STATS("DOM.WebGLUnsignedIntArray.Contructor");
 
diff --git a/WebCore/bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp b/WebCore/bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp
index 668ab99..d9e47cd 100644
--- a/WebCore/bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp
+++ b/WebCore/bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp
@@ -44,7 +44,7 @@
 
 namespace WebCore {
 
-v8::Handle<v8::Value> V8Custom::v8WebGLUnsignedShortArrayConstructorCallback(const v8::Arguments& args)
+v8::Handle<v8::Value> V8WebGLUnsignedShortArray::constructorCallback(const v8::Arguments& args)
 {
     INC_STATS("DOM.WebGLUnsignedShortArray.Contructor");
 
diff --git a/WebCore/bindings/v8/custom/V8WebKitCSSMatrixConstructor.cpp b/WebCore/bindings/v8/custom/V8WebKitCSSMatrixConstructor.cpp
index de8868e..55518d2 100644
--- a/WebCore/bindings/v8/custom/V8WebKitCSSMatrixConstructor.cpp
+++ b/WebCore/bindings/v8/custom/V8WebKitCSSMatrixConstructor.cpp
@@ -29,7 +29,7 @@
  */
 
 #include "config.h"
-#include "WebKitCSSMatrix.h"
+#include "V8WebKitCSSMatrix.h"
 
 #include "Document.h"
 #include "DocumentFragment.h"
@@ -44,7 +44,7 @@
 
 namespace WebCore {
 
-v8::Handle<v8::Value> V8Custom::v8WebKitCSSMatrixConstructorCallback(const v8::Arguments& args)
+v8::Handle<v8::Value> V8WebKitCSSMatrix::constructorCallback(const v8::Arguments& args)
 {
     INC_STATS("DOM.WebKitCSSMatrix.Constructor");
 
diff --git a/WebCore/bindings/v8/custom/V8WebKitPointConstructor.cpp b/WebCore/bindings/v8/custom/V8WebKitPointConstructor.cpp
index 0ad6527..4e0d575 100644
--- a/WebCore/bindings/v8/custom/V8WebKitPointConstructor.cpp
+++ b/WebCore/bindings/v8/custom/V8WebKitPointConstructor.cpp
@@ -29,19 +29,19 @@
  */
 
 #include "config.h"
+#include "V8WebKitPoint.h"
 
 #include "V8Binding.h"
 #include "V8CustomBinding.h"
 #include "V8DOMWrapper.h"
 #include "V8Index.h"
 #include "V8Proxy.h"
-#include "WebKitPoint.h"
 
 #include <wtf/MathExtras.h>
 
 namespace WebCore {
 
-v8::Handle<v8::Value> V8Custom::v8WebKitPointConstructorCallback(const v8::Arguments& args)
+v8::Handle<v8::Value> V8WebKitPoint::constructorCallback(const v8::Arguments& args)
 {
     INC_STATS("DOM.WebKitPoint.Constructor");
     float x = 0;
diff --git a/WebCore/bindings/v8/custom/V8WebSocketCustom.cpp b/WebCore/bindings/v8/custom/V8WebSocketCustom.cpp
index dd7cb8d..2451b90 100644
--- a/WebCore/bindings/v8/custom/V8WebSocketCustom.cpp
+++ b/WebCore/bindings/v8/custom/V8WebSocketCustom.cpp
@@ -76,7 +76,7 @@ v8::Handle<v8::Value> V8WebSocket::removeEventListenerCallback(const v8::Argumen
     return v8::Undefined();
 }
 
-v8::Handle<v8::Value> V8Custom::v8WebSocketConstructorCallback(const v8::Arguments& args)
+v8::Handle<v8::Value> V8WebSocket::constructorCallback(const v8::Arguments& args)
 {
     INC_STATS("DOM.WebSocket.Constructor");
 
diff --git a/WebCore/bindings/v8/custom/V8WorkerCustom.cpp b/WebCore/bindings/v8/custom/V8WorkerCustom.cpp
index 4291f6d..ffca2a4 100644
--- a/WebCore/bindings/v8/custom/V8WorkerCustom.cpp
+++ b/WebCore/bindings/v8/custom/V8WorkerCustom.cpp
@@ -48,7 +48,7 @@
 
 namespace WebCore {
 
-v8::Handle<v8::Value> V8Custom::v8WorkerConstructorCallback(const v8::Arguments& args)
+v8::Handle<v8::Value> V8Worker::constructorCallback(const v8::Arguments& args)
 {
     INC_STATS(L"DOM.Worker.Constructor");
 
diff --git a/WebCore/bindings/v8/custom/V8XMLHttpRequestConstructor.cpp b/WebCore/bindings/v8/custom/V8XMLHttpRequestConstructor.cpp
index c54304e..e31e05f 100644
--- a/WebCore/bindings/v8/custom/V8XMLHttpRequestConstructor.cpp
+++ b/WebCore/bindings/v8/custom/V8XMLHttpRequestConstructor.cpp
@@ -36,13 +36,12 @@
 #include "V8CustomBinding.h"
 #include "V8Proxy.h"
 #include "V8Utilities.h"
-#include "XMLHttpRequest.h"
 #include "WorkerContext.h"
 #include "WorkerContextExecutionProxy.h"
 
 namespace WebCore {
 
-v8::Handle<v8::Value> V8Custom::v8XMLHttpRequestConstructorCallback(const v8::Arguments& args)
+v8::Handle<v8::Value> V8XMLHttpRequest::constructorCallback(const v8::Arguments& args)
 {
     INC_STATS("DOM.XMLHttpRequest.Constructor");
 
diff --git a/WebCore/bindings/v8/custom/V8XMLSerializerConstructor.cpp b/WebCore/bindings/v8/custom/V8XMLSerializerConstructor.cpp
deleted file mode 100644
index 6b457cf..0000000
--- a/WebCore/bindings/v8/custom/V8XMLSerializerConstructor.cpp
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Copyright (C) 2009 Google 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:
- *
- *     * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *     * 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.
- *     * Neither the name of Google Inc. nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- * 
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "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 THE COPYRIGHT
- * OWNER 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"
-#include "V8XMLSerializer.h"
-
-#include "V8Binding.h"
-#include "V8Proxy.h"
-#include "XMLSerializer.h"
-
-namespace WebCore {
-
-v8::Handle<v8::Value> V8Custom::v8XMLSerializerConstructorCallback(const v8::Arguments& args)
-{
-    INC_STATS("DOM.XMLSerializer.Constructor");
-    return V8Proxy::constructDOMObject<V8ClassIndex::XMLSERIALIZER, XMLSerializer>(args);
-}
-
-} // namespace WebCore
diff --git a/WebCore/bindings/v8/custom/V8XPathEvaluatorConstructor.cpp b/WebCore/bindings/v8/custom/V8XPathEvaluatorConstructor.cpp
deleted file mode 100644
index 3517dff..0000000
--- a/WebCore/bindings/v8/custom/V8XPathEvaluatorConstructor.cpp
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Copyright (C) 2009 Google 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:
- *
- *     * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *     * 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.
- *     * Neither the name of Google Inc. nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- * 
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "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 THE COPYRIGHT
- * OWNER 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"
-#include "V8XPathEvaluator.h"
-
-#include "V8Binding.h"
-#include "V8Proxy.h"
-#include "XPathEvaluator.h"
-
-namespace WebCore {
-
-v8::Handle<v8::Value> V8Custom::v8XPathEvaluatorConstructorCallback(const v8::Arguments& args)
-{
-    INC_STATS("DOM.XPathEvaluator.Constructor");
-    return V8Proxy::constructDOMObject<V8ClassIndex::XPATHEVALUATOR, XPathEvaluator>(args);
-}
-
-} // namespace WebCore
diff --git a/WebCore/bindings/v8/custom/V8XSLTProcessorCustom.cpp b/WebCore/bindings/v8/custom/V8XSLTProcessorCustom.cpp
index 73667e5..fd0305a 100644
--- a/WebCore/bindings/v8/custom/V8XSLTProcessorCustom.cpp
+++ b/WebCore/bindings/v8/custom/V8XSLTProcessorCustom.cpp
@@ -46,7 +46,7 @@
 
 namespace WebCore {
 
-v8::Handle<v8::Value> V8Custom::v8XSLTProcessorConstructorCallback(const v8::Arguments& args)
+v8::Handle<v8::Value> V8XSLTProcessor::constructorCallback(const v8::Arguments& args)
 {
     INC_STATS("DOM.XSLTProcessor.Constructor");
     return V8Proxy::constructDOMObject<V8ClassIndex::XSLTPROCESSOR, XSLTProcessor>(args);
diff --git a/WebCore/css/WebKitCSSMatrix.idl b/WebCore/css/WebKitCSSMatrix.idl
index 73a8658..9d6c897 100644
--- a/WebCore/css/WebKitCSSMatrix.idl
+++ b/WebCore/css/WebKitCSSMatrix.idl
@@ -26,7 +26,7 @@
 module css {
 
     // Introduced in DOM Level ?:
-    interface [OmitConstructor] WebKitCSSMatrix {
+    interface [CustomConstructor] WebKitCSSMatrix {
 
         // These attributes are simple aliases for certain elements of the 4x4 matrix
         attribute double a; // alias for m11
diff --git a/WebCore/dom/MessageChannel.idl b/WebCore/dom/MessageChannel.idl
index 3adb354..bae5b18 100644
--- a/WebCore/dom/MessageChannel.idl
+++ b/WebCore/dom/MessageChannel.idl
@@ -26,7 +26,7 @@
 
 module events {
 
-    interface [CustomMarkFunction, NoStaticTables, OmitConstructor] MessageChannel {
+    interface [CustomConstructor, CustomMarkFunction, NoStaticTables] MessageChannel {
 
         readonly attribute MessagePort port1;
         readonly attribute MessagePort port2;
diff --git a/WebCore/html/canvas/WebGLArrayBuffer.idl b/WebCore/html/canvas/WebGLArrayBuffer.idl
index 193c36e..3325210 100644
--- a/WebCore/html/canvas/WebGLArrayBuffer.idl
+++ b/WebCore/html/canvas/WebGLArrayBuffer.idl
@@ -24,7 +24,7 @@
  */
 
 module html {
-    interface [Conditional=3D_CANVAS, OmitConstructor] WebGLArrayBuffer {
+    interface [Conditional=3D_CANVAS, CustomConstructor] WebGLArrayBuffer {
         readonly attribute int byteLength;
     };
 }
diff --git a/WebCore/html/canvas/WebGLByteArray.idl b/WebCore/html/canvas/WebGLByteArray.idl
index c209940..dbb3bb2 100644
--- a/WebCore/html/canvas/WebGLByteArray.idl
+++ b/WebCore/html/canvas/WebGLByteArray.idl
@@ -30,7 +30,7 @@ module html {
         HasNumericIndexGetter,
         HasCustomIndexSetter,
         GenerateNativeConverter,
-        OmitConstructor,
+        CustomConstructor,
         CustomToJS
     ] WebGLByteArray : WebGLArray {
         long get(in unsigned long index);
diff --git a/WebCore/html/canvas/WebGLFloatArray.idl b/WebCore/html/canvas/WebGLFloatArray.idl
index 026a281..e0a80f2 100644
--- a/WebCore/html/canvas/WebGLFloatArray.idl
+++ b/WebCore/html/canvas/WebGLFloatArray.idl
@@ -30,7 +30,7 @@ module html {
         HasNumericIndexGetter,
         HasCustomIndexSetter,
         GenerateNativeConverter,
-        OmitConstructor,
+        CustomConstructor,
         CustomToJS
     ] WebGLFloatArray : WebGLArray {
         float get(in unsigned long index);
diff --git a/WebCore/html/canvas/WebGLIntArray.idl b/WebCore/html/canvas/WebGLIntArray.idl
index cd9ba17..ef0d92f 100644
--- a/WebCore/html/canvas/WebGLIntArray.idl
+++ b/WebCore/html/canvas/WebGLIntArray.idl
@@ -30,7 +30,7 @@ module html {
         HasNumericIndexGetter,
         HasCustomIndexSetter,
         GenerateNativeConverter,
-        OmitConstructor,
+        CustomConstructor,
         CustomToJS
     ] WebGLIntArray : WebGLArray {
         long get(in unsigned long index);
diff --git a/WebCore/html/canvas/WebGLShortArray.idl b/WebCore/html/canvas/WebGLShortArray.idl
index 1cb610e..59dce76 100644
--- a/WebCore/html/canvas/WebGLShortArray.idl
+++ b/WebCore/html/canvas/WebGLShortArray.idl
@@ -29,7 +29,7 @@ module html {
         HasNumericIndexGetter,
         HasCustomIndexSetter,
         GenerateNativeConverter,
-        OmitConstructor,
+        CustomConstructor,
         CustomToJS
     ] WebGLShortArray : WebGLArray {
         long get(in unsigned long index);
diff --git a/WebCore/html/canvas/WebGLUnsignedByteArray.idl b/WebCore/html/canvas/WebGLUnsignedByteArray.idl
index b3aeb12..4de8b42 100644
--- a/WebCore/html/canvas/WebGLUnsignedByteArray.idl
+++ b/WebCore/html/canvas/WebGLUnsignedByteArray.idl
@@ -30,7 +30,7 @@ module html {
         HasNumericIndexGetter,
         HasCustomIndexSetter,
         GenerateNativeConverter,
-        OmitConstructor,
+        CustomConstructor,
         CustomToJS
     ] WebGLUnsignedByteArray : WebGLArray {
         long get(in unsigned long index);
diff --git a/WebCore/html/canvas/WebGLUnsignedIntArray.idl b/WebCore/html/canvas/WebGLUnsignedIntArray.idl
index a050738..75ff598 100644
--- a/WebCore/html/canvas/WebGLUnsignedIntArray.idl
+++ b/WebCore/html/canvas/WebGLUnsignedIntArray.idl
@@ -27,10 +27,10 @@
 module html {
     interface [
         Conditional=3D_CANVAS,
+        CustomConstructor,
         HasNumericIndexGetter,
         HasCustomIndexSetter,
         GenerateNativeConverter,
-        OmitConstructor,
         CustomToJS
     ] WebGLUnsignedIntArray : WebGLArray {
         unsigned long get(in unsigned long index);
diff --git a/WebCore/html/canvas/WebGLUnsignedShortArray.idl b/WebCore/html/canvas/WebGLUnsignedShortArray.idl
index 22089fe..fc53929 100644
--- a/WebCore/html/canvas/WebGLUnsignedShortArray.idl
+++ b/WebCore/html/canvas/WebGLUnsignedShortArray.idl
@@ -27,10 +27,10 @@
 module html {
     interface [
         Conditional=3D_CANVAS,
+        CustomConstructor,
         HasNumericIndexGetter,
         HasCustomIndexSetter,
         GenerateNativeConverter,
-        OmitConstructor,
         CustomToJS
     ] WebGLUnsignedShortArray : WebGLArray {
         long get(in unsigned long index);
diff --git a/WebCore/page/EventSource.idl b/WebCore/page/EventSource.idl
index e351815..ec42556 100644
--- a/WebCore/page/EventSource.idl
+++ b/WebCore/page/EventSource.idl
@@ -33,8 +33,8 @@ module window {
 
     interface [
         Conditional=EVENTSOURCE,
+        CustomConstructor,
         EventTarget,
-        OmitConstructor,
         NoStaticTables
     ] EventSource {
 
diff --git a/WebCore/page/WebKitPoint.idl b/WebCore/page/WebKitPoint.idl
index 43d3896..fd617b2 100644
--- a/WebCore/page/WebKitPoint.idl
+++ b/WebCore/page/WebKitPoint.idl
@@ -25,7 +25,7 @@
 
 module window {
 
-    interface [OmitConstructor] WebKitPoint {
+    interface [CustomConstructor] WebKitPoint {
         attribute float x;
         attribute float y;
     };
diff --git a/WebCore/websockets/WebSocket.idl b/WebCore/websockets/WebSocket.idl
index 6858cd3..c9552d9 100644
--- a/WebCore/websockets/WebSocket.idl
+++ b/WebCore/websockets/WebSocket.idl
@@ -32,9 +32,9 @@ module websockets {
 
     interface [
         Conditional=WEB_SOCKETS,
+        CustomConstructor,    
         EventTarget,
-        NoStaticTables,
-        OmitConstructor
+        NoStaticTables
     ] WebSocket {
         readonly attribute DOMString URL;
 
diff --git a/WebCore/workers/SharedWorker.idl b/WebCore/workers/SharedWorker.idl
index e69c8bc..c04f7cf 100644
--- a/WebCore/workers/SharedWorker.idl
+++ b/WebCore/workers/SharedWorker.idl
@@ -32,10 +32,10 @@ module threads {
 
     interface [
         Conditional=SHARED_WORKERS,
+        CustomConstructor,
         CustomMarkFunction,
         GenerateNativeConverter,
-        GenerateToJS,
-        OmitConstructor
+        GenerateToJS
     ] SharedWorker : AbstractWorker {
         readonly attribute MessagePort port;
     };
diff --git a/WebCore/workers/Worker.idl b/WebCore/workers/Worker.idl
index e4a3684..54d406d 100644
--- a/WebCore/workers/Worker.idl
+++ b/WebCore/workers/Worker.idl
@@ -28,9 +28,9 @@ module threads {
 
     interface [
         Conditional=WORKERS,
+        CustomConstructor,
         GenerateNativeConverter,
-        GenerateToJS,
-        OmitConstructor
+        GenerateToJS
     ] Worker : AbstractWorker {
 
         attribute EventListener onmessage;
diff --git a/WebCore/xml/XMLHttpRequest.idl b/WebCore/xml/XMLHttpRequest.idl
index 9591af1..70cd58a 100644
--- a/WebCore/xml/XMLHttpRequest.idl
+++ b/WebCore/xml/XMLHttpRequest.idl
@@ -29,10 +29,10 @@
 module xml {
 
     interface [
+        CustomConstructor,
         CustomMarkFunction,
         EventTarget,
-        NoStaticTables,
-        OmitConstructor
+        NoStaticTables
     ] XMLHttpRequest {
         // From XMLHttpRequestEventTarget
         // event handler attributes
diff --git a/WebCore/xml/XSLTProcessor.idl b/WebCore/xml/XSLTProcessor.idl
index 6cbe194..28bd878 100644
--- a/WebCore/xml/XSLTProcessor.idl
+++ b/WebCore/xml/XSLTProcessor.idl
@@ -34,7 +34,7 @@ module xml {
 
     interface [
         Conditional=XSLT,
-        OmitConstructor
+        CustomConstructor
     ] XSLTProcessor {
         
         [Custom] void importStylesheet(in Node stylesheet);

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list