XMLHttpRequest / XMLHttpRequestUpload should inherit XMLHttpRequestEventTarget
authorcdumez@apple.com <cdumez@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 15 Feb 2016 22:03:04 +0000 (22:03 +0000)
committercdumez@apple.com <cdumez@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 15 Feb 2016 22:03:04 +0000 (22:03 +0000)
https://bugs.webkit.org/show_bug.cgi?id=154230

Reviewed by Alex Christensen.

LayoutTests/imported/w3c:

Rebaseline now that more checks are passing.

* web-platform-tests/XMLHttpRequest/interfaces-expected.txt:

Source/WebCore:

MLHttpRequest / XMLHttpRequestUpload should inherit XMLHttpRequestEventTarget
as per:
https://xhr.spec.whatwg.org/#xmlhttprequesteventtarget

Firefox and Chrome already match the specification.

No new tests, already covered by existing tests.

* CMakeLists.txt:
* DerivedSources.make:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* xml/XMLHttpRequest.h:
* xml/XMLHttpRequest.idl:
* xml/XMLHttpRequestEventTarget.h: Added.
* xml/XMLHttpRequestEventTarget.idl: Copied from Source/WebCore/xml/XMLHttpRequestUpload.idl.
* xml/XMLHttpRequestUpload.h:
* xml/XMLHttpRequestUpload.idl:

LayoutTests:

Rebaseline tests now that XMLHttpRequestEventTarget is exposed on the
global objects.

* js/dom/global-constructors-attributes-dedicated-worker-expected.txt:
* js/dom/global-constructors-attributes-expected.txt:
* platform/efl/js/dom/global-constructors-attributes-dedicated-worker-expected.txt:
* platform/efl/js/dom/global-constructors-attributes-expected.txt:
* platform/gtk/js/dom/global-constructors-attributes-expected.txt:
* platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt:
* platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
* platform/mac/js/dom/global-constructors-attributes-expected.txt:
* platform/win/js/dom/global-constructors-attributes-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@196599 268f45cc-cd09-0410-ab3c-d52691b4dbfc

24 files changed:
LayoutTests/ChangeLog
LayoutTests/imported/w3c/ChangeLog
LayoutTests/imported/w3c/web-platform-tests/XMLHttpRequest/interfaces-expected.txt
LayoutTests/js/dom/global-constructors-attributes-dedicated-worker-expected.txt
LayoutTests/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/efl/js/dom/global-constructors-attributes-dedicated-worker-expected.txt
LayoutTests/platform/efl/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/gtk/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/mac/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/win/js/dom/global-constructors-attributes-expected.txt
Source/WebCore/CMakeLists.txt
Source/WebCore/ChangeLog
Source/WebCore/DerivedSources.make
Source/WebCore/WebCore.vcxproj/WebCore.vcxproj
Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters
Source/WebCore/WebCore.xcodeproj/project.pbxproj
Source/WebCore/xml/XMLHttpRequest.h
Source/WebCore/xml/XMLHttpRequest.idl
Source/WebCore/xml/XMLHttpRequestEventTarget.h [new file with mode: 0644]
Source/WebCore/xml/XMLHttpRequestEventTarget.idl [new file with mode: 0644]
Source/WebCore/xml/XMLHttpRequestUpload.h
Source/WebCore/xml/XMLHttpRequestUpload.idl

index 978d15e..dd24d9d 100644 (file)
@@ -1,3 +1,23 @@
+2016-02-15  Chris Dumez  <cdumez@apple.com>
+
+        XMLHttpRequest / XMLHttpRequestUpload should inherit XMLHttpRequestEventTarget
+        https://bugs.webkit.org/show_bug.cgi?id=154230
+
+        Reviewed by Alex Christensen.
+
+        Rebaseline tests now that XMLHttpRequestEventTarget is exposed on the
+        global objects.
+
+        * js/dom/global-constructors-attributes-dedicated-worker-expected.txt:
+        * js/dom/global-constructors-attributes-expected.txt:
+        * platform/efl/js/dom/global-constructors-attributes-dedicated-worker-expected.txt:
+        * platform/efl/js/dom/global-constructors-attributes-expected.txt:
+        * platform/gtk/js/dom/global-constructors-attributes-expected.txt:
+        * platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt:
+        * platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
+        * platform/mac/js/dom/global-constructors-attributes-expected.txt:
+        * platform/win/js/dom/global-constructors-attributes-expected.txt:
+
 2016-02-15  Jiewen Tan  <jiewen_tan@apple.com>
 
         Refine SimulatedMouseEvent to support Event.isTrusted
index 1bc5105..27d9cdc 100644 (file)
@@ -1,3 +1,14 @@
+2016-02-15  Chris Dumez  <cdumez@apple.com>
+
+        XMLHttpRequest / XMLHttpRequestUpload should inherit XMLHttpRequestEventTarget
+        https://bugs.webkit.org/show_bug.cgi?id=154230
+
+        Reviewed by Alex Christensen.
+
+        Rebaseline now that more checks are passing.
+
+        * web-platform-tests/XMLHttpRequest/interfaces-expected.txt:
+
 2016-02-15  Joseph Pecoraro  <pecoraro@apple.com>
 
         Web Inspector: Web Workers have no access to console for debugging
index 120af89..f46c505 100644 (file)
@@ -2,22 +2,22 @@ CONSOLE MESSAGE: line 198: callback not yet supported
 XMLHttpRequest IDL tests
 
 
-FAIL XMLHttpRequestEventTarget interface: existence and properties of interface object assert_own_property: self does not have own property "XMLHttpRequestEventTarget" expected property "XMLHttpRequestEventTarget" missing
-FAIL XMLHttpRequestEventTarget interface object length assert_own_property: self does not have own property "XMLHttpRequestEventTarget" expected property "XMLHttpRequestEventTarget" missing
-FAIL XMLHttpRequestEventTarget interface object name assert_own_property: self does not have own property "XMLHttpRequestEventTarget" expected property "XMLHttpRequestEventTarget" missing
-FAIL XMLHttpRequestEventTarget interface: existence and properties of interface prototype object assert_own_property: self does not have own property "XMLHttpRequestEventTarget" expected property "XMLHttpRequestEventTarget" missing
-FAIL XMLHttpRequestEventTarget interface: existence and properties of interface prototype object's "constructor" property assert_own_property: self does not have own property "XMLHttpRequestEventTarget" expected property "XMLHttpRequestEventTarget" missing
-FAIL XMLHttpRequestEventTarget interface: attribute onloadstart assert_own_property: self does not have own property "XMLHttpRequestEventTarget" expected property "XMLHttpRequestEventTarget" missing
-FAIL XMLHttpRequestEventTarget interface: attribute onprogress assert_own_property: self does not have own property "XMLHttpRequestEventTarget" expected property "XMLHttpRequestEventTarget" missing
-FAIL XMLHttpRequestEventTarget interface: attribute onabort assert_own_property: self does not have own property "XMLHttpRequestEventTarget" expected property "XMLHttpRequestEventTarget" missing
-FAIL XMLHttpRequestEventTarget interface: attribute onerror assert_own_property: self does not have own property "XMLHttpRequestEventTarget" expected property "XMLHttpRequestEventTarget" missing
-FAIL XMLHttpRequestEventTarget interface: attribute onload assert_own_property: self does not have own property "XMLHttpRequestEventTarget" expected property "XMLHttpRequestEventTarget" missing
-FAIL XMLHttpRequestEventTarget interface: attribute ontimeout assert_own_property: self does not have own property "XMLHttpRequestEventTarget" expected property "XMLHttpRequestEventTarget" missing
-FAIL XMLHttpRequestEventTarget interface: attribute onloadend assert_own_property: self does not have own property "XMLHttpRequestEventTarget" expected property "XMLHttpRequestEventTarget" missing
-FAIL XMLHttpRequestUpload interface: existence and properties of interface object assert_own_property: should inherit from XMLHttpRequestEventTarget, but self has no such property expected property "XMLHttpRequestEventTarget" missing
+PASS XMLHttpRequestEventTarget interface: existence and properties of interface object 
+PASS XMLHttpRequestEventTarget interface object length 
+PASS XMLHttpRequestEventTarget interface object name 
+PASS XMLHttpRequestEventTarget interface: existence and properties of interface prototype object 
+PASS XMLHttpRequestEventTarget interface: existence and properties of interface prototype object's "constructor" property 
+PASS XMLHttpRequestEventTarget interface: attribute onloadstart 
+PASS XMLHttpRequestEventTarget interface: attribute onprogress 
+PASS XMLHttpRequestEventTarget interface: attribute onabort 
+PASS XMLHttpRequestEventTarget interface: attribute onerror 
+PASS XMLHttpRequestEventTarget interface: attribute onload 
+PASS XMLHttpRequestEventTarget interface: attribute ontimeout 
+PASS XMLHttpRequestEventTarget interface: attribute onloadend 
+PASS XMLHttpRequestUpload interface: existence and properties of interface object 
 PASS XMLHttpRequestUpload interface object length 
 PASS XMLHttpRequestUpload interface object name 
-FAIL XMLHttpRequestUpload interface: existence and properties of interface prototype object assert_own_property: should inherit from XMLHttpRequestEventTarget, but self has no such property expected property "XMLHttpRequestEventTarget" missing
+PASS XMLHttpRequestUpload interface: existence and properties of interface prototype object 
 PASS XMLHttpRequestUpload interface: existence and properties of interface prototype object's "constructor" property 
 PASS XMLHttpRequestUpload must be primary interface of (new XMLHttpRequest()).upload 
 PASS Stringification of (new XMLHttpRequest()).upload 
@@ -38,10 +38,10 @@ FAIL EventTarget interface: calling removeEventListener(DOMString,EventListener,
 }" did not throw
 PASS EventTarget interface: (new XMLHttpRequest()).upload must inherit property "dispatchEvent" with the proper type (2) 
 PASS EventTarget interface: calling dispatchEvent(Event) on (new XMLHttpRequest()).upload with too few arguments must throw TypeError 
-FAIL XMLHttpRequest interface: existence and properties of interface object assert_own_property: should inherit from XMLHttpRequestEventTarget, but self has no such property expected property "XMLHttpRequestEventTarget" missing
+PASS XMLHttpRequest interface: existence and properties of interface object 
 PASS XMLHttpRequest interface object length 
 PASS XMLHttpRequest interface object name 
-FAIL XMLHttpRequest interface: existence and properties of interface prototype object assert_own_property: should inherit from XMLHttpRequestEventTarget, but self has no such property expected property "XMLHttpRequestEventTarget" missing
+PASS XMLHttpRequest interface: existence and properties of interface prototype object 
 PASS XMLHttpRequest interface: existence and properties of interface prototype object's "constructor" property 
 PASS XMLHttpRequest interface: attribute onreadystatechange 
 PASS XMLHttpRequest interface: constant UNSENT on interface object 
index 943185a..ffd9531 100644 (file)
@@ -254,6 +254,11 @@ PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').hasOwnPr
 PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').hasOwnProperty('set') is false
 PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').enumerable is false
 PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').value is XMLHttpRequestEventTarget
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').configurable is true
 PASS [Worker] Object.getOwnPropertyDescriptor(global, 'webkitURL').value is webkitURL
 PASS [Worker] Object.getOwnPropertyDescriptor(global, 'webkitURL').hasOwnProperty('get') is false
 PASS [Worker] Object.getOwnPropertyDescriptor(global, 'webkitURL').hasOwnProperty('set') is false
index e448a49..348ec1c 100644 (file)
@@ -1943,6 +1943,11 @@ PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').hasOwnProperty('g
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').hasOwnProperty('set') is false
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').enumerable is false
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').configurable is true
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').value is XMLHttpRequestEventTarget
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').hasOwnProperty('get') is false
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').hasOwnProperty('set') is false
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').enumerable is false
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').configurable is true
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestException').value is XMLHttpRequestException
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestException').hasOwnProperty('get') is false
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestException').hasOwnProperty('set') is false
index b17b6d3..fc7204f 100644 (file)
@@ -94,6 +94,11 @@ PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').hasOwnPr
 PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').hasOwnProperty('set') is false
 PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').enumerable is false
 PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').configurable is true
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').value is XMLHttpRequestEventTarget
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').hasOwnProperty('get') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').hasOwnProperty('set') is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').enumerable is false
+PASS [Worker] Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').configurable is true
 PASS [Worker] Object.getOwnPropertyDescriptor(global, 'webkitURL').value is webkitURL
 PASS [Worker] Object.getOwnPropertyDescriptor(global, 'webkitURL').hasOwnProperty('get') is false
 PASS [Worker] Object.getOwnPropertyDescriptor(global, 'webkitURL').hasOwnProperty('set') is false
index 70b6e72..d4ee8ef 100644 (file)
@@ -2098,6 +2098,11 @@ PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').hasOwnProperty('g
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').hasOwnProperty('set') is false
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').enumerable is false
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').configurable is true
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').value is XMLHttpRequestEventTarget
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').hasOwnProperty('get') is false
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').hasOwnProperty('set') is false
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').enumerable is false
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').configurable is true
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestProgressEvent').value is XMLHttpRequestProgressEvent
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestProgressEvent').hasOwnProperty('get') is false
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestProgressEvent').hasOwnProperty('set') is false
index 1433748..2f94780 100644 (file)
@@ -2053,6 +2053,11 @@ PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').hasOwnProperty('g
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').hasOwnProperty('set') is false
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').enumerable is false
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').configurable is true
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').value is XMLHttpRequestEventTarget
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').hasOwnProperty('get') is false
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').hasOwnProperty('set') is false
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').enumerable is false
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').configurable is true
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestProgressEvent').value is XMLHttpRequestProgressEvent
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestProgressEvent').hasOwnProperty('get') is false
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestProgressEvent').hasOwnProperty('set') is false
index 40f0745..6ffac6d 100644 (file)
@@ -2093,6 +2093,11 @@ PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').hasOwnProperty('g
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').hasOwnProperty('set') is false
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').enumerable is false
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').configurable is true
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').value is XMLHttpRequestEventTarget
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').hasOwnProperty('get') is false
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').hasOwnProperty('set') is false
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').enumerable is false
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').configurable is true
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestProgressEvent').value is XMLHttpRequestProgressEvent
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestProgressEvent').hasOwnProperty('get') is false
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestProgressEvent').hasOwnProperty('set') is false
index 8d7341b..3a2b75b 100644 (file)
@@ -2278,6 +2278,11 @@ PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').hasOwnProperty('g
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').hasOwnProperty('set') is false
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').enumerable is false
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').configurable is true
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').value is XMLHttpRequestEventTarget
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').hasOwnProperty('get') is false
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').hasOwnProperty('set') is false
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').enumerable is false
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').configurable is true
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestProgressEvent').value is XMLHttpRequestProgressEvent
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestProgressEvent').hasOwnProperty('get') is false
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestProgressEvent').hasOwnProperty('set') is false
index a795d58..80c313f 100644 (file)
@@ -2283,6 +2283,11 @@ PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').hasOwnProperty('g
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').hasOwnProperty('set') is false
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').enumerable is false
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').configurable is true
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').value is XMLHttpRequestEventTarget
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').hasOwnProperty('get') is false
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').hasOwnProperty('set') is false
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').enumerable is false
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').configurable is true
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestProgressEvent').value is XMLHttpRequestProgressEvent
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestProgressEvent').hasOwnProperty('get') is false
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestProgressEvent').hasOwnProperty('set') is false
index 6c8bd5d..f3a93f1 100644 (file)
@@ -1833,6 +1833,11 @@ PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').hasOwnProperty('g
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').hasOwnProperty('set') is false
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').enumerable is false
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequest').configurable is true
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').value is XMLHttpRequestEventTarget
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').hasOwnProperty('get') is false
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').hasOwnProperty('set') is false
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').enumerable is false
+PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestEventTarget').configurable is true
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestProgressEvent').value is XMLHttpRequestProgressEvent
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestProgressEvent').hasOwnProperty('get') is false
 PASS Object.getOwnPropertyDescriptor(global, 'XMLHttpRequestProgressEvent').hasOwnProperty('set') is false
index b9b1088..893ae38 100644 (file)
@@ -632,6 +632,7 @@ set(WebCore_NON_SVG_IDL_FILES
 
     xml/DOMParser.idl
     xml/XMLHttpRequest.idl
+    xml/XMLHttpRequestEventTarget.idl
     xml/XMLHttpRequestProgressEvent.idl
     xml/XMLHttpRequestUpload.idl
     xml/XMLSerializer.idl
index 1fec5cf..ceb55ec 100644 (file)
@@ -1,3 +1,30 @@
+2016-02-15  Chris Dumez  <cdumez@apple.com>
+
+        XMLHttpRequest / XMLHttpRequestUpload should inherit XMLHttpRequestEventTarget
+        https://bugs.webkit.org/show_bug.cgi?id=154230
+
+        Reviewed by Alex Christensen.
+
+        MLHttpRequest / XMLHttpRequestUpload should inherit XMLHttpRequestEventTarget
+        as per:
+        https://xhr.spec.whatwg.org/#xmlhttprequesteventtarget
+
+        Firefox and Chrome already match the specification.
+
+        No new tests, already covered by existing tests.
+
+        * CMakeLists.txt:
+        * DerivedSources.make:
+        * WebCore.vcxproj/WebCore.vcxproj:
+        * WebCore.vcxproj/WebCore.vcxproj.filters:
+        * WebCore.xcodeproj/project.pbxproj:
+        * xml/XMLHttpRequest.h:
+        * xml/XMLHttpRequest.idl:
+        * xml/XMLHttpRequestEventTarget.h: Added.
+        * xml/XMLHttpRequestEventTarget.idl: Copied from Source/WebCore/xml/XMLHttpRequestUpload.idl.
+        * xml/XMLHttpRequestUpload.h:
+        * xml/XMLHttpRequestUpload.idl:
+
 2016-02-15  Jiewen Tan  <jiewen_tan@apple.com>
 
         Refine SimulatedMouseEvent to support Event.isTrusted
index f6bab33..9f1b739 100644 (file)
@@ -541,6 +541,7 @@ NON_SVG_BINDING_IDLS = \
     $(WebCore)/workers/WorkerLocation.idl \
     $(WebCore)/xml/DOMParser.idl \
     $(WebCore)/xml/XMLHttpRequest.idl \
+    $(WebCore)/xml/XMLHttpRequestEventTarget.idl \
     $(WebCore)/xml/XMLHttpRequestProgressEvent.idl \
     $(WebCore)/xml/XMLHttpRequestUpload.idl \
     $(WebCore)/xml/XMLSerializer.idl \
index db6d9cd..03b2206 100644 (file)
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|Win32'">true</ExcludedFromBuild>
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|x64'">true</ExcludedFromBuild>
     </ClCompile>
+    <ClCompile Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSXMLHttpRequestEventTarget.cpp">
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug_WinCairo|Win32'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug_WinCairo|x64'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugSuffix|Win32'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugSuffix|x64'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_WinCairo|Win32'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_WinCairo|x64'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|Win32'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|x64'">true</ExcludedFromBuild>
+    </ClCompile>
     <ClCompile Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSXMLHttpRequestProgressEvent.cpp">
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
     <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\WebCore\DerivedSources\JSWorkerNavigator.h" />
     <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSXMLDocument.h" />
     <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSXMLHttpRequest.h" />
+    <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSXMLHttpRequestEventTarget.h" />
     <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSXMLHttpRequestProgressEvent.h" />
     <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSXMLHttpRequestUpload.h" />
     <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSXMLSerializer.h" />
index d0dfa2d..d27e934 100644 (file)
     <ClCompile Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSXMLHttpRequest.cpp">
       <Filter>DerivedSources</Filter>
     </ClCompile>
+    <ClCompile Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSXMLHttpRequestEventTarget.cpp">
+      <Filter>DerivedSources</Filter>
+    </ClCompile>
     <ClCompile Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSXMLHttpRequestProgressEvent.cpp">
       <Filter>DerivedSources</Filter>
     </ClCompile>
     <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSXMLHttpRequest.h">
       <Filter>DerivedSources</Filter>
     </ClInclude>
+    <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSXMLHttpRequestEventTarget.h">
+      <Filter>DerivedSources</Filter>
+    </ClInclude>
     <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSXMLHttpRequestProgressEvent.h">
       <Filter>DerivedSources</Filter>
     </ClInclude>
index f2e832a..23766bf 100644 (file)
                83C1D434178D5AB500141E68 /* SVGPathSegLinetoVerticalRel.h in Headers */ = {isa = PBXBuildFile; fileRef = 83C1D422178D5AB400141E68 /* SVGPathSegLinetoVerticalRel.h */; };
                83C1D435178D5AB500141E68 /* SVGPathSegMovetoAbs.h in Headers */ = {isa = PBXBuildFile; fileRef = 83C1D423178D5AB400141E68 /* SVGPathSegMovetoAbs.h */; };
                83C1D436178D5AB500141E68 /* SVGPathSegMovetoRel.h in Headers */ = {isa = PBXBuildFile; fileRef = 83C1D424178D5AB400141E68 /* SVGPathSegMovetoRel.h */; };
+               83D35AEC1C7187FA00F70D5A /* XMLHttpRequestEventTarget.h in Headers */ = {isa = PBXBuildFile; fileRef = 83D35AEA1C7187ED00F70D5A /* XMLHttpRequestEventTarget.h */; };
+               83D35AF11C718D9000F70D5A /* JSXMLHttpRequestEventTarget.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 83D35AEF1C718D8400F70D5A /* JSXMLHttpRequestEventTarget.cpp */; };
+               83D35AF21C718D9000F70D5A /* JSXMLHttpRequestEventTarget.h in Headers */ = {isa = PBXBuildFile; fileRef = 83D35AF01C718D8400F70D5A /* JSXMLHttpRequestEventTarget.h */; };
                83E359A21BB1031D002CEB98 /* JSHTMLTimeElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 83E359A01BB1031D002CEB98 /* JSHTMLTimeElement.h */; };
                83E359A31BB1031D002CEB98 /* JSHTMLTimeElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 83E359A11BB1031D002CEB98 /* JSHTMLTimeElement.cpp */; };
                83F1206B1B8C104700D75F63 /* JSNodeFilterCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 83F1206A1B8C103600D75F63 /* JSNodeFilterCustom.cpp */; };
                83C1D424178D5AB400141E68 /* SVGPathSegMovetoRel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SVGPathSegMovetoRel.h; sourceTree = "<group>"; };
                83D26D3C1AFDCC50001B3873 /* ChildNode.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = ChildNode.idl; sourceTree = "<group>"; };
                83D26D3D1AFDCC50001B3873 /* ParentNode.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = ParentNode.idl; sourceTree = "<group>"; };
+               83D35AEA1C7187ED00F70D5A /* XMLHttpRequestEventTarget.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XMLHttpRequestEventTarget.h; sourceTree = "<group>"; };
+               83D35AEB1C7187ED00F70D5A /* XMLHttpRequestEventTarget.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = XMLHttpRequestEventTarget.idl; sourceTree = "<group>"; };
+               83D35AEF1C718D8400F70D5A /* JSXMLHttpRequestEventTarget.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = JSXMLHttpRequestEventTarget.cpp; path = JSXMLHttpRequestEventTarget.cpp; sourceTree = "<group>"; };
+               83D35AF01C718D8400F70D5A /* JSXMLHttpRequestEventTarget.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = JSXMLHttpRequestEventTarget.h; path = JSXMLHttpRequestEventTarget.h; sourceTree = "<group>"; };
                83E359A01BB1031D002CEB98 /* JSHTMLTimeElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSHTMLTimeElement.h; sourceTree = "<group>"; };
                83E359A11BB1031D002CEB98 /* JSHTMLTimeElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSHTMLTimeElement.cpp; sourceTree = "<group>"; };
                83E959E11B8BC22B004D9385 /* NativeNodeFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NativeNodeFilter.h; sourceTree = "<group>"; };
                                1ACE53DE0A8D18810022947D /* JSDOMParser.h */,
                                BC348BD10DB7F804004ABAB9 /* JSXMLHttpRequest.cpp */,
                                BC348BD20DB7F804004ABAB9 /* JSXMLHttpRequest.h */,
+                               83D35AEF1C718D8400F70D5A /* JSXMLHttpRequestEventTarget.cpp */,
+                               83D35AF01C718D8400F70D5A /* JSXMLHttpRequestEventTarget.h */,
                                F916C48B0DB510F80076CD83 /* JSXMLHttpRequestProgressEvent.cpp */,
                                F916C48C0DB510F80076CD83 /* JSXMLHttpRequestProgressEvent.h */,
                                BCDFD4930E30592F009D10AD /* JSXMLHttpRequestUpload.cpp */,
                                BC772C440C4EB2C60083285F /* XMLHttpRequest.cpp */,
                                BC772C450C4EB2C60083285F /* XMLHttpRequest.h */,
                                BC348BA70DB7F1B8004ABAB9 /* XMLHttpRequest.idl */,
+                               83D35AEA1C7187ED00F70D5A /* XMLHttpRequestEventTarget.h */,
+                               83D35AEB1C7187ED00F70D5A /* XMLHttpRequestEventTarget.idl */,
                                F9F0ED770DB50CA200D16DB9 /* XMLHttpRequestProgressEvent.h */,
                                F9F0ED780DB50CA200D16DB9 /* XMLHttpRequestProgressEvent.idl */,
                                A136A00A1134DBD200CC8D50 /* XMLHttpRequestProgressEventThrottle.cpp */,
                                A8DF3FD2097FA0FC0052981B /* HTMLBaseFontElement.h in Headers */,
                                9B24DE8E15194B9500C59C27 /* HTMLBDIElement.h in Headers */,
                                A871DE2C0A152AC800B12A68 /* HTMLBodyElement.h in Headers */,
+                               83D35AEC1C7187FA00F70D5A /* XMLHttpRequestEventTarget.h in Headers */,
                                A8CFF7AA0A156978000A4234 /* HTMLBRElement.h in Headers */,
                                A81369D2097374F600D74463 /* HTMLButtonElement.h in Headers */,
                                93F199E508245E59001E9ABC /* HTMLCanvasElement.h in Headers */,
                                089582560E857A7E00F82C83 /* ImageLoader.h in Headers */,
                                BC7F44A80B9E324E00A9D081 /* ImageObserver.h in Headers */,
                                2D5A5931152525D00036EE51 /* ImageOrientation.h in Headers */,
+                               83D35AF21C718D9000F70D5A /* JSXMLHttpRequestEventTarget.h in Headers */,
                                B51A2F3F17D7D3AE0072517A /* ImageQualityController.h in Headers */,
                                49291E4B134172C800E753DE /* ImageRenderingMode.h in Headers */,
                                B27535710B053814002CE64F /* ImageSource.h in Headers */,
                                E1A3162E134BC32D007C9A4F /* WebNSAttributedStringExtras.mm in Sources */,
                                99CC0B6A18BEA1FF006CEBCC /* WebReplayInputs.cpp in Sources */,
                                1CAF34820A6C405200ABE06E /* WebScriptObject.mm in Sources */,
+                               83D35AF11C718D9000F70D5A /* JSXMLHttpRequestEventTarget.cpp in Sources */,
                                97AABD1A14FA09D5007457AE /* WebSocket.cpp in Sources */,
                                97AABD1D14FA09D5007457AE /* WebSocketChannel.cpp in Sources */,
                                4A38BF5014FE1C0900612512 /* WebSocketDeflateFramer.cpp in Sources */,
index 41fdbb0..6e9df36 100644 (file)
 
 #include "ActiveDOMObject.h"
 #include "EventListener.h"
-#include "EventTarget.h"
 #include "FormData.h"
 #include "ResourceResponse.h"
 #include "ScriptWrappable.h"
 #include "ThreadableLoaderClient.h"
+#include "XMLHttpRequestEventTarget.h"
 #include "XMLHttpRequestProgressEventThrottle.h"
 #include <wtf/text/AtomicStringHash.h>
 #include <wtf/text/StringBuilder.h>
@@ -49,7 +49,7 @@ class SharedBuffer;
 class TextResourceDecoder;
 class ThreadableLoader;
 
-class XMLHttpRequest final : public RefCounted<XMLHttpRequest>, public EventTargetWithInlineData, private ThreadableLoaderClient, public ActiveDOMObject {
+class XMLHttpRequest final : public RefCounted<XMLHttpRequest>, public XMLHttpRequestEventTarget, private ThreadableLoaderClient, public ActiveDOMObject {
     WTF_MAKE_FAST_ALLOCATED;
 public:
     static Ref<XMLHttpRequest> create(ScriptExecutionContext&);
index 720f16f..9cde178 100644 (file)
@@ -41,16 +41,9 @@ enum XMLHttpRequestResponseType {
     Constructor,
     ConstructorCallWith=ScriptExecutionContext,
     JSCustomMarkFunction,
-] interface XMLHttpRequest : EventTarget {
-    // From XMLHttpRequestEventTarget
-    attribute EventHandler onabort;
-    attribute EventHandler onerror;
-    attribute EventHandler onload;
-    attribute EventHandler onloadend;
-    attribute EventHandler onloadstart;
-    attribute EventHandler onprogress;
-    attribute EventHandler ontimeout;
-
+    JSGenerateToNativeObject,
+    JSGenerateToJSObject,
+] interface XMLHttpRequest : XMLHttpRequestEventTarget {
     attribute EventHandler onreadystatechange;
 
     // state
diff --git a/Source/WebCore/xml/XMLHttpRequestEventTarget.h b/Source/WebCore/xml/XMLHttpRequestEventTarget.h
new file mode 100644 (file)
index 0000000..bfe1675
--- /dev/null
@@ -0,0 +1,38 @@
+/*
+ * Copyright (C) 2016 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef XMLHttpRequestEventTarget_h
+#define XMLHttpRequestEventTarget_h
+
+#include "EventTarget.h"
+
+namespace WebCore {
+
+class XMLHttpRequestEventTarget : public EventTargetWithInlineData {
+};
+
+}
+
+#endif // XMLHttpRequestEventTarget_h
diff --git a/Source/WebCore/xml/XMLHttpRequestEventTarget.idl b/Source/WebCore/xml/XMLHttpRequestEventTarget.idl
new file mode 100644 (file)
index 0000000..19c6551
--- /dev/null
@@ -0,0 +1,40 @@
+/*
+ * Copyright (C) 2016 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1.  Redistributions of source code must retain the above copyright
+ *     notice, this list of conditions and the following disclaimer.
+ * 2.  Redistributions in binary form must reproduce the above copyright
+ *     notice, this list of conditions and the following disclaimer in the
+ *     documentation and/or other materials provided with the distribution.
+ * 3.  Neither the name of Apple Inc. ("Apple") nor the names of
+ *     its contributors may be used to endorse or promote products derived
+ *     from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+[
+    GlobalContext=DOMWindow&WorkerGlobalScope,
+    SuppressToJSObject,
+] interface XMLHttpRequestEventTarget : EventTarget {
+     attribute EventHandler onloadstart;
+     attribute EventHandler onprogress;
+     attribute EventHandler onabort;
+     attribute EventHandler onerror;
+     attribute EventHandler onload;
+     attribute EventHandler ontimeout;
+     attribute EventHandler onloadend;
+};
index e66a4a7..5418b73 100644 (file)
@@ -37,7 +37,7 @@ namespace WebCore {
     class ScriptExecutionContext;
     class XMLHttpRequest;
 
-    class XMLHttpRequestUpload final : public EventTargetWithInlineData {
+    class XMLHttpRequestUpload final : public XMLHttpRequestEventTarget {
     public:
         explicit XMLHttpRequestUpload(XMLHttpRequest*);
 
index d1a4baf..b914536 100644 (file)
 
 [
     GenerateIsReachable=Impl,
-] interface XMLHttpRequestUpload : EventTarget {
-    // From XMLHttpRequestEventTarget
-    attribute EventHandler onabort;
-    attribute EventHandler onerror;
-    attribute EventHandler onload;
-    attribute EventHandler onloadend;
-    attribute EventHandler onloadstart;
-    attribute EventHandler onprogress;
-    attribute EventHandler ontimeout;
+    JSGenerateToJSObject,
+] interface XMLHttpRequestUpload : XMLHttpRequestEventTarget {
 };