diff --git a/core/README b/core/README
index 8d6d9a3..f34ed35 100644
--- a/core/README
+++ b/core/README
@@ -6,4 +6,4 @@
 
 The current version corresponds to:
 URL: http://src.chromium.org/multivm/trunk/webkit
-Current revision: 1266
+Current revision: 1278
diff --git a/core/css/CSSStyleDeclaration.idl b/core/css/CSSStyleDeclaration.idl
index 252ddcb..c94f081 100644
--- a/core/css/CSSStyleDeclaration.idl
+++ b/core/css/CSSStyleDeclaration.idl
@@ -20,9 +20,6 @@
 
 // Introduced in DOM Level 2:
 [
-    CustomNamedSetter,
-    CustomNamedGetter,
-    CustomEnumerateProperty,
     DependentLifetime
 ] interface CSSStyleDeclaration {
              [TreatReturnedNullStringAs=Null, TreatNullAs=NullString, SetterRaisesException] attribute DOMString        cssText;
@@ -37,6 +34,8 @@
 
     readonly attribute unsigned long    length;
     getter DOMString          item([Default=Undefined] optional unsigned long index);
+    [Custom, CustomEnumerateProperty] getter (DOMString or float) (DOMString name);
+    [Custom] setter void (DOMString propertyName, [TreatNullAs=NullString] DOMString propertyValue);
     readonly attribute CSSRule          parentRule;
 };
 
diff --git a/core/css/MediaList.idl b/core/css/MediaList.idl
index 29cc41a..1aba7ce 100644
--- a/core/css/MediaList.idl
+++ b/core/css/MediaList.idl
@@ -27,7 +27,7 @@
 [
 ] interface MediaList {
 
-             [TreatNullAs=NullString, TreatReturnedNullStringAs=Null, SetterRaisesException] attribute DOMString mediaText;
+    [TreatNullAs=NullString, TreatReturnedNullStringAs=Null] attribute DOMString mediaText;
     readonly attribute unsigned long length;
 
     [TreatReturnedNullStringAs=Null] getter DOMString item([Default=Undefined] optional unsigned long index);
diff --git a/core/css/StyleSheetList.idl b/core/css/StyleSheetList.idl
index 84224df..390e2c9 100644
--- a/core/css/StyleSheetList.idl
+++ b/core/css/StyleSheetList.idl
@@ -21,9 +21,9 @@
 // Introduced in DOM Level 2:
 [
     GenerateIsReachable=document,
-    CustomNamedGetter
 ] interface StyleSheetList {
     readonly attribute unsigned long    length;
     getter StyleSheet         item([Default=Undefined] optional unsigned long index);
+    [ImplementedAs=anonymousNamedGetter, NotEnumerable] getter CSSStyleSheet (DOMString name);
 };
 
diff --git a/core/dom/DOMNamedFlowCollection.idl b/core/dom/DOMNamedFlowCollection.idl
index 90d2a44..1ec92f4 100644
--- a/core/dom/DOMNamedFlowCollection.idl
+++ b/core/dom/DOMNamedFlowCollection.idl
@@ -34,5 +34,6 @@
 ] interface DOMNamedFlowCollection {
     readonly attribute unsigned long length;
     getter NamedFlow item(unsigned long index);
-    getter NamedFlow namedItem(DOMString name);
+    NamedFlow namedItem(DOMString name);
+    [NotEnumerable, ImplementedAs=namedItem] getter NamedFlow (DOMString name);
 };
diff --git a/core/dom/DOMStringMap.idl b/core/dom/DOMStringMap.idl
index d3e48ab..5b09c33 100644
--- a/core/dom/DOMStringMap.idl
+++ b/core/dom/DOMStringMap.idl
@@ -24,11 +24,10 @@
  */
 
 [
-    GenerateIsReachable=element,
-    CustomDeleteProperty,
-    CustomEnumerateProperty,
-    CustomNamedSetter
+    GenerateIsReachable=element
 ] interface DOMStringMap {
     [ImplementedAs=item, OverrideBuiltins] getter DOMString (DOMString name);
+    [ImplementedAs=anonymousNamedDeleter, RaisesException] deleter boolean (DOMString name);
+    [ImplementedAs=anonymousNamedSetter, RaisesException, OverrideBuiltins] setter DOMString (DOMString name, DOMString value);
 };
 
diff --git a/core/dom/Element.idl b/core/dom/Element.idl
index 831e32c..bec455c 100644
--- a/core/dom/Element.idl
+++ b/core/dom/Element.idl
@@ -110,7 +110,6 @@
     [Reflect=pseudo, ImplementedAs=pseudo, PerWorldBindings] attribute DOMString webkitPseudo;
     [ImplementedAs=createShadowRoot, RaisesException] ShadowRoot webkitCreateShadowRoot();
     [ImplementedAs=shadowRoot, PerWorldBindings] readonly attribute ShadowRoot webkitShadowRoot;
-    [ImplementedAs=insertionParentForBinding, PerWorldBindings] readonly attribute Node webkitInsertionParent;
 
     // ChildNode interface API
     [PerWorldBindings] readonly attribute Element previousElementSibling;
@@ -206,4 +205,3 @@
     [NotEnumerable, PerWorldBindings] attribute EventListener onwebkitfullscreenchange;
     [NotEnumerable, PerWorldBindings] attribute EventListener onwebkitfullscreenerror;
 };
-
diff --git a/core/dom/Event.idl b/core/dom/Event.idl
index c38db7d..680b038 100644
--- a/core/dom/Event.idl
+++ b/core/dom/Event.idl
@@ -72,7 +72,7 @@
              attribute boolean          returnValue;
              attribute boolean          cancelBubble;
 
-    [EnabledAtRuntime=experimentalShadowDOM] NodeList path();
+    [EnabledAtRuntime=experimentalShadowDOM] readonly attribute NodeList path;
 
     [Custom] readonly attribute Clipboard        clipboardData;
 };
diff --git a/core/dom/MessageChannel.idl b/core/dom/MessageChannel.idl
index 07b1a10..f83d729 100644
--- a/core/dom/MessageChannel.idl
+++ b/core/dom/MessageChannel.idl
@@ -25,6 +25,7 @@
  */
 
 [
+    GlobalContext=WindowAndWorker,
     Constructor,
     CallWith=ScriptExecutionContext,
     CustomConstructor
diff --git a/core/dom/MessageEvent.idl b/core/dom/MessageEvent.idl
index a279331..66adad2 100644
--- a/core/dom/MessageEvent.idl
+++ b/core/dom/MessageEvent.idl
@@ -26,6 +26,7 @@
  */
 
 [
+    GlobalContext=WindowAndWorker,
     ConstructorTemplate=Event
 ] interface MessageEvent : Event {
     [InitializedByEventConstructor] readonly attribute DOMString origin;
diff --git a/core/dom/NamedNodeMap.idl b/core/dom/NamedNodeMap.idl
index 0613357..6a8e4e0 100644
--- a/core/dom/NamedNodeMap.idl
+++ b/core/dom/NamedNodeMap.idl
@@ -22,7 +22,8 @@
     GenerateIsReachable=element
 ] interface NamedNodeMap {
 
-    getter Node getNamedItem([Default=Undefined] optional DOMString name);
+    Node getNamedItem([Default=Undefined] optional DOMString name);
+    [NotEnumerable, ImplementedAs=getNamedItem] getter Node ([Default=Undefined] optional DOMString name);
 
     [RaisesException] Node setNamedItem([Default=Undefined] optional Node node);
 
diff --git a/core/dom/NodeIterator.idl b/core/dom/NodeIterator.idl
index b019d76..d25c305 100644
--- a/core/dom/NodeIterator.idl
+++ b/core/dom/NodeIterator.idl
@@ -19,9 +19,7 @@
  */
 
 // Introduced in DOM Level 2:
-[
-    NoInterfaceObject
-] interface NodeIterator {
+interface NodeIterator {
     readonly attribute Node root;
     readonly attribute unsigned long whatToShow;
     readonly attribute NodeFilter filter;
diff --git a/core/dom/NodeList.idl b/core/dom/NodeList.idl
index cc30450..37634f7 100644
--- a/core/dom/NodeList.idl
+++ b/core/dom/NodeList.idl
@@ -24,7 +24,7 @@
 ] interface NodeList {
 
     getter Node item([IsIndex,Default=Undefined] optional unsigned long index);
-    [ImplementedAs=anonymousNamedGetter, OverrideBuiltins] getter (Node or unsigned long) (DOMString name);
+    [ImplementedAs=anonymousNamedGetter, OverrideBuiltins, NotEnumerable] getter (Node or unsigned long) (DOMString name);
 
     readonly attribute unsigned long length;
 
diff --git a/core/dom/Text.idl b/core/dom/Text.idl
index 9ccd7e0..f8b1a15 100644
--- a/core/dom/Text.idl
+++ b/core/dom/Text.idl
@@ -29,8 +29,4 @@
     // Introduced in DOM Level 3:
     readonly attribute DOMString       wholeText;
     Text                               replaceWholeText([Default=Undefined] optional DOMString content);
-    // ShadowAware API
-    [ImplementedAs=insertionParentForBinding, PerWorldBindings] readonly attribute Node webkitInsertionParent;
-
 };
-
diff --git a/core/fileapi/Blob.idl b/core/fileapi/Blob.idl
index 05a9973..3f61283 100644
--- a/core/fileapi/Blob.idl
+++ b/core/fileapi/Blob.idl
@@ -29,6 +29,7 @@
  */
 
 [
+    GlobalContext=WindowAndWorker,
     CustomToV8,
     CustomConstructor,
     CustomConstructor(sequence<any> blobParts, optional BlobPropertyBag options)
diff --git a/core/fileapi/FileReader.idl b/core/fileapi/FileReader.idl
index d37f1c3..f7da1cc 100644
--- a/core/fileapi/FileReader.idl
+++ b/core/fileapi/FileReader.idl
@@ -30,6 +30,7 @@
  */
 
 [
+    GlobalContext=WindowAndWorker,
     ActiveDOMObject,
     Constructor,
     CallWith=ScriptExecutionContext,
diff --git a/core/fileapi/FileReaderSync.idl b/core/fileapi/FileReaderSync.idl
index 1920a53..9bc21f8 100644
--- a/core/fileapi/FileReaderSync.idl
+++ b/core/fileapi/FileReaderSync.idl
@@ -29,7 +29,7 @@
  */
 
 [
-    NoInterfaceObject,
+    GlobalContext=WorkerOnly,
     Constructor
 ] interface FileReaderSync {
     [CallWith=ScriptExecutionContext, RaisesException] ArrayBuffer readAsArrayBuffer(Blob blob);
diff --git a/core/html/HTMLAllCollection.idl b/core/html/HTMLAllCollection.idl
index e43def6..659e087 100644
--- a/core/html/HTMLAllCollection.idl
+++ b/core/html/HTMLAllCollection.idl
@@ -30,8 +30,9 @@
     DependentLifetime
 ] interface HTMLAllCollection {
     readonly attribute unsigned long length;
-    [Custom] getter Node item([Default=Undefined] optional unsigned long index);
-    [ImplementedAs=anonymousNamedGetter] getter (NodeList or Node)(DOMString name);
+    [ImplementedAs=item] getter Node (unsigned long index);
+    [Custom] Node item([Default=Undefined] optional unsigned long index);
+    [ImplementedAs=anonymousNamedGetter, NotEnumerable] getter (NodeList or Node)(DOMString name);
     [Custom] Node namedItem(DOMString name);
     // FIXME: This should return an HTMLAllCollection.
     NodeList tags(DOMString name);
diff --git a/core/html/HTMLAppletElement.idl b/core/html/HTMLAppletElement.idl
index b7ae3c2..efb2855 100644
--- a/core/html/HTMLAppletElement.idl
+++ b/core/html/HTMLAppletElement.idl
@@ -19,10 +19,6 @@
  */
 
 [
-    CustomNamedGetter,
-    CustomNamedSetter,
-    CustomIndexedGetter,
-    CustomIndexedSetter,
     CustomLegacyCall
 ] interface HTMLAppletElement : HTMLElement {
     [Reflect] attribute DOMString align;
@@ -33,8 +29,12 @@
     [Reflect] attribute DOMString height;
     [Reflect] attribute DOMString hspace;
     [Reflect] attribute DOMString name;
-    [Reflect] attribute DOMString object;
+    [Reflect] attribute DOMString _object;  // "object" is a reserved word
     [Reflect] attribute DOMString vspace;
     [Reflect] attribute DOMString width;
+    [Custom, NotEnumerable] getter boolean (unsigned long index);
+    [Custom] setter boolean (unsigned long index, Node value);
+    [Custom, NotEnumerable] getter Node (DOMString name);
+    [Custom] setter Node (DOMString name, Node value);
 };
 
diff --git a/core/html/HTMLCollection.idl b/core/html/HTMLCollection.idl
index 4e32829..319d878 100644
--- a/core/html/HTMLCollection.idl
+++ b/core/html/HTMLCollection.idl
@@ -25,6 +25,7 @@
 ] interface HTMLCollection {
     readonly attribute unsigned long length;
     getter Node item([Default=Undefined] optional unsigned long index);
-    getter Node namedItem([Default=Undefined] optional DOMString name);
+    Node namedItem([Default=Undefined] optional DOMString name);
+    [NotEnumerable, ImplementedAs=namedItem] getter Node ([Default=Undefined] optional DOMString name);
 };
 
diff --git a/core/html/HTMLEmbedElement.idl b/core/html/HTMLEmbedElement.idl
index d479449..98dc854 100644
--- a/core/html/HTMLEmbedElement.idl
+++ b/core/html/HTMLEmbedElement.idl
@@ -19,11 +19,7 @@
  */
 
 [
-    CustomNamedGetter,
-    CustomNamedSetter,
     CustomLegacyCall,
-    CustomIndexedGetter,
-    CustomIndexedSetter
 ] interface HTMLEmbedElement : HTMLElement {
 [Reflect] attribute DOMString align;
 [Reflect] attribute DOMString height;
@@ -31,9 +27,11 @@
 [Reflect, URL] attribute DOMString src;
 [Reflect] attribute DOMString type;
 [Reflect] attribute DOMString width;
+[Custom, NotEnumerable] getter boolean (unsigned long index);
+[Custom] setter boolean (unsigned long index, Node value);
+[Custom, NotEnumerable] getter Node (DOMString name);
+[Custom] setter Node (DOMString name, Node value);
 
-#if defined(ENABLE_SVG) && ENABLE_SVG
 [CheckSecurityForNode, RaisesException] SVGDocument getSVGDocument();
-#endif
 };
 
diff --git a/core/html/HTMLFormControlsCollection.idl b/core/html/HTMLFormControlsCollection.idl
index a236e3f..3030738 100644
--- a/core/html/HTMLFormControlsCollection.idl
+++ b/core/html/HTMLFormControlsCollection.idl
@@ -24,5 +24,5 @@
 ] interface HTMLFormControlsCollection : HTMLCollection {
     [ImplementedAs=item] getter Node([Default=Undefined] optional unsigned long index);
     [Custom] Node namedItem([Default=Undefined] optional DOMString name);
-    [ImplementedAs=namedGetter] getter (RadioNodeList or Node)(DOMString name);
+    [ImplementedAs=namedGetter, NotEnumerable] getter (RadioNodeList or Node)(DOMString name);
 };
diff --git a/core/html/HTMLFormElement.idl b/core/html/HTMLFormElement.idl
index 7ae2104..cd2b3c7 100644
--- a/core/html/HTMLFormElement.idl
+++ b/core/html/HTMLFormElement.idl
@@ -32,7 +32,7 @@
     readonly attribute HTMLCollection elements;
     readonly attribute long length;
     [ImplementedAs=item] getter Node(unsigned long index);
-    [ImplementedAs=anonymousNamedGetter, OverrideBuiltins] getter (NodeList or Node)(DOMString name);
+    [ImplementedAs=anonymousNamedGetter, OverrideBuiltins, NotEnumerable] getter (NodeList or Node)(DOMString name);
 
     [ImplementedAs=submitFromJavaScript] void submit();
     void reset();
diff --git a/core/html/HTMLFrameElement.idl b/core/html/HTMLFrameElement.idl
index 4991428..ec98564 100644
--- a/core/html/HTMLFrameElement.idl
+++ b/core/html/HTMLFrameElement.idl
@@ -35,9 +35,7 @@
     // Extensions
     readonly attribute DOMWindow contentWindow;
 
-#if defined(ENABLE_SVG) && ENABLE_SVG
     [CheckSecurityForNode, RaisesException] SVGDocument getSVGDocument();
-#endif
 
     [TreatNullAs=NullString, CustomSetter] attribute DOMString location;
 
diff --git a/core/html/HTMLFrameSetElement.idl b/core/html/HTMLFrameSetElement.idl
index a928298..8781d36 100644
--- a/core/html/HTMLFrameSetElement.idl
+++ b/core/html/HTMLFrameSetElement.idl
@@ -19,7 +19,7 @@
  */
 
 interface HTMLFrameSetElement : HTMLElement {
-    [ImplementedAs=anonymousNamedGetter, OverrideBuiltins] getter DOMWindow (DOMString name);
+    [ImplementedAs=anonymousNamedGetter, OverrideBuiltins, NotEnumerable] getter DOMWindow (DOMString name);
     [Reflect] attribute DOMString cols;
     [Reflect] attribute DOMString rows;
 
diff --git a/core/html/HTMLIFrameElement.idl b/core/html/HTMLIFrameElement.idl
index aa54d7e..b73c764 100644
--- a/core/html/HTMLIFrameElement.idl
+++ b/core/html/HTMLIFrameElement.idl
@@ -39,8 +39,6 @@
     // Extensions
     readonly attribute DOMWindow contentWindow;
 
-#if defined(ENABLE_SVG) && ENABLE_SVG
     [CheckSecurityForNode, RaisesException] SVGDocument getSVGDocument();
-#endif
 };
 
diff --git a/core/html/HTMLLinkElement.idl b/core/html/HTMLLinkElement.idl
index e12ff3d..d5db95d 100644
--- a/core/html/HTMLLinkElement.idl
+++ b/core/html/HTMLLinkElement.idl
@@ -33,5 +33,7 @@
 
     // DOM Level 2 Style
     readonly attribute StyleSheet sheet;
+
+    [EnabledAtRuntime=htmlImports] readonly attribute DocumentFragment import;
 };
 
diff --git a/core/html/HTMLMediaElement.idl b/core/html/HTMLMediaElement.idl
index 214b391..5db5f75 100644
--- a/core/html/HTMLMediaElement.idl
+++ b/core/html/HTMLMediaElement.idl
@@ -24,7 +24,7 @@
  */
 
 [
-    NoInterfaceObject,
+    EnabledAtRuntime=media,
     ActiveDOMObject
 ] interface HTMLMediaElement : HTMLElement {
 
diff --git a/core/html/HTMLObjectElement.idl b/core/html/HTMLObjectElement.idl
index a3847f3..8c33b24 100644
--- a/core/html/HTMLObjectElement.idl
+++ b/core/html/HTMLObjectElement.idl
@@ -19,10 +19,6 @@
  */
 
 [
-    CustomNamedGetter,
-    CustomNamedSetter,
-    CustomIndexedGetter,
-    CustomIndexedSetter,
     CustomLegacyCall
 ] interface HTMLObjectElement : HTMLElement {
     readonly attribute HTMLFormElement form;
@@ -50,9 +46,11 @@
 
     // Introduced in DOM Level 2:
     [CheckSecurityForNode] readonly attribute Document contentDocument;
+    [Custom, NotEnumerable] getter boolean (unsigned long index);
+    [Custom] setter boolean (unsigned long index, Node value);
+    [Custom, NotEnumerable] getter Node (DOMString name);
+    [Custom] setter Node (DOMString name, Node value);
 
-#if defined(ENABLE_SVG) && ENABLE_SVG
     [CheckSecurityForNode, RaisesException] SVGDocument getSVGDocument();
-#endif
 };
 
diff --git a/core/html/HTMLOptionsCollection.idl b/core/html/HTMLOptionsCollection.idl
index 84ae0f4..a6f232a 100644
--- a/core/html/HTMLOptionsCollection.idl
+++ b/core/html/HTMLOptionsCollection.idl
@@ -19,14 +19,14 @@
  */
 
 [
-    CustomIndexedSetter,
     GenerateIsReachable=ownerNode,
     DependentLifetime
 ] interface HTMLOptionsCollection : HTMLCollection {
     attribute long selectedIndex;
     [CustomSetter, SetterRaisesException] attribute unsigned long length;
     [ImplementedAs=item] getter Node(unsigned long index);
-    [ImplementedAs=anonymousNamedGetter] getter (NodeList or Node)(DOMString name);
+    [ImplementedAs=anonymousIndexedSetter, RaisesException] setter HTMLOptionElement (unsigned long index, [TreatNullAs=anonymousIndexedSetterRemove, TreatUndefinedAs=anonymousIndexedSetterRemove] HTMLOptionElement value);
+    [ImplementedAs=anonymousNamedGetter, NotEnumerable] getter (NodeList or Node)(DOMString name);
 
     [Custom] Node namedItem([Default=Undefined] optional DOMString name);
 
diff --git a/core/html/HTMLSelectElement.idl b/core/html/HTMLSelectElement.idl
index 858402b..3c6a8f3 100644
--- a/core/html/HTMLSelectElement.idl
+++ b/core/html/HTMLSelectElement.idl
@@ -18,9 +18,7 @@
  * Boston, MA 02110-1301, USA.
  */
 
-[
-    CustomIndexedSetter
-] interface HTMLSelectElement : HTMLElement {
+interface HTMLSelectElement : HTMLElement {
     [Reflect] attribute boolean autofocus;
     [Reflect] attribute boolean disabled;
     readonly attribute HTMLFormElement form;
@@ -35,6 +33,7 @@
     [SetterRaisesException] attribute unsigned long length;
 
     getter Node item([IsIndex,Default=Undefined] optional unsigned long index);
+    [ImplementedAs=anonymousIndexedSetter, RaisesException] setter HTMLOptionElement (unsigned long index, HTMLOptionElement value);
     Node namedItem([Default=Undefined] optional DOMString name);
      [RaisesException] void add([Default=Undefined] optional HTMLElement element,
                             [Default=Undefined] optional HTMLElement before);
diff --git a/core/html/HTMLVideoElement.idl b/core/html/HTMLVideoElement.idl
index 94a0c27..ef4bd8b 100644
--- a/core/html/HTMLVideoElement.idl
+++ b/core/html/HTMLVideoElement.idl
@@ -24,7 +24,7 @@
  */
 
 [
-    NoInterfaceObject
+    EnabledAtRuntime=media
 ] interface HTMLVideoElement : HTMLMediaElement {
     [Reflect] attribute unsigned long width;
     [Reflect] attribute unsigned long height;
diff --git a/core/html/URL.idl b/core/html/URL.idl
index 96e7060..7e5e300 100644
--- a/core/html/URL.idl
+++ b/core/html/URL.idl
@@ -25,6 +25,7 @@
  */
 
 [
+    GlobalContext=WindowAndWorker,
     Constructor,
     ImplementedAs=DOMURL
 ] interface URL {
diff --git a/core/html/canvas/ArrayBuffer.idl b/core/html/canvas/ArrayBuffer.idl
index 5aa02b3..1a6df2d 100644
--- a/core/html/canvas/ArrayBuffer.idl
+++ b/core/html/canvas/ArrayBuffer.idl
@@ -24,6 +24,7 @@
  */
 
 [
+    GlobalContext=WindowAndWorker,
     CustomConstructor(unsigned long length)
 ] interface ArrayBuffer {
     readonly attribute unsigned long byteLength;
diff --git a/core/html/canvas/DataView.idl b/core/html/canvas/DataView.idl
index 1636c4c..c814a6b 100644
--- a/core/html/canvas/DataView.idl
+++ b/core/html/canvas/DataView.idl
@@ -24,6 +24,7 @@
  */
 
 [
+    GlobalContext=WindowAndWorker,
     CustomConstructor(ArrayBuffer buffer, optional unsigned long byteOffset, optional unsigned long byteLength),
     CustomToV8
 ] interface DataView : ArrayBufferView {
diff --git a/core/html/canvas/EXTDrawBuffers.idl b/core/html/canvas/EXTDrawBuffers.idl
index e48a70b..f292642 100644
--- a/core/html/canvas/EXTDrawBuffers.idl
+++ b/core/html/canvas/EXTDrawBuffers.idl
@@ -27,7 +27,6 @@
 
 [
     NoInterfaceObject,
-    Conditional=WEBGL,
     DoNotCheckConstants
 ] interface EXTDrawBuffers {
     const GLenum COLOR_ATTACHMENT0_EXT = 0x8CE0;
diff --git a/core/html/canvas/EXTTextureFilterAnisotropic.idl b/core/html/canvas/EXTTextureFilterAnisotropic.idl
index 46bd9dd..3fd2110 100644
--- a/core/html/canvas/EXTTextureFilterAnisotropic.idl
+++ b/core/html/canvas/EXTTextureFilterAnisotropic.idl
@@ -25,7 +25,6 @@
 
 [
     NoInterfaceObject,
-    Conditional=WEBGL,
     DoNotCheckConstants
 ] interface EXTTextureFilterAnisotropic {
     const unsigned long TEXTURE_MAX_ANISOTROPY_EXT = 0x84FE;
diff --git a/core/html/canvas/Float32Array.idl b/core/html/canvas/Float32Array.idl
index 4b872c5..a9b9dac 100644
--- a/core/html/canvas/Float32Array.idl
+++ b/core/html/canvas/Float32Array.idl
@@ -25,6 +25,7 @@
  */
 
 [
+    GlobalContext=WindowAndWorker,
     ConstructorTemplate=TypedArray,
     CustomToV8,
     DoNotCheckConstants
diff --git a/core/html/canvas/Float64Array.idl b/core/html/canvas/Float64Array.idl
index 5e67f41..28f9d6b 100644
--- a/core/html/canvas/Float64Array.idl
+++ b/core/html/canvas/Float64Array.idl
@@ -25,6 +25,7 @@
  */
 
 [
+    GlobalContext=WindowAndWorker,
     ConstructorTemplate=TypedArray,
     CustomToV8,
     DoNotCheckConstants
diff --git a/core/html/canvas/Int16Array.idl b/core/html/canvas/Int16Array.idl
index f7fa0cb..42c8dac 100644
--- a/core/html/canvas/Int16Array.idl
+++ b/core/html/canvas/Int16Array.idl
@@ -24,6 +24,7 @@
  */
 
 [
+    GlobalContext=WindowAndWorker,
     ConstructorTemplate=TypedArray,
     CustomToV8,
     DoNotCheckConstants
diff --git a/core/html/canvas/Int32Array.idl b/core/html/canvas/Int32Array.idl
index b0a42b2..fb4b6d1 100644
--- a/core/html/canvas/Int32Array.idl
+++ b/core/html/canvas/Int32Array.idl
@@ -25,6 +25,7 @@
  */
 
 [
+    GlobalContext=WindowAndWorker,
     ConstructorTemplate=TypedArray,
     CustomToV8,
     DoNotCheckConstants
diff --git a/core/html/canvas/Int8Array.idl b/core/html/canvas/Int8Array.idl
index 299db9b..52434af 100644
--- a/core/html/canvas/Int8Array.idl
+++ b/core/html/canvas/Int8Array.idl
@@ -25,6 +25,7 @@
  */
 
 [
+    GlobalContext=WindowAndWorker,
     ConstructorTemplate=TypedArray,
     CustomToV8,
     DoNotCheckConstants
diff --git a/core/html/canvas/OESElementIndexUint.idl b/core/html/canvas/OESElementIndexUint.idl
index 0eb77f8..ecb5d89 100644
--- a/core/html/canvas/OESElementIndexUint.idl
+++ b/core/html/canvas/OESElementIndexUint.idl
@@ -24,7 +24,6 @@
  */
 
 [
-    NoInterfaceObject,
-    Conditional=WEBGL
+    NoInterfaceObject
 ] interface OESElementIndexUint {
 };
diff --git a/core/html/canvas/OESStandardDerivatives.idl b/core/html/canvas/OESStandardDerivatives.idl
index 6ac0e43..222f6ec 100644
--- a/core/html/canvas/OESStandardDerivatives.idl
+++ b/core/html/canvas/OESStandardDerivatives.idl
@@ -25,7 +25,6 @@
 
 [
     NoInterfaceObject,
-    Conditional=WEBGL,
     DoNotCheckConstants
 ] interface OESStandardDerivatives {
     const unsigned long FRAGMENT_SHADER_DERIVATIVE_HINT_OES = 0x8B8B;
diff --git a/core/html/canvas/OESTextureFloat.idl b/core/html/canvas/OESTextureFloat.idl
index b926f73..f97da85 100644
--- a/core/html/canvas/OESTextureFloat.idl
+++ b/core/html/canvas/OESTextureFloat.idl
@@ -24,7 +24,6 @@
  */
 
 [
-    NoInterfaceObject,
-    Conditional=WEBGL
+    NoInterfaceObject
 ] interface OESTextureFloat {
 };
diff --git a/core/html/canvas/OESTextureFloatLinear.idl b/core/html/canvas/OESTextureFloatLinear.idl
index fc65a9f..25523fe 100644
--- a/core/html/canvas/OESTextureFloatLinear.idl
+++ b/core/html/canvas/OESTextureFloatLinear.idl
@@ -24,7 +24,6 @@
  */
 
 [
-    NoInterfaceObject,
-    Conditional=WEBGL
+    NoInterfaceObject
 ] interface OESTextureFloatLinear {
 };
diff --git a/core/html/canvas/OESTextureHalfFloat.idl b/core/html/canvas/OESTextureHalfFloat.idl
index 597ecf8..9543a89 100644
--- a/core/html/canvas/OESTextureHalfFloat.idl
+++ b/core/html/canvas/OESTextureHalfFloat.idl
@@ -27,7 +27,6 @@
 
 [
     NoInterfaceObject,
-    Conditional=WEBGL,
     DoNotCheckConstants
 ] interface OESTextureHalfFloat {
     const GLenum HALF_FLOAT_OES                 = 0x8D61;
diff --git a/core/html/canvas/OESTextureHalfFloatLinear.idl b/core/html/canvas/OESTextureHalfFloatLinear.idl
index 44ee4b5..84e192d 100644
--- a/core/html/canvas/OESTextureHalfFloatLinear.idl
+++ b/core/html/canvas/OESTextureHalfFloatLinear.idl
@@ -24,7 +24,6 @@
  */
 
 [
-    NoInterfaceObject,
-    Conditional=WEBGL
+    NoInterfaceObject
 ] interface OESTextureHalfFloatLinear {
 };
diff --git a/core/html/canvas/OESVertexArrayObject.idl b/core/html/canvas/OESVertexArrayObject.idl
index 9fcf9ab..0a7bd1f 100644
--- a/core/html/canvas/OESVertexArrayObject.idl
+++ b/core/html/canvas/OESVertexArrayObject.idl
@@ -25,7 +25,6 @@
 
 [
     NoInterfaceObject,
-    Conditional=WEBGL, 
     DoNotCheckConstants
 ] interface OESVertexArrayObject {
     const unsigned long VERTEX_ARRAY_BINDING_OES = 0x85B5;
diff --git a/core/html/canvas/Path.idl b/core/html/canvas/Path.idl
index 14ed146..ae5943f 100644
--- a/core/html/canvas/Path.idl
+++ b/core/html/canvas/Path.idl
@@ -30,9 +30,7 @@
     EnabledAtRuntime=canvasPath,
     Constructor,
     Constructor(Path path),
-#if defined(ENABLE_SVG) && ENABLE_SVG
     Constructor(DOMString text),
-#endif
     ImplementedAs=DOMPath
 ] interface Path {
 
diff --git a/core/html/canvas/Uint16Array.idl b/core/html/canvas/Uint16Array.idl
index 555fe86..086ee28 100644
--- a/core/html/canvas/Uint16Array.idl
+++ b/core/html/canvas/Uint16Array.idl
@@ -25,6 +25,7 @@
  */
 
 [
+    GlobalContext=WindowAndWorker,
     ConstructorTemplate=TypedArray,
     CustomToV8,
     DoNotCheckConstants
diff --git a/core/html/canvas/Uint32Array.idl b/core/html/canvas/Uint32Array.idl
index 069a8d9..3c69bfd 100644
--- a/core/html/canvas/Uint32Array.idl
+++ b/core/html/canvas/Uint32Array.idl
@@ -25,6 +25,7 @@
  */
 
 [
+    GlobalContext=WindowAndWorker,
     ConstructorTemplate=TypedArray,
     CustomToV8,
     DoNotCheckConstants
diff --git a/core/html/canvas/Uint8Array.idl b/core/html/canvas/Uint8Array.idl
index d2f80a3..b9c6a21 100644
--- a/core/html/canvas/Uint8Array.idl
+++ b/core/html/canvas/Uint8Array.idl
@@ -25,6 +25,7 @@
  */
 
 [
+    GlobalContext=WindowAndWorker,
     ConstructorTemplate=TypedArray,
     CustomToV8,
     DoNotCheckConstants
diff --git a/core/html/canvas/Uint8ClampedArray.idl b/core/html/canvas/Uint8ClampedArray.idl
index 2d9273e..895505a 100644
--- a/core/html/canvas/Uint8ClampedArray.idl
+++ b/core/html/canvas/Uint8ClampedArray.idl
@@ -25,6 +25,7 @@
  */
 
 [
+    GlobalContext=WindowAndWorker,
     ConstructorTemplate=TypedArray,
     CustomToV8,
     DoNotCheckConstants
diff --git a/core/html/canvas/WebGLActiveInfo.idl b/core/html/canvas/WebGLActiveInfo.idl
index 5baf934..f5ac864 100644
--- a/core/html/canvas/WebGLActiveInfo.idl
+++ b/core/html/canvas/WebGLActiveInfo.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=WEBGL
-] interface WebGLActiveInfo {
+interface WebGLActiveInfo {
     readonly attribute long size;
     readonly attribute unsigned long type;
     readonly attribute DOMString name;
diff --git a/core/html/canvas/WebGLBuffer.idl b/core/html/canvas/WebGLBuffer.idl
index 564c543..9ae6c92 100644
--- a/core/html/canvas/WebGLBuffer.idl
+++ b/core/html/canvas/WebGLBuffer.idl
@@ -23,7 +23,5 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=WEBGL
-] interface WebGLBuffer {
+interface WebGLBuffer {
 };
diff --git a/core/html/canvas/WebGLCompressedTextureATC.idl b/core/html/canvas/WebGLCompressedTextureATC.idl
index b94f2c5..e627f21 100644
--- a/core/html/canvas/WebGLCompressedTextureATC.idl
+++ b/core/html/canvas/WebGLCompressedTextureATC.idl
@@ -25,7 +25,6 @@
 
 [
     NoInterfaceObject,
-    Conditional=WEBGL,
     DoNotCheckConstants
 ] interface WebGLCompressedTextureATC {
     /* Compressed Texture Formats */
diff --git a/core/html/canvas/WebGLCompressedTexturePVRTC.idl b/core/html/canvas/WebGLCompressedTexturePVRTC.idl
index 20e24a1..3e25892 100644
--- a/core/html/canvas/WebGLCompressedTexturePVRTC.idl
+++ b/core/html/canvas/WebGLCompressedTexturePVRTC.idl
@@ -25,7 +25,6 @@
 
 [
     NoInterfaceObject,
-    Conditional=WEBGL,
     DoNotCheckConstants
 ] interface WebGLCompressedTexturePVRTC {
     /* Compressed Texture Formats */
diff --git a/core/html/canvas/WebGLCompressedTextureS3TC.idl b/core/html/canvas/WebGLCompressedTextureS3TC.idl
index d60f29f..e7c18a1 100644
--- a/core/html/canvas/WebGLCompressedTextureS3TC.idl
+++ b/core/html/canvas/WebGLCompressedTextureS3TC.idl
@@ -25,7 +25,6 @@
 
 [
     NoInterfaceObject,
-    Conditional=WEBGL,
     DoNotCheckConstants
 ] interface WebGLCompressedTextureS3TC {
     /* Compressed Texture Formats */
diff --git a/core/html/canvas/WebGLContextAttributes.idl b/core/html/canvas/WebGLContextAttributes.idl
index c29355b..d971644 100644
--- a/core/html/canvas/WebGLContextAttributes.idl
+++ b/core/html/canvas/WebGLContextAttributes.idl
@@ -25,8 +25,7 @@
  */
 
 [
-    NoInterfaceObject,
-    Conditional=WEBGL
+    NoInterfaceObject
 ] interface WebGLContextAttributes {
     attribute boolean alpha;
     attribute boolean depth;
diff --git a/core/html/canvas/WebGLContextEvent.idl b/core/html/canvas/WebGLContextEvent.idl
index c3eba10..f6a3092 100644
--- a/core/html/canvas/WebGLContextEvent.idl
+++ b/core/html/canvas/WebGLContextEvent.idl
@@ -24,7 +24,6 @@
  */
 
 [
-    Conditional=WEBGL,
     ConstructorTemplate=Event
 ] interface WebGLContextEvent : Event {
     [InitializedByEventConstructor] readonly attribute DOMString statusMessage;
diff --git a/core/html/canvas/WebGLDebugRendererInfo.idl b/core/html/canvas/WebGLDebugRendererInfo.idl
index 8846e4e..f1cf633 100644
--- a/core/html/canvas/WebGLDebugRendererInfo.idl
+++ b/core/html/canvas/WebGLDebugRendererInfo.idl
@@ -25,7 +25,6 @@
 
 [
     NoInterfaceObject,
-    Conditional=WEBGL,
     DoNotCheckConstants
 ] interface WebGLDebugRendererInfo {
     const unsigned long UNMASKED_VENDOR_WEBGL = 0x9245;
diff --git a/core/html/canvas/WebGLDebugShaders.idl b/core/html/canvas/WebGLDebugShaders.idl
index b269ca2..1798cee 100644
--- a/core/html/canvas/WebGLDebugShaders.idl
+++ b/core/html/canvas/WebGLDebugShaders.idl
@@ -24,8 +24,7 @@
  */
 
 [
-    NoInterfaceObject,
-    Conditional=WEBGL
+    NoInterfaceObject
 ] interface WebGLDebugShaders {
     [StrictTypeChecking, TreatReturnedNullStringAs=Null, RaisesException] DOMString getTranslatedShaderSource(WebGLShader shader);
 };
diff --git a/core/html/canvas/WebGLDepthTexture.idl b/core/html/canvas/WebGLDepthTexture.idl
index 9740cfe..a6eb66a 100644
--- a/core/html/canvas/WebGLDepthTexture.idl
+++ b/core/html/canvas/WebGLDepthTexture.idl
@@ -25,7 +25,6 @@
 
 [
     NoInterfaceObject,
-    Conditional=WEBGL,
     DoNotCheckConstants
 ] interface WebGLDepthTexture {
     const unsigned long UNSIGNED_INT_24_8_WEBGL = 0x84FA;
diff --git a/core/html/canvas/WebGLFramebuffer.idl b/core/html/canvas/WebGLFramebuffer.idl
index e609513..3d1eab8 100644
--- a/core/html/canvas/WebGLFramebuffer.idl
+++ b/core/html/canvas/WebGLFramebuffer.idl
@@ -23,7 +23,5 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=WEBGL
-] interface WebGLFramebuffer {
+interface WebGLFramebuffer {
 };
diff --git a/core/html/canvas/WebGLLoseContext.idl b/core/html/canvas/WebGLLoseContext.idl
index 310f84d..1ac288f 100644
--- a/core/html/canvas/WebGLLoseContext.idl
+++ b/core/html/canvas/WebGLLoseContext.idl
@@ -24,8 +24,7 @@
  */
 
 [
-    NoInterfaceObject,
-    Conditional=WEBGL
+    NoInterfaceObject
 ] interface WebGLLoseContext {
     [StrictTypeChecking] void loseContext();
     [StrictTypeChecking] void restoreContext();
diff --git a/core/html/canvas/WebGLProgram.idl b/core/html/canvas/WebGLProgram.idl
index d404ebd..399661c 100644
--- a/core/html/canvas/WebGLProgram.idl
+++ b/core/html/canvas/WebGLProgram.idl
@@ -23,7 +23,5 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=WEBGL
-] interface WebGLProgram {
+interface WebGLProgram {
 };
diff --git a/core/html/canvas/WebGLRenderbuffer.idl b/core/html/canvas/WebGLRenderbuffer.idl
index 618f9c4..f9c837e 100644
--- a/core/html/canvas/WebGLRenderbuffer.idl
+++ b/core/html/canvas/WebGLRenderbuffer.idl
@@ -23,7 +23,5 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=WEBGL
-] interface WebGLRenderbuffer {
+interface WebGLRenderbuffer {
 };
diff --git a/core/html/canvas/WebGLRenderingContext.idl b/core/html/canvas/WebGLRenderingContext.idl
index dc5761f..7343bcd 100644
--- a/core/html/canvas/WebGLRenderingContext.idl
+++ b/core/html/canvas/WebGLRenderingContext.idl
@@ -39,7 +39,6 @@
 typedef /*unrestricted*/ float GLclampf;
 
 [
-    Conditional=WEBGL,
     DoNotCheckConstants
 ] interface WebGLRenderingContext : CanvasRenderingContext {
 
diff --git a/core/html/canvas/WebGLShader.idl b/core/html/canvas/WebGLShader.idl
index 0ebae38..820cd0d 100644
--- a/core/html/canvas/WebGLShader.idl
+++ b/core/html/canvas/WebGLShader.idl
@@ -23,7 +23,5 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=WEBGL
-] interface WebGLShader {
+interface WebGLShader {
 };
diff --git a/core/html/canvas/WebGLShaderPrecisionFormat.idl b/core/html/canvas/WebGLShaderPrecisionFormat.idl
index 1b34f65..021beb6 100644
--- a/core/html/canvas/WebGLShaderPrecisionFormat.idl
+++ b/core/html/canvas/WebGLShaderPrecisionFormat.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-[
-    Conditional=WEBGL
-] interface WebGLShaderPrecisionFormat {
+interface WebGLShaderPrecisionFormat {
     readonly attribute long rangeMin;
     readonly attribute long rangeMax;
     readonly attribute long precision;
diff --git a/core/html/canvas/WebGLTexture.idl b/core/html/canvas/WebGLTexture.idl
index 1ea2f2b..d0d0f2b 100644
--- a/core/html/canvas/WebGLTexture.idl
+++ b/core/html/canvas/WebGLTexture.idl
@@ -23,7 +23,5 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=WEBGL
-] interface WebGLTexture {
+interface WebGLTexture {
 };
diff --git a/core/html/canvas/WebGLUniformLocation.idl b/core/html/canvas/WebGLUniformLocation.idl
index c211189..7a7a693 100644
--- a/core/html/canvas/WebGLUniformLocation.idl
+++ b/core/html/canvas/WebGLUniformLocation.idl
@@ -24,7 +24,5 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=WEBGL
-] interface WebGLUniformLocation {
+interface WebGLUniformLocation {
 };
diff --git a/core/html/canvas/WebGLVertexArrayObjectOES.idl b/core/html/canvas/WebGLVertexArrayObjectOES.idl
index ce9f18d..bc9b545 100644
--- a/core/html/canvas/WebGLVertexArrayObjectOES.idl
+++ b/core/html/canvas/WebGLVertexArrayObjectOES.idl
@@ -24,7 +24,6 @@
  */
 
 [
-    NoInterfaceObject,
-    Conditional=WEBGL
+    NoInterfaceObject
 ] interface WebGLVertexArrayObjectOES {
 };
diff --git a/core/html/track/TextTrackRegion.idl b/core/html/track/TextTrackRegion.idl
index 236d903..54421aa 100644
--- a/core/html/track/TextTrackRegion.idl
+++ b/core/html/track/TextTrackRegion.idl
@@ -25,8 +25,9 @@
 
 [
     Conditional=WEBVTT_REGIONS,
+    Constructor(),
     EnabledAtRuntime=videoTrack,
-    Constructor()
+    CallWith=ScriptExecutionContext
 ] interface TextTrackRegion {
     readonly attribute TextTrack track;
 
diff --git a/core/inspector/InjectedScriptHost.idl b/core/inspector/InjectedScriptHost.idl
index 4d9f484..9a6de9a 100644
--- a/core/inspector/InjectedScriptHost.idl
+++ b/core/inspector/InjectedScriptHost.idl
@@ -38,11 +38,11 @@
     void copyText(DOMString text);
     [Custom] void inspect(any objectId, any hints);
     [Custom] any inspectedObject(long num);
-    [Custom] any internalConstructorName(any object);
-    [Custom] boolean isHTMLAllCollection(any object);
-    [Custom] DOMString type(any object);
-    [Custom] any functionDetails(any object);
-    [Custom] Array getInternalProperties(any object);
+    [Custom] any internalConstructorName(any obj);
+    [Custom] boolean isHTMLAllCollection(any obj);
+    [Custom] DOMString type(any obj);
+    [Custom] any functionDetails(any obj);
+    [Custom] Array getInternalProperties(any obj);
     [Custom] Array getEventListeners(Node node);
     [Custom] any evaluate(DOMString text);
     [Custom] DOMString databaseId(any database);
diff --git a/core/page/DOMWindow.idl b/core/page/DOMWindow.idl
index c256b05..09224c2 100644
--- a/core/page/DOMWindow.idl
+++ b/core/page/DOMWindow.idl
@@ -28,7 +28,6 @@
     CheckSecurity,
     EventTarget,
     CustomToV8,
-    CustomNamedGetter,
     DoNotGenerateWrap,
     InterfaceName=Window
 ] interface DOMWindow {
@@ -302,8 +301,6 @@
     // Constructors enabled at runtime but whose interface does not have EnabledAtRuntime
     // extended attribute.
     // FIXME: Remove these.
-    [EnabledAtRuntime=media] attribute HTMLMediaElementConstructor HTMLMediaElement;
-    [EnabledAtRuntime=media] attribute HTMLVideoElementConstructor HTMLVideoElement;
     [EnabledAtRuntime=media] attribute MediaErrorConstructor MediaError;
     [EnabledAtRuntime=media] attribute TimeRangesConstructor TimeRanges;
     [EnabledAtRuntime=media] attribute HTMLSourceElementConstructor HTMLSourceElement;
@@ -334,6 +331,7 @@
     // window.toString() requires special handling in V8
     [DoNotCheckSignature, DoNotCheckSecurity, Custom, NotEnumerable] DOMString toString();
 
-    [ImplementedAs=anonymousIndexedGetter] getter DOMWindow(unsigned long index);
+    [ImplementedAs=anonymousIndexedGetter, NotEnumerable] getter DOMWindow(unsigned long index);
+    [Custom, NotEnumerable] getter DOMWindow (DOMString name);
 };
 
diff --git a/core/page/EventSource.idl b/core/page/EventSource.idl
index 5fb672d..c9ff7b3 100644
--- a/core/page/EventSource.idl
+++ b/core/page/EventSource.idl
@@ -30,6 +30,7 @@
  */
 
 [
+    GlobalContext=WindowAndWorker,
     ActiveDOMObject,
     Constructor(DOMString url, optional Dictionary eventSourceInit),
     CallWith=ScriptExecutionContext,
diff --git a/core/plugins/MimeTypeArray.idl b/core/plugins/MimeTypeArray.idl
index 435e22f..ea11b6b 100644
--- a/core/plugins/MimeTypeArray.idl
+++ b/core/plugins/MimeTypeArray.idl
@@ -23,6 +23,7 @@
 ] interface MimeTypeArray {
     readonly attribute unsigned long length;
     getter MimeType item([Default=Undefined] optional unsigned long index);
-    getter MimeType namedItem([Default=Undefined] optional DOMString name);
+    MimeType namedItem([Default=Undefined] optional DOMString name);
+    [NotEnumerable, ImplementedAs=namedItem] getter MimeType([Default=Undefined] optional DOMString name);
 };
 
diff --git a/core/plugins/Plugin.idl b/core/plugins/Plugin.idl
index 095dc49..c1259e1 100644
--- a/core/plugins/Plugin.idl
+++ b/core/plugins/Plugin.idl
@@ -26,6 +26,7 @@
     readonly attribute DOMString description;
     readonly attribute unsigned long length;
     getter MimeType item([Default=Undefined] optional unsigned long index);
-    getter MimeType namedItem([Default=Undefined] optional DOMString name);
+    MimeType namedItem([Default=Undefined] optional DOMString name);
+    [NotEnumerable, ImplementedAs=namedItem] getter MimeType ([Default=Undefined] optional DOMString name);
 };
 
diff --git a/core/plugins/PluginArray.idl b/core/plugins/PluginArray.idl
index 04e18c4..47d9cc2 100644
--- a/core/plugins/PluginArray.idl
+++ b/core/plugins/PluginArray.idl
@@ -23,7 +23,8 @@
 ] interface PluginArray {
     readonly attribute unsigned long length;
     getter Plugin item([Default=Undefined] optional unsigned long index);
-    getter Plugin namedItem([Default=Undefined] optional DOMString name);
+    Plugin namedItem([Default=Undefined] optional DOMString name);
+    [NotEnumerable, ImplementedAs=namedItem] getter Plugin ([Default=Undefined] optional DOMString name);
     void refresh([Default=Undefined] optional boolean reload);
 };
 
diff --git a/core/scripts/in_generator.py b/core/scripts/in_generator.py
index 6cffaa9..b02d6e6 100644
--- a/core/scripts/in_generator.py
+++ b/core/scripts/in_generator.py
@@ -32,7 +32,6 @@
 import optparse
 
 from in_file import InFile
-import template_expander
 
 
 class Writer(object):
@@ -47,26 +46,7 @@
             in_files = [in_files]
         self.in_file = InFile.load_from_files(in_files, self.defaults, self.valid_values, self.default_parameters)
         self._enabled_conditions = enabled_conditions
-
-    # Subclasses should override.
-    def generate_header(self):
-        return ''
-
-    # Subclasses should override.
-    def generate_interfaces_header(self):
-        return ''
-
-    # Subclasses should override.
-    def generate_headers_header(self):
-        return ''
-
-    # Subclasses should override.
-    def generate_implementation(self):
-        return ''
-
-    # Subclasses should override.
-    def generate_idl(self):
-        return ''
+        self._outputs = {}  # file_name -> generator
 
     def wrap_with_condition(self, string, condition):
         if not condition:
@@ -88,29 +68,13 @@
         with open(file_path, "w") as file_to_write:
             file_to_write.write(contents)
 
-    def _write_file(self, output_dir, generator, file_name):
-        contents = generator()
-        if type(contents) is dict:
-            contents = template_expander.apply_template(file_name + ".tmpl", contents)
-        if not contents:
-            return
+    def _write_file(self, output_dir, contents, file_name):
         path = os.path.join(output_dir, file_name)
         self._forcibly_create_text_file_at_path_with_contents(path, contents)
 
-    def write_header(self, output_dir):
-        self._write_file(output_dir, self.generate_header, self.class_name + '.h')
-
-    def write_headers_header(self, output_dir):
-        self._write_file(output_dir, self.generate_headers_header, self.class_name + 'Headers.h')
-
-    def write_interfaces_header(self, output_dir):
-        self._write_file(output_dir, self.generate_interfaces_header, self.class_name + 'Interfaces.h')
-
-    def write_implmentation(self, output_dir):
-        self._write_file(output_dir, self.generate_implementation, self.class_name + '.cpp')
-
-    def write_idl(self, output_dir):
-        self._write_file(output_dir, self.generate_idl, self.class_name + '.idl')
+    def write_files(self, output_dir):
+        for file_name, generator in self._outputs.items():
+            self._write_file(output_dir, generator(), file_name)
 
 
 class Maker(object):
@@ -152,8 +116,4 @@
         enabled_conditions = self._enabled_conditions_from_defines(options.defines)
 
         writer = self._writer_class(args, enabled_conditions)
-        writer.write_header(options.output_dir)
-        writer.write_headers_header(options.output_dir)
-        writer.write_interfaces_header(options.output_dir)
-        writer.write_implmentation(options.output_dir)
-        writer.write_idl(options.output_dir)
+        writer.write_files(options.output_dir)
diff --git a/core/scripts/make_css_property_names.py b/core/scripts/make_css_property_names.py
index 1c5756d..dc2cc17 100755
--- a/core/scripts/make_css_property_names.py
+++ b/core/scripts/make_css_property_names.py
@@ -171,6 +171,9 @@
 
     def __init__(self, file_paths, enabled_conditions):
         in_generator.Writer.__init__(self, file_paths, enabled_conditions)
+        self._outputs = {(self.class_name + ".h"): self.generate_header,
+                         (self.class_name + ".cpp"): self.generate_implementation,
+                        }
 
         all_properties = self.in_file.name_dictionaries
         self._aliases = filter(lambda property: property['alias_for'], all_properties)
diff --git a/core/scripts/make_css_value_keywords.py b/core/scripts/make_css_value_keywords.py
index 5cbd038..e0accad 100755
--- a/core/scripts/make_css_value_keywords.py
+++ b/core/scripts/make_css_value_keywords.py
@@ -90,6 +90,9 @@
 
     def __init__(self, file_paths, enabled_conditions):
         in_generator.Writer.__init__(self, file_paths, enabled_conditions)
+        self._outputs = {(self.class_name + ".h"): self.generate_header,
+                         (self.class_name + ".cpp"): self.generate_implementation,
+                        }
 
         all_properties = self.in_file.name_dictionaries
         self._value_keywords = filter(lambda property: not property['condition'] or property['condition'] in self._enabled_conditions, all_properties)
diff --git a/core/scripts/make_dom_exceptions.py b/core/scripts/make_dom_exceptions.py
index e945262..540ac3d 100755
--- a/core/scripts/make_dom_exceptions.py
+++ b/core/scripts/make_dom_exceptions.py
@@ -122,6 +122,11 @@
         'namespace': '',
     }
 
+    def __init__(self, in_file_path, enabled_conditions):
+        super(ExceptionCodeDescriptionWriter, self).__init__(in_file_path, enabled_conditions)
+        self._outputs[(self.class_name + ".cpp")] = self.generate_implementation
+        self._outputs[(self.class_name + ".h")] = self.generate_header
+
     def _exceptions(self):
         return self.in_file.name_dictionaries
 
diff --git a/core/scripts/make_event_factory.py b/core/scripts/make_event_factory.py
index 5a6653c..440328d 100644
--- a/core/scripts/make_event_factory.py
+++ b/core/scripts/make_event_factory.py
@@ -65,6 +65,10 @@
         'namespace': '',
     }
 
+    def __init__(self, in_file_path, enabled_conditions):
+        super(EventFactoryWriter, self).__init__(in_file_path, enabled_conditions)
+        self._outputs[(self.class_name + ".cpp")] = self.generate_implementation
+
     def _events(self):
         return self.in_file.name_dictionaries
 
diff --git a/core/scripts/make_internal_runtime_flags.py b/core/scripts/make_internal_runtime_flags.py
index dc33323..522e00f 100755
--- a/core/scripts/make_internal_runtime_flags.py
+++ b/core/scripts/make_internal_runtime_flags.py
@@ -32,6 +32,7 @@
 
 import in_generator
 import make_runtime_features
+import template_expander
 
 
 # We want exactly the same parsing as RuntimeFeatureWriter
@@ -39,20 +40,25 @@
 class InternalRuntimeFlagsWriter(make_runtime_features.RuntimeFeatureWriter):
     class_name = "InternalRuntimeFlags"
 
+    def __init__(self, in_file_path, enabled_conditions):
+        super(InternalRuntimeFlagsWriter, self).__init__(in_file_path, enabled_conditions)
+        self._outputs = {(self.class_name + ".idl"): self.generate_idl,
+                         (self.class_name + ".h"): self.generate_header,
+                        }
+
+    @template_expander.use_jinja(class_name + ".idl.tmpl")
     def generate_idl(self):
         return {
             'features': self._features,
         }
 
+    @template_expander.use_jinja(class_name + ".h.tmpl")
     def generate_header(self):
         return {
             'features': self._features,
             'feature_sets': self._feature_sets(),
         }
 
-    def generate_implementation(self):
-        return None
-
 
 if __name__ == "__main__":
     in_generator.Maker(InternalRuntimeFlagsWriter).main(sys.argv)
diff --git a/core/scripts/make_runtime_features.py b/core/scripts/make_runtime_features.py
index d0f9b96..e56b2cf 100755
--- a/core/scripts/make_runtime_features.py
+++ b/core/scripts/make_runtime_features.py
@@ -32,6 +32,7 @@
 
 from in_file import InFile
 import in_generator
+import template_expander
 
 
 class RuntimeFeatureWriter(in_generator.Writer):
@@ -50,6 +51,10 @@
 
     def __init__(self, in_file_path, enabled_conditions):
         super(RuntimeFeatureWriter, self).__init__(in_file_path, enabled_conditions)
+        self._outputs = {(self.class_name + ".h"): self.generate_header,
+                         (self.class_name + ".cpp"): self.generate_implementation,
+                        }
+
         self._features = self.in_file.name_dictionaries
         # Make sure the resulting dictionaries have all the keys we expect.
         for feature in self._features:
@@ -74,12 +79,14 @@
         # which is how we're referring to them in this generator.
         return self.valid_values['status']
 
+    @template_expander.use_jinja(class_name + ".h.tmpl")
     def generate_header(self):
         return {
             'features': self._features,
             'feature_sets': self._feature_sets(),
         }
 
+    @template_expander.use_jinja(class_name + ".cpp.tmpl")
     def generate_implementation(self):
         return {
             'features': self._features,
diff --git a/core/scripts/make_style_builder.py b/core/scripts/make_style_builder.py
index 88c358f..fab2d71 100755
--- a/core/scripts/make_style_builder.py
+++ b/core/scripts/make_style_builder.py
@@ -31,6 +31,7 @@
 import sys
 
 import in_generator
+import template_expander
 
 
 class StyleBuilderWriter(in_generator.Writer):
@@ -41,6 +42,10 @@
         'use_none': [True, False],
         'use_intrinsic': [True, False],
         'use_auto': [True, False],
+        'custom_all': [True, False],
+        'custom_initial': [True, False],
+        'custom_inherit': [True, False],
+        'custom_value': [True, False],
     }
     defaults = {
         'condition': None,
@@ -51,7 +56,13 @@
         'getter': None,
         'setter': None,
         'initial': None,
-# For the length apply type
+# Setting these stops default handlers being generated
+# Setting custom_all is the same as setting the other three
+        'custom_all': False,
+        'custom_initial': False,
+        'custom_inherit': False,
+        'custom_value': False,
+# For the length apply type. Will get moved out to StyleBuilderFunctions.cpp.tmpl
         'use_none': False,
         'use_intrinsic': False,
         'use_auto': False,
@@ -59,6 +70,11 @@
 
     def __init__(self, in_files, enabled_conditions):
         super(StyleBuilderWriter, self).__init__(in_files, enabled_conditions)
+        self._outputs = {("StyleBuilderFunctions.h"): self.generate_style_builder_functions_h,
+                         ("StyleBuilderFunctions.cpp"): self.generate_style_builder_functions_cpp,
+                         ("StyleBuilder.cpp"): self.generate_style_builder,
+                        }
+
         self._properties = self.in_file.name_dictionaries
 
         def set_if_none(property, key, value):
@@ -73,6 +89,12 @@
             set_if_none(property, "getter", self._lower_first(cc))
             set_if_none(property, "setter", "set" + cc)
             set_if_none(property, "initial", "initial" + cc)
+            if property["custom_all"]:
+                property["custom_initial"] = True
+                property["custom_inherit"] = True
+                property["custom_value"] = True
+
+        self._properties = dict((property["property_id"], property) for property in self._properties)
 
 # FIXME: some of these might be better in a utils file
     @staticmethod
@@ -87,7 +109,20 @@
     def _upper_first(s):
         return s[0].upper() + s[1:]
 
-    def generate_implementation(self):
+    @template_expander.use_jinja("StyleBuilderFunctions.h.tmpl")
+    def generate_style_builder_functions_h(self):
+        return {
+            "properties": self._properties,
+        }
+
+    @template_expander.use_jinja("StyleBuilderFunctions.cpp.tmpl")
+    def generate_style_builder_functions_cpp(self):
+        return {
+            "properties": self._properties,
+        }
+
+    @template_expander.use_jinja("StyleBuilder.cpp.tmpl")
+    def generate_style_builder(self):
         return {
             "properties": self._properties,
         }
diff --git a/core/scripts/name_macros.py b/core/scripts/name_macros.py
index d7928c3..8af5d28 100644
--- a/core/scripts/name_macros.py
+++ b/core/scripts/name_macros.py
@@ -79,6 +79,9 @@
         self._entries_by_conditional = {}
         self._unconditional_entries = []
         self._sort_entries_by_conditional()
+        self._outputs = {(self.class_name + "Headers.h"): self.generate_headers_header,
+                         (self.class_name + "Interfaces.h"): self.generate_interfaces_header,
+                        }
 
     def _sort_entries_by_conditional(self):
         unconditional_names = set()
diff --git a/core/scripts/template_expander.py b/core/scripts/template_expander.py
index 60a272c..aafeb68 100644
--- a/core/scripts/template_expander.py
+++ b/core/scripts/template_expander.py
@@ -41,3 +41,13 @@
     jinja_env = jinja2.Environment(loader=jinja2.FileSystemLoader([dirname, path_to_templates]))
     template = jinja_env.get_template(basename)
     return template.render(params)
+
+
+def use_jinja(template_file_name):
+    def real_decorator(generator):
+        def generator_internal(*args, **kwargs):
+            parameters = generator(*args, **kwargs)
+            return apply_template(template_file_name, parameters)
+        generator_internal.func_name = generator.func_name
+        return generator_internal
+    return real_decorator
diff --git a/core/storage/Storage.idl b/core/storage/Storage.idl
index d84944d..89cd95a 100644
--- a/core/storage/Storage.idl
+++ b/core/storage/Storage.idl
@@ -23,14 +23,13 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    CustomDeleteProperty,
-    CustomEnumerateProperty,
-    CustomIndexedSetter,
-    CustomNamedSetter
-] interface Storage {
-    [RaisesException, ImplementedAs=anonymousIndexedGetter] getter DOMString(unsigned long index);
+interface Storage {
+    [RaisesException, ImplementedAs=anonymousIndexedGetter, NotEnumerable] getter DOMString(unsigned long index);
+    [RaisesException, ImplementedAs=anonymousIndexedSetter] setter DOMString (unsigned long index, DOMString value);
+    [ImplementedAs=anonymousIndexedDeleter, RaisesException] deleter boolean (unsigned long index);
     [RaisesException, ImplementedAs=anonymousNamedGetter] getter DOMString(DOMString name);
+    [RaisesException, ImplementedAs=anonymousNamedSetter] setter DOMString(DOMString name, DOMString value);
+    [ImplementedAs=anonymousNamedDeleter, RaisesException] deleter boolean (DOMString name);
     [NotEnumerable, GetterRaisesException] readonly attribute unsigned long length;
     [NotEnumerable, TreatReturnedNullStringAs=Null, RaisesException] DOMString key(unsigned long index);
     [NotEnumerable, TreatReturnedNullStringAs=Null, PerWorldBindings, ActivityLog=AccessForIsolatedWorlds, RaisesException] DOMString getItem(DOMString key);
diff --git a/core/svg/ElementTimeControl.idl b/core/svg/ElementTimeControl.idl
index cad80aa..eb3047e 100644
--- a/core/svg/ElementTimeControl.idl
+++ b/core/svg/ElementTimeControl.idl
@@ -23,11 +23,8 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
- 
-[
-    Conditional=SVG
-    
-] interface ElementTimeControl { 
+
+interface ElementTimeControl {
     void beginElement();
     void beginElementAt([Default=Undefined] optional float offset);
     void endElement();
diff --git a/core/svg/SVGAElement.idl b/core/svg/SVGAElement.idl
index a273f16..c635c08 100644
--- a/core/svg/SVGAElement.idl
+++ b/core/svg/SVGAElement.idl
@@ -23,14 +23,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGAElement : SVGStyledElement,
-                                          SVGURIReference,
-                                          SVGTests,
-                                          SVGLangSpace,
-                                          SVGExternalResourcesRequired,
-                                          SVGTransformable {
+interface SVGAElement : SVGStyledElement,
+                        SVGURIReference,
+                        SVGTests,
+                        SVGLangSpace,
+                        SVGExternalResourcesRequired,
+                        SVGTransformable {
     readonly attribute SVGAnimatedString target;
 };
 
diff --git a/core/svg/SVGAltGlyphDefElement.idl b/core/svg/SVGAltGlyphDefElement.idl
index abe10b6..72721fa 100644
--- a/core/svg/SVGAltGlyphDefElement.idl
+++ b/core/svg/SVGAltGlyphDefElement.idl
@@ -17,6 +17,6 @@
  * Boston, MA 02110-1301, USA.
  */
 
-[Conditional=SVG&SVG_FONTS] interface SVGAltGlyphDefElement : SVGElement {
+[Conditional=SVG_FONTS] interface SVGAltGlyphDefElement : SVGElement {
 };
 
diff --git a/core/svg/SVGAltGlyphElement.idl b/core/svg/SVGAltGlyphElement.idl
index 8d8b1f4..7afc4ca 100644
--- a/core/svg/SVGAltGlyphElement.idl
+++ b/core/svg/SVGAltGlyphElement.idl
@@ -24,7 +24,7 @@
  */
 
 [
-    Conditional=SVG&SVG_FONTS
+    Conditional=SVG_FONTS
 ] interface SVGAltGlyphElement : SVGTextPositioningElement, SVGURIReference {
     [SetterRaisesException] attribute DOMString glyphRef;
     [SetterRaisesException] attribute DOMString format;
diff --git a/core/svg/SVGAltGlyphItemElement.idl b/core/svg/SVGAltGlyphItemElement.idl
index e4bb797..2b62708 100644
--- a/core/svg/SVGAltGlyphItemElement.idl
+++ b/core/svg/SVGAltGlyphItemElement.idl
@@ -17,6 +17,6 @@
  * Boston, MA 02110-1301, USA.
  */
 
-[Conditional=SVG&SVG_FONTS] interface SVGAltGlyphItemElement : SVGElement {
+[Conditional=SVG_FONTS] interface SVGAltGlyphItemElement : SVGElement {
 };
 
diff --git a/core/svg/SVGAngle.idl b/core/svg/SVGAngle.idl
index 2bbdeae..4501978 100644
--- a/core/svg/SVGAngle.idl
+++ b/core/svg/SVGAngle.idl
@@ -20,9 +20,7 @@
  * Boston, MA 02110-1301, USA.
  */
 
-[
-    Conditional=SVG
-] interface SVGAngle { 
+interface SVGAngle {
     // Angle Unit Types
     const unsigned short SVG_ANGLETYPE_UNKNOWN = 0;
     const unsigned short SVG_ANGLETYPE_UNSPECIFIED = 1;
diff --git a/core/svg/SVGAnimateColorElement.idl b/core/svg/SVGAnimateColorElement.idl
index 930e406..48fb42c 100644
--- a/core/svg/SVGAnimateColorElement.idl
+++ b/core/svg/SVGAnimateColorElement.idl
@@ -23,8 +23,6 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGAnimateColorElement : SVGAnimationElement {
+interface SVGAnimateColorElement : SVGAnimationElement {
 };
 
diff --git a/core/svg/SVGAnimateElement.idl b/core/svg/SVGAnimateElement.idl
index 95a10fb..eb848c4 100644
--- a/core/svg/SVGAnimateElement.idl
+++ b/core/svg/SVGAnimateElement.idl
@@ -23,8 +23,6 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGAnimateElement : SVGAnimationElement {
+interface SVGAnimateElement : SVGAnimationElement {
 };
 
diff --git a/core/svg/SVGAnimateMotionElement.idl b/core/svg/SVGAnimateMotionElement.idl
index 997febf..51003c6 100644
--- a/core/svg/SVGAnimateMotionElement.idl
+++ b/core/svg/SVGAnimateMotionElement.idl
@@ -23,8 +23,6 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGAnimateMotionElement : SVGAnimationElement {
+interface SVGAnimateMotionElement : SVGAnimationElement {
 };
 
diff --git a/core/svg/SVGAnimateTransformElement.idl b/core/svg/SVGAnimateTransformElement.idl
index d676f32..eddecc3 100644
--- a/core/svg/SVGAnimateTransformElement.idl
+++ b/core/svg/SVGAnimateTransformElement.idl
@@ -23,8 +23,6 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGAnimateTransformElement : SVGAnimationElement {
+interface SVGAnimateTransformElement : SVGAnimationElement {
 };
 
diff --git a/core/svg/SVGAnimatedAngle.idl b/core/svg/SVGAnimatedAngle.idl
index 3e96104..b6ede9f 100644
--- a/core/svg/SVGAnimatedAngle.idl
+++ b/core/svg/SVGAnimatedAngle.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGAnimatedAngle {
+interface SVGAnimatedAngle {
     readonly attribute SVGAngle baseVal;
     readonly attribute SVGAngle animVal;
 };
diff --git a/core/svg/SVGAnimatedBoolean.idl b/core/svg/SVGAnimatedBoolean.idl
index 7ad6bb1..0c5e90f 100644
--- a/core/svg/SVGAnimatedBoolean.idl
+++ b/core/svg/SVGAnimatedBoolean.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGAnimatedBoolean {
+interface SVGAnimatedBoolean {
     [StrictTypeChecking, SetterRaisesException] attribute boolean baseVal;
     readonly attribute boolean animVal;
 };
diff --git a/core/svg/SVGAnimatedEnumeration.idl b/core/svg/SVGAnimatedEnumeration.idl
index de96682..e4136f8 100644
--- a/core/svg/SVGAnimatedEnumeration.idl
+++ b/core/svg/SVGAnimatedEnumeration.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGAnimatedEnumeration {
+interface SVGAnimatedEnumeration {
     [StrictTypeChecking, SetterRaisesException] attribute unsigned short baseVal;
     readonly attribute unsigned short animVal;
 };
diff --git a/core/svg/SVGAnimatedInteger.idl b/core/svg/SVGAnimatedInteger.idl
index 5d6b15e..306846e 100644
--- a/core/svg/SVGAnimatedInteger.idl
+++ b/core/svg/SVGAnimatedInteger.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGAnimatedInteger {
+interface SVGAnimatedInteger {
     [StrictTypeChecking, SetterRaisesException] attribute long baseVal;
     readonly attribute long animVal;
 };
diff --git a/core/svg/SVGAnimatedLength.idl b/core/svg/SVGAnimatedLength.idl
index 241aaad..999d1c7 100644
--- a/core/svg/SVGAnimatedLength.idl
+++ b/core/svg/SVGAnimatedLength.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGAnimatedLength {
+interface SVGAnimatedLength {
     readonly attribute SVGLength baseVal;
     readonly attribute SVGLength animVal;
 };
diff --git a/core/svg/SVGAnimatedLengthList.idl b/core/svg/SVGAnimatedLengthList.idl
index 934748a..0e687a5 100644
--- a/core/svg/SVGAnimatedLengthList.idl
+++ b/core/svg/SVGAnimatedLengthList.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGAnimatedLengthList {
+interface SVGAnimatedLengthList {
     readonly attribute SVGLengthList baseVal;
     readonly attribute SVGLengthList animVal;
 };
diff --git a/core/svg/SVGAnimatedNumber.idl b/core/svg/SVGAnimatedNumber.idl
index 2fa7eba..73574d1 100644
--- a/core/svg/SVGAnimatedNumber.idl
+++ b/core/svg/SVGAnimatedNumber.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGAnimatedNumber {
+interface SVGAnimatedNumber {
     [StrictTypeChecking, SetterRaisesException] attribute float baseVal;
     readonly attribute float animVal;
 };
diff --git a/core/svg/SVGAnimatedNumberList.idl b/core/svg/SVGAnimatedNumberList.idl
index b912780..2f41c18 100644
--- a/core/svg/SVGAnimatedNumberList.idl
+++ b/core/svg/SVGAnimatedNumberList.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGAnimatedNumberList {
+interface SVGAnimatedNumberList {
     readonly attribute SVGNumberList baseVal;
     readonly attribute SVGNumberList animVal;
 };
diff --git a/core/svg/SVGAnimatedPreserveAspectRatio.idl b/core/svg/SVGAnimatedPreserveAspectRatio.idl
index a84c02d..4263cf5 100644
--- a/core/svg/SVGAnimatedPreserveAspectRatio.idl
+++ b/core/svg/SVGAnimatedPreserveAspectRatio.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGAnimatedPreserveAspectRatio {
+interface SVGAnimatedPreserveAspectRatio {
     readonly attribute SVGPreserveAspectRatio baseVal;
     readonly attribute SVGPreserveAspectRatio animVal;
 };
diff --git a/core/svg/SVGAnimatedRect.idl b/core/svg/SVGAnimatedRect.idl
index 99e9a62..6f55b0d 100644
--- a/core/svg/SVGAnimatedRect.idl
+++ b/core/svg/SVGAnimatedRect.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGAnimatedRect {
+interface SVGAnimatedRect {
     readonly attribute SVGRect baseVal;
     readonly attribute SVGRect animVal;
 };
diff --git a/core/svg/SVGAnimatedString.idl b/core/svg/SVGAnimatedString.idl
index a331bea..1f66bd6 100644
--- a/core/svg/SVGAnimatedString.idl
+++ b/core/svg/SVGAnimatedString.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGAnimatedString {
+interface SVGAnimatedString {
     [SetterRaisesException] attribute DOMString baseVal;
     readonly attribute DOMString animVal;
 };
diff --git a/core/svg/SVGAnimatedTransformList.idl b/core/svg/SVGAnimatedTransformList.idl
index 4ce7240..1608b3c 100644
--- a/core/svg/SVGAnimatedTransformList.idl
+++ b/core/svg/SVGAnimatedTransformList.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGAnimatedTransformList {
+interface SVGAnimatedTransformList {
     readonly attribute SVGTransformList baseVal;
     readonly attribute SVGTransformList animVal;
 };
diff --git a/core/svg/SVGAnimationElement.idl b/core/svg/SVGAnimationElement.idl
index 0507764..503ec0b 100644
--- a/core/svg/SVGAnimationElement.idl
+++ b/core/svg/SVGAnimationElement.idl
@@ -24,12 +24,11 @@
  */
 
 [
-    NoInterfaceObject,
-    Conditional=SVG
+    NoInterfaceObject
 ] interface SVGAnimationElement : SVGElement,
-                                                  SVGTests,
-                                                  SVGExternalResourcesRequired,
-                                                  ElementTimeControl {
+                                  SVGTests,
+                                  SVGExternalResourcesRequired,
+                                  ElementTimeControl {
     readonly attribute SVGElement targetElement;
 
     float getStartTime();
diff --git a/core/svg/SVGCircleElement.idl b/core/svg/SVGCircleElement.idl
index fa97208..97a6e26 100644
--- a/core/svg/SVGCircleElement.idl
+++ b/core/svg/SVGCircleElement.idl
@@ -24,13 +24,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGCircleElement : SVGStyledElement,
-                                               SVGTests,
-                                               SVGLangSpace,
-                                               SVGExternalResourcesRequired,
-                                               SVGTransformable {
+interface SVGCircleElement : SVGStyledElement,
+                             SVGTests,
+                             SVGLangSpace,
+                             SVGExternalResourcesRequired,
+                             SVGTransformable {
     readonly attribute SVGAnimatedLength cx;
     readonly attribute SVGAnimatedLength cy;
     readonly attribute SVGAnimatedLength r;
diff --git a/core/svg/SVGClipPathElement.idl b/core/svg/SVGClipPathElement.idl
index d1e1a74..7fee1c2 100644
--- a/core/svg/SVGClipPathElement.idl
+++ b/core/svg/SVGClipPathElement.idl
@@ -24,14 +24,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGClipPathElement : SVGStyledElement,
-                                                 SVGTests,
-                                                 SVGLangSpace,
-                                                 SVGExternalResourcesRequired,
-                                                 SVGTransformable
-                                              /* SVGUnitTypes */ { 
+interface SVGClipPathElement : SVGStyledElement,
+                               SVGTests,
+                               SVGLangSpace,
+                               SVGExternalResourcesRequired,
+                               SVGTransformable
+                               /* SVGUnitTypes */ {
     readonly attribute SVGAnimatedEnumeration clipPathUnits;
 };
 
diff --git a/core/svg/SVGColor.idl b/core/svg/SVGColor.idl
index 21c669e..6cce81e 100644
--- a/core/svg/SVGColor.idl
+++ b/core/svg/SVGColor.idl
@@ -19,9 +19,7 @@
  * Boston, MA 02110-1301, USA.
  */
 
-[
-    Conditional=SVG
-] interface SVGColor : CSSValue {
+interface SVGColor : CSSValue {
     const unsigned short SVG_COLORTYPE_UNKNOWN = 0;
     const unsigned short SVG_COLORTYPE_RGBCOLOR = 1;
     const unsigned short SVG_COLORTYPE_RGBCOLOR_ICCCOLOR = 2;
diff --git a/core/svg/SVGComponentTransferFunctionElement.idl b/core/svg/SVGComponentTransferFunctionElement.idl
index 393bef7..a5b045d 100644
--- a/core/svg/SVGComponentTransferFunctionElement.idl
+++ b/core/svg/SVGComponentTransferFunctionElement.idl
@@ -24,7 +24,6 @@
  */
 
 [
-    Conditional=SVG,
     DoNotCheckConstants
 ] interface SVGComponentTransferFunctionElement : SVGElement {
     // Component Transfer Types
diff --git a/core/svg/SVGCursorElement.idl b/core/svg/SVGCursorElement.idl
index 4686227..057c2b1 100644
--- a/core/svg/SVGCursorElement.idl
+++ b/core/svg/SVGCursorElement.idl
@@ -23,12 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGCursorElement : SVGElement,
-                                               SVGURIReference,
-                                               SVGTests,
-                                               SVGExternalResourcesRequired {
+interface SVGCursorElement : SVGElement,
+                             SVGURIReference,
+                             SVGTests,
+                             SVGExternalResourcesRequired {
     readonly attribute SVGAnimatedLength x;
     readonly attribute SVGAnimatedLength y;
 };
diff --git a/core/svg/SVGDefsElement.idl b/core/svg/SVGDefsElement.idl
index 3e99315..24a6d28 100644
--- a/core/svg/SVGDefsElement.idl
+++ b/core/svg/SVGDefsElement.idl
@@ -23,12 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGDefsElement : SVGStyledElement,
-                                             SVGTests,
-                                             SVGLangSpace,
-                                             SVGExternalResourcesRequired,
-                                             SVGTransformable {
+interface SVGDefsElement : SVGStyledElement,
+                           SVGTests,
+                           SVGLangSpace,
+                           SVGExternalResourcesRequired,
+                           SVGTransformable {
 };
 
diff --git a/core/svg/SVGDescElement.idl b/core/svg/SVGDescElement.idl
index 75043a2..2076880 100644
--- a/core/svg/SVGDescElement.idl
+++ b/core/svg/SVGDescElement.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGDescElement : SVGStyledElement,
-                                             SVGLangSpace {
+interface SVGDescElement : SVGStyledElement,
+                           SVGLangSpace {
 };
 
diff --git a/core/svg/SVGDocument.idl b/core/svg/SVGDocument.idl
index 1758849..64ec90c 100644
--- a/core/svg/SVGDocument.idl
+++ b/core/svg/SVGDocument.idl
@@ -20,7 +20,6 @@
  */
 
 [
-    Conditional=SVG,
     CustomToV8
 ] interface SVGDocument : Document {
     readonly attribute SVGSVGElement        rootElement;
diff --git a/core/svg/SVGElement.idl b/core/svg/SVGElement.idl
index 96a82e0..912a6a0 100644
--- a/core/svg/SVGElement.idl
+++ b/core/svg/SVGElement.idl
@@ -21,7 +21,6 @@
  */
 
 [
-    Conditional=SVG,
     CustomToV8
 ] interface SVGElement : Element {
     [Reflect] attribute DOMString id;
diff --git a/core/svg/SVGElementInstance.idl b/core/svg/SVGElementInstance.idl
index ad7b2cf..083e3ed 100644
--- a/core/svg/SVGElementInstance.idl
+++ b/core/svg/SVGElementInstance.idl
@@ -25,7 +25,6 @@
  */
 
 [
-    Conditional=SVG,
     EventTarget
 ] interface SVGElementInstance : EventTarget
 {
diff --git a/core/svg/SVGElementInstanceList.idl b/core/svg/SVGElementInstanceList.idl
index d6a2c9e..6fdb983 100644
--- a/core/svg/SVGElementInstanceList.idl
+++ b/core/svg/SVGElementInstanceList.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGElementInstanceList {
+interface SVGElementInstanceList {
     readonly attribute unsigned long length;
 
     SVGElementInstance item([Default=Undefined] optional unsigned long index);
diff --git a/core/svg/SVGEllipseElement.idl b/core/svg/SVGEllipseElement.idl
index bf50dec..db65f0e 100644
--- a/core/svg/SVGEllipseElement.idl
+++ b/core/svg/SVGEllipseElement.idl
@@ -23,13 +23,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGEllipseElement : SVGStyledElement,
-                                                SVGTests,
-                                                SVGLangSpace,
-                                                SVGExternalResourcesRequired,
-                                                SVGTransformable {
+interface SVGEllipseElement : SVGStyledElement,
+                              SVGTests,
+                              SVGLangSpace,
+                              SVGExternalResourcesRequired,
+                              SVGTransformable {
     readonly attribute SVGAnimatedLength cx;
     readonly attribute SVGAnimatedLength cy;
     readonly attribute SVGAnimatedLength rx;
diff --git a/core/svg/SVGException.idl b/core/svg/SVGException.idl
index ef26a64..574c743 100644
--- a/core/svg/SVGException.idl
+++ b/core/svg/SVGException.idl
@@ -19,7 +19,6 @@
  */
 
 [
-    Conditional=SVG,
     DoNotCheckConstants
 ] exception SVGException {
 
diff --git a/core/svg/SVGExternalResourcesRequired.idl b/core/svg/SVGExternalResourcesRequired.idl
index d7b4d27..2d0d402 100644
--- a/core/svg/SVGExternalResourcesRequired.idl
+++ b/core/svg/SVGExternalResourcesRequired.idl
@@ -25,8 +25,6 @@
  */
 
 [
-    Conditional=SVG,
-    
     DoNotGenerateToV8
 ] interface SVGExternalResourcesRequired { 
     readonly attribute SVGAnimatedBoolean externalResourcesRequired;
diff --git a/core/svg/SVGFEBlendElement.idl b/core/svg/SVGFEBlendElement.idl
index 2a9e620..17dd692 100644
--- a/core/svg/SVGFEBlendElement.idl
+++ b/core/svg/SVGFEBlendElement.idl
@@ -24,10 +24,9 @@
  */
 
 [
-    Conditional=SVG,
     DoNotCheckConstants
 ] interface SVGFEBlendElement : SVGStyledElement,
-                           SVGFilterPrimitiveStandardAttributes {
+                                SVGFilterPrimitiveStandardAttributes {
     // Blend Mode Types
     const unsigned short SVG_FEBLEND_MODE_UNKNOWN  = 0;
     const unsigned short SVG_FEBLEND_MODE_NORMAL   = 1;
diff --git a/core/svg/SVGFEColorMatrixElement.idl b/core/svg/SVGFEColorMatrixElement.idl
index 56ee414..90cc35d 100644
--- a/core/svg/SVGFEColorMatrixElement.idl
+++ b/core/svg/SVGFEColorMatrixElement.idl
@@ -24,10 +24,9 @@
  */
 
 [
-    Conditional=SVG,
     DoNotCheckConstants
 ] interface SVGFEColorMatrixElement : SVGStyledElement,
-                           SVGFilterPrimitiveStandardAttributes {
+                                      SVGFilterPrimitiveStandardAttributes {
     // Color Matrix Types
     const unsigned short SVG_FECOLORMATRIX_TYPE_UNKNOWN          = 0;
     const unsigned short SVG_FECOLORMATRIX_TYPE_MATRIX           = 1;
diff --git a/core/svg/SVGFEComponentTransferElement.idl b/core/svg/SVGFEComponentTransferElement.idl
index 69ad46e..b68de27 100644
--- a/core/svg/SVGFEComponentTransferElement.idl
+++ b/core/svg/SVGFEComponentTransferElement.idl
@@ -23,10 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGFEComponentTransferElement : SVGStyledElement,
-                           SVGFilterPrimitiveStandardAttributes {
+interface SVGFEComponentTransferElement : SVGStyledElement,
+                                          SVGFilterPrimitiveStandardAttributes {
     readonly attribute SVGAnimatedString in1;
 };
 
diff --git a/core/svg/SVGFECompositeElement.idl b/core/svg/SVGFECompositeElement.idl
index 980f1e9..1a4aa40 100644
--- a/core/svg/SVGFECompositeElement.idl
+++ b/core/svg/SVGFECompositeElement.idl
@@ -24,10 +24,9 @@
  */
 
 [
-    Conditional=SVG,
     DoNotCheckConstants
 ] interface SVGFECompositeElement : SVGStyledElement,
-                           SVGFilterPrimitiveStandardAttributes {
+                                    SVGFilterPrimitiveStandardAttributes {
     // Composite Operators
     const unsigned short SVG_FECOMPOSITE_OPERATOR_UNKNOWN    = 0;
     const unsigned short SVG_FECOMPOSITE_OPERATOR_OVER       = 1;
diff --git a/core/svg/SVGFEConvolveMatrixElement.idl b/core/svg/SVGFEConvolveMatrixElement.idl
index 0887bd6..1ae8935 100644
--- a/core/svg/SVGFEConvolveMatrixElement.idl
+++ b/core/svg/SVGFEConvolveMatrixElement.idl
@@ -24,10 +24,9 @@
  */
 
 [
-    Conditional=SVG,
     DoNotCheckConstants
 ] interface SVGFEConvolveMatrixElement : SVGStyledElement,
-                           SVGFilterPrimitiveStandardAttributes {
+                                         SVGFilterPrimitiveStandardAttributes {
     // Edge Mode Values
     const unsigned short SVG_EDGEMODE_UNKNOWN   = 0;
     const unsigned short SVG_EDGEMODE_DUPLICATE = 1;
diff --git a/core/svg/SVGFEDiffuseLightingElement.idl b/core/svg/SVGFEDiffuseLightingElement.idl
index f93e451..5cf37d8 100644
--- a/core/svg/SVGFEDiffuseLightingElement.idl
+++ b/core/svg/SVGFEDiffuseLightingElement.idl
@@ -23,10 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGFEDiffuseLightingElement : SVGStyledElement,
-                           SVGFilterPrimitiveStandardAttributes {
+interface SVGFEDiffuseLightingElement : SVGStyledElement,
+                                        SVGFilterPrimitiveStandardAttributes {
     readonly attribute SVGAnimatedString in1;
     readonly attribute SVGAnimatedNumber surfaceScale;
     readonly attribute SVGAnimatedNumber diffuseConstant;
diff --git a/core/svg/SVGFEDisplacementMapElement.idl b/core/svg/SVGFEDisplacementMapElement.idl
index 8556744..87570dd 100644
--- a/core/svg/SVGFEDisplacementMapElement.idl
+++ b/core/svg/SVGFEDisplacementMapElement.idl
@@ -24,10 +24,9 @@
  */
 
 [
-    Conditional=SVG,
     DoNotCheckConstants
 ] interface SVGFEDisplacementMapElement : SVGStyledElement,
-                           SVGFilterPrimitiveStandardAttributes {
+                                          SVGFilterPrimitiveStandardAttributes {
     // Channel Selectors
     const unsigned short SVG_CHANNEL_UNKNOWN = 0;
     const unsigned short SVG_CHANNEL_R       = 1;
diff --git a/core/svg/SVGFEDistantLightElement.idl b/core/svg/SVGFEDistantLightElement.idl
index 5eac5e4..dd24f21 100644
--- a/core/svg/SVGFEDistantLightElement.idl
+++ b/core/svg/SVGFEDistantLightElement.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGFEDistantLightElement : SVGElement {
+interface SVGFEDistantLightElement : SVGElement {
     readonly attribute SVGAnimatedNumber azimuth;
     readonly attribute SVGAnimatedNumber elevation;
 };
diff --git a/core/svg/SVGFEDropShadowElement.idl b/core/svg/SVGFEDropShadowElement.idl
index 4ad42e0..840f96f 100644
--- a/core/svg/SVGFEDropShadowElement.idl
+++ b/core/svg/SVGFEDropShadowElement.idl
@@ -17,10 +17,8 @@
  * Boston, MA 02110-1301, USA.
  */
 
-[
-    Conditional=SVG
-] interface SVGFEDropShadowElement : SVGStyledElement,
-                           SVGFilterPrimitiveStandardAttributes {
+interface SVGFEDropShadowElement : SVGStyledElement,
+                                   SVGFilterPrimitiveStandardAttributes {
     readonly attribute SVGAnimatedString in1;
     readonly attribute SVGAnimatedNumber dx;
     readonly attribute SVGAnimatedNumber dy;
diff --git a/core/svg/SVGFEFloodElement.idl b/core/svg/SVGFEFloodElement.idl
index e844c7e..86c973c 100644
--- a/core/svg/SVGFEFloodElement.idl
+++ b/core/svg/SVGFEFloodElement.idl
@@ -23,8 +23,6 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGFEFloodElement : SVGStyledElement,
-                           SVGFilterPrimitiveStandardAttributes {
+interface SVGFEFloodElement : SVGStyledElement,
+                              SVGFilterPrimitiveStandardAttributes {
 };
diff --git a/core/svg/SVGFEFuncAElement.idl b/core/svg/SVGFEFuncAElement.idl
index 77ee553..faab472 100644
--- a/core/svg/SVGFEFuncAElement.idl
+++ b/core/svg/SVGFEFuncAElement.idl
@@ -23,8 +23,6 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGFEFuncAElement : SVGComponentTransferFunctionElement {
+interface SVGFEFuncAElement : SVGComponentTransferFunctionElement {
 };
 
diff --git a/core/svg/SVGFEFuncBElement.idl b/core/svg/SVGFEFuncBElement.idl
index 07d5e2c..69945cb 100644
--- a/core/svg/SVGFEFuncBElement.idl
+++ b/core/svg/SVGFEFuncBElement.idl
@@ -23,8 +23,6 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGFEFuncBElement : SVGComponentTransferFunctionElement {
+interface SVGFEFuncBElement : SVGComponentTransferFunctionElement {
 };
 
diff --git a/core/svg/SVGFEFuncGElement.idl b/core/svg/SVGFEFuncGElement.idl
index 78dfe8d..022e8d1 100644
--- a/core/svg/SVGFEFuncGElement.idl
+++ b/core/svg/SVGFEFuncGElement.idl
@@ -23,8 +23,6 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGFEFuncGElement : SVGComponentTransferFunctionElement {
+interface SVGFEFuncGElement : SVGComponentTransferFunctionElement {
 };
 
diff --git a/core/svg/SVGFEFuncRElement.idl b/core/svg/SVGFEFuncRElement.idl
index c5f7aec..2391da1 100644
--- a/core/svg/SVGFEFuncRElement.idl
+++ b/core/svg/SVGFEFuncRElement.idl
@@ -23,8 +23,6 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGFEFuncRElement : SVGComponentTransferFunctionElement {
+interface SVGFEFuncRElement : SVGComponentTransferFunctionElement {
 };
 
diff --git a/core/svg/SVGFEGaussianBlurElement.idl b/core/svg/SVGFEGaussianBlurElement.idl
index ccfdab6..ea8b6a8 100644
--- a/core/svg/SVGFEGaussianBlurElement.idl
+++ b/core/svg/SVGFEGaussianBlurElement.idl
@@ -23,10 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGFEGaussianBlurElement : SVGStyledElement,
-                           SVGFilterPrimitiveStandardAttributes {
+interface SVGFEGaussianBlurElement : SVGStyledElement,
+                                     SVGFilterPrimitiveStandardAttributes {
     readonly attribute SVGAnimatedString in1;
     readonly attribute SVGAnimatedNumber stdDeviationX;
     readonly attribute SVGAnimatedNumber stdDeviationY;
diff --git a/core/svg/SVGFEImageElement.idl b/core/svg/SVGFEImageElement.idl
index 9a484a0..2220f7d 100644
--- a/core/svg/SVGFEImageElement.idl
+++ b/core/svg/SVGFEImageElement.idl
@@ -23,13 +23,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGFEImageElement : SVGStyledElement,
-                                                        SVGURIReference,
-                                                        SVGLangSpace,
-                                                        SVGExternalResourcesRequired,
-                                                        SVGFilterPrimitiveStandardAttributes {
+interface SVGFEImageElement : SVGStyledElement,
+                              SVGURIReference,
+                              SVGLangSpace,
+                              SVGExternalResourcesRequired,
+                              SVGFilterPrimitiveStandardAttributes {
     readonly attribute SVGAnimatedPreserveAspectRatio preserveAspectRatio;
 };
 
diff --git a/core/svg/SVGFEMergeElement.idl b/core/svg/SVGFEMergeElement.idl
index f5dc646..cbb7cdf 100644
--- a/core/svg/SVGFEMergeElement.idl
+++ b/core/svg/SVGFEMergeElement.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGFEMergeElement : SVGStyledElement,
-                           SVGFilterPrimitiveStandardAttributes {
+interface SVGFEMergeElement : SVGStyledElement,
+                              SVGFilterPrimitiveStandardAttributes {
 };
 
diff --git a/core/svg/SVGFEMergeNodeElement.idl b/core/svg/SVGFEMergeNodeElement.idl
index 9d24447..8595c51 100644
--- a/core/svg/SVGFEMergeNodeElement.idl
+++ b/core/svg/SVGFEMergeNodeElement.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGFEMergeNodeElement : SVGElement {
+interface SVGFEMergeNodeElement : SVGElement {
     readonly attribute SVGAnimatedString in1;
 };
 
diff --git a/core/svg/SVGFEMorphologyElement.idl b/core/svg/SVGFEMorphologyElement.idl
index 78fbbaf..dcb1efe 100644
--- a/core/svg/SVGFEMorphologyElement.idl
+++ b/core/svg/SVGFEMorphologyElement.idl
@@ -24,10 +24,9 @@
  */
 
 [
-    Conditional=SVG,
     DoNotCheckConstants
 ] interface SVGFEMorphologyElement : SVGStyledElement,
-                           SVGFilterPrimitiveStandardAttributes {
+                                     SVGFilterPrimitiveStandardAttributes {
     // Morphology Operators
     const unsigned short SVG_MORPHOLOGY_OPERATOR_UNKNOWN  = 0;
     const unsigned short SVG_MORPHOLOGY_OPERATOR_ERODE    = 1;
diff --git a/core/svg/SVGFEOffsetElement.idl b/core/svg/SVGFEOffsetElement.idl
index c4fb7d4..11d4ebe 100644
--- a/core/svg/SVGFEOffsetElement.idl
+++ b/core/svg/SVGFEOffsetElement.idl
@@ -23,10 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGFEOffsetElement : SVGStyledElement,
-                           SVGFilterPrimitiveStandardAttributes {
+interface SVGFEOffsetElement : SVGStyledElement,
+                               SVGFilterPrimitiveStandardAttributes {
     readonly attribute SVGAnimatedString in1;
     readonly attribute SVGAnimatedNumber dx;
     readonly attribute SVGAnimatedNumber dy;
diff --git a/core/svg/SVGFEPointLightElement.idl b/core/svg/SVGFEPointLightElement.idl
index d57829c..2ba36ed 100644
--- a/core/svg/SVGFEPointLightElement.idl
+++ b/core/svg/SVGFEPointLightElement.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGFEPointLightElement : SVGElement {
+interface SVGFEPointLightElement : SVGElement {
     readonly attribute SVGAnimatedNumber x;
     readonly attribute SVGAnimatedNumber y;
     readonly attribute SVGAnimatedNumber z;
diff --git a/core/svg/SVGFESpecularLightingElement.idl b/core/svg/SVGFESpecularLightingElement.idl
index e096654..c9b72bc 100644
--- a/core/svg/SVGFESpecularLightingElement.idl
+++ b/core/svg/SVGFESpecularLightingElement.idl
@@ -23,10 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGFESpecularLightingElement : SVGStyledElement,
-                           SVGFilterPrimitiveStandardAttributes {
+interface SVGFESpecularLightingElement : SVGStyledElement,
+                                         SVGFilterPrimitiveStandardAttributes {
     readonly attribute SVGAnimatedString in1;
     readonly attribute SVGAnimatedNumber surfaceScale;
     readonly attribute SVGAnimatedNumber specularConstant;
diff --git a/core/svg/SVGFESpotLightElement.idl b/core/svg/SVGFESpotLightElement.idl
index 7867ada..af52685 100644
--- a/core/svg/SVGFESpotLightElement.idl
+++ b/core/svg/SVGFESpotLightElement.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGFESpotLightElement : SVGElement {
+interface SVGFESpotLightElement : SVGElement {
     readonly attribute SVGAnimatedNumber x;
     readonly attribute SVGAnimatedNumber y;
     readonly attribute SVGAnimatedNumber z;
diff --git a/core/svg/SVGFETileElement.idl b/core/svg/SVGFETileElement.idl
index d97e67b..352fb75 100644
--- a/core/svg/SVGFETileElement.idl
+++ b/core/svg/SVGFETileElement.idl
@@ -23,10 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGFETileElement : SVGStyledElement,
-                           SVGFilterPrimitiveStandardAttributes {
+interface SVGFETileElement : SVGStyledElement,
+                             SVGFilterPrimitiveStandardAttributes {
     readonly attribute SVGAnimatedString in1;
 };
 
diff --git a/core/svg/SVGFETurbulenceElement.idl b/core/svg/SVGFETurbulenceElement.idl
index ec9ca2e..b4a326f 100644
--- a/core/svg/SVGFETurbulenceElement.idl
+++ b/core/svg/SVGFETurbulenceElement.idl
@@ -24,10 +24,9 @@
  */
 
 [
-    Conditional=SVG,
     DoNotCheckConstants
 ] interface SVGFETurbulenceElement : SVGStyledElement,
-                           SVGFilterPrimitiveStandardAttributes {
+                                     SVGFilterPrimitiveStandardAttributes {
     // Turbulence Types
     const unsigned short SVG_TURBULENCE_TYPE_UNKNOWN      = 0;
     const unsigned short SVG_TURBULENCE_TYPE_FRACTALNOISE = 1;
diff --git a/core/svg/SVGFilterElement.idl b/core/svg/SVGFilterElement.idl
index 7e3ca7e..a33b461 100644
--- a/core/svg/SVGFilterElement.idl
+++ b/core/svg/SVGFilterElement.idl
@@ -24,13 +24,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGFilterElement : SVGStyledElement,
-                                               SVGURIReference,
-                                               SVGLangSpace,
-                                               SVGExternalResourcesRequired
-                                            /* SVGUnitTypes */ {  
+interface SVGFilterElement : SVGStyledElement,
+                             SVGURIReference,
+                             SVGLangSpace,
+                             SVGExternalResourcesRequired
+                             /* SVGUnitTypes */ {
     readonly attribute SVGAnimatedEnumeration filterUnits;
     readonly attribute SVGAnimatedEnumeration primitiveUnits;
     readonly attribute SVGAnimatedLength      x;
diff --git a/core/svg/SVGFilterPrimitiveStandardAttributes.idl b/core/svg/SVGFilterPrimitiveStandardAttributes.idl
index 3bc71e4..7c524f3 100644
--- a/core/svg/SVGFilterPrimitiveStandardAttributes.idl
+++ b/core/svg/SVGFilterPrimitiveStandardAttributes.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGFilterPrimitiveStandardAttributes {
+interface SVGFilterPrimitiveStandardAttributes {
     readonly attribute SVGAnimatedLength x;
     readonly attribute SVGAnimatedLength y;
     readonly attribute SVGAnimatedLength width;
diff --git a/core/svg/SVGFitToViewBox.idl b/core/svg/SVGFitToViewBox.idl
index 625a9d4..261684e 100644
--- a/core/svg/SVGFitToViewBox.idl
+++ b/core/svg/SVGFitToViewBox.idl
@@ -25,8 +25,6 @@
  */
 
 [
-    Conditional=SVG,
-    
     DoNotGenerateToV8
 ] interface SVGFitToViewBox {
     readonly attribute SVGAnimatedRect                viewBox;
diff --git a/core/svg/SVGFontElement.idl b/core/svg/SVGFontElement.idl
index feef706..7c8b9ff 100644
--- a/core/svg/SVGFontElement.idl
+++ b/core/svg/SVGFontElement.idl
@@ -24,7 +24,7 @@
  */
 
 [
-    Conditional=SVG&SVG_FONTS
+    Conditional=SVG_FONTS
 ] interface SVGFontElement : SVGElement {
 };
 
diff --git a/core/svg/SVGFontFaceElement.idl b/core/svg/SVGFontFaceElement.idl
index aa2a395..1286a4e 100644
--- a/core/svg/SVGFontFaceElement.idl
+++ b/core/svg/SVGFontFaceElement.idl
@@ -24,7 +24,7 @@
  */
 
 [
-    Conditional=SVG&SVG_FONTS
+    Conditional=SVG_FONTS
 ] interface SVGFontFaceElement : SVGElement {
 };
 
diff --git a/core/svg/SVGFontFaceFormatElement.idl b/core/svg/SVGFontFaceFormatElement.idl
index 837402c..e468579 100644
--- a/core/svg/SVGFontFaceFormatElement.idl
+++ b/core/svg/SVGFontFaceFormatElement.idl
@@ -24,7 +24,7 @@
  */
 
 [
-    Conditional=SVG&SVG_FONTS
+    Conditional=SVG_FONTS
 ] interface SVGFontFaceFormatElement : SVGElement {
 };
 
diff --git a/core/svg/SVGFontFaceNameElement.idl b/core/svg/SVGFontFaceNameElement.idl
index 7288cd2..4f41fce 100644
--- a/core/svg/SVGFontFaceNameElement.idl
+++ b/core/svg/SVGFontFaceNameElement.idl
@@ -24,7 +24,7 @@
  */
 
 [
-    Conditional=SVG&SVG_FONTS
+    Conditional=SVG_FONTS
 ] interface SVGFontFaceNameElement : SVGElement {
 };
 
diff --git a/core/svg/SVGFontFaceSrcElement.idl b/core/svg/SVGFontFaceSrcElement.idl
index c86091a..e85f13a 100644
--- a/core/svg/SVGFontFaceSrcElement.idl
+++ b/core/svg/SVGFontFaceSrcElement.idl
@@ -24,7 +24,7 @@
  */
 
 [
-    Conditional=SVG&SVG_FONTS
+    Conditional=SVG_FONTS
 ] interface SVGFontFaceSrcElement : SVGElement {
 };
 
diff --git a/core/svg/SVGFontFaceUriElement.idl b/core/svg/SVGFontFaceUriElement.idl
index 48037a0..234c2e5 100644
--- a/core/svg/SVGFontFaceUriElement.idl
+++ b/core/svg/SVGFontFaceUriElement.idl
@@ -24,7 +24,7 @@
  */
 
 [
-    Conditional=SVG&SVG_FONTS
+    Conditional=SVG_FONTS
 ] interface SVGFontFaceUriElement : SVGElement {
 };
 
diff --git a/core/svg/SVGForeignObjectElement.idl b/core/svg/SVGForeignObjectElement.idl
index eaa6db1..eecedf8 100644
--- a/core/svg/SVGForeignObjectElement.idl
+++ b/core/svg/SVGForeignObjectElement.idl
@@ -23,13 +23,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGForeignObjectElement : SVGStyledElement,
-                                                      SVGTests,
-                                                      SVGLangSpace,
-                                                      SVGExternalResourcesRequired,
-                                                      SVGTransformable {
+interface SVGForeignObjectElement : SVGStyledElement,
+                                    SVGTests,
+                                    SVGLangSpace,
+                                    SVGExternalResourcesRequired,
+                                    SVGTransformable {
     readonly attribute SVGAnimatedLength x;
     readonly attribute SVGAnimatedLength y;
     readonly attribute SVGAnimatedLength width;
diff --git a/core/svg/SVGGElement.idl b/core/svg/SVGGElement.idl
index 62e588c..a6dd6b3 100644
--- a/core/svg/SVGGElement.idl
+++ b/core/svg/SVGGElement.idl
@@ -23,12 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGGElement : SVGStyledElement,
-                                          SVGTests,
-                                          SVGLangSpace,
-                                          SVGExternalResourcesRequired,
-                                          SVGTransformable {
+interface SVGGElement : SVGStyledElement,
+                        SVGTests,
+                        SVGLangSpace,
+                        SVGExternalResourcesRequired,
+                        SVGTransformable {
 };
 
diff --git a/core/svg/SVGGlyphElement.idl b/core/svg/SVGGlyphElement.idl
index a05b5c8..e75e2cf 100644
--- a/core/svg/SVGGlyphElement.idl
+++ b/core/svg/SVGGlyphElement.idl
@@ -24,7 +24,7 @@
  */
 
 [
-    Conditional=SVG&SVG_FONTS
+    Conditional=SVG_FONTS
 ] interface SVGGlyphElement : SVGElement {
 };
 
diff --git a/core/svg/SVGGlyphRefElement.idl b/core/svg/SVGGlyphRefElement.idl
index 1a052d7..123e8a5 100644
--- a/core/svg/SVGGlyphRefElement.idl
+++ b/core/svg/SVGGlyphRefElement.idl
@@ -17,14 +17,14 @@
  * Boston, MA 02110-1301, USA.
  */
 
-[Conditional=SVG&SVG_FONTS] interface SVGGlyphRefElement : SVGStyledElement,
+[Conditional=SVG_FONTS] interface SVGGlyphRefElement : SVGStyledElement,
                                                            SVGURIReference {
     // FIXME: Use [Reflect] after https://bugs.webkit.org/show_bug.cgi?id=64843 is fixed.
-    [SetterRaisesException] attribute DOMString glyphRef;
+    attribute DOMString glyphRef;
     [Reflect] attribute DOMString format;
-    [SetterRaisesException] attribute float x;
-    [SetterRaisesException] attribute float y;
-    [SetterRaisesException] attribute float dx;
-    [SetterRaisesException] attribute float dy;
+    attribute float x;
+    attribute float y;
+    attribute float dx;
+    attribute float dy;
 };
 
diff --git a/core/svg/SVGGradientElement.idl b/core/svg/SVGGradientElement.idl
index 02d3693..50047cf 100644
--- a/core/svg/SVGGradientElement.idl
+++ b/core/svg/SVGGradientElement.idl
@@ -24,12 +24,11 @@
  */
 
 [
-    Conditional=SVG,
     DoNotCheckConstants
 ] interface SVGGradientElement : SVGStyledElement,
-                       SVGURIReference,
-                       SVGExternalResourcesRequired
-                       /* SVGUnitTypes */ {
+                                 SVGURIReference,
+                                 SVGExternalResourcesRequired
+                                 /* SVGUnitTypes */ {
     // Spread Method Types
     const unsigned short SVG_SPREADMETHOD_UNKNOWN = 0;
     const unsigned short SVG_SPREADMETHOD_PAD     = 1;
diff --git a/core/svg/SVGHKernElement.idl b/core/svg/SVGHKernElement.idl
index 9bca9f7..20fee21 100644
--- a/core/svg/SVGHKernElement.idl
+++ b/core/svg/SVGHKernElement.idl
@@ -18,7 +18,7 @@
  */
 
 [
-    Conditional=SVG&SVG_FONTS
+    Conditional=SVG_FONTS
 ] interface SVGHKernElement : SVGElement {
 };
 
diff --git a/core/svg/SVGImageElement.idl b/core/svg/SVGImageElement.idl
index 76add45..e063778 100644
--- a/core/svg/SVGImageElement.idl
+++ b/core/svg/SVGImageElement.idl
@@ -23,14 +23,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGImageElement : SVGStyledElement,
-                                              SVGURIReference,
-                                              SVGTests,
-                                              SVGLangSpace,
-                                              SVGExternalResourcesRequired,
-                                              SVGTransformable {
+interface SVGImageElement : SVGStyledElement,
+                            SVGURIReference,
+                            SVGTests,
+                            SVGLangSpace,
+                            SVGExternalResourcesRequired,
+                            SVGTransformable {
     readonly attribute SVGAnimatedLength x;
     readonly attribute SVGAnimatedLength y;
     readonly attribute SVGAnimatedLength width;
diff --git a/core/svg/SVGLangSpace.idl b/core/svg/SVGLangSpace.idl
index 1b59627..1bc44be 100644
--- a/core/svg/SVGLangSpace.idl
+++ b/core/svg/SVGLangSpace.idl
@@ -25,8 +25,6 @@
  */
 
 [
-    Conditional=SVG,
-    
     DoNotGenerateToV8
 ] interface SVGLangSpace {
              attribute DOMString xmllang;
diff --git a/core/svg/SVGLength.idl b/core/svg/SVGLength.idl
index 4c41ba5..e9fd4b6 100644
--- a/core/svg/SVGLength.idl
+++ b/core/svg/SVGLength.idl
@@ -20,9 +20,7 @@
  * Boston, MA 02110-1301, USA.
  */
 
-[
-    Conditional=SVG
-] interface SVGLength { 
+interface SVGLength {
     // Length Unit Types
     const unsigned short SVG_LENGTHTYPE_UNKNOWN    = 0;
     const unsigned short SVG_LENGTHTYPE_NUMBER     = 1;
diff --git a/core/svg/SVGLengthList.idl b/core/svg/SVGLengthList.idl
index f93ce0a..af3ca10 100644
--- a/core/svg/SVGLengthList.idl
+++ b/core/svg/SVGLengthList.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGLengthList { 
+interface SVGLengthList {
     readonly attribute unsigned long numberOfItems;
 
     [RaisesException] void clear();
diff --git a/core/svg/SVGLineElement.idl b/core/svg/SVGLineElement.idl
index a835271..2ecbc2d 100644
--- a/core/svg/SVGLineElement.idl
+++ b/core/svg/SVGLineElement.idl
@@ -23,13 +23,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGLineElement : SVGStyledElement,
-                                             SVGTests,
-                                             SVGLangSpace,
-                                             SVGExternalResourcesRequired,
-                                             SVGTransformable {
+interface SVGLineElement : SVGStyledElement,
+                           SVGTests,
+                           SVGLangSpace,
+                           SVGExternalResourcesRequired,
+                           SVGTransformable {
     readonly attribute SVGAnimatedLength x1;
     readonly attribute SVGAnimatedLength y1;
     readonly attribute SVGAnimatedLength x2;
diff --git a/core/svg/SVGLinearGradientElement.idl b/core/svg/SVGLinearGradientElement.idl
index 4aa3435..0d8964a 100644
--- a/core/svg/SVGLinearGradientElement.idl
+++ b/core/svg/SVGLinearGradientElement.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGLinearGradientElement : SVGGradientElement {
+interface SVGLinearGradientElement : SVGGradientElement {
     readonly attribute SVGAnimatedLength x1;
     readonly attribute SVGAnimatedLength y1;
     readonly attribute SVGAnimatedLength x2;
diff --git a/core/svg/SVGLocatable.idl b/core/svg/SVGLocatable.idl
index 1e8f3fe..d5a5363 100644
--- a/core/svg/SVGLocatable.idl
+++ b/core/svg/SVGLocatable.idl
@@ -25,8 +25,6 @@
  */
 
 [
-    Conditional=SVG,
-    
     DoNotGenerateToV8
 ] interface SVGLocatable {
     readonly attribute SVGElement nearestViewportElement;
diff --git a/core/svg/SVGMPathElement.idl b/core/svg/SVGMPathElement.idl
index 57f3a42..c3a72ac 100644
--- a/core/svg/SVGMPathElement.idl
+++ b/core/svg/SVGMPathElement.idl
@@ -23,10 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGMPathElement : SVGElement,
-                                                            SVGURIReference,
-                                                            SVGExternalResourcesRequired {
+interface SVGMPathElement : SVGElement,
+                            SVGURIReference,
+                            SVGExternalResourcesRequired {
 };
 
diff --git a/core/svg/SVGMarkerElement.idl b/core/svg/SVGMarkerElement.idl
index be1d003..757abc1 100644
--- a/core/svg/SVGMarkerElement.idl
+++ b/core/svg/SVGMarkerElement.idl
@@ -23,12 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGMarkerElement : SVGStyledElement,
-                                               SVGLangSpace,
-                                               SVGExternalResourcesRequired,
-                                               SVGFitToViewBox { 
+interface SVGMarkerElement : SVGStyledElement,
+                             SVGLangSpace,
+                             SVGExternalResourcesRequired,
+                             SVGFitToViewBox {
     // Marker Unit Types
     const unsigned short SVG_MARKERUNITS_UNKNOWN        = 0;
     const unsigned short SVG_MARKERUNITS_USERSPACEONUSE = 1;
diff --git a/core/svg/SVGMaskElement.idl b/core/svg/SVGMaskElement.idl
index 1a40de9..66cad0c 100644
--- a/core/svg/SVGMaskElement.idl
+++ b/core/svg/SVGMaskElement.idl
@@ -23,12 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGMaskElement : SVGStyledElement,
-                                             SVGTests,
-                                             SVGLangSpace,
-                                             SVGExternalResourcesRequired {
+interface SVGMaskElement : SVGStyledElement,
+                           SVGTests,
+                           SVGLangSpace,
+                           SVGExternalResourcesRequired {
     readonly attribute SVGAnimatedEnumeration maskUnits;
     readonly attribute SVGAnimatedEnumeration maskContentUnits;
 
diff --git a/core/svg/SVGMatrix.idl b/core/svg/SVGMatrix.idl
index 714f804..dc871be 100644
--- a/core/svg/SVGMatrix.idl
+++ b/core/svg/SVGMatrix.idl
@@ -20,9 +20,7 @@
  * Boston, MA 02110-1301, USA.
  */
 
-[
-    Conditional=SVG
-] interface SVGMatrix {
+interface SVGMatrix {
     // FIXME: these attributes should all be floats but since we implement
     // AffineTransform with doubles setting these as doubles makes more sense.
     [StrictTypeChecking] attribute double a;
diff --git a/core/svg/SVGMetadataElement.idl b/core/svg/SVGMetadataElement.idl
index 877c8b1..fc1500a 100644
--- a/core/svg/SVGMetadataElement.idl
+++ b/core/svg/SVGMetadataElement.idl
@@ -19,8 +19,6 @@
  * Boston, MA 02110-1301, USA.
  */
 
-[
-    Conditional=SVG
-] interface SVGMetadataElement : SVGElement {
+interface SVGMetadataElement : SVGElement {
 };
 
diff --git a/core/svg/SVGMissingGlyphElement.idl b/core/svg/SVGMissingGlyphElement.idl
index 647741a..f52c16b 100644
--- a/core/svg/SVGMissingGlyphElement.idl
+++ b/core/svg/SVGMissingGlyphElement.idl
@@ -24,7 +24,7 @@
  */
 
 [
-    Conditional=SVG&SVG_FONTS
+    Conditional=SVG_FONTS
 ] interface SVGMissingGlyphElement : SVGStyledElement {
 };
 
diff --git a/core/svg/SVGNumber.idl b/core/svg/SVGNumber.idl
index 20c767e..c77bbc9 100644
--- a/core/svg/SVGNumber.idl
+++ b/core/svg/SVGNumber.idl
@@ -20,9 +20,7 @@
  * Boston, MA 02110-1301, USA.
  */
 
-[
-    Conditional=SVG
-] interface SVGNumber {
+interface SVGNumber {
     [StrictTypeChecking] attribute float value;
 };
 
diff --git a/core/svg/SVGNumberList.idl b/core/svg/SVGNumberList.idl
index de11a23..78157f6 100644
--- a/core/svg/SVGNumberList.idl
+++ b/core/svg/SVGNumberList.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGNumberList {
+interface SVGNumberList {
     readonly attribute unsigned long numberOfItems;
 
     [RaisesException] void clear();
diff --git a/core/svg/SVGPaint.idl b/core/svg/SVGPaint.idl
index b1cd658..7735f83 100644
--- a/core/svg/SVGPaint.idl
+++ b/core/svg/SVGPaint.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPaint : SVGColor {
+interface SVGPaint : SVGColor {
     const unsigned short SVG_PAINTTYPE_UNKNOWN = 0;
     const unsigned short SVG_PAINTTYPE_RGBCOLOR = 1;
     const unsigned short SVG_PAINTTYPE_RGBCOLOR_ICCCOLOR = 2;
diff --git a/core/svg/SVGPathElement.idl b/core/svg/SVGPathElement.idl
index 9a7011d..8608fc3 100644
--- a/core/svg/SVGPathElement.idl
+++ b/core/svg/SVGPathElement.idl
@@ -24,13 +24,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPathElement : SVGStyledElement,
-                                             SVGTests,
-                                             SVGLangSpace,
-                                             SVGExternalResourcesRequired,
-                                             SVGTransformable {
+interface SVGPathElement : SVGStyledElement,
+                           SVGTests,
+                           SVGLangSpace,
+                           SVGExternalResourcesRequired,
+                           SVGTransformable {
     readonly attribute SVGAnimatedNumber pathLength;
 
     float getTotalLength();
diff --git a/core/svg/SVGPathSeg.idl b/core/svg/SVGPathSeg.idl
index a0691bb..f5b1ae5 100644
--- a/core/svg/SVGPathSeg.idl
+++ b/core/svg/SVGPathSeg.idl
@@ -25,9 +25,7 @@
  */
 
 [
-    Conditional=SVG,
     CustomToV8
-    
 ] interface SVGPathSeg {
     // Path Segment Types
     const unsigned short PATHSEG_UNKNOWN = 0;
diff --git a/core/svg/SVGPathSegArcAbs.idl b/core/svg/SVGPathSegArcAbs.idl
index fe8fb52..90bda4c 100644
--- a/core/svg/SVGPathSegArcAbs.idl
+++ b/core/svg/SVGPathSegArcAbs.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPathSegArcAbs : SVGPathSeg {
+interface SVGPathSegArcAbs : SVGPathSeg {
     [StrictTypeChecking] attribute float x;
     [StrictTypeChecking] attribute float y;
     [StrictTypeChecking] attribute float r1;
diff --git a/core/svg/SVGPathSegArcRel.idl b/core/svg/SVGPathSegArcRel.idl
index 3946d8d..de46704 100644
--- a/core/svg/SVGPathSegArcRel.idl
+++ b/core/svg/SVGPathSegArcRel.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPathSegArcRel : SVGPathSeg {
+interface SVGPathSegArcRel : SVGPathSeg {
     [StrictTypeChecking] attribute float x;
     [StrictTypeChecking] attribute float y;
     [StrictTypeChecking] attribute float r1;
diff --git a/core/svg/SVGPathSegClosePath.idl b/core/svg/SVGPathSegClosePath.idl
index 3f0969a..f3eff1e 100644
--- a/core/svg/SVGPathSegClosePath.idl
+++ b/core/svg/SVGPathSegClosePath.idl
@@ -24,8 +24,6 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPathSegClosePath : SVGPathSeg {
+interface SVGPathSegClosePath : SVGPathSeg {
 };
 
diff --git a/core/svg/SVGPathSegCurvetoCubicAbs.idl b/core/svg/SVGPathSegCurvetoCubicAbs.idl
index c8c7c82..4d35573 100644
--- a/core/svg/SVGPathSegCurvetoCubicAbs.idl
+++ b/core/svg/SVGPathSegCurvetoCubicAbs.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */ 
 
-[
-    Conditional=SVG
-] interface SVGPathSegCurvetoCubicAbs : SVGPathSeg {
+interface SVGPathSegCurvetoCubicAbs : SVGPathSeg {
     [StrictTypeChecking] attribute float x;
     [StrictTypeChecking] attribute float y;
     [StrictTypeChecking] attribute float x1;
diff --git a/core/svg/SVGPathSegCurvetoCubicRel.idl b/core/svg/SVGPathSegCurvetoCubicRel.idl
index f4336b2..1dcbe2d 100644
--- a/core/svg/SVGPathSegCurvetoCubicRel.idl
+++ b/core/svg/SVGPathSegCurvetoCubicRel.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */ 
 
-[
-    Conditional=SVG
-] interface SVGPathSegCurvetoCubicRel : SVGPathSeg {
+interface SVGPathSegCurvetoCubicRel : SVGPathSeg {
     [StrictTypeChecking] attribute float x;
     [StrictTypeChecking] attribute float y;
     [StrictTypeChecking] attribute float x1;
diff --git a/core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl b/core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl
index aa9d3f0..40a5c68 100644
--- a/core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl
+++ b/core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */ 
 
-[
-    Conditional=SVG
-] interface SVGPathSegCurvetoCubicSmoothAbs : SVGPathSeg {
+interface SVGPathSegCurvetoCubicSmoothAbs : SVGPathSeg {
     [StrictTypeChecking] attribute float x;
     [StrictTypeChecking] attribute float y;
     [StrictTypeChecking] attribute float x2;
diff --git a/core/svg/SVGPathSegCurvetoCubicSmoothRel.idl b/core/svg/SVGPathSegCurvetoCubicSmoothRel.idl
index c801568..58056a4 100644
--- a/core/svg/SVGPathSegCurvetoCubicSmoothRel.idl
+++ b/core/svg/SVGPathSegCurvetoCubicSmoothRel.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */ 
 
-[
-    Conditional=SVG
-] interface SVGPathSegCurvetoCubicSmoothRel : SVGPathSeg {
+interface SVGPathSegCurvetoCubicSmoothRel : SVGPathSeg {
     [StrictTypeChecking] attribute float x;
     [StrictTypeChecking] attribute float y;
     [StrictTypeChecking] attribute float x2;
diff --git a/core/svg/SVGPathSegCurvetoQuadraticAbs.idl b/core/svg/SVGPathSegCurvetoQuadraticAbs.idl
index 46fb5b6..086998a 100644
--- a/core/svg/SVGPathSegCurvetoQuadraticAbs.idl
+++ b/core/svg/SVGPathSegCurvetoQuadraticAbs.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPathSegCurvetoQuadraticAbs : SVGPathSeg {
+interface SVGPathSegCurvetoQuadraticAbs : SVGPathSeg {
     [StrictTypeChecking] attribute float x;
     [StrictTypeChecking] attribute float y;
     [StrictTypeChecking] attribute float x1;
diff --git a/core/svg/SVGPathSegCurvetoQuadraticRel.idl b/core/svg/SVGPathSegCurvetoQuadraticRel.idl
index 39f8016..49d2d02 100644
--- a/core/svg/SVGPathSegCurvetoQuadraticRel.idl
+++ b/core/svg/SVGPathSegCurvetoQuadraticRel.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPathSegCurvetoQuadraticRel : SVGPathSeg {
+interface SVGPathSegCurvetoQuadraticRel : SVGPathSeg {
     [StrictTypeChecking] attribute float x;
     [StrictTypeChecking] attribute float y;
     [StrictTypeChecking] attribute float x1;
diff --git a/core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl b/core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl
index 0850e31..8f1aea0 100644
--- a/core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl
+++ b/core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPathSegCurvetoQuadraticSmoothAbs : SVGPathSeg {
+interface SVGPathSegCurvetoQuadraticSmoothAbs : SVGPathSeg {
     [StrictTypeChecking] attribute float x;
     [StrictTypeChecking] attribute float y;
 };
diff --git a/core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl b/core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl
index 6743a1c..56d1a48 100644
--- a/core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl
+++ b/core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPathSegCurvetoQuadraticSmoothRel : SVGPathSeg {
+interface SVGPathSegCurvetoQuadraticSmoothRel : SVGPathSeg {
     [StrictTypeChecking] attribute float x;
     [StrictTypeChecking] attribute float y;
 };
diff --git a/core/svg/SVGPathSegLinetoAbs.idl b/core/svg/SVGPathSegLinetoAbs.idl
index 0b4c745..d32db20 100644
--- a/core/svg/SVGPathSegLinetoAbs.idl
+++ b/core/svg/SVGPathSegLinetoAbs.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPathSegLinetoAbs : SVGPathSeg {
+interface SVGPathSegLinetoAbs : SVGPathSeg {
     [StrictTypeChecking] attribute float x;
     [StrictTypeChecking] attribute float y;
 };
diff --git a/core/svg/SVGPathSegLinetoHorizontalAbs.idl b/core/svg/SVGPathSegLinetoHorizontalAbs.idl
index 9252acf..f5f3a81 100644
--- a/core/svg/SVGPathSegLinetoHorizontalAbs.idl
+++ b/core/svg/SVGPathSegLinetoHorizontalAbs.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPathSegLinetoHorizontalAbs : SVGPathSeg {
+interface SVGPathSegLinetoHorizontalAbs : SVGPathSeg {
     [StrictTypeChecking] attribute float x;
 };
 
diff --git a/core/svg/SVGPathSegLinetoHorizontalRel.idl b/core/svg/SVGPathSegLinetoHorizontalRel.idl
index a0a65c4..853da9e 100644
--- a/core/svg/SVGPathSegLinetoHorizontalRel.idl
+++ b/core/svg/SVGPathSegLinetoHorizontalRel.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPathSegLinetoHorizontalRel : SVGPathSeg {
+interface SVGPathSegLinetoHorizontalRel : SVGPathSeg {
     [StrictTypeChecking] attribute float x;
 };
 
diff --git a/core/svg/SVGPathSegLinetoRel.idl b/core/svg/SVGPathSegLinetoRel.idl
index 089aae2..9246e95 100644
--- a/core/svg/SVGPathSegLinetoRel.idl
+++ b/core/svg/SVGPathSegLinetoRel.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPathSegLinetoRel : SVGPathSeg {
+interface SVGPathSegLinetoRel : SVGPathSeg {
     [StrictTypeChecking] attribute float x;
     [StrictTypeChecking] attribute float y;
 };
diff --git a/core/svg/SVGPathSegLinetoVerticalAbs.idl b/core/svg/SVGPathSegLinetoVerticalAbs.idl
index 15c66da..a4a924a 100644
--- a/core/svg/SVGPathSegLinetoVerticalAbs.idl
+++ b/core/svg/SVGPathSegLinetoVerticalAbs.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPathSegLinetoVerticalAbs : SVGPathSeg {
+interface SVGPathSegLinetoVerticalAbs : SVGPathSeg {
     [StrictTypeChecking] attribute float y;
 };
 
diff --git a/core/svg/SVGPathSegLinetoVerticalRel.idl b/core/svg/SVGPathSegLinetoVerticalRel.idl
index 632ec69..c4da6dc 100644
--- a/core/svg/SVGPathSegLinetoVerticalRel.idl
+++ b/core/svg/SVGPathSegLinetoVerticalRel.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPathSegLinetoVerticalRel : SVGPathSeg {
+interface SVGPathSegLinetoVerticalRel : SVGPathSeg {
     [StrictTypeChecking] attribute float y;
 };
 
diff --git a/core/svg/SVGPathSegList.idl b/core/svg/SVGPathSegList.idl
index c2fda40..996e518 100644
--- a/core/svg/SVGPathSegList.idl
+++ b/core/svg/SVGPathSegList.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPathSegList {
+interface SVGPathSegList {
     readonly attribute unsigned long numberOfItems;
 
     [RaisesException] void clear();
diff --git a/core/svg/SVGPathSegMovetoAbs.idl b/core/svg/SVGPathSegMovetoAbs.idl
index 255f77e..b01e795 100644
--- a/core/svg/SVGPathSegMovetoAbs.idl
+++ b/core/svg/SVGPathSegMovetoAbs.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPathSegMovetoAbs : SVGPathSeg {
+interface SVGPathSegMovetoAbs : SVGPathSeg {
     [StrictTypeChecking] attribute float x;
     [StrictTypeChecking] attribute float y;
 };
diff --git a/core/svg/SVGPathSegMovetoRel.idl b/core/svg/SVGPathSegMovetoRel.idl
index 38edb6b..850efd4 100644
--- a/core/svg/SVGPathSegMovetoRel.idl
+++ b/core/svg/SVGPathSegMovetoRel.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPathSegMovetoRel : SVGPathSeg {
+interface SVGPathSegMovetoRel : SVGPathSeg {
     [StrictTypeChecking] attribute float x;
     [StrictTypeChecking] attribute float y;
 };
diff --git a/core/svg/SVGPatternElement.idl b/core/svg/SVGPatternElement.idl
index 2226eb7..d8fe822 100644
--- a/core/svg/SVGPatternElement.idl
+++ b/core/svg/SVGPatternElement.idl
@@ -23,15 +23,13 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPatternElement : SVGStyledElement,
-                                                SVGURIReference,
-                                                SVGTests,
-                                                SVGLangSpace,
-                                                SVGExternalResourcesRequired,
-                                                SVGFitToViewBox
-                                             /* SVGUnitTypes */ {
+interface SVGPatternElement : SVGStyledElement,
+                              SVGURIReference,
+                              SVGTests,
+                              SVGLangSpace,
+                              SVGExternalResourcesRequired,
+                              SVGFitToViewBox
+                              /* SVGUnitTypes */ {
     readonly attribute SVGAnimatedEnumeration   patternUnits;
     readonly attribute SVGAnimatedEnumeration   patternContentUnits;
     readonly attribute SVGAnimatedTransformList patternTransform;
diff --git a/core/svg/SVGPoint.idl b/core/svg/SVGPoint.idl
index 40fa201..19606d6 100644
--- a/core/svg/SVGPoint.idl
+++ b/core/svg/SVGPoint.idl
@@ -20,9 +20,7 @@
  * Boston, MA 02110-1301, USA.
  */
 
-[
-    Conditional=SVG
-] interface SVGPoint {
+interface SVGPoint {
     [StrictTypeChecking] attribute float x;
     [StrictTypeChecking] attribute float y;
 
diff --git a/core/svg/SVGPointList.idl b/core/svg/SVGPointList.idl
index 93e6889..6cc212e 100644
--- a/core/svg/SVGPointList.idl
+++ b/core/svg/SVGPointList.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPointList {
+interface SVGPointList {
     readonly attribute unsigned long numberOfItems;
 
     [RaisesException] void clear();
diff --git a/core/svg/SVGPolygonElement.idl b/core/svg/SVGPolygonElement.idl
index 4076028..e63f005 100644
--- a/core/svg/SVGPolygonElement.idl
+++ b/core/svg/SVGPolygonElement.idl
@@ -23,13 +23,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPolygonElement : SVGStyledElement,
-                                                SVGTests,
-                                                SVGLangSpace,
-                                                SVGExternalResourcesRequired,
-                                                SVGTransformable {
+interface SVGPolygonElement : SVGStyledElement,
+                              SVGTests,
+                              SVGLangSpace,
+                              SVGExternalResourcesRequired,
+                              SVGTransformable {
     readonly attribute SVGPointList points;
     readonly attribute SVGPointList animatedPoints;
 };
diff --git a/core/svg/SVGPolylineElement.idl b/core/svg/SVGPolylineElement.idl
index 43b4d80..62f559e 100644
--- a/core/svg/SVGPolylineElement.idl
+++ b/core/svg/SVGPolylineElement.idl
@@ -23,13 +23,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPolylineElement : SVGStyledElement,
-                                                 SVGTests,
-                                                 SVGLangSpace,
-                                                 SVGExternalResourcesRequired,
-                                                 SVGTransformable {
+interface SVGPolylineElement : SVGStyledElement,
+                               SVGTests,
+                               SVGLangSpace,
+                               SVGExternalResourcesRequired,
+                               SVGTransformable {
     readonly attribute SVGPointList points;
     readonly attribute SVGPointList animatedPoints;
 };
diff --git a/core/svg/SVGPreserveAspectRatio.idl b/core/svg/SVGPreserveAspectRatio.idl
index 5f4ed8a..ec2c796 100644
--- a/core/svg/SVGPreserveAspectRatio.idl
+++ b/core/svg/SVGPreserveAspectRatio.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGPreserveAspectRatio {
+interface SVGPreserveAspectRatio {
     // Alignment Types
     const unsigned short SVG_PRESERVEASPECTRATIO_UNKNOWN = 0;
     const unsigned short SVG_PRESERVEASPECTRATIO_NONE = 1;
diff --git a/core/svg/SVGRadialGradientElement.idl b/core/svg/SVGRadialGradientElement.idl
index d4b589f..1342c75 100644
--- a/core/svg/SVGRadialGradientElement.idl
+++ b/core/svg/SVGRadialGradientElement.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGRadialGradientElement : SVGGradientElement {
+interface SVGRadialGradientElement : SVGGradientElement {
     readonly attribute SVGAnimatedLength cx;
     readonly attribute SVGAnimatedLength cy;
     readonly attribute SVGAnimatedLength r;
diff --git a/core/svg/SVGRect.idl b/core/svg/SVGRect.idl
index 2264618..e148788 100644
--- a/core/svg/SVGRect.idl
+++ b/core/svg/SVGRect.idl
@@ -20,9 +20,7 @@
  * Boston, MA 02110-1301, USA.
  */
 
-[
-    Conditional=SVG
-] interface SVGRect {
+interface SVGRect {
     [StrictTypeChecking] attribute float x;
     [StrictTypeChecking] attribute float y;
     [StrictTypeChecking] attribute float width;
diff --git a/core/svg/SVGRectElement.idl b/core/svg/SVGRectElement.idl
index 1fe8954..55b6f3c 100644
--- a/core/svg/SVGRectElement.idl
+++ b/core/svg/SVGRectElement.idl
@@ -24,13 +24,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGRectElement : SVGStyledElement,
-                                             SVGTests,
-                                             SVGLangSpace,
-                                             SVGExternalResourcesRequired,
-                                             SVGTransformable {
+interface SVGRectElement : SVGStyledElement,
+                           SVGTests,
+                           SVGLangSpace,
+                           SVGExternalResourcesRequired,
+                           SVGTransformable {
     readonly attribute SVGAnimatedLength x;
     readonly attribute SVGAnimatedLength y;
     readonly attribute SVGAnimatedLength width;
diff --git a/core/svg/SVGRenderingIntent.idl b/core/svg/SVGRenderingIntent.idl
index 832dd48..d3f254f 100644
--- a/core/svg/SVGRenderingIntent.idl
+++ b/core/svg/SVGRenderingIntent.idl
@@ -24,7 +24,6 @@
  */
 
 [
-    Conditional=SVG,
     DoNotGenerateToV8
 ] interface SVGRenderingIntent {
     // Rendering Intent Types
diff --git a/core/svg/SVGSVGElement.idl b/core/svg/SVGSVGElement.idl
index 6d869d2..e32c0a3 100644
--- a/core/svg/SVGSVGElement.idl
+++ b/core/svg/SVGSVGElement.idl
@@ -23,15 +23,13 @@
 // TODO: no css::ViewCSS available!
 // TODO: Fix SVGSVGElement inheritance (css::DocumentCSS)! 
 // TODO: no events::DocumentEvent available!
-[
-    Conditional=SVG
-] interface SVGSVGElement : SVGStyledElement,
-                                            SVGTests,
-                                            SVGLangSpace,
-                                            SVGExternalResourcesRequired,
-                                            SVGTransformable,
-                                            SVGFitToViewBox,
-                                            SVGZoomAndPan {
+interface SVGSVGElement : SVGStyledElement,
+                          SVGTests,
+                          SVGLangSpace,
+                          SVGExternalResourcesRequired,
+                          SVGTransformable,
+                          SVGFitToViewBox,
+                          SVGZoomAndPan {
     readonly attribute SVGAnimatedLength x;
     readonly attribute SVGAnimatedLength y;
     readonly attribute SVGAnimatedLength width;
diff --git a/core/svg/SVGScriptElement.idl b/core/svg/SVGScriptElement.idl
index 2fa2cc6..5a7ec3d 100644
--- a/core/svg/SVGScriptElement.idl
+++ b/core/svg/SVGScriptElement.idl
@@ -23,11 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGScriptElement : SVGElement,
-                                               SVGURIReference,
-                                               SVGExternalResourcesRequired {
+interface SVGScriptElement : SVGElement,
+                             SVGURIReference,
+                             SVGExternalResourcesRequired {
              [TreatNullAs=NullString] attribute DOMString type;
 };
 
diff --git a/core/svg/SVGSetElement.idl b/core/svg/SVGSetElement.idl
index f53cb92..322ed53 100644
--- a/core/svg/SVGSetElement.idl
+++ b/core/svg/SVGSetElement.idl
@@ -23,8 +23,6 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGSetElement : SVGAnimationElement {
+interface SVGSetElement : SVGAnimationElement {
 };
 
diff --git a/core/svg/SVGStopElement.idl b/core/svg/SVGStopElement.idl
index 86413f7..1a2bad1 100644
--- a/core/svg/SVGStopElement.idl
+++ b/core/svg/SVGStopElement.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGStopElement : SVGStyledElement {
+interface SVGStopElement : SVGStyledElement {
     readonly attribute SVGAnimatedNumber offset;
 };
 
diff --git a/core/svg/SVGStringList.idl b/core/svg/SVGStringList.idl
index 48b87ca..d3c1923 100644
--- a/core/svg/SVGStringList.idl
+++ b/core/svg/SVGStringList.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGStringList {
+interface SVGStringList {
     readonly attribute unsigned long numberOfItems;
 
     [RaisesException] void clear();
diff --git a/core/svg/SVGStyleElement.idl b/core/svg/SVGStyleElement.idl
index 858c2c4..56beb82 100644
--- a/core/svg/SVGStyleElement.idl
+++ b/core/svg/SVGStyleElement.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGStyleElement : SVGElement, SVGLangSpace {
+interface SVGStyleElement : SVGElement, SVGLangSpace {
     attribute boolean disabled;
     attribute DOMString type;
     attribute DOMString media;
diff --git a/core/svg/SVGStyledElement.idl b/core/svg/SVGStyledElement.idl
index f7f9490..12d2e2c 100644
--- a/core/svg/SVGStyledElement.idl
+++ b/core/svg/SVGStyledElement.idl
@@ -26,8 +26,7 @@
  */
 
 [
-    NoInterfaceObject,
-    Conditional=SVG
+    NoInterfaceObject
 ] interface SVGStyledElement : SVGElement {
     readonly attribute SVGAnimatedString className;
     readonly attribute CSSStyleDeclaration style;
diff --git a/core/svg/SVGSwitchElement.idl b/core/svg/SVGSwitchElement.idl
index 1430e2d..512d8ce 100644
--- a/core/svg/SVGSwitchElement.idl
+++ b/core/svg/SVGSwitchElement.idl
@@ -23,12 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGSwitchElement : SVGStyledElement,
-                                               SVGTests,
-                                               SVGLangSpace,
-                                               SVGExternalResourcesRequired,
-                                               SVGTransformable {
+interface SVGSwitchElement : SVGStyledElement,
+                             SVGTests,
+                             SVGLangSpace,
+                             SVGExternalResourcesRequired,
+                             SVGTransformable {
 };
 
diff --git a/core/svg/SVGSymbolElement.idl b/core/svg/SVGSymbolElement.idl
index e1386ce..94c9bd6 100644
--- a/core/svg/SVGSymbolElement.idl
+++ b/core/svg/SVGSymbolElement.idl
@@ -23,11 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGSymbolElement : SVGStyledElement,
-                                               SVGLangSpace,
-                                               SVGExternalResourcesRequired,
-                                               SVGFitToViewBox {
+interface SVGSymbolElement : SVGStyledElement,
+                             SVGLangSpace,
+                             SVGExternalResourcesRequired,
+                             SVGFitToViewBox {
 };
 
diff --git a/core/svg/SVGTRefElement.idl b/core/svg/SVGTRefElement.idl
index e4743fd..5f58232 100644
--- a/core/svg/SVGTRefElement.idl
+++ b/core/svg/SVGTRefElement.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGTRefElement : SVGTextPositioningElement,
-                                             SVGURIReference {
+interface SVGTRefElement : SVGTextPositioningElement,
+                           SVGURIReference {
 };
 
diff --git a/core/svg/SVGTSpanElement.idl b/core/svg/SVGTSpanElement.idl
index fa9f7f1..92d9754 100644
--- a/core/svg/SVGTSpanElement.idl
+++ b/core/svg/SVGTSpanElement.idl
@@ -23,8 +23,6 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGTSpanElement : SVGTextPositioningElement {
+interface SVGTSpanElement : SVGTextPositioningElement {
 };
 
diff --git a/core/svg/SVGTests.idl b/core/svg/SVGTests.idl
index 3081a64..8f47e8e 100644
--- a/core/svg/SVGTests.idl
+++ b/core/svg/SVGTests.idl
@@ -25,8 +25,6 @@
  */
 
 [
-    Conditional=SVG,
-    
     DoNotGenerateToV8
 ] interface SVGTests {
     readonly attribute SVGStringList requiredFeatures;
diff --git a/core/svg/SVGTextContentElement.idl b/core/svg/SVGTextContentElement.idl
index f87b1bf..4a2acb9 100644
--- a/core/svg/SVGTextContentElement.idl
+++ b/core/svg/SVGTextContentElement.idl
@@ -23,12 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGTextContentElement : SVGStyledElement,
-                                                    SVGTests,
-                                                    SVGLangSpace,
-                                                    SVGExternalResourcesRequired {
+interface SVGTextContentElement : SVGStyledElement,
+                                  SVGTests,
+                                  SVGLangSpace,
+                                  SVGExternalResourcesRequired {
     // lengthAdjust Types
     const unsigned short LENGTHADJUST_UNKNOWN          = 0;
     const unsigned short LENGTHADJUST_SPACING          = 1;
diff --git a/core/svg/SVGTextElement.idl b/core/svg/SVGTextElement.idl
index 2a3c6c8..fec5719 100644
--- a/core/svg/SVGTextElement.idl
+++ b/core/svg/SVGTextElement.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGTextElement : SVGTextPositioningElement,
-                                             SVGTransformable {
+interface SVGTextElement : SVGTextPositioningElement,
+                           SVGTransformable {
 };
 
diff --git a/core/svg/SVGTextPathElement.idl b/core/svg/SVGTextPathElement.idl
index 03749ad..629ff18 100644
--- a/core/svg/SVGTextPathElement.idl
+++ b/core/svg/SVGTextPathElement.idl
@@ -23,10 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGTextPathElement : SVGTextContentElement,
-                                                 SVGURIReference {    
+interface SVGTextPathElement : SVGTextContentElement,
+                               SVGURIReference {
     // textPath Method Types
     const unsigned short TEXTPATH_METHODTYPE_UNKNOWN   = 0;
     const unsigned short TEXTPATH_METHODTYPE_ALIGN     = 1;
diff --git a/core/svg/SVGTextPositioningElement.idl b/core/svg/SVGTextPositioningElement.idl
index 7c3afdf..2a01864 100644
--- a/core/svg/SVGTextPositioningElement.idl
+++ b/core/svg/SVGTextPositioningElement.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGTextPositioningElement : SVGTextContentElement {
+interface SVGTextPositioningElement : SVGTextContentElement {
     readonly attribute SVGAnimatedLengthList x;
     readonly attribute SVGAnimatedLengthList y;
     readonly attribute SVGAnimatedLengthList dx;
diff --git a/core/svg/SVGTitleElement.idl b/core/svg/SVGTitleElement.idl
index 49af690..48096eb 100644
--- a/core/svg/SVGTitleElement.idl
+++ b/core/svg/SVGTitleElement.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGTitleElement : SVGStyledElement,
-                                              SVGLangSpace {
+interface SVGTitleElement : SVGStyledElement,
+                            SVGLangSpace {
 };
 
diff --git a/core/svg/SVGTransform.idl b/core/svg/SVGTransform.idl
index 2edaa80..df5d9b3 100644
--- a/core/svg/SVGTransform.idl
+++ b/core/svg/SVGTransform.idl
@@ -19,9 +19,7 @@
  * Boston, MA 02110-1301, USA.
  */
 
-[
-    Conditional=SVG
-] interface SVGTransform { 
+interface SVGTransform {
     // Transform Types
     const unsigned short SVG_TRANSFORM_UNKNOWN = 0;
     const unsigned short SVG_TRANSFORM_MATRIX = 1;
diff --git a/core/svg/SVGTransformList.idl b/core/svg/SVGTransformList.idl
index 0212373..f17b479 100644
--- a/core/svg/SVGTransformList.idl
+++ b/core/svg/SVGTransformList.idl
@@ -24,9 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGTransformList {
+interface SVGTransformList {
     readonly attribute unsigned long numberOfItems;
 
     [RaisesException] void clear();
diff --git a/core/svg/SVGTransformable.idl b/core/svg/SVGTransformable.idl
index 828fea8..f7e4525 100644
--- a/core/svg/SVGTransformable.idl
+++ b/core/svg/SVGTransformable.idl
@@ -24,10 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-    
-] interface SVGTransformable : SVGLocatable {
+interface SVGTransformable : SVGLocatable {
     readonly attribute SVGAnimatedTransformList transform;
 };
 
diff --git a/core/svg/SVGURIReference.idl b/core/svg/SVGURIReference.idl
index a3f1b55..850048f 100644
--- a/core/svg/SVGURIReference.idl
+++ b/core/svg/SVGURIReference.idl
@@ -25,8 +25,6 @@
  */
 
 [
-    Conditional=SVG,
-    
     DoNotGenerateToV8
 ] interface SVGURIReference {
     readonly attribute SVGAnimatedString href;
diff --git a/core/svg/SVGUnitTypes.idl b/core/svg/SVGUnitTypes.idl
index b0021d3..d53ee8d 100644
--- a/core/svg/SVGUnitTypes.idl
+++ b/core/svg/SVGUnitTypes.idl
@@ -24,7 +24,6 @@
  */
 
 [
-    Conditional=SVG,
     DoNotGenerateToV8
 ] interface SVGUnitTypes {
     // Unit Types
diff --git a/core/svg/SVGUseElement.idl b/core/svg/SVGUseElement.idl
index 3733feb..8ee8b4a 100644
--- a/core/svg/SVGUseElement.idl
+++ b/core/svg/SVGUseElement.idl
@@ -23,14 +23,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGUseElement : SVGStyledElement,
-                                            SVGURIReference,
-                                            SVGTests,
-                                            SVGLangSpace,
-                                            SVGExternalResourcesRequired,
-                                            SVGTransformable {
+interface SVGUseElement : SVGStyledElement,
+                          SVGURIReference,
+                          SVGTests,
+                          SVGLangSpace,
+                          SVGExternalResourcesRequired,
+                          SVGTransformable {
     readonly attribute SVGAnimatedLength   x;
     readonly attribute SVGAnimatedLength   y;
     readonly attribute SVGAnimatedLength   width;
diff --git a/core/svg/SVGVKernElement.idl b/core/svg/SVGVKernElement.idl
index 55a1648..7b3bd39 100644
--- a/core/svg/SVGVKernElement.idl
+++ b/core/svg/SVGVKernElement.idl
@@ -18,7 +18,7 @@
  */
 
 [
-    Conditional=SVG&SVG_FONTS
+    Conditional=SVG_FONTS
 ] interface SVGVKernElement : SVGElement {
 };
 
diff --git a/core/svg/SVGViewElement.idl b/core/svg/SVGViewElement.idl
index d4ae5ac..4d43028 100644
--- a/core/svg/SVGViewElement.idl
+++ b/core/svg/SVGViewElement.idl
@@ -23,12 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGViewElement : SVGElement,
-                                             SVGExternalResourcesRequired,
-                                             SVGFitToViewBox,
-                                             SVGZoomAndPan {
+interface SVGViewElement : SVGElement,
+                           SVGExternalResourcesRequired,
+                           SVGFitToViewBox,
+                           SVGZoomAndPan {
     readonly attribute SVGStringList viewTarget;
 };
 
diff --git a/core/svg/SVGViewSpec.idl b/core/svg/SVGViewSpec.idl
index 453a8f5..55b1489 100644
--- a/core/svg/SVGViewSpec.idl
+++ b/core/svg/SVGViewSpec.idl
@@ -25,9 +25,7 @@
 
 // SVGViewSpec intentionally doesn't inherit from SVGZoomAndPan & SVGFitToViewBox on the IDLs.
 // It would require that any of those classes would be RefCounted, and we want to avoid that.
-[
-    Conditional=SVG
-] interface SVGViewSpec {
+interface SVGViewSpec {
       readonly attribute SVGTransformList transform;
       readonly attribute SVGElement viewTarget;
       readonly attribute DOMString viewBoxString;
diff --git a/core/svg/SVGZoomAndPan.idl b/core/svg/SVGZoomAndPan.idl
index 728f40a..de112e2 100644
--- a/core/svg/SVGZoomAndPan.idl
+++ b/core/svg/SVGZoomAndPan.idl
@@ -25,8 +25,6 @@
  */
 
 [
-    Conditional=SVG,
-    
     DoNotGenerateToV8
 ] interface SVGZoomAndPan {
     const unsigned short SVG_ZOOMANDPAN_UNKNOWN = 0;
diff --git a/core/svg/SVGZoomEvent.idl b/core/svg/SVGZoomEvent.idl
index 320e552..424fc6a 100644
--- a/core/svg/SVGZoomEvent.idl
+++ b/core/svg/SVGZoomEvent.idl
@@ -23,9 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-[
-    Conditional=SVG
-] interface SVGZoomEvent : UIEvent { 
+interface SVGZoomEvent : UIEvent {
     readonly attribute SVGRect zoomRectScreen;
     readonly attribute float previousScale;
     [Immutable] readonly attribute SVGPoint previousTranslate;
diff --git a/core/testing/InternalSettings.idl b/core/testing/InternalSettings.idl
index ed5ad0e..b9ec8e1 100644
--- a/core/testing/InternalSettings.idl
+++ b/core/testing/InternalSettings.idl
@@ -42,16 +42,9 @@
     [RaisesException] void setMediaTypeOverride(DOMString mediaTypeOverride);
     [RaisesException] void setEditingBehavior(DOMString behavior);
 
-    [RaisesException] void setShouldDisplayTrackKind(DOMString kind, boolean enabled);
-    [RaisesException] boolean shouldDisplayTrackKind(DOMString trackKind);
     [RaisesException] void setImagesEnabled(boolean enabled);
     [RaisesException] void setDefaultVideoPosterURL(DOMString poster);
 
-    // FIXME: cssVariablesEnabled is a real Setting and not a
-    // RuntimeEnabledFeature, but it should be changed to be a REF.
-    [RaisesException] boolean cssVariablesEnabled();
-    [RaisesException] void setCSSVariablesEnabled(boolean enabled);
-
     // FIXME: The following are RuntimeEnabledFeatures and likely
     // cannot be changed after process start.  These setters should
     // be removed or moved onto internals.runtimeFlags:
diff --git a/core/testing/Internals.idl b/core/testing/Internals.idl
index 23557da..457f306 100644
--- a/core/testing/Internals.idl
+++ b/core/testing/Internals.idl
@@ -59,6 +59,7 @@
     [RaisesException] boolean hasSelectorForClassInShadow(Element host, DOMString className);
     [RaisesException] boolean hasSelectorForAttributeInShadow(Element host, DOMString attributeName);
     [RaisesException] boolean hasSelectorForPseudoClassInShadow(Element host, DOMString pseudoClass);
+    [RaisesException] unsigned short compareTreeScopePosition(Node treeScope1, Node treeScope2);
 
     // CSS Animation and Transition testing.
     unsigned long numberOfActiveAnimations();
@@ -169,6 +170,12 @@
     [RaisesException] NodeList paintOrderListBeforePromote(Element element);
     [RaisesException] NodeList paintOrderListAfterPromote(Element element);
 
+    // The values of these constants must be kept in sync with those in RenderLayer.
+    const unsigned short DoNotForceCompositedScrolling = 0;
+    const unsigned short CompositedScrollingAlwaysOn = 1;
+    const unsigned short CompositedScrollingAlwaysOff = 2;
+    [RaisesException] void setNeedsCompositedScrolling(Element element, unsigned short value);
+
     [RaisesException] DOMString scrollingStateTreeAsText(Document document);
     [RaisesException] DOMString mainThreadScrollingReasons(Document document);
     [RaisesException] ClientRectList nonFastScrollableRects(Document document);
@@ -192,7 +199,6 @@
     DOMWindow openDummyInspectorFrontend(DOMString url);
     void closeDummyInspectorFrontend();
     [RaisesException] void setInspectorResourcesDataSizeLimits(long maximumResourcesContentSize, long maximumSingleResourceContentSize);
-    [RaisesException] void setJavaScriptProfilingEnabled(boolean creates);
 
     DOMString counterValue(Element element);
     long pageNumber(Element element, optional float pageWidth, optional float pageHeight);
diff --git a/core/workers/WorkerContext.idl b/core/workers/WorkerContext.idl
index 188b285..e513baf 100644
--- a/core/workers/WorkerContext.idl
+++ b/core/workers/WorkerContext.idl
@@ -57,31 +57,7 @@
                              optional boolean useCapture);
     [RaisesException] boolean dispatchEvent(Event evt);
 
-    // Constructors
-    attribute MessageEventConstructor MessageEvent;
-    attribute WorkerLocationConstructor WorkerLocation;
-
-    attribute MessageChannelConstructor MessageChannel;
-    attribute EventSourceConstructor EventSource;
-    attribute XMLHttpRequestConstructor XMLHttpRequest;
-
-    attribute BlobConstructor Blob;
-    attribute FileReaderConstructor FileReader;
-    attribute FileReaderSyncConstructor FileReaderSync;
-
-    attribute URLConstructor URL;
+    // Additional constructors
     attribute URLConstructor webkitURL; // FIXME: deprecate this.
-
-    attribute ArrayBufferConstructor ArrayBuffer; // Usable with new operator
-    attribute Int8ArrayConstructor Int8Array; // Usable with new operator
-    attribute Uint8ArrayConstructor Uint8Array; // Usable with new operator
-    attribute Uint8ClampedArrayConstructor Uint8ClampedArray; // Usable with new operator
-    attribute Int16ArrayConstructor Int16Array; // Usable with new operator
-    attribute Uint16ArrayConstructor Uint16Array; // Usable with new operator
-    attribute Int32ArrayConstructor Int32Array; // Usable with new operator
-    attribute Uint32ArrayConstructor Uint32Array; // Usable with new operator
-    attribute Float32ArrayConstructor Float32Array; // Usable with new operator
-    attribute Float64ArrayConstructor Float64Array; // Usable with new operator
-    attribute DataViewConstructor DataView; // Usable with new operator
 };
 
diff --git a/core/workers/WorkerLocation.idl b/core/workers/WorkerLocation.idl
index eac41a3..55eabda 100644
--- a/core/workers/WorkerLocation.idl
+++ b/core/workers/WorkerLocation.idl
@@ -27,7 +27,7 @@
  */
 
 [
-    NoInterfaceObject
+    GlobalContext=WorkerOnly
 ] interface WorkerLocation {
     readonly attribute DOMString href;
     readonly attribute DOMString protocol;
diff --git a/core/xml/XMLHttpRequest.idl b/core/xml/XMLHttpRequest.idl
index cb0dc9e..5c03dd6 100644
--- a/core/xml/XMLHttpRequest.idl
+++ b/core/xml/XMLHttpRequest.idl
@@ -37,6 +37,7 @@
 };
 
 [
+    GlobalContext=WindowAndWorker,
     ActiveDOMObject,
     Constructor,
     CallWith=ScriptExecutionContext,
diff --git a/core/xml/XPathExpression.idl b/core/xml/XPathExpression.idl
index 3a3b1b2..cf7c6cf 100644
--- a/core/xml/XPathExpression.idl
+++ b/core/xml/XPathExpression.idl
@@ -17,9 +17,7 @@
  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
  * Boston, MA 02110-1301, USA.
  */
-[
-    NoInterfaceObject
-] interface XPathExpression {
+interface XPathExpression {
      [RaisesException] XPathResult evaluate([Default=Undefined] optional Node contextNode, 
                                         [Default=Undefined] optional unsigned short type, 
                                         [Default=Undefined] optional XPathResult inResult);
diff --git a/modules/README b/modules/README
index 8d6d9a3..f34ed35 100644
--- a/modules/README
+++ b/modules/README
@@ -6,4 +6,4 @@
 
 The current version corresponds to:
 URL: http://src.chromium.org/multivm/trunk/webkit
-Current revision: 1266
+Current revision: 1278
diff --git a/modules/mediastream/NavigatorUserMediaError.idl b/modules/mediastream/NavigatorUserMediaError.idl
index 46d0e03..dd32480 100644
--- a/modules/mediastream/NavigatorUserMediaError.idl
+++ b/modules/mediastream/NavigatorUserMediaError.idl
@@ -25,7 +25,8 @@
 [
     NoInterfaceObject
 ] interface NavigatorUserMediaError {
-    const unsigned short PERMISSION_DENIED = 1;
-    readonly attribute unsigned short code;
+    readonly attribute DOMString name;
+    readonly attribute DOMString message;
+    readonly attribute DOMString constraintName;
 };
 
diff --git a/modules/mediastream/RTCStatsResponse.idl b/modules/mediastream/RTCStatsResponse.idl
index e278398..edc759a 100644
--- a/modules/mediastream/RTCStatsResponse.idl
+++ b/modules/mediastream/RTCStatsResponse.idl
@@ -26,5 +26,6 @@
     NoInterfaceObject
 ] interface RTCStatsResponse {
     sequence<RTCStatsReport> result();
-    getter RTCStatsReport namedItem([Default=Undefined] optional DOMString name);
+    RTCStatsReport namedItem([Default=Undefined] optional DOMString name);
+    [NotEnumerable, ImplementedAs=namedItem] getter RTCStatsReport ([Default=Undefined] optional DOMString name);
 };
diff --git a/modules/webaudio/AudioNode.idl b/modules/webaudio/AudioNode.idl
index 7221319..f311d27 100644
--- a/modules/webaudio/AudioNode.idl
+++ b/modules/webaudio/AudioNode.idl
@@ -23,7 +23,8 @@
  */
 
 [
-    Conditional=WEB_AUDIO
+    Conditional=WEB_AUDIO,
+    CustomToV8
 ] interface AudioNode : EventTarget {
     readonly attribute AudioContext context;
     readonly attribute unsigned long numberOfInputs;
diff --git a/modules/webaudio/WaveShaperNode.idl b/modules/webaudio/WaveShaperNode.idl
index 9bc7b24..c4f4c81 100644
--- a/modules/webaudio/WaveShaperNode.idl
+++ b/modules/webaudio/WaveShaperNode.idl
@@ -22,8 +22,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+enum OverSampleType {
+    "none",
+    "2x",
+    "4x"
+};
+
 [
     Conditional=WEB_AUDIO
 ] interface WaveShaperNode : AudioNode {
     attribute Float32Array curve;
+    [SetterRaisesException] attribute OverSampleType oversample;
 };
