<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[182046] trunk</title>
</head>
<body>
<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/182046">182046</a></dd>
<dt>Author</dt> <dd>timothy_horton@apple.com</dd>
<dt>Date</dt> <dd>2015-03-26 18:02:38 -0700 (Thu, 26 Mar 2015)</dd>
</dl>
<h3>Log Message</h3>
<pre>REGRESSION (<a href="http://trac.webkit.org/projects/webkit/changeset/181358">r181358</a> and <a href="http://trac.webkit.org/projects/webkit/changeset/181507">r181507</a>): Lots of sites think that we support touch events on OS X
https://bugs.webkit.org/show_bug.cgi?id=142888
<rdar://problem/20227304>
Reviewed by Beth Dakin.
* dom/Document.idl:
* dom/Element.idl:
* html/HTMLBodyElement.idl:
* html/HTMLFrameSetElement.idl:
* page/DOMWindow.idl:
Re-conditionalize a lot of event listeners; sites test ("ontouchstart" in window), which
is not covered by NotEnumerable, and so <a href="http://trac.webkit.org/projects/webkit/changeset/181358">r181358</a> and <a href="http://trac.webkit.org/projects/webkit/changeset/181507">r181507</a> broke a bunch of sites
(apple.com, blaze.com, anything using nicescroll.js, etc.) by causing them to think
that (Mac) Safari was touch-enabled.
* fast/dom/event-handler-attributes-expected.txt:
* fast/dom/event-handler-attributes.html:
* fast/events/event-attribute-expected.txt:
* platform/win/fast/events/event-attribute-expected.txt:
Revert some changes to these tests and their results.</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
<li><a href="#trunkLayoutTestsfastdomeventhandlerattributesexpectedtxt">trunk/LayoutTests/fast/dom/event-handler-attributes-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastdomeventhandlerattributeshtml">trunk/LayoutTests/fast/dom/event-handler-attributes.html</a></li>
<li><a href="#trunkLayoutTestsfasteventseventattributeexpectedtxt">trunk/LayoutTests/fast/events/event-attribute-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformwinfasteventseventattributeexpectedtxt">trunk/LayoutTests/platform/win/fast/events/event-attribute-expected.txt</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoredomDocumentidl">trunk/Source/WebCore/dom/Document.idl</a></li>
<li><a href="#trunkSourceWebCoredomElementidl">trunk/Source/WebCore/dom/Element.idl</a></li>
<li><a href="#trunkSourceWebCorehtmlHTMLBodyElementidl">trunk/Source/WebCore/html/HTMLBodyElement.idl</a></li>
<li><a href="#trunkSourceWebCorehtmlHTMLFrameSetElementidl">trunk/Source/WebCore/html/HTMLFrameSetElement.idl</a></li>
<li><a href="#trunkSourceWebCorepageDOMWindowidl">trunk/Source/WebCore/page/DOMWindow.idl</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (182045 => 182046)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog        2015-03-27 00:13:59 UTC (rev 182045)
+++ trunk/LayoutTests/ChangeLog        2015-03-27 01:02:38 UTC (rev 182046)
</span><span class="lines">@@ -1,3 +1,17 @@
</span><ins>+2015-03-26 Tim Horton <timothy_horton@apple.com>
+
+ REGRESSION (r181358 and r181507): Lots of sites think that we support touch events on OS X
+ https://bugs.webkit.org/show_bug.cgi?id=142888
+ <rdar://problem/20227304>
+
+ Reviewed by Beth Dakin.
+
+ * fast/dom/event-handler-attributes-expected.txt:
+ * fast/dom/event-handler-attributes.html:
+ * fast/events/event-attribute-expected.txt:
+ * platform/win/fast/events/event-attribute-expected.txt:
+ Revert some changes to these tests and their results.
+
</ins><span class="cx"> 2015-03-26 Roger Fong <roger_fong@apple.com>
</span><span class="cx">
</span><span class="cx"> Apply blur effect to media control background.
</span></span></pre></div>
<a id="trunkLayoutTestsfastdomeventhandlerattributesexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/dom/event-handler-attributes-expected.txt (182045 => 182046)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/dom/event-handler-attributes-expected.txt        2015-03-27 00:13:59 UTC (rev 182045)
+++ trunk/LayoutTests/fast/dom/event-handler-attributes-expected.txt        2015-03-27 01:02:38 UTC (rev 182046)
</span><span class="lines">@@ -17,8 +17,6 @@
</span><span class="cx"> PASS testScriptAttribute(window, "click") is "window"
</span><span class="cx"> PASS testScriptAttribute(window, "contextmenu") is "window"
</span><span class="cx"> PASS testScriptAttribute(window, "dblclick") is "window"
</span><del>-PASS testScriptAttribute(window, "devicemotion") is "window"
-PASS testScriptAttribute(window, "deviceorientation") is "window"
</del><span class="cx"> PASS testScriptAttribute(window, "drag") is "window"
</span><span class="cx"> PASS testScriptAttribute(window, "dragend") is "window"
</span><span class="cx"> PASS testScriptAttribute(window, "dragenter") is "window"
</span><span class="lines">@@ -31,9 +29,6 @@
</span><span class="cx"> PASS testScriptAttribute(window, "ended") is "window"
</span><span class="cx"> PASS testScriptAttribute(window, "error") is "window"
</span><span class="cx"> PASS testScriptAttribute(window, "focus") is "window"
</span><del>-PASS testScriptAttribute(window, "gesturechange") is "window"
-PASS testScriptAttribute(window, "gestureend") is "window"
-PASS testScriptAttribute(window, "gesturestart") is "window"
</del><span class="cx"> PASS testScriptAttribute(window, "hashchange") is "window"
</span><span class="cx"> PASS testScriptAttribute(window, "input") is "window"
</span><span class="cx"> PASS testScriptAttribute(window, "invalid") is "window"
</span><span class="lines">@@ -55,7 +50,6 @@
</span><span class="cx"> PASS testScriptAttribute(window, "mousewheel") is "window"
</span><span class="cx"> PASS testScriptAttribute(window, "offline") is "window"
</span><span class="cx"> PASS testScriptAttribute(window, "online") is "window"
</span><del>-PASS testScriptAttribute(window, "orientationchange") is "window"
</del><span class="cx"> PASS testScriptAttribute(window, "pagehide") is "window"
</span><span class="cx"> PASS testScriptAttribute(window, "pageshow") is "window"
</span><span class="cx"> PASS testScriptAttribute(window, "pause") is "window"
</span><span class="lines">@@ -76,10 +70,6 @@
</span><span class="cx"> PASS testScriptAttribute(window, "submit") is "window"
</span><span class="cx"> PASS testScriptAttribute(window, "suspend") is "window"
</span><span class="cx"> PASS testScriptAttribute(window, "timeupdate") is "window"
</span><del>-PASS testScriptAttribute(window, "touchcancel") is "window"
-PASS testScriptAttribute(window, "touchend") is "window"
-PASS testScriptAttribute(window, "touchmove") is "window"
-PASS testScriptAttribute(window, "touchstart") is "window"
</del><span class="cx"> PASS testScriptAttribute(window, "transitionend") is "window"
</span><span class="cx"> PASS testScriptAttribute(window, "unload") is "window"
</span><span class="cx"> PASS testScriptAttribute(window, "volumechange") is "window"
</span><span class="lines">@@ -87,24 +77,11 @@
</span><span class="cx"> PASS testScriptAttribute(window, "webkitanimationend") is "window"
</span><span class="cx"> PASS testScriptAttribute(window, "webkitanimationiteration") is "window"
</span><span class="cx"> PASS testScriptAttribute(window, "webkitanimationstart") is "window"
</span><del>-PASS testScriptAttribute(window, "webkitdeviceproximity") is "window"
-PASS testScriptAttribute(window, "webkitmouseforcecancelled") is "window"
-PASS testScriptAttribute(window, "webkitmouseforcechanged") is "window"
-PASS testScriptAttribute(window, "webkitmouseforceclick") is "window"
-PASS testScriptAttribute(window, "webkitmouseforcedown") is "window"
-PASS testScriptAttribute(window, "webkitmouseforceup") is "window"
-PASS testScriptAttribute(window, "webkitmouseforcewillbegin") is "window"
</del><span class="cx"> PASS testScriptAttribute(window, "webkittransitionend") is "window"
</span><del>-PASS testScriptAttribute(window, "webkitwillrevealbottom") is "window"
-PASS testScriptAttribute(window, "webkitwillrevealleft") is "window"
-PASS testScriptAttribute(window, "webkitwillrevealright") is "window"
-PASS testScriptAttribute(window, "webkitwillrevealtop") is "window"
</del><span class="cx"> PASS testScriptAttribute(window, "wheel") is "window"
</span><span class="cx">
</span><span class="cx"> Event names we expect not to be able to set on the window object
</span><span class="cx">
</span><del>-PASS testScriptAttribute(window, "autocomplete") is "none"
-PASS testScriptAttribute(window, "autocompleteerror") is "none"
</del><span class="cx"> PASS testScriptAttribute(window, "beforecopy") is "none"
</span><span class="cx"> PASS testScriptAttribute(window, "beforecut") is "none"
</span><span class="cx"> PASS testScriptAttribute(window, "beforeload") is "none"
</span><span class="lines">@@ -115,21 +92,9 @@
</span><span class="cx"> PASS testScriptAttribute(window, "focusout") is "none"
</span><span class="cx"> PASS testScriptAttribute(window, "noneventname") is "none"
</span><span class="cx"> PASS testScriptAttribute(window, "paste") is "none"
</span><del>-PASS testScriptAttribute(window, "pointerlockchange") is "none"
-PASS testScriptAttribute(window, "pointerlockerror") is "none"
</del><span class="cx"> PASS testScriptAttribute(window, "readystatechange") is "none"
</span><del>-PASS testScriptAttribute(window, "securitypolicyviolation") is "none"
</del><span class="cx"> PASS testScriptAttribute(window, "selectionchange") is "none"
</span><span class="cx"> PASS testScriptAttribute(window, "selectstart") is "none"
</span><del>-PASS testScriptAttribute(window, "webkitcurrentplaybacktargetiswirelesschanged") is "none"
-PASS testScriptAttribute(window, "webkitfullscreenchange") is "none"
-PASS testScriptAttribute(window, "webkitfullscreenerror") is "none"
-PASS testScriptAttribute(window, "webkitkeyadded") is "none"
-PASS testScriptAttribute(window, "webkitkeyerror") is "none"
-PASS testScriptAttribute(window, "webkitkeymessage") is "none"
-PASS testScriptAttribute(window, "webkitneedkey") is "none"
-PASS testScriptAttribute(window, "webkitplaybacktargetavailabilitychanged") is "none"
-PASS testScriptAttribute(window, "webkitpresentationmodechanged") is "none"
</del><span class="cx">
</span><span class="cx"> Event names we expect to be able to set on the document
</span><span class="cx">
</span><span class="lines">@@ -168,33 +133,14 @@
</span><span class="cx"> PASS testScriptAttribute(document, "mouseup") is "document"
</span><span class="cx"> PASS testScriptAttribute(document, "mousewheel") is "document"
</span><span class="cx"> PASS testScriptAttribute(document, "paste") is "document"
</span><del>-PASS testScriptAttribute(document, "pointerlockchange") is "document"
-PASS testScriptAttribute(document, "pointerlockerror") is "document"
</del><span class="cx"> PASS testScriptAttribute(document, "readystatechange") is "document"
</span><span class="cx"> PASS testScriptAttribute(document, "reset") is "document"
</span><span class="cx"> PASS testScriptAttribute(document, "scroll") is "document"
</span><span class="cx"> PASS testScriptAttribute(document, "search") is "document"
</span><del>-PASS testScriptAttribute(document, "securitypolicyviolation") is "document"
</del><span class="cx"> PASS testScriptAttribute(document, "select") is "document"
</span><span class="cx"> PASS testScriptAttribute(document, "selectionchange") is "document"
</span><span class="cx"> PASS testScriptAttribute(document, "selectstart") is "document"
</span><span class="cx"> PASS testScriptAttribute(document, "submit") is "document"
</span><del>-PASS testScriptAttribute(document, "touchcancel") is "document"
-PASS testScriptAttribute(document, "touchend") is "document"
-PASS testScriptAttribute(document, "touchmove") is "document"
-PASS testScriptAttribute(document, "touchstart") is "document"
-PASS testScriptAttribute(document, "webkitmouseforcecancelled") is "document"
-PASS testScriptAttribute(document, "webkitmouseforcechanged") is "document"
-PASS testScriptAttribute(document, "webkitmouseforceclick") is "document"
-PASS testScriptAttribute(document, "webkitmouseforcedown") is "document"
-PASS testScriptAttribute(document, "webkitmouseforceup") is "document"
-PASS testScriptAttribute(document, "webkitmouseforcewillbegin") is "document"
-PASS testScriptAttribute(document, "webkitfullscreenchange") is "document"
-PASS testScriptAttribute(document, "webkitfullscreenerror") is "document"
-PASS testScriptAttribute(document, "webkitwillrevealbottom") is "document"
-PASS testScriptAttribute(document, "webkitwillrevealleft") is "document"
-PASS testScriptAttribute(document, "webkitwillrevealright") is "document"
-PASS testScriptAttribute(document, "webkitwillrevealtop") is "document"
</del><span class="cx"> PASS testScriptAttribute(document, "wheel") is "document"
</span><span class="cx">
</span><span class="cx"> Event names we expect not to be able to set on the document
</span><span class="lines">@@ -202,22 +148,15 @@
</span><span class="cx"> PASS testScriptAttribute(document, "animationend") is "none"
</span><span class="cx"> PASS testScriptAttribute(document, "animationiteration") is "none"
</span><span class="cx"> PASS testScriptAttribute(document, "animationstart") is "none"
</span><del>-PASS testScriptAttribute(document, "autocomplete") is "none"
-PASS testScriptAttribute(document, "autocompleteerror") is "none"
</del><span class="cx"> PASS testScriptAttribute(document, "beforeload") is "none"
</span><span class="cx"> PASS testScriptAttribute(document, "beforeunload") is "none"
</span><span class="cx"> PASS testScriptAttribute(document, "canplay") is "none"
</span><span class="cx"> PASS testScriptAttribute(document, "canplaythrough") is "none"
</span><del>-PASS testScriptAttribute(document, "devicemotion") is "none"
-PASS testScriptAttribute(document, "deviceorientation") is "none"
</del><span class="cx"> PASS testScriptAttribute(document, "durationchange") is "none"
</span><span class="cx"> PASS testScriptAttribute(document, "emptied") is "none"
</span><span class="cx"> PASS testScriptAttribute(document, "ended") is "none"
</span><span class="cx"> PASS testScriptAttribute(document, "focusin") is "none"
</span><span class="cx"> PASS testScriptAttribute(document, "focusout") is "none"
</span><del>-PASS testScriptAttribute(document, "gesturechange") is "none"
-PASS testScriptAttribute(document, "gestureend") is "none"
-PASS testScriptAttribute(document, "gesturestart") is "none"
</del><span class="cx"> PASS testScriptAttribute(document, "hashchange") is "none"
</span><span class="cx"> PASS testScriptAttribute(document, "loadeddata") is "none"
</span><span class="cx"> PASS testScriptAttribute(document, "loadedmetadata") is "none"
</span><span class="lines">@@ -226,7 +165,6 @@
</span><span class="cx"> PASS testScriptAttribute(document, "noneventname") is "none"
</span><span class="cx"> PASS testScriptAttribute(document, "offline") is "none"
</span><span class="cx"> PASS testScriptAttribute(document, "online") is "none"
</span><del>-PASS testScriptAttribute(document, "orientationchange") is "none"
</del><span class="cx"> PASS testScriptAttribute(document, "pagehide") is "none"
</span><span class="cx"> PASS testScriptAttribute(document, "pageshow") is "none"
</span><span class="cx"> PASS testScriptAttribute(document, "pause") is "none"
</span><span class="lines">@@ -249,14 +187,6 @@
</span><span class="cx"> PASS testScriptAttribute(document, "webkitanimationend") is "none"
</span><span class="cx"> PASS testScriptAttribute(document, "webkitanimationiteration") is "none"
</span><span class="cx"> PASS testScriptAttribute(document, "webkitanimationstart") is "none"
</span><del>-PASS testScriptAttribute(document, "webkitcurrentplaybacktargetiswirelesschanged") is "none"
-PASS testScriptAttribute(document, "webkitdeviceproximity") is "none"
-PASS testScriptAttribute(document, "webkitkeyadded") is "none"
-PASS testScriptAttribute(document, "webkitkeyerror") is "none"
-PASS testScriptAttribute(document, "webkitkeymessage") is "none"
-PASS testScriptAttribute(document, "webkitneedkey") is "none"
-PASS testScriptAttribute(document, "webkitplaybacktargetavailabilitychanged") is "none"
-PASS testScriptAttribute(document, "webkitpresentationmodechanged") is "none"
</del><span class="cx"> PASS testScriptAttribute(document, "webkittransitionend") is "none"
</span><span class="cx">
</span><span class="cx"> Event names we expect to be able to set on an element (tested on the <html> element)
</span><span class="lines">@@ -265,8 +195,6 @@
</span><span class="cx"> PASS testElementAttribute(element, "animationend") is "target"
</span><span class="cx"> PASS testElementAttribute(element, "animationiteration") is "target"
</span><span class="cx"> PASS testElementAttribute(element, "animationstart") is "target"
</span><del>-PASS testElementAttribute(element, "autocomplete") is "target"
-PASS testElementAttribute(element, "autocompleteerror") is "target"
</del><span class="cx"> PASS testElementAttribute(element, "beforecopy") is "target"
</span><span class="cx"> PASS testElementAttribute(element, "beforecut") is "target"
</span><span class="cx"> PASS testElementAttribute(element, "beforeload") is "target"
</span><span class="lines">@@ -294,9 +222,6 @@
</span><span class="cx"> PASS testElementAttribute(element, "focus") is "target"
</span><span class="cx"> PASS testElementAttribute(element, "focusin") is "target"
</span><span class="cx"> PASS testElementAttribute(element, "focusout") is "target"
</span><del>-PASS testElementAttribute(element, "gesturechange") is "target"
-PASS testElementAttribute(element, "gestureend") is "target"
-PASS testElementAttribute(element, "gesturestart") is "target"
</del><span class="cx"> PASS testElementAttribute(element, "input") is "target"
</span><span class="cx"> PASS testElementAttribute(element, "invalid") is "target"
</span><span class="cx"> PASS testElementAttribute(element, "keydown") is "target"
</span><span class="lines">@@ -331,61 +256,31 @@
</span><span class="cx"> PASS testElementAttribute(element, "submit") is "target"
</span><span class="cx"> PASS testElementAttribute(element, "suspend") is "target"
</span><span class="cx"> PASS testElementAttribute(element, "timeupdate") is "target"
</span><del>-PASS testElementAttribute(element, "touchcancel") is "target"
-PASS testElementAttribute(element, "touchend") is "target"
-PASS testElementAttribute(element, "touchmove") is "target"
-PASS testElementAttribute(element, "touchstart") is "target"
</del><span class="cx"> PASS testElementAttribute(element, "transitionend") is "target"
</span><span class="cx"> PASS testElementAttribute(element, "volumechange") is "target"
</span><span class="cx"> PASS testElementAttribute(element, "waiting") is "target"
</span><span class="cx"> PASS testElementAttribute(element, "webkitanimationend") is "target"
</span><span class="cx"> PASS testElementAttribute(element, "webkitanimationiteration") is "target"
</span><span class="cx"> PASS testElementAttribute(element, "webkitanimationstart") is "target"
</span><del>-PASS testElementAttribute(element, "webkitcurrentplaybacktargetiswirelesschanged") is "target"
-PASS testElementAttribute(element, "webkitfullscreenchange") is "target"
-PASS testElementAttribute(element, "webkitfullscreenerror") is "target"
-PASS testElementAttribute(element, "webkitkeyadded") is "target"
-PASS testElementAttribute(element, "webkitkeyerror") is "target"
-PASS testElementAttribute(element, "webkitkeymessage") is "target"
-PASS testElementAttribute(element, "webkitmouseforcecancelled") is "target"
-PASS testElementAttribute(element, "webkitmouseforcechanged") is "target"
-PASS testElementAttribute(element, "webkitmouseforceclick") is "target"
-PASS testElementAttribute(element, "webkitmouseforcedown") is "target"
-PASS testElementAttribute(element, "webkitmouseforceup") is "target"
-PASS testElementAttribute(element, "webkitmouseforcewillbegin") is "target"
-PASS testElementAttribute(element, "webkitneedkey") is "target"
-PASS testElementAttribute(element, "webkitplaybacktargetavailabilitychanged") is "target"
-PASS testElementAttribute(element, "webkitpresentationmodechanged") is "target"
</del><span class="cx"> PASS testElementAttribute(element, "webkittransitionend") is "target"
</span><del>-PASS testElementAttribute(element, "webkitwillrevealbottom") is "target"
-PASS testElementAttribute(element, "webkitwillrevealleft") is "target"
-PASS testElementAttribute(element, "webkitwillrevealright") is "target"
-PASS testElementAttribute(element, "webkitwillrevealtop") is "target"
</del><span class="cx"> PASS testElementAttribute(element, "wheel") is "target"
</span><span class="cx">
</span><span class="cx"> Event names we expect not to be able to set on an element (tested on the <html> element)
</span><span class="cx">
</span><span class="cx"> PASS testElementAttribute(element, "beforeunload") is "none"
</span><del>-PASS testElementAttribute(element, "devicemotion") is "none"
-PASS testElementAttribute(element, "deviceorientation") is "none"
</del><span class="cx"> PASS testElementAttribute(element, "hashchange") is "none"
</span><span class="cx"> PASS testElementAttribute(element, "message") is "none"
</span><span class="cx"> PASS testElementAttribute(element, "noneventname") is "none"
</span><span class="cx"> PASS testElementAttribute(element, "offline") is "none"
</span><span class="cx"> PASS testElementAttribute(element, "online") is "none"
</span><del>-PASS testElementAttribute(element, "orientationchange") is "none"
</del><span class="cx"> PASS testElementAttribute(element, "pagehide") is "none"
</span><span class="cx"> PASS testElementAttribute(element, "pageshow") is "none"
</span><del>-PASS testElementAttribute(element, "pointerlockchange") is "none"
-PASS testElementAttribute(element, "pointerlockerror") is "none"
</del><span class="cx"> PASS testElementAttribute(element, "popstate") is "none"
</span><span class="cx"> PASS testElementAttribute(element, "readystatechange") is "none"
</span><span class="cx"> PASS testElementAttribute(element, "resize") is "none"
</span><del>-PASS testElementAttribute(element, "securitypolicyviolation") is "none"
</del><span class="cx"> PASS testElementAttribute(element, "selectionchange") is "none"
</span><span class="cx"> PASS testElementAttribute(element, "storage") is "none"
</span><span class="cx"> PASS testElementAttribute(element, "unload") is "none"
</span><del>-PASS testElementAttribute(element, "webkitdeviceproximity") is "none"
</del><span class="cx">
</span><span class="cx"> Event names we expect to be able to set on an element (tested on the <input> element)
</span><span class="cx">
</span><span class="lines">@@ -393,8 +288,6 @@
</span><span class="cx"> PASS testElementAttribute(inputElement, "animationend") is "target"
</span><span class="cx"> PASS testElementAttribute(inputElement, "animationiteration") is "target"
</span><span class="cx"> PASS testElementAttribute(inputElement, "animationstart") is "target"
</span><del>-PASS testElementAttribute(inputElement, "autocomplete") is "target"
-PASS testElementAttribute(inputElement, "autocompleteerror") is "target"
</del><span class="cx"> PASS testElementAttribute(inputElement, "beforecopy") is "target"
</span><span class="cx"> PASS testElementAttribute(inputElement, "beforecut") is "target"
</span><span class="cx"> PASS testElementAttribute(inputElement, "beforeload") is "target"
</span><span class="lines">@@ -422,9 +315,6 @@
</span><span class="cx"> PASS testElementAttribute(inputElement, "focus") is "target"
</span><span class="cx"> PASS testElementAttribute(inputElement, "focusin") is "target"
</span><span class="cx"> PASS testElementAttribute(inputElement, "focusout") is "target"
</span><del>-PASS testElementAttribute(inputElement, "gesturechange") is "target"
-PASS testElementAttribute(inputElement, "gestureend") is "target"
-PASS testElementAttribute(inputElement, "gesturestart") is "target"
</del><span class="cx"> PASS testElementAttribute(inputElement, "input") is "target"
</span><span class="cx"> PASS testElementAttribute(inputElement, "invalid") is "target"
</span><span class="cx"> PASS testElementAttribute(inputElement, "keydown") is "target"
</span><span class="lines">@@ -459,61 +349,31 @@
</span><span class="cx"> PASS testElementAttribute(inputElement, "submit") is "target"
</span><span class="cx"> PASS testElementAttribute(inputElement, "suspend") is "target"
</span><span class="cx"> PASS testElementAttribute(inputElement, "timeupdate") is "target"
</span><del>-PASS testElementAttribute(inputElement, "touchcancel") is "target"
-PASS testElementAttribute(inputElement, "touchend") is "target"
-PASS testElementAttribute(inputElement, "touchmove") is "target"
-PASS testElementAttribute(inputElement, "touchstart") is "target"
</del><span class="cx"> PASS testElementAttribute(inputElement, "transitionend") is "target"
</span><span class="cx"> PASS testElementAttribute(inputElement, "volumechange") is "target"
</span><span class="cx"> PASS testElementAttribute(inputElement, "waiting") is "target"
</span><span class="cx"> PASS testElementAttribute(inputElement, "webkitanimationend") is "target"
</span><span class="cx"> PASS testElementAttribute(inputElement, "webkitanimationiteration") is "target"
</span><span class="cx"> PASS testElementAttribute(inputElement, "webkitanimationstart") is "target"
</span><del>-PASS testElementAttribute(inputElement, "webkitcurrentplaybacktargetiswirelesschanged") is "target"
-PASS testElementAttribute(inputElement, "webkitfullscreenchange") is "target"
-PASS testElementAttribute(inputElement, "webkitfullscreenerror") is "target"
-PASS testElementAttribute(inputElement, "webkitkeyadded") is "target"
-PASS testElementAttribute(inputElement, "webkitkeyerror") is "target"
-PASS testElementAttribute(inputElement, "webkitkeymessage") is "target"
-PASS testElementAttribute(inputElement, "webkitmouseforcecancelled") is "target"
-PASS testElementAttribute(inputElement, "webkitmouseforcechanged") is "target"
-PASS testElementAttribute(inputElement, "webkitmouseforceclick") is "target"
-PASS testElementAttribute(inputElement, "webkitmouseforcedown") is "target"
-PASS testElementAttribute(inputElement, "webkitmouseforceup") is "target"
-PASS testElementAttribute(inputElement, "webkitmouseforcewillbegin") is "target"
-PASS testElementAttribute(inputElement, "webkitneedkey") is "target"
-PASS testElementAttribute(inputElement, "webkitplaybacktargetavailabilitychanged") is "target"
-PASS testElementAttribute(inputElement, "webkitpresentationmodechanged") is "target"
</del><span class="cx"> PASS testElementAttribute(inputElement, "webkittransitionend") is "target"
</span><del>-PASS testElementAttribute(inputElement, "webkitwillrevealbottom") is "target"
-PASS testElementAttribute(inputElement, "webkitwillrevealleft") is "target"
-PASS testElementAttribute(inputElement, "webkitwillrevealright") is "target"
-PASS testElementAttribute(inputElement, "webkitwillrevealtop") is "target"
</del><span class="cx"> PASS testElementAttribute(inputElement, "wheel") is "target"
</span><span class="cx">
</span><span class="cx"> Event names we expect not to be able to set on an element (tested on the <input> element)
</span><span class="cx">
</span><span class="cx"> PASS testElementAttribute(inputElement, "beforeunload") is "none"
</span><del>-PASS testElementAttribute(inputElement, "devicemotion") is "none"
-PASS testElementAttribute(inputElement, "deviceorientation") is "none"
</del><span class="cx"> PASS testElementAttribute(inputElement, "hashchange") is "none"
</span><span class="cx"> PASS testElementAttribute(inputElement, "message") is "none"
</span><span class="cx"> PASS testElementAttribute(inputElement, "noneventname") is "none"
</span><span class="cx"> PASS testElementAttribute(inputElement, "offline") is "none"
</span><span class="cx"> PASS testElementAttribute(inputElement, "online") is "none"
</span><del>-PASS testElementAttribute(inputElement, "orientationchange") is "none"
</del><span class="cx"> PASS testElementAttribute(inputElement, "pagehide") is "none"
</span><span class="cx"> PASS testElementAttribute(inputElement, "pageshow") is "none"
</span><del>-PASS testElementAttribute(inputElement, "pointerlockchange") is "none"
-PASS testElementAttribute(inputElement, "pointerlockerror") is "none"
</del><span class="cx"> PASS testElementAttribute(inputElement, "popstate") is "none"
</span><span class="cx"> PASS testElementAttribute(inputElement, "readystatechange") is "none"
</span><span class="cx"> PASS testElementAttribute(inputElement, "resize") is "none"
</span><del>-PASS testElementAttribute(inputElement, "securitypolicyviolation") is "none"
</del><span class="cx"> PASS testElementAttribute(inputElement, "selectionchange") is "none"
</span><span class="cx"> PASS testElementAttribute(inputElement, "storage") is "none"
</span><span class="cx"> PASS testElementAttribute(inputElement, "unload") is "none"
</span><del>-PASS testElementAttribute(inputElement, "webkitdeviceproximity") is "none"
</del><span class="cx">
</span><span class="cx"> Event names we expect to be able to set on an element (tested on the <audio> element)
</span><span class="cx">
</span><span class="lines">@@ -521,8 +381,6 @@
</span><span class="cx"> PASS testElementAttribute(audioElement, "animationend") is "target"
</span><span class="cx"> PASS testElementAttribute(audioElement, "animationiteration") is "target"
</span><span class="cx"> PASS testElementAttribute(audioElement, "animationstart") is "target"
</span><del>-PASS testElementAttribute(audioElement, "autocomplete") is "target"
-PASS testElementAttribute(audioElement, "autocompleteerror") is "target"
</del><span class="cx"> PASS testElementAttribute(audioElement, "beforecopy") is "target"
</span><span class="cx"> PASS testElementAttribute(audioElement, "beforecut") is "target"
</span><span class="cx"> PASS testElementAttribute(audioElement, "beforeload") is "target"
</span><span class="lines">@@ -550,9 +408,6 @@
</span><span class="cx"> PASS testElementAttribute(audioElement, "focus") is "target"
</span><span class="cx"> PASS testElementAttribute(audioElement, "focusin") is "target"
</span><span class="cx"> PASS testElementAttribute(audioElement, "focusout") is "target"
</span><del>-PASS testElementAttribute(audioElement, "gesturechange") is "target"
-PASS testElementAttribute(audioElement, "gestureend") is "target"
-PASS testElementAttribute(audioElement, "gesturestart") is "target"
</del><span class="cx"> PASS testElementAttribute(audioElement, "input") is "target"
</span><span class="cx"> PASS testElementAttribute(audioElement, "invalid") is "target"
</span><span class="cx"> PASS testElementAttribute(audioElement, "keydown") is "target"
</span><span class="lines">@@ -587,61 +442,31 @@
</span><span class="cx"> PASS testElementAttribute(audioElement, "submit") is "target"
</span><span class="cx"> PASS testElementAttribute(audioElement, "suspend") is "target"
</span><span class="cx"> PASS testElementAttribute(audioElement, "timeupdate") is "target"
</span><del>-PASS testElementAttribute(audioElement, "touchcancel") is "target"
-PASS testElementAttribute(audioElement, "touchend") is "target"
-PASS testElementAttribute(audioElement, "touchmove") is "target"
-PASS testElementAttribute(audioElement, "touchstart") is "target"
</del><span class="cx"> PASS testElementAttribute(audioElement, "transitionend") is "target"
</span><span class="cx"> PASS testElementAttribute(audioElement, "volumechange") is "target"
</span><span class="cx"> PASS testElementAttribute(audioElement, "waiting") is "target"
</span><span class="cx"> PASS testElementAttribute(audioElement, "webkitanimationend") is "target"
</span><span class="cx"> PASS testElementAttribute(audioElement, "webkitanimationiteration") is "target"
</span><span class="cx"> PASS testElementAttribute(audioElement, "webkitanimationstart") is "target"
</span><del>-PASS testElementAttribute(audioElement, "webkitcurrentplaybacktargetiswirelesschanged") is "target"
-PASS testElementAttribute(audioElement, "webkitfullscreenchange") is "target"
-PASS testElementAttribute(audioElement, "webkitfullscreenerror") is "target"
-PASS testElementAttribute(audioElement, "webkitkeyadded") is "target"
-PASS testElementAttribute(audioElement, "webkitkeyerror") is "target"
-PASS testElementAttribute(audioElement, "webkitkeymessage") is "target"
-PASS testElementAttribute(audioElement, "webkitmouseforcecancelled") is "target"
-PASS testElementAttribute(audioElement, "webkitmouseforcechanged") is "target"
-PASS testElementAttribute(audioElement, "webkitmouseforceclick") is "target"
-PASS testElementAttribute(audioElement, "webkitmouseforcedown") is "target"
-PASS testElementAttribute(audioElement, "webkitmouseforceup") is "target"
-PASS testElementAttribute(audioElement, "webkitmouseforcewillbegin") is "target"
-PASS testElementAttribute(audioElement, "webkitneedkey") is "target"
-PASS testElementAttribute(audioElement, "webkitplaybacktargetavailabilitychanged") is "target"
-PASS testElementAttribute(audioElement, "webkitpresentationmodechanged") is "target"
</del><span class="cx"> PASS testElementAttribute(audioElement, "webkittransitionend") is "target"
</span><del>-PASS testElementAttribute(audioElement, "webkitwillrevealbottom") is "target"
-PASS testElementAttribute(audioElement, "webkitwillrevealleft") is "target"
-PASS testElementAttribute(audioElement, "webkitwillrevealright") is "target"
-PASS testElementAttribute(audioElement, "webkitwillrevealtop") is "target"
</del><span class="cx"> PASS testElementAttribute(audioElement, "wheel") is "target"
</span><span class="cx">
</span><span class="cx"> Event names we expect not to be able to set on an element (tested on the <audio> element)
</span><span class="cx">
</span><span class="cx"> PASS testElementAttribute(audioElement, "beforeunload") is "none"
</span><del>-PASS testElementAttribute(audioElement, "devicemotion") is "none"
-PASS testElementAttribute(audioElement, "deviceorientation") is "none"
</del><span class="cx"> PASS testElementAttribute(audioElement, "hashchange") is "none"
</span><span class="cx"> PASS testElementAttribute(audioElement, "message") is "none"
</span><span class="cx"> PASS testElementAttribute(audioElement, "noneventname") is "none"
</span><span class="cx"> PASS testElementAttribute(audioElement, "offline") is "none"
</span><span class="cx"> PASS testElementAttribute(audioElement, "online") is "none"
</span><del>-PASS testElementAttribute(audioElement, "orientationchange") is "none"
</del><span class="cx"> PASS testElementAttribute(audioElement, "pagehide") is "none"
</span><span class="cx"> PASS testElementAttribute(audioElement, "pageshow") is "none"
</span><del>-PASS testElementAttribute(audioElement, "pointerlockchange") is "none"
-PASS testElementAttribute(audioElement, "pointerlockerror") is "none"
</del><span class="cx"> PASS testElementAttribute(audioElement, "popstate") is "none"
</span><span class="cx"> PASS testElementAttribute(audioElement, "readystatechange") is "none"
</span><span class="cx"> PASS testElementAttribute(audioElement, "resize") is "none"
</span><del>-PASS testElementAttribute(audioElement, "securitypolicyviolation") is "none"
</del><span class="cx"> PASS testElementAttribute(audioElement, "selectionchange") is "none"
</span><span class="cx"> PASS testElementAttribute(audioElement, "storage") is "none"
</span><span class="cx"> PASS testElementAttribute(audioElement, "unload") is "none"
</span><del>-PASS testElementAttribute(audioElement, "webkitdeviceproximity") is "none"
</del><span class="cx">
</span><span class="cx"> Event names we expect to be able to set on an element (tested on the <video> element)
</span><span class="cx">
</span><span class="lines">@@ -649,8 +474,6 @@
</span><span class="cx"> PASS testElementAttribute(videoElement, "animationend") is "target"
</span><span class="cx"> PASS testElementAttribute(videoElement, "animationiteration") is "target"
</span><span class="cx"> PASS testElementAttribute(videoElement, "animationstart") is "target"
</span><del>-PASS testElementAttribute(videoElement, "autocomplete") is "target"
-PASS testElementAttribute(videoElement, "autocompleteerror") is "target"
</del><span class="cx"> PASS testElementAttribute(videoElement, "beforecopy") is "target"
</span><span class="cx"> PASS testElementAttribute(videoElement, "beforecut") is "target"
</span><span class="cx"> PASS testElementAttribute(videoElement, "beforeload") is "target"
</span><span class="lines">@@ -678,9 +501,6 @@
</span><span class="cx"> PASS testElementAttribute(videoElement, "focus") is "target"
</span><span class="cx"> PASS testElementAttribute(videoElement, "focusin") is "target"
</span><span class="cx"> PASS testElementAttribute(videoElement, "focusout") is "target"
</span><del>-PASS testElementAttribute(videoElement, "gesturechange") is "target"
-PASS testElementAttribute(videoElement, "gestureend") is "target"
-PASS testElementAttribute(videoElement, "gesturestart") is "target"
</del><span class="cx"> PASS testElementAttribute(videoElement, "input") is "target"
</span><span class="cx"> PASS testElementAttribute(videoElement, "invalid") is "target"
</span><span class="cx"> PASS testElementAttribute(videoElement, "keydown") is "target"
</span><span class="lines">@@ -715,61 +535,31 @@
</span><span class="cx"> PASS testElementAttribute(videoElement, "submit") is "target"
</span><span class="cx"> PASS testElementAttribute(videoElement, "suspend") is "target"
</span><span class="cx"> PASS testElementAttribute(videoElement, "timeupdate") is "target"
</span><del>-PASS testElementAttribute(videoElement, "touchcancel") is "target"
-PASS testElementAttribute(videoElement, "touchend") is "target"
-PASS testElementAttribute(videoElement, "touchmove") is "target"
-PASS testElementAttribute(videoElement, "touchstart") is "target"
</del><span class="cx"> PASS testElementAttribute(videoElement, "transitionend") is "target"
</span><span class="cx"> PASS testElementAttribute(videoElement, "volumechange") is "target"
</span><span class="cx"> PASS testElementAttribute(videoElement, "waiting") is "target"
</span><span class="cx"> PASS testElementAttribute(videoElement, "webkitanimationend") is "target"
</span><span class="cx"> PASS testElementAttribute(videoElement, "webkitanimationiteration") is "target"
</span><span class="cx"> PASS testElementAttribute(videoElement, "webkitanimationstart") is "target"
</span><del>-PASS testElementAttribute(videoElement, "webkitcurrentplaybacktargetiswirelesschanged") is "target"
-PASS testElementAttribute(videoElement, "webkitfullscreenchange") is "target"
-PASS testElementAttribute(videoElement, "webkitfullscreenerror") is "target"
-PASS testElementAttribute(videoElement, "webkitkeyadded") is "target"
-PASS testElementAttribute(videoElement, "webkitkeyerror") is "target"
-PASS testElementAttribute(videoElement, "webkitkeymessage") is "target"
-PASS testElementAttribute(videoElement, "webkitmouseforcecancelled") is "target"
-PASS testElementAttribute(videoElement, "webkitmouseforcechanged") is "target"
-PASS testElementAttribute(videoElement, "webkitmouseforceclick") is "target"
-PASS testElementAttribute(videoElement, "webkitmouseforcedown") is "target"
-PASS testElementAttribute(videoElement, "webkitmouseforceup") is "target"
-PASS testElementAttribute(videoElement, "webkitmouseforcewillbegin") is "target"
-PASS testElementAttribute(videoElement, "webkitneedkey") is "target"
-PASS testElementAttribute(videoElement, "webkitplaybacktargetavailabilitychanged") is "target"
-PASS testElementAttribute(videoElement, "webkitpresentationmodechanged") is "target"
</del><span class="cx"> PASS testElementAttribute(videoElement, "webkittransitionend") is "target"
</span><del>-PASS testElementAttribute(videoElement, "webkitwillrevealbottom") is "target"
-PASS testElementAttribute(videoElement, "webkitwillrevealleft") is "target"
-PASS testElementAttribute(videoElement, "webkitwillrevealright") is "target"
-PASS testElementAttribute(videoElement, "webkitwillrevealtop") is "target"
</del><span class="cx"> PASS testElementAttribute(videoElement, "wheel") is "target"
</span><span class="cx">
</span><span class="cx"> Event names we expect not to be able to set on an element (tested on the <video> element)
</span><span class="cx">
</span><span class="cx"> PASS testElementAttribute(videoElement, "beforeunload") is "none"
</span><del>-PASS testElementAttribute(videoElement, "devicemotion") is "none"
-PASS testElementAttribute(videoElement, "deviceorientation") is "none"
</del><span class="cx"> PASS testElementAttribute(videoElement, "hashchange") is "none"
</span><span class="cx"> PASS testElementAttribute(videoElement, "message") is "none"
</span><span class="cx"> PASS testElementAttribute(videoElement, "noneventname") is "none"
</span><span class="cx"> PASS testElementAttribute(videoElement, "offline") is "none"
</span><span class="cx"> PASS testElementAttribute(videoElement, "online") is "none"
</span><del>-PASS testElementAttribute(videoElement, "orientationchange") is "none"
</del><span class="cx"> PASS testElementAttribute(videoElement, "pagehide") is "none"
</span><span class="cx"> PASS testElementAttribute(videoElement, "pageshow") is "none"
</span><del>-PASS testElementAttribute(videoElement, "pointerlockchange") is "none"
-PASS testElementAttribute(videoElement, "pointerlockerror") is "none"
</del><span class="cx"> PASS testElementAttribute(videoElement, "popstate") is "none"
</span><span class="cx"> PASS testElementAttribute(videoElement, "readystatechange") is "none"
</span><span class="cx"> PASS testElementAttribute(videoElement, "resize") is "none"
</span><del>-PASS testElementAttribute(videoElement, "securitypolicyviolation") is "none"
</del><span class="cx"> PASS testElementAttribute(videoElement, "selectionchange") is "none"
</span><span class="cx"> PASS testElementAttribute(videoElement, "storage") is "none"
</span><span class="cx"> PASS testElementAttribute(videoElement, "unload") is "none"
</span><del>-PASS testElementAttribute(videoElement, "webkitdeviceproximity") is "none"
</del><span class="cx">
</span><span class="cx"> Event names we expect to be forwarded from <body> element to window object)
</span><span class="cx">
</span><span class="lines">@@ -784,23 +574,12 @@
</span><span class="cx"> PASS testElementAttribute(bodyElement, "message") is "window"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "offline") is "window"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "online") is "window"
</span><del>-PASS testElementAttribute(bodyElement, "orientationchange") is "window"
</del><span class="cx"> PASS testElementAttribute(bodyElement, "pagehide") is "window"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "pageshow") is "window"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "popstate") is "window"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "resize") is "window"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "storage") is "window"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "unload") is "window"
</span><del>-PASS testElementAttribute(bodyElement, "webkitmouseforcecancelled") is "window"
-PASS testElementAttribute(bodyElement, "webkitmouseforcechanged") is "window"
-PASS testElementAttribute(bodyElement, "webkitmouseforceclick") is "window"
-PASS testElementAttribute(bodyElement, "webkitmouseforcedown") is "window"
-PASS testElementAttribute(bodyElement, "webkitmouseforceup") is "window"
-PASS testElementAttribute(bodyElement, "webkitmouseforcewillbegin") is "window"
-PASS testElementAttribute(bodyElement, "webkitwillrevealbottom") is "window"
-PASS testElementAttribute(bodyElement, "webkitwillrevealleft") is "window"
-PASS testElementAttribute(bodyElement, "webkitwillrevealright") is "window"
-PASS testElementAttribute(bodyElement, "webkitwillrevealtop") is "window"
</del><span class="cx">
</span><span class="cx"> Event names we expect to be forwarded from <body> element to document)
</span><span class="cx">
</span><span class="lines">@@ -812,8 +591,6 @@
</span><span class="cx"> PASS testElementAttribute(bodyElement, "animationend") is "target"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "animationiteration") is "target"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "animationstart") is "target"
</span><del>-PASS testElementAttribute(bodyElement, "autocomplete") is "target"
-PASS testElementAttribute(bodyElement, "autocompleteerror") is "target"
</del><span class="cx"> PASS testElementAttribute(bodyElement, "beforecopy") is "target"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "beforecut") is "target"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "beforeload") is "target"
</span><span class="lines">@@ -836,9 +613,6 @@
</span><span class="cx"> PASS testElementAttribute(bodyElement, "durationchange") is "target"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "emptied") is "target"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "ended") is "target"
</span><del>-PASS testElementAttribute(bodyElement, "gesturechange") is "target"
-PASS testElementAttribute(bodyElement, "gestureend") is "target"
-PASS testElementAttribute(bodyElement, "gesturestart") is "target"
</del><span class="cx"> PASS testElementAttribute(bodyElement, "input") is "target"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "invalid") is "target"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "keydown") is "target"
</span><span class="lines">@@ -872,38 +646,19 @@
</span><span class="cx"> PASS testElementAttribute(bodyElement, "submit") is "target"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "suspend") is "target"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "timeupdate") is "target"
</span><del>-PASS testElementAttribute(bodyElement, "touchcancel") is "target"
-PASS testElementAttribute(bodyElement, "touchend") is "target"
-PASS testElementAttribute(bodyElement, "touchmove") is "target"
-PASS testElementAttribute(bodyElement, "touchstart") is "target"
</del><span class="cx"> PASS testElementAttribute(bodyElement, "transitionend") is "target"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "volumechange") is "target"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "waiting") is "target"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "webkitanimationend") is "target"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "webkitanimationiteration") is "target"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "webkitanimationstart") is "target"
</span><del>-PASS testElementAttribute(bodyElement, "webkitcurrentplaybacktargetiswirelesschanged") is "target"
-PASS testElementAttribute(bodyElement, "webkitfullscreenchange") is "target"
-PASS testElementAttribute(bodyElement, "webkitfullscreenerror") is "target"
-PASS testElementAttribute(bodyElement, "webkitkeyadded") is "target"
-PASS testElementAttribute(bodyElement, "webkitkeyerror") is "target"
-PASS testElementAttribute(bodyElement, "webkitkeymessage") is "target"
-PASS testElementAttribute(bodyElement, "webkitneedkey") is "target"
-PASS testElementAttribute(bodyElement, "webkitplaybacktargetavailabilitychanged") is "target"
-PASS testElementAttribute(bodyElement, "webkitpresentationmodechanged") is "target"
</del><span class="cx"> PASS testElementAttribute(bodyElement, "webkittransitionend") is "target"
</span><span class="cx"> PASS testElementAttribute(bodyElement, "wheel") is "target"
</span><span class="cx">
</span><span class="cx"> Event names we expect to not be able to set on <body> element
</span><span class="cx">
</span><del>-PASS testElementAttribute(bodyElement, "devicemotion") is "none"
-PASS testElementAttribute(bodyElement, "deviceorientation") is "none"
</del><span class="cx"> PASS testElementAttribute(bodyElement, "noneventname") is "none"
</span><del>-PASS testElementAttribute(bodyElement, "pointerlockchange") is "none"
-PASS testElementAttribute(bodyElement, "pointerlockerror") is "none"
</del><span class="cx"> PASS testElementAttribute(bodyElement, "readystatechange") is "none"
</span><del>-PASS testElementAttribute(bodyElement, "securitypolicyviolation") is "none"
-PASS testElementAttribute(bodyElement, "webkitdeviceproximity") is "none"
</del><span class="cx">
</span><span class="cx"> Event names we expect to be forwarded from <frameset> element to window object)
</span><span class="cx">
</span><span class="lines">@@ -918,23 +673,12 @@
</span><span class="cx"> PASS testElementAttribute(framesetElement, "message") is "window"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "offline") is "window"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "online") is "window"
</span><del>-PASS testElementAttribute(framesetElement, "orientationchange") is "window"
</del><span class="cx"> PASS testElementAttribute(framesetElement, "pagehide") is "window"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "pageshow") is "window"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "popstate") is "window"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "resize") is "window"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "storage") is "window"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "unload") is "window"
</span><del>-FAIL testElementAttribute(framesetElement, "webkitmouseforcecancelled") should be window. Was script: target; content: window.
-FAIL testElementAttribute(framesetElement, "webkitmouseforcechanged") should be window. Was script: target; content: window.
-FAIL testElementAttribute(framesetElement, "webkitmouseforceclick") should be window. Was script: target; content: window.
-FAIL testElementAttribute(framesetElement, "webkitmouseforcedown") should be window. Was script: target; content: window.
-FAIL testElementAttribute(framesetElement, "webkitmouseforceup") should be window. Was script: target; content: window.
-FAIL testElementAttribute(framesetElement, "webkitmouseforcewillbegin") should be window. Was script: target; content: window.
-PASS testElementAttribute(framesetElement, "webkitwillrevealbottom") is "window"
-PASS testElementAttribute(framesetElement, "webkitwillrevealleft") is "window"
-PASS testElementAttribute(framesetElement, "webkitwillrevealright") is "window"
-PASS testElementAttribute(framesetElement, "webkitwillrevealtop") is "window"
</del><span class="cx">
</span><span class="cx"> Event names we expect to be forwarded from <frameset> element to document)
</span><span class="cx">
</span><span class="lines">@@ -946,8 +690,6 @@
</span><span class="cx"> PASS testElementAttribute(framesetElement, "animationend") is "target"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "animationiteration") is "target"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "animationstart") is "target"
</span><del>-PASS testElementAttribute(framesetElement, "autocomplete") is "target"
-PASS testElementAttribute(framesetElement, "autocompleteerror") is "target"
</del><span class="cx"> PASS testElementAttribute(framesetElement, "beforecopy") is "target"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "beforecut") is "target"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "beforeload") is "target"
</span><span class="lines">@@ -970,9 +712,6 @@
</span><span class="cx"> PASS testElementAttribute(framesetElement, "durationchange") is "target"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "emptied") is "target"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "ended") is "target"
</span><del>-PASS testElementAttribute(framesetElement, "gesturechange") is "target"
-PASS testElementAttribute(framesetElement, "gestureend") is "target"
-PASS testElementAttribute(framesetElement, "gesturestart") is "target"
</del><span class="cx"> PASS testElementAttribute(framesetElement, "input") is "target"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "invalid") is "target"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "keydown") is "target"
</span><span class="lines">@@ -1006,38 +745,19 @@
</span><span class="cx"> PASS testElementAttribute(framesetElement, "submit") is "target"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "suspend") is "target"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "timeupdate") is "target"
</span><del>-PASS testElementAttribute(framesetElement, "touchcancel") is "target"
-PASS testElementAttribute(framesetElement, "touchend") is "target"
-PASS testElementAttribute(framesetElement, "touchmove") is "target"
-PASS testElementAttribute(framesetElement, "touchstart") is "target"
</del><span class="cx"> PASS testElementAttribute(framesetElement, "transitionend") is "target"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "volumechange") is "target"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "waiting") is "target"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "webkitanimationend") is "target"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "webkitanimationiteration") is "target"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "webkitanimationstart") is "target"
</span><del>-PASS testElementAttribute(framesetElement, "webkitcurrentplaybacktargetiswirelesschanged") is "target"
-PASS testElementAttribute(framesetElement, "webkitfullscreenchange") is "target"
-PASS testElementAttribute(framesetElement, "webkitfullscreenerror") is "target"
-PASS testElementAttribute(framesetElement, "webkitkeyadded") is "target"
-PASS testElementAttribute(framesetElement, "webkitkeyerror") is "target"
-PASS testElementAttribute(framesetElement, "webkitkeymessage") is "target"
-PASS testElementAttribute(framesetElement, "webkitneedkey") is "target"
-PASS testElementAttribute(framesetElement, "webkitplaybacktargetavailabilitychanged") is "target"
-PASS testElementAttribute(framesetElement, "webkitpresentationmodechanged") is "target"
</del><span class="cx"> PASS testElementAttribute(framesetElement, "webkittransitionend") is "target"
</span><span class="cx"> PASS testElementAttribute(framesetElement, "wheel") is "target"
</span><span class="cx">
</span><span class="cx"> Event names we expect to not be able to set on <frameset> element
</span><span class="cx">
</span><del>-PASS testElementAttribute(framesetElement, "devicemotion") is "none"
-PASS testElementAttribute(framesetElement, "deviceorientation") is "none"
</del><span class="cx"> PASS testElementAttribute(framesetElement, "noneventname") is "none"
</span><del>-PASS testElementAttribute(framesetElement, "pointerlockchange") is "none"
-PASS testElementAttribute(framesetElement, "pointerlockerror") is "none"
</del><span class="cx"> PASS testElementAttribute(framesetElement, "readystatechange") is "none"
</span><del>-PASS testElementAttribute(framesetElement, "securitypolicyviolation") is "none"
-PASS testElementAttribute(framesetElement, "webkitdeviceproximity") is "none"
</del><span class="cx">
</span><span class="cx"> Event names we expect to be able to set on an element (tested on the SVG <rect> element)
</span><span class="cx">
</span><span class="lines">@@ -1045,8 +765,6 @@
</span><span class="cx"> PASS testElementAttribute(rectElement, "animationend") is "target"
</span><span class="cx"> PASS testElementAttribute(rectElement, "animationiteration") is "target"
</span><span class="cx"> PASS testElementAttribute(rectElement, "animationstart") is "target"
</span><del>-PASS testElementAttribute(rectElement, "autocomplete") is "target"
-PASS testElementAttribute(rectElement, "autocompleteerror") is "target"
</del><span class="cx"> PASS testElementAttribute(rectElement, "beforecopy") is "target"
</span><span class="cx"> PASS testElementAttribute(rectElement, "beforecut") is "target"
</span><span class="cx"> PASS testElementAttribute(rectElement, "beforeload") is "target"
</span><span class="lines">@@ -1074,9 +792,6 @@
</span><span class="cx"> PASS testElementAttribute(rectElement, "focus") is "target"
</span><span class="cx"> PASS testElementAttribute(rectElement, "focusin") is "target"
</span><span class="cx"> PASS testElementAttribute(rectElement, "focusout") is "target"
</span><del>-PASS testElementAttribute(rectElement, "gesturechange") is "target"
-PASS testElementAttribute(rectElement, "gestureend") is "target"
-PASS testElementAttribute(rectElement, "gesturestart") is "target"
</del><span class="cx"> PASS testElementAttribute(rectElement, "input") is "target"
</span><span class="cx"> PASS testElementAttribute(rectElement, "invalid") is "target"
</span><span class="cx"> PASS testElementAttribute(rectElement, "keydown") is "target"
</span><span class="lines">@@ -1111,61 +826,31 @@
</span><span class="cx"> PASS testElementAttribute(rectElement, "submit") is "target"
</span><span class="cx"> PASS testElementAttribute(rectElement, "suspend") is "target"
</span><span class="cx"> PASS testElementAttribute(rectElement, "timeupdate") is "target"
</span><del>-PASS testElementAttribute(rectElement, "touchcancel") is "target"
-PASS testElementAttribute(rectElement, "touchend") is "target"
-PASS testElementAttribute(rectElement, "touchmove") is "target"
-PASS testElementAttribute(rectElement, "touchstart") is "target"
</del><span class="cx"> PASS testElementAttribute(rectElement, "transitionend") is "target"
</span><span class="cx"> PASS testElementAttribute(rectElement, "volumechange") is "target"
</span><span class="cx"> PASS testElementAttribute(rectElement, "waiting") is "target"
</span><span class="cx"> PASS testElementAttribute(rectElement, "webkitanimationend") is "target"
</span><span class="cx"> PASS testElementAttribute(rectElement, "webkitanimationiteration") is "target"
</span><span class="cx"> PASS testElementAttribute(rectElement, "webkitanimationstart") is "target"
</span><del>-PASS testElementAttribute(rectElement, "webkitcurrentplaybacktargetiswirelesschanged") is "target"
-PASS testElementAttribute(rectElement, "webkitfullscreenchange") is "target"
-PASS testElementAttribute(rectElement, "webkitfullscreenerror") is "target"
-PASS testElementAttribute(rectElement, "webkitkeyadded") is "target"
-PASS testElementAttribute(rectElement, "webkitkeyerror") is "target"
-PASS testElementAttribute(rectElement, "webkitkeymessage") is "target"
-PASS testElementAttribute(rectElement, "webkitmouseforcecancelled") is "target"
-PASS testElementAttribute(rectElement, "webkitmouseforcechanged") is "target"
-PASS testElementAttribute(rectElement, "webkitmouseforceclick") is "target"
-PASS testElementAttribute(rectElement, "webkitmouseforcedown") is "target"
-PASS testElementAttribute(rectElement, "webkitmouseforceup") is "target"
-PASS testElementAttribute(rectElement, "webkitmouseforcewillbegin") is "target"
-PASS testElementAttribute(rectElement, "webkitneedkey") is "target"
-PASS testElementAttribute(rectElement, "webkitplaybacktargetavailabilitychanged") is "target"
-PASS testElementAttribute(rectElement, "webkitpresentationmodechanged") is "target"
</del><span class="cx"> PASS testElementAttribute(rectElement, "webkittransitionend") is "target"
</span><del>-PASS testElementAttribute(rectElement, "webkitwillrevealbottom") is "target"
-PASS testElementAttribute(rectElement, "webkitwillrevealleft") is "target"
-PASS testElementAttribute(rectElement, "webkitwillrevealright") is "target"
-PASS testElementAttribute(rectElement, "webkitwillrevealtop") is "target"
</del><span class="cx"> PASS testElementAttribute(rectElement, "wheel") is "target"
</span><span class="cx">
</span><span class="cx"> Event names we expect not to be able to set on an element (tested on the SVG <rect> element)
</span><span class="cx">
</span><span class="cx"> PASS testElementAttribute(rectElement, "beforeunload") is "none"
</span><del>-PASS testElementAttribute(rectElement, "devicemotion") is "none"
-PASS testElementAttribute(rectElement, "deviceorientation") is "none"
</del><span class="cx"> PASS testElementAttribute(rectElement, "hashchange") is "none"
</span><span class="cx"> PASS testElementAttribute(rectElement, "message") is "none"
</span><span class="cx"> PASS testElementAttribute(rectElement, "noneventname") is "none"
</span><span class="cx"> PASS testElementAttribute(rectElement, "offline") is "none"
</span><span class="cx"> PASS testElementAttribute(rectElement, "online") is "none"
</span><del>-PASS testElementAttribute(rectElement, "orientationchange") is "none"
</del><span class="cx"> PASS testElementAttribute(rectElement, "pagehide") is "none"
</span><span class="cx"> PASS testElementAttribute(rectElement, "pageshow") is "none"
</span><del>-PASS testElementAttribute(rectElement, "pointerlockchange") is "none"
-PASS testElementAttribute(rectElement, "pointerlockerror") is "none"
</del><span class="cx"> PASS testElementAttribute(rectElement, "popstate") is "none"
</span><span class="cx"> PASS testElementAttribute(rectElement, "readystatechange") is "none"
</span><span class="cx"> PASS testElementAttribute(rectElement, "resize") is "none"
</span><del>-PASS testElementAttribute(rectElement, "securitypolicyviolation") is "none"
</del><span class="cx"> PASS testElementAttribute(rectElement, "selectionchange") is "none"
</span><span class="cx"> PASS testElementAttribute(rectElement, "storage") is "none"
</span><span class="cx"> PASS testElementAttribute(rectElement, "unload") is "none"
</span><del>-PASS testElementAttribute(rectElement, "webkitdeviceproximity") is "none"
</del><span class="cx">
</span><span class="cx"> Event names on a non-HTML element
</span><span class="cx">
</span><span class="lines">@@ -1173,8 +858,6 @@
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "animationend") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "animationiteration") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "animationstart") should be none. Was script: target; content: none.
</span><del>-FAIL testElementAttribute(nonHTMLElement, "autocomplete") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "autocompleteerror") should be none. Was script: target; content: none.
</del><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "beforecopy") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "beforecut") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "beforeload") should be none. Was script: target; content: none.
</span><span class="lines">@@ -1189,8 +872,6 @@
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "copy") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "cut") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "dblclick") should be none. Was script: target; content: none.
</span><del>-PASS testElementAttribute(nonHTMLElement, "devicemotion") is "none"
-PASS testElementAttribute(nonHTMLElement, "deviceorientation") is "none"
</del><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "drag") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "dragend") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "dragenter") should be none. Was script: target; content: none.
</span><span class="lines">@@ -1205,9 +886,6 @@
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "focus") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "focusin") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "focusout") should be none. Was script: target; content: none.
</span><del>-FAIL testElementAttribute(nonHTMLElement, "gesturechange") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "gestureend") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "gesturestart") should be none. Was script: target; content: none.
</del><span class="cx"> PASS testElementAttribute(nonHTMLElement, "hashchange") is "none"
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "input") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "invalid") should be none. Was script: target; content: none.
</span><span class="lines">@@ -1230,15 +908,12 @@
</span><span class="cx"> PASS testElementAttribute(nonHTMLElement, "noneventname") is "none"
</span><span class="cx"> PASS testElementAttribute(nonHTMLElement, "offline") is "none"
</span><span class="cx"> PASS testElementAttribute(nonHTMLElement, "online") is "none"
</span><del>-PASS testElementAttribute(nonHTMLElement, "orientationchange") is "none"
</del><span class="cx"> PASS testElementAttribute(nonHTMLElement, "pagehide") is "none"
</span><span class="cx"> PASS testElementAttribute(nonHTMLElement, "pageshow") is "none"
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "paste") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "pause") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "play") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "playing") should be none. Was script: target; content: none.
</span><del>-PASS testElementAttribute(nonHTMLElement, "pointerlockchange") is "none"
-PASS testElementAttribute(nonHTMLElement, "pointerlockerror") is "none"
</del><span class="cx"> PASS testElementAttribute(nonHTMLElement, "popstate") is "none"
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "progress") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "ratechange") should be none. Was script: target; content: none.
</span><span class="lines">@@ -1247,7 +922,6 @@
</span><span class="cx"> PASS testElementAttribute(nonHTMLElement, "resize") is "none"
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "scroll") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "search") should be none. Was script: target; content: none.
</span><del>-PASS testElementAttribute(nonHTMLElement, "securitypolicyviolation") is "none"
</del><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "seeked") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "seeking") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "select") should be none. Was script: target; content: none.
</span><span class="lines">@@ -1258,10 +932,6 @@
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "submit") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "suspend") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "timeupdate") should be none. Was script: target; content: none.
</span><del>-FAIL testElementAttribute(nonHTMLElement, "touchcancel") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "touchend") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "touchmove") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "touchstart") should be none. Was script: target; content: none.
</del><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "transitionend") should be none. Was script: target; content: none.
</span><span class="cx"> PASS testElementAttribute(nonHTMLElement, "unload") is "none"
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "volumechange") should be none. Was script: target; content: none.
</span><span class="lines">@@ -1269,27 +939,7 @@
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "webkitanimationend") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "webkitanimationiteration") should be none. Was script: target; content: none.
</span><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "webkitanimationstart") should be none. Was script: target; content: none.
</span><del>-FAIL testElementAttribute(nonHTMLElement, "webkitcurrentplaybacktargetiswirelesschanged") should be none. Was script: target; content: none.
-PASS testElementAttribute(nonHTMLElement, "webkitdeviceproximity") is "none"
-FAIL testElementAttribute(nonHTMLElement, "webkitfullscreenchange") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "webkitfullscreenerror") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "webkitkeyadded") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "webkitkeyerror") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "webkitkeymessage") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "webkitmouseforcecancelled") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "webkitmouseforcechanged") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "webkitmouseforceclick") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "webkitmouseforcedown") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "webkitmouseforceup") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "webkitmouseforcewillbegin") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "webkitneedkey") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "webkitplaybacktargetavailabilitychanged") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "webkitpresentationmodechanged") should be none. Was script: target; content: none.
</del><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "webkittransitionend") should be none. Was script: target; content: none.
</span><del>-FAIL testElementAttribute(nonHTMLElement, "webkitwillrevealbottom") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "webkitwillrevealleft") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "webkitwillrevealright") should be none. Was script: target; content: none.
-FAIL testElementAttribute(nonHTMLElement, "webkitwillrevealtop") should be none. Was script: target; content: none.
</del><span class="cx"> FAIL testElementAttribute(nonHTMLElement, "wheel") should be none. Was script: target; content: none.
</span><span class="cx">
</span><span class="cx"> PASS successfullyParsed is true
</span></span></pre></div>
<a id="trunkLayoutTestsfastdomeventhandlerattributeshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/dom/event-handler-attributes.html (182045 => 182046)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/dom/event-handler-attributes.html        2015-03-27 00:13:59 UTC (rev 182045)
+++ trunk/LayoutTests/fast/dom/event-handler-attributes.html        2015-03-27 01:02:38 UTC (rev 182046)
</span><span class="lines">@@ -25,8 +25,6 @@
</span><span class="cx"> "click",
</span><span class="cx"> "contextmenu",
</span><span class="cx"> "dblclick",
</span><del>- "devicemotion",
- "deviceorientation",
</del><span class="cx"> "drag",
</span><span class="cx"> "dragend",
</span><span class="cx"> "dragenter",
</span><span class="lines">@@ -39,9 +37,6 @@
</span><span class="cx"> "ended",
</span><span class="cx"> "error",
</span><span class="cx"> "focus",
</span><del>- "gesturechange",
- "gestureend",
- "gesturestart",
</del><span class="cx"> "hashchange",
</span><span class="cx"> "input",
</span><span class="cx"> "invalid",
</span><span class="lines">@@ -63,7 +58,6 @@
</span><span class="cx"> "mousewheel",
</span><span class="cx"> "offline",
</span><span class="cx"> "online",
</span><del>- "orientationchange",
</del><span class="cx"> "pagehide",
</span><span class="cx"> "pageshow",
</span><span class="cx"> "pause",
</span><span class="lines">@@ -84,10 +78,6 @@
</span><span class="cx"> "submit",
</span><span class="cx"> "suspend",
</span><span class="cx"> "timeupdate",
</span><del>- "touchcancel",
- "touchend",
- "touchmove",
- "touchstart",
</del><span class="cx"> "transitionend",
</span><span class="cx"> "unload",
</span><span class="cx"> "volumechange",
</span><span class="lines">@@ -95,18 +85,7 @@
</span><span class="cx"> "webkitanimationend",
</span><span class="cx"> "webkitanimationiteration",
</span><span class="cx"> "webkitanimationstart",
</span><del>- "webkitdeviceproximity",
- "webkitmouseforcecancelled",
- "webkitmouseforcechanged",
- "webkitmouseforceclick",
- "webkitmouseforcedown",
- "webkitmouseforceup",
- "webkitmouseforcewillbegin",
</del><span class="cx"> "webkittransitionend",
</span><del>- "webkitwillrevealbottom",
- "webkitwillrevealleft",
- "webkitwillrevealright",
- "webkitwillrevealtop",
</del><span class="cx"> "wheel",
</span><span class="cx"> ];
</span><span class="cx">
</span><span class="lines">@@ -146,33 +125,14 @@
</span><span class="cx"> "mouseup",
</span><span class="cx"> "mousewheel",
</span><span class="cx"> "paste",
</span><del>- "pointerlockchange",
- "pointerlockerror",
</del><span class="cx"> "readystatechange",
</span><span class="cx"> "reset",
</span><span class="cx"> "scroll",
</span><span class="cx"> "search",
</span><del>- "securitypolicyviolation",
</del><span class="cx"> "select",
</span><span class="cx"> "selectionchange",
</span><span class="cx"> "selectstart",
</span><span class="cx"> "submit",
</span><del>- "touchcancel",
- "touchend",
- "touchmove",
- "touchstart",
- "webkitmouseforcecancelled",
- "webkitmouseforcechanged",
- "webkitmouseforceclick",
- "webkitmouseforcedown",
- "webkitmouseforceup",
- "webkitmouseforcewillbegin",
- "webkitfullscreenchange",
- "webkitfullscreenerror",
- "webkitwillrevealbottom",
- "webkitwillrevealleft",
- "webkitwillrevealright",
- "webkitwillrevealtop",
</del><span class="cx"> "wheel",
</span><span class="cx"> ];
</span><span class="cx">
</span><span class="lines">@@ -181,8 +141,6 @@
</span><span class="cx"> "animationend",
</span><span class="cx"> "animationiteration",
</span><span class="cx"> "animationstart",
</span><del>- "autocomplete",
- "autocompleteerror",
</del><span class="cx"> "beforecopy",
</span><span class="cx"> "beforecut",
</span><span class="cx"> "beforeload",
</span><span class="lines">@@ -210,9 +168,6 @@
</span><span class="cx"> "focus",
</span><span class="cx"> "focusin",
</span><span class="cx"> "focusout",
</span><del>- "gesturechange",
- "gestureend",
- "gesturestart",
</del><span class="cx"> "input",
</span><span class="cx"> "invalid",
</span><span class="cx"> "keydown",
</span><span class="lines">@@ -247,36 +202,13 @@
</span><span class="cx"> "submit",
</span><span class="cx"> "suspend",
</span><span class="cx"> "timeupdate",
</span><del>- "touchcancel",
- "touchend",
- "touchmove",
- "touchstart",
</del><span class="cx"> "transitionend",
</span><span class="cx"> "volumechange",
</span><span class="cx"> "waiting",
</span><span class="cx"> "webkitanimationend",
</span><span class="cx"> "webkitanimationiteration",
</span><span class="cx"> "webkitanimationstart",
</span><del>- "webkitcurrentplaybacktargetiswirelesschanged",
- "webkitfullscreenchange",
- "webkitfullscreenerror",
- "webkitkeyadded",
- "webkitkeyerror",
- "webkitkeymessage",
- "webkitmouseforcecancelled",
- "webkitmouseforcechanged",
- "webkitmouseforceclick",
- "webkitmouseforcedown",
- "webkitmouseforceup",
- "webkitmouseforcewillbegin",
- "webkitneedkey",
- "webkitplaybacktargetavailabilitychanged",
- "webkitpresentationmodechanged",
</del><span class="cx"> "webkittransitionend",
</span><del>- "webkitwillrevealbottom",
- "webkitwillrevealleft",
- "webkitwillrevealright",
- "webkitwillrevealtop",
</del><span class="cx"> "wheel",
</span><span class="cx"> ];
</span><span class="cx">
</span><span class="lines">@@ -292,23 +224,12 @@
</span><span class="cx"> "message",
</span><span class="cx"> "offline",
</span><span class="cx"> "online",
</span><del>- "orientationchange",
</del><span class="cx"> "pagehide",
</span><span class="cx"> "pageshow",
</span><span class="cx"> "popstate",
</span><span class="cx"> "resize",
</span><span class="cx"> "storage",
</span><span class="cx"> "unload",
</span><del>- "webkitmouseforcecancelled",
- "webkitmouseforcechanged",
- "webkitmouseforceclick",
- "webkitmouseforcedown",
- "webkitmouseforceup",
- "webkitmouseforcewillbegin",
- "webkitwillrevealbottom",
- "webkitwillrevealleft",
- "webkitwillrevealright",
- "webkitwillrevealtop",
</del><span class="cx"> ];
</span><span class="cx">
</span><span class="cx"> const bodyElementDocumentForwardedEvents = [
</span><span class="lines">@@ -613,6 +534,74 @@
</span><span class="cx"> loader/appcache/DOMApplicationCache.idl: attribute EventListener oncached;
</span><span class="cx"> loader/appcache/DOMApplicationCache.idl: attribute EventListener onobsolete;
</span><span class="cx">
</span><ins>+page/DOMWindow.idl: [NotEnumerable, Conditional=DEVICE_ORIENTATION] attribute EventHandler ondevicemotion;
+page/DOMWindow.idl: [NotEnumerable, Conditional=DEVICE_ORIENTATION] attribute EventHandler ondeviceorientation;
+page/DOMWindow.idl: [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchcancel;
+page/DOMWindow.idl: [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchend;
+page/DOMWindow.idl: [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchmove;
+page/DOMWindow.idl: [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchstart;
+page/DOMWindow.idl: [NotEnumerable, Conditional=IOS_GESTURE_EVENTS] attribute EventHandler ongesturechange;
+page/DOMWindow.idl: [NotEnumerable, Conditional=IOS_GESTURE_EVENTS] attribute EventHandler ongestureend;
+page/DOMWindow.idl: [NotEnumerable, Conditional=IOS_GESTURE_EVENTS] attribute EventHandler ongesturestart;
+page/DOMWindow.idl: [NotEnumerable, Conditional=ORIENTATION_EVENTS] attribute EventHandler onorientationchange;
+page/DOMWindow.idl: [NotEnumerable, Conditional=PROXIMITY_EVENTS] attribute EventHandler onwebkitdeviceproximity;
+page/DOMWindow.idl: [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealbottom;
+page/DOMWindow.idl: [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealleft;
+page/DOMWindow.idl: [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealright;
+page/DOMWindow.idl: [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealtop;
+page/DOMWindow.idl: [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcecancelled;
+page/DOMWindow.idl: [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcechanged;
+page/DOMWindow.idl: [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforceclick;
+page/DOMWindow.idl: [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcedown;
+page/DOMWindow.idl: [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforceup;
+page/DOMWindow.idl: [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcewillbegin;
+
+dom/Document.idl: [NotEnumerable, Conditional=CSP_NEXT] attribute EventHandler onsecuritypolicyviolation;
+dom/Document.idl: [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchcancel;
+dom/Document.idl: [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchend;
+dom/Document.idl: [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchmove;
+dom/Document.idl: [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchstart;
+dom/Document.idl: [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealbottom;
+dom/Document.idl: [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealleft;
+dom/Document.idl: [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealright;
+dom/Document.idl: [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealtop;
+dom/Document.idl: [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcecancelled;
+dom/Document.idl: [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcechanged;
+dom/Document.idl: [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforceclick;
+dom/Document.idl: [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcedown;
+dom/Document.idl: [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforceup;
+dom/Document.idl: [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcewillbegin;
+dom/Document.idl: [NotEnumerable, Conditional=FULLSCREEN_API] attribute EventHandler onwebkitfullscreenchange;
+dom/Document.idl: [NotEnumerable, Conditional=FULLSCREEN_API] attribute EventHandler onwebkitfullscreenerror;
+dom/Document.idl: [NotEnumerable, Conditional=POINTER_LOCK] attribute EventHandler onpointerlockchange;
+dom/Document.idl: [NotEnumerable, Conditional=POINTER_LOCK] attribute EventHandler onpointerlockerror;
+
+dom/Element.idl: [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchcancel;
+dom/Element.idl: [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchend;
+dom/Element.idl: [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchmove;
+dom/Element.idl: [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchstart;
+dom/Element.idl: [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealbottom;
+dom/Element.idl: [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealleft;
+dom/Element.idl: [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealright;
+dom/Element.idl: [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealtop;
+dom/Element.idl: [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcecancelled;
+dom/Element.idl: [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcechanged;
+dom/Element.idl: [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforceclick;
+dom/Element.idl: [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcedown;
+dom/Element.idl: [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcewillbegin;
+dom/Element.idl: [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforceup;
+dom/Element.idl: [NotEnumerable, Conditional=ENCRYPTED_MEDIA] attribute EventHandler onwebkitkeyadded;
+dom/Element.idl: [NotEnumerable, Conditional=ENCRYPTED_MEDIA] attribute EventHandler onwebkitkeyerror;
+dom/Element.idl: [NotEnumerable, Conditional=ENCRYPTED_MEDIA] attribute EventHandler onwebkitkeymessage;
+dom/Element.idl: [NotEnumerable, Conditional=ENCRYPTED_MEDIA|ENCRYPTED_MEDIA_V2] attribute EventHandler onwebkitneedkey;
+dom/Element.idl: [NotEnumerable, Conditional=FULLSCREEN_API] attribute EventHandler onwebkitfullscreenchange;
+dom/Element.idl: [NotEnumerable, Conditional=FULLSCREEN_API] attribute EventHandler onwebkitfullscreenerror;
+dom/Element.idl: [NotEnumerable, Conditional=REQUEST_AUTOCOMPLETE] attribute EventHandler onautocomplete;
+dom/Element.idl: [NotEnumerable, Conditional=REQUEST_AUTOCOMPLETE] attribute EventHandler onautocompleteerror;
+dom/Element.idl: [NotEnumerable, Conditional=VIDEO_PRESENTATION_MODE] attribute EventHandler onwebkitpresentationmodechanged;
+dom/Element.idl: [NotEnumerable, Conditional=WIRELESS_PLAYBACK_TARGET] attribute EventHandler onwebkitcurrentplaybacktargetiswirelesschanged;
+dom/Element.idl: [NotEnumerable, Conditional=WIRELESS_PLAYBACK_TARGET] attribute EventHandler onwebkitplaybacktargetavailabilitychanged;
+
</ins><span class="cx"> page/EventSource.idl: attribute EventListener onopen;
</span><span class="cx"> page/EventSource.idl: attribute EventListener onmessage;
</span><span class="cx"> page/EventSource.idl: attribute EventListener onerror;
</span></span></pre></div>
<a id="trunkLayoutTestsfasteventseventattributeexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/events/event-attribute-expected.txt (182045 => 182046)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/events/event-attribute-expected.txt        2015-03-27 00:13:59 UTC (rev 182045)
+++ trunk/LayoutTests/fast/events/event-attribute-expected.txt        2015-03-27 01:02:38 UTC (rev 182046)
</span><span class="lines">@@ -37,10 +37,10 @@
</span><span class="cx"> PASS /*img*/ typeof (element["onerror"]) is "function"
</span><span class="cx"> PASS /*img*/ typeof (element["oninput"]) is "function"
</span><span class="cx"> PASS /*img*/ typeof (element["oninvalid"]) is "function"
</span><del>-PASS /*img*/ typeof (element["ontouchstart"]) is "function"
-PASS /*img*/ typeof (element["ontouchmove"]) is "function"
-PASS /*img*/ typeof (element["ontouchend"]) is "function"
-PASS /*img*/ typeof (element["ontouchcancel"]) is "function"
</del><ins>+FAIL /*img*/ typeof (element["ontouchstart"]) should be function. Was undefined.
+FAIL /*img*/ typeof (element["ontouchmove"]) should be function. Was undefined.
+FAIL /*img*/ typeof (element["ontouchend"]) should be function. Was undefined.
+FAIL /*img*/ typeof (element["ontouchcancel"]) should be function. Was undefined.
</ins><span class="cx"> PASS /*img*/ typeof (element["onwebkitfullscreenchange"]) is "function"
</span><span class="cx"> PASS /*img*/ typeof (element["onwebkitfullscreenerror"]) is "function"
</span><span class="cx"> PASS /*img*/ typeof (element["onabort"]) is "function"
</span><span class="lines">@@ -81,10 +81,10 @@
</span><span class="cx"> PASS /*script*/ typeof (element["onerror"]) is "function"
</span><span class="cx"> PASS /*script*/ typeof (element["oninput"]) is "function"
</span><span class="cx"> PASS /*script*/ typeof (element["oninvalid"]) is "function"
</span><del>-PASS /*script*/ typeof (element["ontouchstart"]) is "function"
-PASS /*script*/ typeof (element["ontouchmove"]) is "function"
-PASS /*script*/ typeof (element["ontouchend"]) is "function"
-PASS /*script*/ typeof (element["ontouchcancel"]) is "function"
</del><ins>+FAIL /*script*/ typeof (element["ontouchstart"]) should be function. Was undefined.
+FAIL /*script*/ typeof (element["ontouchmove"]) should be function. Was undefined.
+FAIL /*script*/ typeof (element["ontouchend"]) should be function. Was undefined.
+FAIL /*script*/ typeof (element["ontouchcancel"]) should be function. Was undefined.
</ins><span class="cx"> PASS /*script*/ typeof (element["onwebkitfullscreenchange"]) is "function"
</span><span class="cx"> PASS /*script*/ typeof (element["onwebkitfullscreenerror"]) is "function"
</span><span class="cx"> PASS /*script*/ typeof (element["onabort"]) is "function"
</span><span class="lines">@@ -125,10 +125,10 @@
</span><span class="cx"> PASS /*video*/ typeof (element["onerror"]) is "function"
</span><span class="cx"> PASS /*video*/ typeof (element["oninput"]) is "function"
</span><span class="cx"> PASS /*video*/ typeof (element["oninvalid"]) is "function"
</span><del>-PASS /*video*/ typeof (element["ontouchstart"]) is "function"
-PASS /*video*/ typeof (element["ontouchmove"]) is "function"
-PASS /*video*/ typeof (element["ontouchend"]) is "function"
-PASS /*video*/ typeof (element["ontouchcancel"]) is "function"
</del><ins>+FAIL /*video*/ typeof (element["ontouchstart"]) should be function. Was undefined.
+FAIL /*video*/ typeof (element["ontouchmove"]) should be function. Was undefined.
+FAIL /*video*/ typeof (element["ontouchend"]) should be function. Was undefined.
+FAIL /*video*/ typeof (element["ontouchcancel"]) should be function. Was undefined.
</ins><span class="cx"> PASS /*video*/ typeof (element["onwebkitfullscreenchange"]) is "function"
</span><span class="cx"> PASS /*video*/ typeof (element["onwebkitfullscreenerror"]) is "function"
</span><span class="cx"> PASS /*video*/ typeof (element["onabort"]) is "function"
</span><span class="lines">@@ -169,10 +169,10 @@
</span><span class="cx"> PASS /*div*/ typeof (element["onerror"]) is "function"
</span><span class="cx"> PASS /*div*/ typeof (element["oninput"]) is "function"
</span><span class="cx"> PASS /*div*/ typeof (element["oninvalid"]) is "function"
</span><del>-PASS /*div*/ typeof (element["ontouchstart"]) is "function"
-PASS /*div*/ typeof (element["ontouchmove"]) is "function"
-PASS /*div*/ typeof (element["ontouchend"]) is "function"
-PASS /*div*/ typeof (element["ontouchcancel"]) is "function"
</del><ins>+FAIL /*div*/ typeof (element["ontouchstart"]) should be function. Was undefined.
+FAIL /*div*/ typeof (element["ontouchmove"]) should be function. Was undefined.
+FAIL /*div*/ typeof (element["ontouchend"]) should be function. Was undefined.
+FAIL /*div*/ typeof (element["ontouchcancel"]) should be function. Was undefined.
</ins><span class="cx"> PASS /*div*/ typeof (element["onwebkitfullscreenchange"]) is "function"
</span><span class="cx"> PASS /*div*/ typeof (element["onwebkitfullscreenerror"]) is "function"
</span><span class="cx"> PASS /*div*/ typeof (element["onabort"]) is "function"
</span><span class="lines">@@ -213,10 +213,10 @@
</span><span class="cx"> PASS /*form*/ typeof (element["onerror"]) is "function"
</span><span class="cx"> PASS /*form*/ typeof (element["oninput"]) is "function"
</span><span class="cx"> PASS /*form*/ typeof (element["oninvalid"]) is "function"
</span><del>-PASS /*form*/ typeof (element["ontouchstart"]) is "function"
-PASS /*form*/ typeof (element["ontouchmove"]) is "function"
-PASS /*form*/ typeof (element["ontouchend"]) is "function"
-PASS /*form*/ typeof (element["ontouchcancel"]) is "function"
</del><ins>+FAIL /*form*/ typeof (element["ontouchstart"]) should be function. Was undefined.
+FAIL /*form*/ typeof (element["ontouchmove"]) should be function. Was undefined.
+FAIL /*form*/ typeof (element["ontouchend"]) should be function. Was undefined.
+FAIL /*form*/ typeof (element["ontouchcancel"]) should be function. Was undefined.
</ins><span class="cx"> PASS /*form*/ typeof (element["onwebkitfullscreenchange"]) is "function"
</span><span class="cx"> PASS /*form*/ typeof (element["onwebkitfullscreenerror"]) is "function"
</span><span class="cx"> PASS /*form*/ typeof (element["onabort"]) is "function"
</span><span class="lines">@@ -257,10 +257,10 @@
</span><span class="cx"> PASS /*input*/ typeof (element["onerror"]) is "function"
</span><span class="cx"> PASS /*input*/ typeof (element["oninput"]) is "function"
</span><span class="cx"> PASS /*input*/ typeof (element["oninvalid"]) is "function"
</span><del>-PASS /*input*/ typeof (element["ontouchstart"]) is "function"
-PASS /*input*/ typeof (element["ontouchmove"]) is "function"
-PASS /*input*/ typeof (element["ontouchend"]) is "function"
-PASS /*input*/ typeof (element["ontouchcancel"]) is "function"
</del><ins>+FAIL /*input*/ typeof (element["ontouchstart"]) should be function. Was undefined.
+FAIL /*input*/ typeof (element["ontouchmove"]) should be function. Was undefined.
+FAIL /*input*/ typeof (element["ontouchend"]) should be function. Was undefined.
+FAIL /*input*/ typeof (element["ontouchcancel"]) should be function. Was undefined.
</ins><span class="cx"> PASS /*input*/ typeof (element["onwebkitfullscreenchange"]) is "function"
</span><span class="cx"> PASS /*input*/ typeof (element["onwebkitfullscreenerror"]) is "function"
</span><span class="cx"> PASS /*input*/ typeof (element["onabort"]) is "function"
</span></span></pre></div>
<a id="trunkLayoutTestsplatformwinfasteventseventattributeexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/win/fast/events/event-attribute-expected.txt (182045 => 182046)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/win/fast/events/event-attribute-expected.txt        2015-03-27 00:13:59 UTC (rev 182045)
+++ trunk/LayoutTests/platform/win/fast/events/event-attribute-expected.txt        2015-03-27 01:02:38 UTC (rev 182046)
</span><span class="lines">@@ -37,10 +37,10 @@
</span><span class="cx"> PASS /*img*/ typeof (element["onerror"]) is "function"
</span><span class="cx"> PASS /*img*/ typeof (element["oninput"]) is "function"
</span><span class="cx"> PASS /*img*/ typeof (element["oninvalid"]) is "function"
</span><del>-PASS /*img*/ typeof (element["ontouchstart"]) is "function"
-PASS /*img*/ typeof (element["ontouchmove"]) is "function"
-PASS /*img*/ typeof (element["ontouchend"]) is "function"
-PASS /*img*/ typeof (element["ontouchcancel"]) is "function"
</del><ins>+FAIL /*img*/ typeof (element["ontouchstart"]) should be function. Was undefined.
+FAIL /*img*/ typeof (element["ontouchmove"]) should be function. Was undefined.
+FAIL /*img*/ typeof (element["ontouchend"]) should be function. Was undefined.
+FAIL /*img*/ typeof (element["ontouchcancel"]) should be function. Was undefined.
</ins><span class="cx"> PASS /*img*/ typeof (element["onwebkitfullscreenchange"]) is "function"
</span><span class="cx"> PASS /*img*/ typeof (element["onwebkitfullscreenerror"]) is "function"
</span><span class="cx"> PASS /*img*/ typeof (element["onabort"]) is "function"
</span><span class="lines">@@ -81,10 +81,10 @@
</span><span class="cx"> PASS /*script*/ typeof (element["onerror"]) is "function"
</span><span class="cx"> PASS /*script*/ typeof (element["oninput"]) is "function"
</span><span class="cx"> PASS /*script*/ typeof (element["oninvalid"]) is "function"
</span><del>-PASS /*script*/ typeof (element["ontouchstart"]) is "function"
-PASS /*script*/ typeof (element["ontouchmove"]) is "function"
-PASS /*script*/ typeof (element["ontouchend"]) is "function"
-PASS /*script*/ typeof (element["ontouchcancel"]) is "function"
</del><ins>+FAIL /*script*/ typeof (element["ontouchstart"]) should be function. Was undefined.
+FAIL /*script*/ typeof (element["ontouchmove"]) should be function. Was undefined.
+FAIL /*script*/ typeof (element["ontouchend"]) should be function. Was undefined.
+FAIL /*script*/ typeof (element["ontouchcancel"]) should be function. Was undefined.
</ins><span class="cx"> PASS /*script*/ typeof (element["onwebkitfullscreenchange"]) is "function"
</span><span class="cx"> PASS /*script*/ typeof (element["onwebkitfullscreenerror"]) is "function"
</span><span class="cx"> PASS /*script*/ typeof (element["onabort"]) is "function"
</span><span class="lines">@@ -125,10 +125,10 @@
</span><span class="cx"> PASS /*video*/ typeof (element["onerror"]) is "function"
</span><span class="cx"> PASS /*video*/ typeof (element["oninput"]) is "function"
</span><span class="cx"> PASS /*video*/ typeof (element["oninvalid"]) is "function"
</span><del>-PASS /*video*/ typeof (element["ontouchstart"]) is "function"
-PASS /*video*/ typeof (element["ontouchmove"]) is "function"
-PASS /*video*/ typeof (element["ontouchend"]) is "function"
-PASS /*video*/ typeof (element["ontouchcancel"]) is "function"
</del><ins>+FAIL /*video*/ typeof (element["ontouchstart"]) should be function. Was undefined.
+FAIL /*video*/ typeof (element["ontouchmove"]) should be function. Was undefined.
+FAIL /*video*/ typeof (element["ontouchend"]) should be function. Was undefined.
+FAIL /*video*/ typeof (element["ontouchcancel"]) should be function. Was undefined.
</ins><span class="cx"> PASS /*video*/ typeof (element["onwebkitfullscreenchange"]) is "function"
</span><span class="cx"> PASS /*video*/ typeof (element["onwebkitfullscreenerror"]) is "function"
</span><span class="cx"> PASS /*video*/ typeof (element["onabort"]) is "function"
</span><span class="lines">@@ -169,10 +169,10 @@
</span><span class="cx"> PASS /*div*/ typeof (element["onerror"]) is "function"
</span><span class="cx"> PASS /*div*/ typeof (element["oninput"]) is "function"
</span><span class="cx"> PASS /*div*/ typeof (element["oninvalid"]) is "function"
</span><del>-PASS /*div*/ typeof (element["ontouchstart"]) is "function"
-PASS /*div*/ typeof (element["ontouchmove"]) is "function"
-PASS /*div*/ typeof (element["ontouchend"]) is "function"
-PASS /*div*/ typeof (element["ontouchcancel"]) is "function"
</del><ins>+FAIL /*div*/ typeof (element["ontouchstart"]) should be function. Was undefined.
+FAIL /*div*/ typeof (element["ontouchmove"]) should be function. Was undefined.
+FAIL /*div*/ typeof (element["ontouchend"]) should be function. Was undefined.
+FAIL /*div*/ typeof (element["ontouchcancel"]) should be function. Was undefined.
</ins><span class="cx"> PASS /*div*/ typeof (element["onwebkitfullscreenchange"]) is "function"
</span><span class="cx"> PASS /*div*/ typeof (element["onwebkitfullscreenerror"]) is "function"
</span><span class="cx"> PASS /*div*/ typeof (element["onabort"]) is "function"
</span><span class="lines">@@ -213,10 +213,10 @@
</span><span class="cx"> PASS /*form*/ typeof (element["onerror"]) is "function"
</span><span class="cx"> PASS /*form*/ typeof (element["oninput"]) is "function"
</span><span class="cx"> PASS /*form*/ typeof (element["oninvalid"]) is "function"
</span><del>-PASS /*form*/ typeof (element["ontouchstart"]) is "function"
-PASS /*form*/ typeof (element["ontouchmove"]) is "function"
-PASS /*form*/ typeof (element["ontouchend"]) is "function"
-PASS /*form*/ typeof (element["ontouchcancel"]) is "function"
</del><ins>+FAIL /*form*/ typeof (element["ontouchstart"]) should be function. Was undefined.
+FAIL /*form*/ typeof (element["ontouchmove"]) should be function. Was undefined.
+FAIL /*form*/ typeof (element["ontouchend"]) should be function. Was undefined.
+FAIL /*form*/ typeof (element["ontouchcancel"]) should be function. Was undefined.
</ins><span class="cx"> PASS /*form*/ typeof (element["onwebkitfullscreenchange"]) is "function"
</span><span class="cx"> PASS /*form*/ typeof (element["onwebkitfullscreenerror"]) is "function"
</span><span class="cx"> PASS /*form*/ typeof (element["onabort"]) is "function"
</span><span class="lines">@@ -257,10 +257,10 @@
</span><span class="cx"> PASS /*input*/ typeof (element["onerror"]) is "function"
</span><span class="cx"> PASS /*input*/ typeof (element["oninput"]) is "function"
</span><span class="cx"> PASS /*input*/ typeof (element["oninvalid"]) is "function"
</span><del>-PASS /*input*/ typeof (element["ontouchstart"]) is "function"
-PASS /*input*/ typeof (element["ontouchmove"]) is "function"
-PASS /*input*/ typeof (element["ontouchend"]) is "function"
-PASS /*input*/ typeof (element["ontouchcancel"]) is "function"
</del><ins>+FAIL /*input*/ typeof (element["ontouchstart"]) should be function. Was undefined.
+FAIL /*input*/ typeof (element["ontouchmove"]) should be function. Was undefined.
+FAIL /*input*/ typeof (element["ontouchend"]) should be function. Was undefined.
+FAIL /*input*/ typeof (element["ontouchcancel"]) should be function. Was undefined.
</ins><span class="cx"> PASS /*input*/ typeof (element["onwebkitfullscreenchange"]) is "function"
</span><span class="cx"> PASS /*input*/ typeof (element["onwebkitfullscreenerror"]) is "function"
</span><span class="cx"> PASS /*input*/ typeof (element["onabort"]) is "function"
</span></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (182045 => 182046)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2015-03-27 00:13:59 UTC (rev 182045)
+++ trunk/Source/WebCore/ChangeLog        2015-03-27 01:02:38 UTC (rev 182046)
</span><span class="lines">@@ -1,3 +1,21 @@
</span><ins>+2015-03-26 Tim Horton <timothy_horton@apple.com>
+
+ REGRESSION (r181358 and r181507): Lots of sites think that we support touch events on OS X
+ https://bugs.webkit.org/show_bug.cgi?id=142888
+ <rdar://problem/20227304>
+
+ Reviewed by Beth Dakin.
+
+ * dom/Document.idl:
+ * dom/Element.idl:
+ * html/HTMLBodyElement.idl:
+ * html/HTMLFrameSetElement.idl:
+ * page/DOMWindow.idl:
+ Re-conditionalize a lot of event listeners; sites test ("ontouchstart" in window), which
+ is not covered by NotEnumerable, and so r181358 and r181507 broke a bunch of sites
+ (apple.com, blaze.com, anything using nicescroll.js, etc.) by causing them to think
+ that (Mac) Safari was touch-enabled.
+
</ins><span class="cx"> 2015-03-26 Geoffrey Garen <ggaren@apple.com>
</span><span class="cx">
</span><span class="cx"> "lineNo" does not match WebKit coding style guidelines
</span></span></pre></div>
<a id="trunkSourceWebCoredomDocumentidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/dom/Document.idl (182045 => 182046)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/dom/Document.idl        2015-03-27 00:13:59 UTC (rev 182045)
+++ trunk/Source/WebCore/dom/Document.idl        2015-03-27 01:02:38 UTC (rev 182046)
</span><span class="lines">@@ -279,35 +279,41 @@
</span><span class="cx"> [NotEnumerable] attribute EventHandler onmouseup;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onmousewheel;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onpaste;
</span><del>- [NotEnumerable] attribute EventHandler onpointerlockchange;
- [NotEnumerable] attribute EventHandler onpointerlockerror;
</del><span class="cx"> [NotEnumerable] attribute EventHandler onreadystatechange;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onreset;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onscroll;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onsearch;
</span><del>- [NotEnumerable] attribute EventHandler onsecuritypolicyviolation;
</del><span class="cx"> [NotEnumerable] attribute EventHandler onselect;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onselectionchange;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onselectstart;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onsubmit;
</span><del>- [NotEnumerable] attribute EventHandler ontouchcancel;
- [NotEnumerable] attribute EventHandler ontouchend;
- [NotEnumerable] attribute EventHandler ontouchmove;
- [NotEnumerable] attribute EventHandler ontouchstart;
- [NotEnumerable] attribute EventHandler onwebkitfullscreenchange;
- [NotEnumerable] attribute EventHandler onwebkitfullscreenerror;
- [NotEnumerable] attribute EventHandler onwebkitmouseforcecancelled;
- [NotEnumerable] attribute EventHandler onwebkitmouseforcechanged;
- [NotEnumerable] attribute EventHandler onwebkitmouseforceclick;
- [NotEnumerable] attribute EventHandler onwebkitmouseforcedown;
- [NotEnumerable] attribute EventHandler onwebkitmouseforceup;
- [NotEnumerable] attribute EventHandler onwebkitmouseforcewillbegin;
- [NotEnumerable] attribute EventHandler onwebkitwillrevealbottom;
- [NotEnumerable] attribute EventHandler onwebkitwillrevealleft;
- [NotEnumerable] attribute EventHandler onwebkitwillrevealright;
- [NotEnumerable] attribute EventHandler onwebkitwillrevealtop;
</del><span class="cx"> [NotEnumerable] attribute EventHandler onwheel;
</span><span class="cx">
</span><ins>+ [NotEnumerable, Conditional=CSP_NEXT] attribute EventHandler onsecuritypolicyviolation;
+
+ [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchcancel;
+ [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchend;
+ [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchmove;
+ [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchstart;
+
+ [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealbottom;
+ [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealleft;
+ [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealright;
+ [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealtop;
+
+ [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcecancelled;
+ [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcechanged;
+ [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforceclick;
+ [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcedown;
+ [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforceup;
+ [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcewillbegin;
+
+ [NotEnumerable, Conditional=FULLSCREEN_API] attribute EventHandler onwebkitfullscreenchange;
+ [NotEnumerable, Conditional=FULLSCREEN_API] attribute EventHandler onwebkitfullscreenerror;
+
+ [NotEnumerable, Conditional=POINTER_LOCK] attribute EventHandler onpointerlockchange;
+ [NotEnumerable, Conditional=POINTER_LOCK] attribute EventHandler onpointerlockerror;
+
</ins><span class="cx"> #if defined(ENABLE_IOS_TOUCH_EVENTS) && ENABLE_IOS_TOUCH_EVENTS
</span><span class="cx"> #include <WebKitAdditions/DocumentIOS.idl>
</span><span class="cx"> #elif defined(ENABLE_TOUCH_EVENTS) && ENABLE_TOUCH_EVENTS
</span></span></pre></div>
<a id="trunkSourceWebCoredomElementidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/dom/Element.idl (182045 => 182046)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/dom/Element.idl        2015-03-27 00:13:59 UTC (rev 182045)
+++ trunk/Source/WebCore/dom/Element.idl        2015-03-27 01:02:38 UTC (rev 182046)
</span><span class="lines">@@ -172,8 +172,6 @@
</span><span class="cx"> [NotEnumerable] attribute EventHandler onanimationend;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onanimationiteration;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onanimationstart;
</span><del>- [NotEnumerable] attribute EventHandler onautocomplete;
- [NotEnumerable] attribute EventHandler onautocompleteerror;
</del><span class="cx"> [NotEnumerable] attribute EventHandler onbeforecopy;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onbeforecut;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onbeforeload;
</span><span class="lines">@@ -238,37 +236,51 @@
</span><span class="cx"> [NotEnumerable] attribute EventHandler onsubmit;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onsuspend;
</span><span class="cx"> [NotEnumerable] attribute EventHandler ontimeupdate;
</span><del>- [NotEnumerable] attribute EventHandler ontouchcancel;
- [NotEnumerable] attribute EventHandler ontouchend;
- [NotEnumerable] attribute EventHandler ontouchmove;
- [NotEnumerable] attribute EventHandler ontouchstart;
</del><span class="cx"> [NotEnumerable] attribute EventHandler ontransitionend;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onvolumechange;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onwaiting;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onwebkitanimationend;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onwebkitanimationiteration;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onwebkitanimationstart;
</span><del>- [NotEnumerable] attribute EventHandler onwebkitcurrentplaybacktargetiswirelesschanged;
- [NotEnumerable] attribute EventHandler onwebkitfullscreenchange;
- [NotEnumerable] attribute EventHandler onwebkitfullscreenerror;
- [NotEnumerable] attribute EventHandler onwebkitkeyadded;
- [NotEnumerable] attribute EventHandler onwebkitkeyerror;
- [NotEnumerable] attribute EventHandler onwebkitkeymessage;
- [NotEnumerable] attribute EventHandler onwebkitmouseforcecancelled;
- [NotEnumerable] attribute EventHandler onwebkitmouseforcechanged;
- [NotEnumerable] attribute EventHandler onwebkitmouseforceclick;
- [NotEnumerable] attribute EventHandler onwebkitmouseforcedown;
- [NotEnumerable] attribute EventHandler onwebkitmouseforcewillbegin;
- [NotEnumerable] attribute EventHandler onwebkitmouseforceup;
- [NotEnumerable] attribute EventHandler onwebkitneedkey;
- [NotEnumerable] attribute EventHandler onwebkitplaybacktargetavailabilitychanged;
- [NotEnumerable] attribute EventHandler onwebkitpresentationmodechanged;
</del><span class="cx"> [NotEnumerable] attribute EventHandler onwebkittransitionend;
</span><del>- [NotEnumerable] attribute EventHandler onwebkitwillrevealbottom;
- [NotEnumerable] attribute EventHandler onwebkitwillrevealleft;
- [NotEnumerable] attribute EventHandler onwebkitwillrevealright;
- [NotEnumerable] attribute EventHandler onwebkitwillrevealtop;
</del><span class="cx"> [NotEnumerable] attribute EventHandler onwheel;
</span><ins>+
+ // Some sites use the existence of event handler properties for feature detection,
+ // so they actually need to be conditional, not just non-enumerable.
+
+ [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchcancel;
+ [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchend;
+ [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchmove;
+ [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchstart;
+
+ [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealbottom;
+ [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealleft;
+ [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealright;
+ [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealtop;
+
+ [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcecancelled;
+ [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcechanged;
+ [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforceclick;
+ [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcedown;
+ [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcewillbegin;
+ [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforceup;
+
+ [NotEnumerable, Conditional=ENCRYPTED_MEDIA] attribute EventHandler onwebkitkeyadded;
+ [NotEnumerable, Conditional=ENCRYPTED_MEDIA] attribute EventHandler onwebkitkeyerror;
+ [NotEnumerable, Conditional=ENCRYPTED_MEDIA] attribute EventHandler onwebkitkeymessage;
+
+ [NotEnumerable, Conditional=ENCRYPTED_MEDIA|ENCRYPTED_MEDIA_V2] attribute EventHandler onwebkitneedkey;
+
+ [NotEnumerable, Conditional=FULLSCREEN_API] attribute EventHandler onwebkitfullscreenchange;
+ [NotEnumerable, Conditional=FULLSCREEN_API] attribute EventHandler onwebkitfullscreenerror;
+
+ [NotEnumerable, Conditional=REQUEST_AUTOCOMPLETE] attribute EventHandler onautocomplete;
+ [NotEnumerable, Conditional=REQUEST_AUTOCOMPLETE] attribute EventHandler onautocompleteerror;
+
+ [NotEnumerable, Conditional=VIDEO_PRESENTATION_MODE] attribute EventHandler onwebkitpresentationmodechanged;
+
+ [NotEnumerable, Conditional=WIRELESS_PLAYBACK_TARGET] attribute EventHandler onwebkitcurrentplaybacktargetiswirelesschanged;
+ [NotEnumerable, Conditional=WIRELESS_PLAYBACK_TARGET] attribute EventHandler onwebkitplaybacktargetavailabilitychanged;
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> Element implements ChildNode;
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLBodyElementidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/HTMLBodyElement.idl (182045 => 182046)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLBodyElement.idl        2015-03-27 00:13:59 UTC (rev 182045)
+++ trunk/Source/WebCore/html/HTMLBodyElement.idl        2015-03-27 01:02:38 UTC (rev 182046)
</span><span class="lines">@@ -37,7 +37,6 @@
</span><span class="cx"> [NotEnumerable, WindowEventHandler] attribute EventHandler onmessage;
</span><span class="cx"> [NotEnumerable, WindowEventHandler] attribute EventHandler onoffline;
</span><span class="cx"> [NotEnumerable, WindowEventHandler] attribute EventHandler ononline;
</span><del>- [NotEnumerable, WindowEventHandler] attribute EventHandler onorientationchange;
</del><span class="cx"> [NotEnumerable, WindowEventHandler] attribute EventHandler onpagehide;
</span><span class="cx"> [NotEnumerable, WindowEventHandler] attribute EventHandler onpageshow;
</span><span class="cx"> [NotEnumerable, WindowEventHandler] attribute EventHandler onpopstate;
</span><span class="lines">@@ -45,17 +44,21 @@
</span><span class="cx"> [NotEnumerable, WindowEventHandler] attribute EventHandler onscroll;
</span><span class="cx"> [NotEnumerable, WindowEventHandler] attribute EventHandler onstorage;
</span><span class="cx"> [NotEnumerable, WindowEventHandler] attribute EventHandler onunload;
</span><del>- [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitmouseforcecancelled;
- [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitmouseforcechanged;
- [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitmouseforceclick;
- [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitmouseforcedown;
- [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitmouseforcewillbegin;
- [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitmouseforceup;
- [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitwillrevealbottom;
- [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitwillrevealleft;
- [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitwillrevealright;
- [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitwillrevealtop;
</del><span class="cx">
</span><ins>+ [NotEnumerable, WindowEventHandler, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcecancelled;
+ [NotEnumerable, WindowEventHandler, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcechanged;
+ [NotEnumerable, WindowEventHandler, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforceclick;
+ [NotEnumerable, WindowEventHandler, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcedown;
+ [NotEnumerable, WindowEventHandler, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcewillbegin;
+ [NotEnumerable, WindowEventHandler, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforceup;
+
+ [NotEnumerable, WindowEventHandler, Conditional=ORIENTATION_EVENTS] attribute EventHandler onorientationchange;
+
+ [NotEnumerable, WindowEventHandler, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealbottom;
+ [NotEnumerable, WindowEventHandler, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealleft;
+ [NotEnumerable, WindowEventHandler, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealright;
+ [NotEnumerable, WindowEventHandler, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealtop;
+
</ins><span class="cx"> [NotEnumerable, DocumentEventHandler] attribute EventHandler onselectionchange;
</span><span class="cx"> };
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLFrameSetElementidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/HTMLFrameSetElement.idl (182045 => 182046)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLFrameSetElement.idl        2015-03-27 00:13:59 UTC (rev 182045)
+++ trunk/Source/WebCore/html/HTMLFrameSetElement.idl        2015-03-27 01:02:38 UTC (rev 182046)
</span><span class="lines">@@ -35,7 +35,6 @@
</span><span class="cx"> [NotEnumerable, WindowEventHandler] attribute EventHandler onmessage;
</span><span class="cx"> [NotEnumerable, WindowEventHandler] attribute EventHandler onoffline;
</span><span class="cx"> [NotEnumerable, WindowEventHandler] attribute EventHandler ononline;
</span><del>- [NotEnumerable, WindowEventHandler] attribute EventHandler onorientationchange;
</del><span class="cx"> [NotEnumerable, WindowEventHandler] attribute EventHandler onpagehide;
</span><span class="cx"> [NotEnumerable, WindowEventHandler] attribute EventHandler onpageshow;
</span><span class="cx"> [NotEnumerable, WindowEventHandler] attribute EventHandler onpopstate;
</span><span class="lines">@@ -43,9 +42,12 @@
</span><span class="cx"> [NotEnumerable, WindowEventHandler] attribute EventHandler onscroll;
</span><span class="cx"> [NotEnumerable, WindowEventHandler] attribute EventHandler onstorage;
</span><span class="cx"> [NotEnumerable, WindowEventHandler] attribute EventHandler onunload;
</span><del>- [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitwillrevealbottom;
- [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitwillrevealleft;
- [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitwillrevealright;
- [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitwillrevealtop;
</del><ins>+
+ [NotEnumerable, WindowEventHandler, Conditional=ORIENTATION_EVENTS] attribute EventHandler onorientationchange;
+
+ [NotEnumerable, WindowEventHandler, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealbottom;
+ [NotEnumerable, WindowEventHandler, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealleft;
+ [NotEnumerable, WindowEventHandler, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealright;
+ [NotEnumerable, WindowEventHandler, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealtop;
</ins><span class="cx"> };
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorepageDOMWindowidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/DOMWindow.idl (182045 => 182046)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/DOMWindow.idl        2015-03-27 00:13:59 UTC (rev 182045)
+++ trunk/Source/WebCore/page/DOMWindow.idl        2015-03-27 01:02:38 UTC (rev 182046)
</span><span class="lines">@@ -198,8 +198,6 @@
</span><span class="cx"> [NotEnumerable] attribute EventHandler onclick;
</span><span class="cx"> [NotEnumerable] attribute EventHandler oncontextmenu;
</span><span class="cx"> [NotEnumerable] attribute EventHandler ondblclick;
</span><del>- [NotEnumerable] attribute EventHandler ondevicemotion;
- [NotEnumerable] attribute EventHandler ondeviceorientation;
</del><span class="cx"> [NotEnumerable] attribute EventHandler ondrag;
</span><span class="cx"> [NotEnumerable] attribute EventHandler ondragend;
</span><span class="cx"> [NotEnumerable] attribute EventHandler ondragenter;
</span><span class="lines">@@ -212,9 +210,6 @@
</span><span class="cx"> [NotEnumerable] attribute EventHandler onended;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onerror;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onfocus;
</span><del>- [NotEnumerable] attribute EventHandler ongesturechange;
- [NotEnumerable] attribute EventHandler ongestureend;
- [NotEnumerable] attribute EventHandler ongesturestart;
</del><span class="cx"> [NotEnumerable] attribute EventHandler onhashchange;
</span><span class="cx"> [NotEnumerable] attribute EventHandler oninput;
</span><span class="cx"> [NotEnumerable] attribute EventHandler oninvalid;
</span><span class="lines">@@ -236,7 +231,6 @@
</span><span class="cx"> [NotEnumerable] attribute EventHandler onmousewheel;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onoffline;
</span><span class="cx"> [NotEnumerable] attribute EventHandler ononline;
</span><del>- [NotEnumerable] attribute EventHandler onorientationchange;
</del><span class="cx"> [NotEnumerable] attribute EventHandler onpagehide;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onpageshow;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onpause;
</span><span class="lines">@@ -257,10 +251,6 @@
</span><span class="cx"> [NotEnumerable] attribute EventHandler onsubmit;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onsuspend;
</span><span class="cx"> [NotEnumerable] attribute EventHandler ontimeupdate;
</span><del>- [NotEnumerable] attribute EventHandler ontouchcancel;
- [NotEnumerable] attribute EventHandler ontouchend;
- [NotEnumerable] attribute EventHandler ontouchmove;
- [NotEnumerable] attribute EventHandler ontouchstart;
</del><span class="cx"> [NotEnumerable] attribute EventHandler ontransitionend;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onunload;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onvolumechange;
</span><span class="lines">@@ -268,20 +258,40 @@
</span><span class="cx"> [NotEnumerable] attribute EventHandler onwebkitanimationend;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onwebkitanimationiteration;
</span><span class="cx"> [NotEnumerable] attribute EventHandler onwebkitanimationstart;
</span><del>- [NotEnumerable] attribute EventHandler onwebkitdeviceproximity;
- [NotEnumerable] attribute EventHandler onwebkitmouseforcecancelled;
- [NotEnumerable] attribute EventHandler onwebkitmouseforcechanged;
- [NotEnumerable] attribute EventHandler onwebkitmouseforceclick;
- [NotEnumerable] attribute EventHandler onwebkitmouseforcedown;
- [NotEnumerable] attribute EventHandler onwebkitmouseforceup;
- [NotEnumerable] attribute EventHandler onwebkitmouseforcewillbegin;
</del><span class="cx"> [NotEnumerable] attribute EventHandler onwebkittransitionend;
</span><del>- [NotEnumerable] attribute EventHandler onwebkitwillrevealbottom;
- [NotEnumerable] attribute EventHandler onwebkitwillrevealleft;
- [NotEnumerable] attribute EventHandler onwebkitwillrevealright;
- [NotEnumerable] attribute EventHandler onwebkitwillrevealtop;
</del><span class="cx"> [NotEnumerable] attribute EventHandler onwheel;
</span><span class="cx">
</span><ins>+ // Some sites use the existence of event handler properties for feature detection,
+ // so they actually need to be conditional, not just non-enumerable.
+
+ [NotEnumerable, Conditional=DEVICE_ORIENTATION] attribute EventHandler ondevicemotion;
+ [NotEnumerable, Conditional=DEVICE_ORIENTATION] attribute EventHandler ondeviceorientation;
+
+ [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchcancel;
+ [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchend;
+ [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchmove;
+ [NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchstart;
+
+ [NotEnumerable, Conditional=IOS_GESTURE_EVENTS] attribute EventHandler ongesturechange;
+ [NotEnumerable, Conditional=IOS_GESTURE_EVENTS] attribute EventHandler ongestureend;
+ [NotEnumerable, Conditional=IOS_GESTURE_EVENTS] attribute EventHandler ongesturestart;
+
+ [NotEnumerable, Conditional=ORIENTATION_EVENTS] attribute EventHandler onorientationchange;
+
+ [NotEnumerable, Conditional=PROXIMITY_EVENTS] attribute EventHandler onwebkitdeviceproximity;
+
+ [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealbottom;
+ [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealleft;
+ [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealright;
+ [NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealtop;
+
+ [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcecancelled;
+ [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcechanged;
+ [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforceclick;
+ [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcedown;
+ [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforceup;
+ [NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcewillbegin;
+
</ins><span class="cx"> // EventTarget interface
</span><span class="cx"> [Custom] void addEventListener(DOMString type, EventListener listener, optional boolean useCapture);
</span><span class="cx"> [Custom] void removeEventListener(DOMString type, EventListener listener, optional boolean useCapture);
</span></span></pre>
</div>
</div>
</body>
</html>