diff options
104 files changed, 483 insertions, 4383 deletions
diff --git a/accessible/base/ARIAMap.cpp b/accessible/base/ARIAMap.cpp index c29d37873c..3a89cf9eda 100644 --- a/accessible/base/ARIAMap.cpp +++ b/accessible/base/ARIAMap.cpp @@ -347,16 +347,6 @@ static const nsRoleMapEntry sWAIRoleMaps[] = eLandmark, kNoReqStates }, - { // marquee - &nsGkAtoms::marquee, - roles::ANIMATION, - kUseMapRole, - eNoValue, - eNoAction, - eOffLiveAttr, - kGenericAccType, - kNoReqStates - }, { // math &nsGkAtoms::math, roles::FLAT_EQUATION, diff --git a/accessible/mac/mozAccessible.mm b/accessible/mac/mozAccessible.mm index 07868fea67..a02779ef25 100644 --- a/accessible/mac/mozAccessible.mm +++ b/accessible/mac/mozAccessible.mm @@ -732,8 +732,6 @@ using namespace mozilla::a11y; return @"AXDocument"; if (roleAtom == nsGkAtoms::log_) return @"AXApplicationLog"; - if (roleAtom == nsGkAtoms::marquee) - return @"AXApplicationMarquee"; if (roleAtom == nsGkAtoms::math) return @"AXDocumentMath"; if (roleAtom == nsGkAtoms::note_) @@ -869,7 +867,6 @@ static const RoleDescrMap sRoleDescrMap[] = { { @"AXApplicationAlert", NS_LITERAL_STRING("alert") }, { @"AXApplicationAlertDialog", NS_LITERAL_STRING("alertDialog") }, { @"AXApplicationLog", NS_LITERAL_STRING("log") }, - { @"AXApplicationMarquee", NS_LITERAL_STRING("marquee") }, { @"AXApplicationStatus", NS_LITERAL_STRING("status") }, { @"AXApplicationTimer", NS_LITERAL_STRING("timer") }, { @"AXContentSeparator", NS_LITERAL_STRING("separator") }, diff --git a/accessible/tests/mochitest/attributes/test_obj.html b/accessible/tests/mochitest/attributes/test_obj.html index 9e147e1d17..0706dd408e 100644 --- a/accessible/tests/mochitest/attributes/test_obj.html +++ b/accessible/tests/mochitest/attributes/test_obj.html @@ -62,7 +62,6 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=558036 testAbsentAttrs("live3", {"live" : ""}); testAttrs("log", {"live" : "polite"}, true); testAttrs("logAssertive", {"live" : "assertive"}, true); - testAttrs("marquee", {"live" : "off"}, true); testAttrs("status", {"live" : "polite"}, true); testAttrs("timer", {"live" : "off"}, true); testAbsentAttrs("tablist", {"live" : "polite"}); @@ -72,7 +71,6 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=558036 testAttrs("live2Child", {"container-live" : "polite"}, true); testAttrs("logChild", {"container-live" : "polite"}, true); testAttrs("logAssertiveChild", {"container-live" : "assertive"}, true); - testAttrs("marqueeChild", {"container-live" : "off"}, true); testAttrs("statusChild", {"container-live" : "polite"}, true); testAttrs("timerChild", {"container-live" : "off"}, true); testAbsentAttrs("tablistChild", {"container-live" : "polite"}); @@ -80,13 +78,11 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=558036 // container-live-role object attribute testAttrs("log", {"container-live-role" : "log"}, true); testAttrs("logAssertive", {"container-live-role" : "log"}, true); - testAttrs("marquee", {"container-live-role" : "marquee"}, true); testAttrs("status", {"container-live-role" : "status"}, true); testAttrs("timer", {"container-live-role" : "timer"}, true); testAttrs("logChild", {"container-live-role" : "log"}, true); testAttrs("logAssertive", {"container-live-role" : "log"}, true); testAttrs("logAssertiveChild", {"container-live-role" : "log"}, true); - testAttrs("marqueeChild", {"container-live-role" : "marquee"}, true); testAttrs("statusChild", {"container-live-role" : "status"}, true); testAttrs("timerChild", {"container-live-role" : "timer"}, true); testAbsentAttrs("tablistChild", {"container-live-role" : "tablist"}); @@ -230,11 +226,9 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=558036 <!-- back to aria --> <div id="live" aria-live="polite">excuse <div id="liveChild">me</div></div> - <div id="live2" role="marquee" aria-live="polite">excuse <div id="live2Child">me</div></div> <div id="live3" role="region">excuse</div> <div id="log" role="log">excuse <div id="logChild">me</div></div> <div id="logAssertive" role="log" aria-live="assertive">excuse <div id="logAssertiveChild">me</div></div> - <div id="marquee" role="marquee">excuse <div id="marqueeChild">me</div></div> <div id="status" role="status">excuse <div id="statusChild">me</div></div> <div id="tablist" role="tablist">tablist <div id="tablistChild">tab</div></div> <div id="timer" role="timer">excuse <div id="timerChild">me</div></div> diff --git a/accessible/tests/mochitest/role/test_aria.html b/accessible/tests/mochitest/role/test_aria.html index 22021fa577..482ce43278 100644 --- a/accessible/tests/mochitest/role/test_aria.html +++ b/accessible/tests/mochitest/role/test_aria.html @@ -41,7 +41,6 @@ testRole("aria_listbox", ROLE_LISTBOX); testRole("aria_listitem", ROLE_LISTITEM); testRole("aria_log", ROLE_TEXT); // weak role - testRole("aria_marquee", ROLE_ANIMATION); testRole("aria_math", ROLE_FLAT_EQUATION); testRole("aria_menu", ROLE_MENUPOPUP); testRole("aria_menubar", ROLE_MENUBAR); @@ -89,9 +88,6 @@ testRole("log_table", ROLE_TABLE); testRole("timer_div", ROLE_SECTION); - // other roles that are forms of "live regions" - testRole("marquee_h1", ROLE_ANIMATION); - // strong landmark testRole("application", ROLE_APPLICATION); testRole("form", ROLE_FORM); @@ -219,7 +215,6 @@ <span id="aria_listbox" role="listbox"/> <span id="aria_listitem" role="listitem"/> <span id="aria_log" role="log"/> - <span id="aria_marquee" role="marquee"/> <span id="aria_math" role="math"/> <span id="aria_menu" role="menu"/> <span id="aria_menubar" role="menubar"/> @@ -263,7 +258,6 @@ <table role="log" id="log_table"> <tr><td>Table based log</td></tr> </table> - <h1 role="marquee" id="marquee_h1">marquee</h1> <div role="timer" id="timer_div">timer</div> <!-- landmarks --> diff --git a/dom/base/crashtests/1251361.html b/dom/base/crashtests/1251361.html deleted file mode 100644 index 57c76121f5..0000000000 --- a/dom/base/crashtests/1251361.html +++ /dev/null @@ -1,33 +0,0 @@ -<!DOCTYPE html> -<html> -<head> -<meta charset="UTF-8"> -<script> - -var frameRoot; - -function boom() -{ - var frameWin = f.contentWindow; - frameRoot = frameWin.document.documentElement; - frameWin.location.replace("data:text/html;charset=UTF-8,<body onload='parent.g();'>2"); -} - -function g() -{ - setTimeout(h, 0); -} - -function h() -{ - var newDoc = document.implementation.createDocument('', '', null); - newDoc.adoptNode(frameRoot); -} - -</script> -<body onload="boom();"> - -<iframe id="f" src="data:text/html;charset=UTF-8,<marquee>1"></iframe> - -</body> -</html> diff --git a/dom/base/crashtests/371466-1.xhtml b/dom/base/crashtests/371466-1.xhtml deleted file mode 100644 index 8da0b22b12..0000000000 --- a/dom/base/crashtests/371466-1.xhtml +++ /dev/null @@ -1,24 +0,0 @@ -<html xmlns="http://www.w3.org/1999/xhtml" class="reftest-wait"> -<head> -<script> - -function boom() -{ - var marquee = document.getElementById("marquee"); - var span = document.getElementById("span"); - marquee.appendChild(span); - marquee.removeChild(span); - document.documentElement.removeAttribute("class"); -} - -</script> -</head> - -<body onload="setTimeout(boom, 30);"> - -<marquee id="marquee" /> - -<span id="span"><div>Foo</div><textarea/></span> - -</body> -</html> diff --git a/dom/base/crashtests/535926-1.html b/dom/base/crashtests/535926-1.html deleted file mode 100644 index bddd8dc286..0000000000 --- a/dom/base/crashtests/535926-1.html +++ /dev/null @@ -1,28 +0,0 @@ -<html class="reftest-wait"> -<head> - -<script type="text/javascript"> - -var i = 0; -function mmf() -{ - if (++i == 2) { - document.body.innerHTML = "<marquee>"; - document.documentElement.removeAttribute("class"); - } -} - -function init() -{ - document.documentElement.offsetHeight; - for (var j = 0; j < 2; ++j) { - var iframe = document.createElementNS("http://www.w3.org/1999/xhtml", "iframe"); - iframe.addEventListener("load", mmf, false); - document.body.appendChild(iframe); - } -} - -</script> -</head> -<body onload="setTimeout(init, 0);"></body> -</html> diff --git a/dom/base/nsGkAtomList.h b/dom/base/nsGkAtomList.h index 35963afd7b..af3077604b 100644 --- a/dom/base/nsGkAtomList.h +++ b/dom/base/nsGkAtomList.h @@ -580,7 +580,6 @@ GK_ATOM(marginTop, "margin-top") GK_ATOM(marginheight, "marginheight") GK_ATOM(marginwidth, "marginwidth") GK_ATOM(mark, "mark") -GK_ATOM(marquee, "marquee") GK_ATOM(match, "match") GK_ATOM(max, "max") GK_ATOM(maxheight, "maxheight") diff --git a/dom/base/test/test_bug840098.html b/dom/base/test/test_bug840098.html index 8eaceb5892..e9275d55bb 100644 --- a/dom/base/test/test_bug840098.html +++ b/dom/base/test/test_bug840098.html @@ -15,7 +15,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=840098 <div id="content" style="display: none"> <div id="foo"></div> </div> -<marquee id="m">Hello</marquee> +<div id="m">Hello</div> <pre id="test"> <script type="application/javascript"> diff --git a/dom/base/test/test_caretPositionFromPoint.html b/dom/base/test/test_caretPositionFromPoint.html index 50f12b1ef6..054f73227a 100644 --- a/dom/base/test/test_caretPositionFromPoint.html +++ b/dom/base/test/test_caretPositionFromPoint.html @@ -115,7 +115,7 @@ <div id="a" contenteditable><span id="test1">abc, abc, abc</span><br> <span id="test2" style="color: blue;">abc, abc, abc</span><br> <textarea id="test3">abc</textarea><input id="test4" value="abcdef"><br><br> -<marquee>marquee</marquee> +<div>div</div> </div> <input id="test5" value="The rabbit-hole went straight on like a tunnel for some way, and then dipped suddenly down, so suddenly that Alice had not a moment to think about stopping herself before she found herself falling down a very deep well. Either the well was very deep, or she fell very slowly, for she had plenty of time as she went down to look about her and to wonder what was going to happen next. First, she tried to look down and make out what she was coming to, but it was too dark to see anything; then she looked at the sides of the well, and noticed that they were filled with cupboards and book-shelves; here and there she saw maps and pictures hung upon pegs. She took down a jar from one of the shelves as she passed; it was labelled `ORANGE MARMALADE', but to her great disappointment it was empty: she did not like to drop the jar for fear of killing somebody, so managed to put it into one of the cupboards as she fell past it." type="text"> <input id="test6" type="number" style="width:150px; height:57px;" value="31415"><br> diff --git a/dom/base/test/test_mutationobservers.html b/dom/base/test/test_mutationobservers.html deleted file mode 100644 index 021bedf1c8..0000000000 --- a/dom/base/test/test_mutationobservers.html +++ /dev/null @@ -1,918 +0,0 @@ -<!DOCTYPE HTML> -<html> -<!-- -https://bugzilla.mozilla.org/show_bug.cgi?id=641821 ---> -<head> - <meta charset="utf-8"> - <title>Test for Bug 641821</title> - <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> - <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/> -</head> -<body onload="runTest()"> -<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=641821">Mozilla Bug 641821</a> -<p id="display"></p> -<div id="content" style="display: none"> - -</div> -<pre id="test"> -<script type="application/javascript"> - -/** Test for Bug 641821 **/ - -SimpleTest.requestFlakyTimeout("requestFlakyTimeout is silly. (But make sure marquee has time to initialize itself.)"); - -var div = document.createElement("div"); - -var M; -if ("MozMutationObserver" in window) { - M = window.MozMutationObserver; -} else if ("WebKitMutationObserver" in window) { - M = window.WebKitMutationObserver; -} else { - M = window.MutationObserver; -} - -function log(str) { - var d = document.createElement("div"); - d.textContent = str; - if (str.indexOf("PASSED") >= 0) { - d.setAttribute("style", "color: green;"); - } else { - d.setAttribute("style", "color: red;"); - } - document.getElementById("log").appendChild(d); -} - -// Some helper functions so that this test runs also outside mochitest. -if (!("ok" in window)) { - window.ok = function(val, str) { - log(str + (val ? " PASSED\n" : " FAILED\n")); - } -} - -if (!("is" in window)) { - window.is = function(val, refVal, str) { - log(str + (val == refVal? " PASSED " : " FAILED ") + - (val != refVal ? "expected " + refVal + " got " + val + "\n" : "\n")); - } -} - -if (!("isnot" in window)) { - window.isnot = function(val, refVal, str) { - log(str + (val != refVal? " PASSED " : " FAILED ") + - (val == refVal ? "Didn't expect " + refVal + "\n" : "\n")); - } -} - -if (!("SimpleTest" in window)) { - window.SimpleTest = - { - finish: function() { - document.getElementById("log").appendChild(document.createTextNode("DONE")); - }, - waitForExplicitFinish: function() {} - } -} - -function then(thenFn) { - setTimeout(function() { - if (thenFn) { - setTimeout(thenFn, 0); - } else { - SimpleTest.finish(); - } - }, 0); -} - -var m; -var m2; -var m3; -var m4; - -// Checks basic parameter validation and normal 'this' handling. -// Tests also basic attribute handling. -function runTest() { - m = new M(function(){}); - ok(m, "MutationObserver supported"); - - var e = null; - try { - m.observe(document, {}); - } catch (ex) { - e = ex; - } - ok(e, "Should have thrown an exception"); - is(e.name, "TypeError", "Should have thrown TypeError"); - - e = null; - try { - m.observe(document, { childList: true, attributeOldValue: true }); - } catch (ex) { - e = ex; - } - ok(!e, "Shouldn't have thrown an exception"); - - e = null; - try { - m.observe(document, { childList: true, attributeFilter: ["foo"] }); - } catch (ex) { - e = ex; - } - ok(!e, "Shouldn't have thrown an exception"); - - e = null; - try { - m.observe(document, { childList: true, characterDataOldValue: true }); - } catch (ex) { - e = ex; - } - ok(!e, "Shouldn't have thrown an exception"); - - e = null; - try { - m.observe(document); - } catch (ex) { - e = ex; - } - ok(e, "Should have thrown an exception"); - - m = new M(function(records, observer) { - is(observer, m, "2nd parameter should be the mutation observer"); - is(observer, this, "2nd parameter should be 'this'"); - is(records.length, 1, "Should have one record."); - is(records[0].type, "attributes", "Should have got attributes record"); - is(records[0].target, div, "Should have got div as target"); - is(records[0].attributeName, "foo", "Should have got record about foo attribute"); - observer.disconnect(); - then(testThisBind); - m = null; - }); - m.observe(div, { attributes: true, attributeFilter: ["foo"] }); - is(SpecialPowers.wrap(div).getBoundMutationObservers()[0].getObservingInfo()[0].attributes, true); - is(SpecialPowers.wrap(div).getBoundMutationObservers()[0].getObservingInfo()[0].attributeFilter.length, 1) - is(SpecialPowers.wrap(div).getBoundMutationObservers()[0].getObservingInfo()[0].attributeFilter[0], "foo") - div.setAttribute("foo", "bar"); -} - -// 'this' handling when fn.bind() is used. -function testThisBind() { - var child = div.appendChild(document.createElement("div")); - var gchild = child.appendChild(document.createElement("div")); - m = new M((function(records, observer) { - is(observer, m, "2nd parameter should be the mutation observer"); - isnot(observer, this, "2nd parameter should be 'this'"); - is(records.length, 3, "Should have one record."); - is(records[0].type, "attributes", "Should have got attributes record"); - is(records[0].target, div, "Should have got div as target"); - is(records[0].attributeName, "foo", "Should have got record about foo attribute"); - is(records[0].oldValue, "bar", "oldValue should be bar"); - is(records[1].type, "attributes", "Should have got attributes record"); - is(records[1].target, div, "Should have got div as target"); - is(records[1].attributeName, "foo", "Should have got record about foo attribute"); - is(records[1].oldValue, "bar2", "oldValue should be bar2"); - is(records[2].type, "attributes", "Should have got attributes record"); - is(records[2].target, gchild, "Should have got div as target"); - is(records[2].attributeName, "foo", "Should have got record about foo attribute"); - is(records[2].oldValue, null, "oldValue should be bar2"); - observer.disconnect(); - then(testCharacterData); - m = null; - }).bind(window)); - m.observe(div, { attributes: true, attributeOldValue: true, subtree: true }); - is(SpecialPowers.wrap(div).getBoundMutationObservers()[0].getObservingInfo()[0].attributes, true) - is(SpecialPowers.wrap(div).getBoundMutationObservers()[0].getObservingInfo()[0].attributeOldValue, true) - is(SpecialPowers.wrap(div).getBoundMutationObservers()[0].getObservingInfo()[0].subtree, true) - div.setAttribute("foo", "bar2"); - div.removeAttribute("foo"); - div.removeChild(child); - child.removeChild(gchild); - div.appendChild(gchild); - div.removeChild(gchild); - gchild.setAttribute("foo", "bar"); -} - -function testCharacterData() { - m = new M(function(records, observer) { - is(records[0].type, "characterData", "Should have got characterData"); - is(records[0].oldValue, null, "Shouldn't have got oldData"); - observer.disconnect(); - m = null; - }); - m2 = new M(function(records, observer) { - is(records[0].type, "characterData", "Should have got characterData"); - is(records[0].oldValue, "foo", "Should have got oldData"); - observer.disconnect(); - m2 = null; - }); - m3 = new M(function(records, observer) { - ok(false, "This should not be called!"); - observer.disconnect(); - m3 = null; - }); - m4 = new M(function(records, observer) { - is(records[0].oldValue, null, "Shouldn't have got oldData"); - observer.disconnect(); - m3.disconnect(); - m3 = null; - then(testChildList); - m4 = null; - }); - - div.appendChild(document.createTextNode("foo")); - m.observe(div, { characterData: true, subtree: true }); - m2.observe(div, { characterData: true, characterDataOldValue: true, subtree: true}); - // If observing the same node twice, only the latter option should apply. - m3.observe(div, { characterData: true, subtree: true }); - m3.observe(div, { characterData: true, subtree: false }); - m4.observe(div.firstChild, { characterData: true, subtree: false }); - - is(SpecialPowers.wrap(div).getBoundMutationObservers().length, 3) - is(SpecialPowers.wrap(div).getBoundMutationObservers()[2].getObservingInfo()[0].characterData, true) - is(SpecialPowers.wrap(div).getBoundMutationObservers()[2].getObservingInfo()[0].subtree, false) - - div.firstChild.data = "bar"; -} - -function testChildList() { - var fc = div.firstChild; - m = new M(function(records, observer) { - is(records[0].type, "childList", "Should have got childList"); - is(records[0].addedNodes.length, 0, "Shouldn't have got addedNodes"); - is(records[0].removedNodes.length, 1, "Should have got removedNodes"); - is(records[0].removedNodes[0], fc, "Should have removed a text node"); - observer.disconnect(); - then(testChildList2); - m = null; - }); - m.observe(div, { childList: true}); - div.removeChild(div.firstChild); -} - -function testChildList2() { - div.innerHTML = "<span>1</span><span>2</span>"; - m = new M(function(records, observer) { - is(records[0].type, "childList", "Should have got childList"); - is(records[0].removedNodes.length, 2, "Should have got removedNodes"); - is(records[0].addedNodes.length, 1, "Should have got addedNodes"); - observer.disconnect(); - then(testChildList3); - m = null; - }); - m.observe(div, { childList: true }); - div.innerHTML = "<span><span>foo</span></span>"; -} - -function testChildList3() { - m = new M(function(records, observer) { - is(records[0].type, "childList", "Should have got childList"); - is(records[0].removedNodes.length, 1, "Should have got removedNodes"); - is(records[0].addedNodes.length, 1, "Should have got addedNodes"); - observer.disconnect(); - then(testChildList4); - m = null; - }); - m.observe(div, { childList: true }); - div.textContent = "hello"; -} - -function testChildList4() { - div.textContent = null; - var df = document.createDocumentFragment(); - var t1 = df.appendChild(document.createTextNode("Hello ")); - var t2 = df.appendChild(document.createTextNode("world!")); - var s1 = div.appendChild(document.createElement("span")); - s1.textContent = "foo"; - var s2 = div.appendChild(document.createElement("span")); - function callback(records, observer) { - is(records.length, 3, "Should have got one record for removing nodes from document fragment and one record for adding them to div"); - is(records[0].removedNodes.length, 2, "Should have got removedNodes"); - is(records[0].removedNodes[0], t1, "Should be the 1st textnode"); - is(records[0].removedNodes[1], t2, "Should be the 2nd textnode"); - is(records[1].addedNodes.length, 2, "Should have got addedNodes"); - is(records[1].addedNodes[0], t1, "Should be the 1st textnode"); - is(records[1].addedNodes[1], t2, "Should be the 2nd textnode"); - is(records[1].previousSibling, s1, "Should have previousSibling"); - is(records[1].nextSibling, s2, "Should have nextSibling"); - is(records[2].type, "characterData", "3rd record should be characterData"); - is(records[2].target, t1, "target should be the textnode"); - is(records[2].oldValue, "Hello ", "oldValue was 'Hello '"); - observer.disconnect(); - then(testChildList5); - m = null; - }; - m = new M(callback); - m.observe(df, { childList: true, characterData: true, characterDataOldValue: true, subtree: true }); - is(SpecialPowers.wrap(df).getBoundMutationObservers()[0].getObservingInfo()[0].childList, true) - is(SpecialPowers.wrap(df).getBoundMutationObservers()[0].getObservingInfo()[0].characterData, true) - is(SpecialPowers.wrap(df).getBoundMutationObservers()[0].getObservingInfo()[0].characterDataOldValue, true) - is(SpecialPowers.wrap(df).getBoundMutationObservers()[0].getObservingInfo()[0].subtree, true) - ok(SpecialPowers.compare(SpecialPowers.wrap(df).getBoundMutationObservers()[0].mutationCallback, callback)) - m.observe(div, { childList: true }); - is(SpecialPowers.wrap(df).getBoundMutationObservers()[0].getObservingInfo().length, 2) - - // Make sure transient observers aren't leaked. - var leakTest = new M(function(){}); - leakTest.observe(div, { characterData: true, subtree: true }); - - div.insertBefore(df, s2); - s1.firstChild.data = "bar"; // This should *not* create a record. - t1.data = "Hello the whole "; // This should create a record. -} - -function testChildList5() { - div.textContent = null; - var c1 = div.appendChild(document.createElement("div")); - var c2 = document.createElement("div"); - var div2 = document.createElement("div"); - var c3 = div2.appendChild(document.createElement("div")); - var c4 = document.createElement("div"); - var c5 = document.createElement("div"); - var df = document.createDocumentFragment(); - var emptyDF = document.createDocumentFragment(); - var dfc1 = df.appendChild(document.createElement("div")); - var dfc2 = df.appendChild(document.createElement("div")); - var dfc3 = df.appendChild(document.createElement("div")); - m = new M(function(records, observer) { - is(records.length, 6 , ""); - is(records[0].removedNodes.length, 1, "Should have got removedNodes"); - is(records[0].removedNodes[0], c1, ""); - is(records[0].addedNodes.length, 1, "Should have got addedNodes"); - is(records[0].addedNodes[0], c2, ""); - is(records[0].previousSibling, null, ""); - is(records[0].nextSibling, null, ""); - is(records[1].removedNodes.length, 1, "Should have got removedNodes"); - is(records[1].removedNodes[0], c3, ""); - is(records[1].addedNodes.length, 0, "Shouldn't have got addedNodes"); - is(records[1].previousSibling, null, ""); - is(records[1].nextSibling, null, ""); - is(records[2].removedNodes.length, 1, "Should have got removedNodes"); - is(records[2].removedNodes[0], c2, ""); - is(records[2].addedNodes.length, 1, "Should have got addedNodes"); - is(records[2].addedNodes[0], c3, ""); - is(records[2].previousSibling, null, ""); - is(records[2].nextSibling, null, ""); - // Check document fragment handling - is(records[5].removedNodes.length, 1, ""); - is(records[5].removedNodes[0], c4, ""); - is(records[5].addedNodes.length, 3, ""); - is(records[5].addedNodes[0], dfc1, ""); - is(records[5].addedNodes[1], dfc2, ""); - is(records[5].addedNodes[2], dfc3, ""); - is(records[5].previousSibling, c3, ""); - is(records[5].nextSibling, c5, ""); - observer.disconnect(); - then(testNestedMutations); - m = null; - }); - m.observe(div, { childList: true, subtree: true }); - m.observe(div2, { childList: true, subtree: true }); - div.replaceChild(c2, c1); - div.replaceChild(c3, c2); - div.appendChild(c4); - div.appendChild(c5); - div.replaceChild(df, c4); - div.appendChild(emptyDF); // empty document shouldn't cause mutation records -} - -function testNestedMutations() { - div.textContent = null; - div.appendChild(document.createTextNode("foo")); - var m2WasCalled = false; - m = new M(function(records, observer) { - is(records[0].type, "characterData", "Should have got characterData"); - observer.disconnect(); - m = null; - m3 = new M(function(records, observer) { - ok(m2WasCalled, "m2 should have been called before m3!"); - is(records[0].type, "characterData", "Should have got characterData"); - observer.disconnect(); - then(testAdoptNode); - m3 = null; - }); - m3.observe(div, { characterData: true, subtree: true}); - div.firstChild.data = "foo"; - }); - m2 = new M(function(records, observer) { - m2WasCalled = true; - is(records[0].type, "characterData", "Should have got characterData"); - observer.disconnect(); - m2 = null; - }); - m2.observe(div, { characterData: true, subtree: true}); - div.appendChild(document.createTextNode("foo")); - m.observe(div, { characterData: true, subtree: true }); - - div.firstChild.data = "bar"; -} - -function testAdoptNode() { - var d1 = document.implementation.createHTMLDocument(null); - var d2 = document.implementation.createHTMLDocument(null); - var addedNode; - m = new M(function(records, observer) { - is(records.length, 3, "Should have 2 records"); - is(records[0].target.ownerDocument, d1, "ownerDocument should be the initial document") - is(records[1].target.ownerDocument, d2, "ownerDocument should be the new document"); - is(records[2].type, "attributes", "Should have got attribute mutation") - is(records[2].attributeName, "foo", "Should have got foo attribute mutation") - observer.disconnect(); - then(testOuterHTML); - m = null; - }); - m.observe(d1, { childList: true, subtree: true, attributes: true }); - d2.body.appendChild(d1.body); - addedNode = d2.body.lastChild.appendChild(d2.createElement("div")); - addedNode.setAttribute("foo", "bar"); -} - -function testOuterHTML() { - var doc = document.implementation.createHTMLDocument(null); - var d1 = doc.body.appendChild(document.createElement("div")); - var d2 = doc.body.appendChild(document.createElement("div")); - var d3 = doc.body.appendChild(document.createElement("div")); - var d4 = doc.body.appendChild(document.createElement("div")); - m = new M(function(records, observer) { - is(records.length, 4, "Should have 1 record"); - is(records[0].removedNodes.length, 1, "Should have 1 removed nodes"); - is(records[0].addedNodes.length, 2, "Should have 2 added nodes"); - is(records[0].previousSibling, null, ""); - is(records[0].nextSibling, d2, ""); - is(records[1].removedNodes.length, 1, "Should have 1 removed nodes"); - is(records[1].addedNodes.length, 2, "Should have 2 added nodes"); - is(records[1].previousSibling, records[0].addedNodes[1], ""); - is(records[1].nextSibling, d3, ""); - is(records[2].removedNodes.length, 1, "Should have 1 removed nodes"); - is(records[2].addedNodes.length, 2, "Should have 2 added nodes"); - is(records[2].previousSibling, records[1].addedNodes[1], ""); - is(records[2].nextSibling, d4, ""); - is(records[3].removedNodes.length, 1, "Should have 1 removed nodes"); - is(records[3].addedNodes.length, 0); - is(records[3].previousSibling, records[2].addedNodes[1], ""); - is(records[3].nextSibling, null, ""); - observer.disconnect(); - then(testInsertAdjacentHTML); - m = null; - }); - m.observe(doc, { childList: true, subtree: true }); - d1.outerHTML = "<div>1</div><div>1</div>"; - d2.outerHTML = "<div>2</div><div>2</div>"; - d3.outerHTML = "<div>3</div><div>3</div>"; - d4.outerHTML = ""; -} - -function testInsertAdjacentHTML() { - var doc = document.implementation.createHTMLDocument(null); - var d1 = doc.body.appendChild(document.createElement("div")); - var d2 = doc.body.appendChild(document.createElement("div")); - var d3 = doc.body.appendChild(document.createElement("div")); - var d4 = doc.body.appendChild(document.createElement("div")); - m = new M(function(records, observer) { - is(records.length, 4, ""); - is(records[0].target, doc.body, ""); - is(records[0].previousSibling, null, ""); - is(records[0].nextSibling, d1, ""); - is(records[1].target, d2, ""); - is(records[1].previousSibling, null, ""); - is(records[1].nextSibling, null, ""); - is(records[2].target, d3, ""); - is(records[2].previousSibling, null, ""); - is(records[2].nextSibling, null, ""); - is(records[3].target, doc.body, ""); - is(records[3].previousSibling, d4, ""); - is(records[3].nextSibling, null, ""); - observer.disconnect(); - then(testSyncXHR); - m = null; - }); - m.observe(doc, { childList: true, subtree: true }); - d1.insertAdjacentHTML("beforebegin", "<div></div><div></div>"); - d2.insertAdjacentHTML("afterbegin", "<div></div><div></div>"); - d3.insertAdjacentHTML("beforeend", "<div></div><div></div>"); - d4.insertAdjacentHTML("afterend", "<div></div><div></div>"); -} - - -var callbackHandled = false; - -function testSyncXHR() { - div.textContent = null; - m = new M(function(records, observer) { - is(records.length, 1, ""); - is(records[0].addedNodes.length, 1, ""); - callbackHandled = true; - observer.disconnect(); - m = null; - }); - m.observe(div, { childList: true, subtree: true }); - div.innerHTML = "<div>hello</div>"; - var x = new XMLHttpRequest(); - x.open("GET", window.location, false); - x.send(); - ok(!callbackHandled, "Shouldn't have called the mutation callback!"); - setTimeout(testSyncXHR2, 0); -} - -function testSyncXHR2() { - ok(callbackHandled, "Should have called the mutation callback!"); - then(testTakeRecords); -} - -function testTakeRecords() { - var s = "<span>1</span><span>2</span>"; - div.innerHTML = s; - var takenRecords; - m = new M(function(records, observer) { - is(records.length, 3, "Should have got 3 records"); - - is(records[0].type, "attributes", "Should have got attributes"); - is(records[0].attributeName, "foo", ""); - is(records[0].attributeNamespace, null, ""); - is(records[0].prevValue, null, ""); - is(records[1].type, "childList", "Should have got childList"); - is(records[1].removedNodes.length, 2, "Should have got removedNodes"); - is(records[1].addedNodes.length, 2, "Should have got addedNodes"); - is(records[2].type, "attributes", "Should have got attributes"); - is(records[2].attributeName, "foo", ""); - - is(records.length, takenRecords.length, "Should have had similar mutations"); - is(records[0].type, takenRecords[0].type, "Should have had similar mutations"); - is(records[1].type, takenRecords[1].type, "Should have had similar mutations"); - is(records[2].type, takenRecords[2].type, "Should have had similar mutations"); - - is(records[1].removedNodes.length, takenRecords[1].removedNodes.length, "Should have had similar mutations"); - is(records[1].addedNodes.length, takenRecords[1].addedNodes.length, "Should have had similar mutations"); - - is(m.takeRecords().length, 0, "Shouldn't have any records"); - observer.disconnect(); - then(testMutationObserverAndEvents); - m = null; - }); - m.observe(div, { childList: true, attributes: true }); - div.setAttribute("foo", "bar"); - div.innerHTML = s; - div.removeAttribute("foo"); - takenRecords = m.takeRecords(); - div.setAttribute("foo", "bar"); - div.innerHTML = s; - div.removeAttribute("foo"); -} - -function testTakeRecords() { - function mutationListener(e) { - ++mutationEventCount; - is(e.attrChange, MutationEvent.ADDITION, "unexpected change"); - } - - m = new M(function(records, observer) { - is(records.length, 2, "Should have got 2 records"); - is(records[0].type, "attributes", "Should have got attributes"); - is(records[0].attributeName, "foo", ""); - is(records[0].oldValue, null, ""); - is(records[1].type, "attributes", "Should have got attributes"); - is(records[1].attributeName, "foo", ""); - is(records[1].oldValue, "bar", ""); - observer.disconnect(); - div.removeEventListener("DOMAttrModified", mutationListener); - then(testExpandos); - m = null; - }); - m.observe(div, { attributes: true, attributeOldValue: true }); - // Note, [0] points to a mutation observer which is there for a leak test! - ok(SpecialPowers.compare(SpecialPowers.wrap(div).getBoundMutationObservers()[1], m)); - var mutationEventCount = 0; - div.addEventListener("DOMAttrModified", mutationListener); - div.setAttribute("foo", "bar"); - div.setAttribute("foo", "bar"); - is(mutationEventCount, 1, "Should have got only one mutation event!"); -} - -function testExpandos() { - var m2 = new M(function(records, observer) { - is(observer.expandoProperty, true); - observer.disconnect(); - then(testOutsideShadowDOM); - }); - m2.expandoProperty = true; - m2.observe(div, { attributes: true }); - m2 = null; - if (SpecialPowers) { - // Run GC several times to see if the expando property disappears. - - SpecialPowers.gc(); - SpecialPowers.gc(); - SpecialPowers.gc(); - SpecialPowers.gc(); - } - div.setAttribute("foo", "bar2"); -} - -function testOutsideShadowDOM() { - var m = new M(function(records, observer) { - is(records.length, 1); - is(records[0].type, "attributes", "Should have got attributes"); - observer.disconnect(); - then(testMarquee); - }); - m.observe(div, { - attributes: true, - childList: true, - characterData: true, - subtree: true - }) - var sr = div.createShadowRoot(); - sr.innerHTML = "<div" + ">text</" + "div>"; - sr.firstChild.setAttribute("foo", "bar"); - sr.firstChild.firstChild.data = "text2"; - sr.firstChild.appendChild(document.createElement("div")); - div.setAttribute("foo", "bar"); -} - -function testMarquee() { - var m = new M(function(records, observer) { - is(records.length, 1); - is(records[0].type, "attributes"); - is(records[0].attributeName, "ok"); - is(records[0].oldValue, null); - observer.disconnect(); - then(testStyleCreate); - }); - var marquee = document.createElement("marquee"); - m.observe(marquee, { - attributes: true, - attributeOldValue: true, - childList: true, - characterData: true, - subtree: true - }); - document.body.appendChild(marquee); - setTimeout(function() {marquee.setAttribute("ok", "ok")}, 500); -} - -function testStyleCreate() { - m = new M(function(records, observer) { - is(records.length, 1, "number of records"); - is(records[0].type, "attributes", "record.type"); - is(records[0].attributeName, "style", "record.attributeName"); - is(records[0].oldValue, null, "record.oldValue"); - isnot(div.getAttribute("style"), null, "style attribute after creation"); - observer.disconnect(); - m = null; - div.removeAttribute("style"); - then(testStyleModify); - }); - m.observe(div, { attributes: true, attributeOldValue: true }); - is(div.getAttribute("style"), null, "style attribute before creation"); - div.style.color = "blue"; -} - -function testStyleModify() { - div.style.color = "yellow"; - m = new M(function(records, observer) { - is(records.length, 1, "number of records"); - is(records[0].type, "attributes", "record.type"); - is(records[0].attributeName, "style", "record.attributeName"); - isnot(div.getAttribute("style"), null, "style attribute after modification"); - observer.disconnect(); - m = null; - div.removeAttribute("style"); - then(testStyleRead); - }); - m.observe(div, { attributes: true }); - isnot(div.getAttribute("style"), null, "style attribute before modification"); - div.style.color = "blue"; -} - -function testStyleRead() { - m = new M(function(records, observer) { - is(records.length, 1, "number of records"); - is(records[0].type, "attributes", "record.type"); - is(records[0].attributeName, "data-test", "record.attributeName"); - is(div.getAttribute("style"), null, "style attribute after read"); - observer.disconnect(); - div.removeAttribute("data-test"); - m = null; - then(testStyleRemoveProperty); - }); - m.observe(div, { attributes: true }); - is(div.getAttribute("style"), null, "style attribute before read"); - var value = div.style.color; // shouldn't generate any mutation records - div.setAttribute("data-test", "a"); -} - -function testStyleRemoveProperty() { - div.style.color = "blue"; - m = new M(function(records, observer) { - is(records.length, 1, "number of records"); - is(records[0].type, "attributes", "record.type"); - is(records[0].attributeName, "style", "record.attributeName"); - isnot(div.getAttribute("style"), null, "style attribute after successful removeProperty"); - observer.disconnect(); - m = null; - div.removeAttribute("style"); - then(testStyleRemoveProperty2); - }); - m.observe(div, { attributes: true }); - isnot(div.getAttribute("style"), null, "style attribute before successful removeProperty"); - div.style.removeProperty("color"); -} - -function testStyleRemoveProperty2() { - m = new M(function(records, observer) { - is(records.length, 1, "number of records"); - is(records[0].type, "attributes", "record.type"); - is(records[0].attributeName, "data-test", "record.attributeName"); - is(div.getAttribute("style"), null, "style attribute after unsuccessful removeProperty"); - observer.disconnect(); - m = null; - div.removeAttribute("data-test"); - then(testAttributeRecordMerging1); - }); - m.observe(div, { attributes: true }); - is(div.getAttribute("style"), null, "style attribute before unsuccessful removeProperty"); - div.style.removeProperty("color"); // shouldn't generate any mutation records - div.setAttribute("data-test", "a"); -} - -function testAttributeRecordMerging1() { - ok(true, "testAttributeRecordMerging1"); - var m = new M(function(records, observer) { - is(records.length, 2); - is(records[0].type, "attributes"); - is(records[0].target, div); - is(records[0].attributeName, "foo"); - is(records[0].attributeNamespace, null); - is(records[0].oldValue, null); - - is(records[1].type, "attributes"); - is(records[1].target, div.firstChild); - is(records[1].attributeName, "foo"); - is(records[1].attributeNamespace, null); - is(records[1].oldValue, null); - observer.disconnect(); - div.innerHTML = ""; - div.removeAttribute("foo"); - then(testAttributeRecordMerging2); - }); - m.observe(div, { - attributes: true, - subtree: true - }); - SpecialPowers.wrap(m).mergeAttributeRecords = true; - - div.setAttribute("foo", "bar_1"); - div.setAttribute("foo", "bar_2"); - div.innerHTML = "<div></div>"; - div.firstChild.setAttribute("foo", "bar_1"); - div.firstChild.setAttribute("foo", "bar_2"); -} - -function testAttributeRecordMerging2() { - ok(true, "testAttributeRecordMerging2"); - var m = new M(function(records, observer) { - is(records.length, 2); - is(records[0].type, "attributes"); - is(records[0].target, div); - is(records[0].attributeName, "foo"); - is(records[0].attributeNamespace, null); - is(records[0].oldValue, "initial"); - - is(records[1].type, "attributes"); - is(records[1].target, div.firstChild); - is(records[1].attributeName, "foo"); - is(records[1].attributeNamespace, null); - is(records[1].oldValue, "initial"); - observer.disconnect(); - div.innerHTML = ""; - div.removeAttribute("foo"); - then(testAttributeRecordMerging3); - }); - - div.setAttribute("foo", "initial"); - div.innerHTML = "<div></div>"; - div.firstChild.setAttribute("foo", "initial"); - m.observe(div, { - attributes: true, - subtree: true, - attributeOldValue: true - }); - SpecialPowers.wrap(m).mergeAttributeRecords = true; - - div.setAttribute("foo", "bar_1"); - div.setAttribute("foo", "bar_2"); - div.firstChild.setAttribute("foo", "bar_1"); - div.firstChild.setAttribute("foo", "bar_2"); -} - -function testAttributeRecordMerging3() { - ok(true, "testAttributeRecordMerging3"); - var m = new M(function(records, observer) { - is(records.length, 4); - is(records[0].type, "attributes"); - is(records[0].target, div); - is(records[0].attributeName, "foo"); - is(records[0].attributeNamespace, null); - is(records[0].oldValue, "initial"); - - is(records[1].type, "attributes"); - is(records[1].target, div.firstChild); - is(records[1].attributeName, "foo"); - is(records[1].attributeNamespace, null); - is(records[1].oldValue, "initial"); - - is(records[2].type, "attributes"); - is(records[2].target, div); - is(records[2].attributeName, "foo"); - is(records[2].attributeNamespace, null); - is(records[2].oldValue, "bar_1"); - - is(records[3].type, "attributes"); - is(records[3].target, div.firstChild); - is(records[3].attributeName, "foo"); - is(records[3].attributeNamespace, null); - is(records[3].oldValue, "bar_1"); - - observer.disconnect(); - div.innerHTML = ""; - div.removeAttribute("foo"); - then(testAttributeRecordMerging4); - }); - - div.setAttribute("foo", "initial"); - div.innerHTML = "<div></div>"; - div.firstChild.setAttribute("foo", "initial"); - m.observe(div, { - attributes: true, - subtree: true, - attributeOldValue: true - }); - SpecialPowers.wrap(m).mergeAttributeRecords = true; - - // No merging should happen. - div.setAttribute("foo", "bar_1"); - div.firstChild.setAttribute("foo", "bar_1"); - div.setAttribute("foo", "bar_2"); - div.firstChild.setAttribute("foo", "bar_2"); -} - -function testAttributeRecordMerging4() { - ok(true, "testAttributeRecordMerging4"); - var m = new M(function(records, observer) { - }); - - div.setAttribute("foo", "initial"); - div.innerHTML = "<div></div>"; - div.firstChild.setAttribute("foo", "initial"); - m.observe(div, { - attributes: true, - subtree: true, - attributeOldValue: true - }); - SpecialPowers.wrap(m).mergeAttributeRecords = true; - - div.setAttribute("foo", "bar_1"); - div.setAttribute("foo", "bar_2"); - div.firstChild.setAttribute("foo", "bar_1"); - div.firstChild.setAttribute("foo", "bar_2"); - - var records = m.takeRecords(); - - is(records.length, 2); - is(records[0].type, "attributes"); - is(records[0].target, div); - is(records[0].attributeName, "foo"); - is(records[0].attributeNamespace, null); - is(records[0].oldValue, "initial"); - - is(records[1].type, "attributes"); - is(records[1].target, div.firstChild); - is(records[1].attributeName, "foo"); - is(records[1].attributeNamespace, null); - is(records[1].oldValue, "initial"); - m.disconnect(); - div.innerHTML = ""; - div.removeAttribute("foo"); - then(testChromeOnly); -} - -function testChromeOnly() { - // Content can't access nativeAnonymousChildList - try { - var mo = new M(function(records, observer) { }); - mo.observe(div, { nativeAnonymousChildList: true }); - ok(false, "Should have thrown when trying to observe with chrome-only init"); - } catch (e) { - ok(true, "Throws when trying to observe with chrome-only init"); - } - - then(); -} - -SimpleTest.waitForExplicitFinish(); - -</script> -</pre> -<div id="log"> -</div> -</body> -</html> diff --git a/dom/canvas/test/webgl-conf/checkout/deqp/temp_externs/webkit_css.js b/dom/canvas/test/webgl-conf/checkout/deqp/temp_externs/webkit_css.js deleted file mode 100644 index 60841f8e26..0000000000 --- a/dom/canvas/test/webgl-conf/checkout/deqp/temp_externs/webkit_css.js +++ /dev/null @@ -1,456 +0,0 @@ -/* - * Copyright 2008 The Closure Compiler Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/** - * @fileoverview Definitions for WebKit's custom CSS properties. Copied from: - * {@link - * http://trac.webkit.org/browser/trunk/Source/WebCore/css/CSSPropertyNames.in} - * - * If you make changes to this file, notice that every property appears - * twice: once as an uppercase name and once as a lowercase name. - * WebKit allows both. The uppercase version is preferred. - * - * @externs - * @author nicksantos@google.com (Nick Santos) - */ - -/** @type {string} */ CSSProperties.prototype.WebkitAlignContent; -/** @type {string} */ CSSProperties.prototype.WebkitAlignItems; -/** @type {string} */ CSSProperties.prototype.WebkitAlignSelf; -/** @type {string} */ CSSProperties.prototype.WebkitAnimation; -/** @type {string} */ CSSProperties.prototype.WebkitAnimationDelay; -/** @type {string} */ CSSProperties.prototype.WebkitAnimationDirection; -/** @type {string} */ CSSProperties.prototype.WebkitAnimationDuration; -/** @type {string} */ CSSProperties.prototype.WebkitAnimationFillMode; -/** @type {string} */ CSSProperties.prototype.WebkitAnimationIterationCount; -/** @type {string} */ CSSProperties.prototype.WebkitAnimationName; -/** @type {string} */ CSSProperties.prototype.WebkitAnimationPlayState; -/** @type {string} */ CSSProperties.prototype.WebkitAnimationTimingFunction; -/** @type {string} */ CSSProperties.prototype.WebkitAppearance; -/** @type {string} */ CSSProperties.prototype.WebkitAppRegion; -/** @type {string} */ CSSProperties.prototype.WebkitAspectRatio; -/** @type {string} */ CSSProperties.prototype.WebkitBackfaceVisibility; -/** @type {string} */ CSSProperties.prototype.WebkitBackgroundClip; -/** @type {string} */ CSSProperties.prototype.WebkitBackgroundComposite; -/** @type {string} */ CSSProperties.prototype.WebkitBackgroundOrigin; -/** @type {string} */ CSSProperties.prototype.WebkitBackgroundSize; -/** @type {string} */ CSSProperties.prototype.WebkitBinding; -/** @type {string} */ CSSProperties.prototype.WebkitBlendMode; -/** @type {string} */ CSSProperties.prototype.WebkitBorderAfter; -/** @type {string} */ CSSProperties.prototype.WebkitBorderAfterColor; -/** @type {string} */ CSSProperties.prototype.WebkitBorderAfterStyle; -/** @type {string} */ CSSProperties.prototype.WebkitBorderAfterWidth; -/** @type {string} */ CSSProperties.prototype.WebkitBorderBefore; -/** @type {string} */ CSSProperties.prototype.WebkitBorderBeforeColor; -/** @type {string} */ CSSProperties.prototype.WebkitBorderBeforeStyle; -/** @type {string} */ CSSProperties.prototype.WebkitBorderBeforeWidth; -/** @type {string} */ CSSProperties.prototype.WebkitBorderBottomLeftRadius; -/** @type {string} */ CSSProperties.prototype.WebkitBorderBottomRightRadius; -/** @type {string} */ CSSProperties.prototype.WebkitBorderEnd; -/** @type {string} */ CSSProperties.prototype.WebkitBorderEndColor; -/** @type {string} */ CSSProperties.prototype.WebkitBorderEndStyle; -/** @type {string} */ CSSProperties.prototype.WebkitBorderEndWidth; -/** @type {string} */ CSSProperties.prototype.WebkitBorderFit; -/** @type {string} */ CSSProperties.prototype.WebkitBorderHorizontalSpacing; -/** @type {string} */ CSSProperties.prototype.WebkitBorderImage; -/** @type {string} */ CSSProperties.prototype.WebkitBorderRadius; -/** @type {string} */ CSSProperties.prototype.WebkitBorderStart; -/** @type {string} */ CSSProperties.prototype.WebkitBorderStartColor; -/** @type {string} */ CSSProperties.prototype.WebkitBorderStartStyle; -/** @type {string} */ CSSProperties.prototype.WebkitBorderStartWidth; -/** @type {string} */ CSSProperties.prototype.WebkitBorderTopLeftRadius; -/** @type {string} */ CSSProperties.prototype.WebkitBorderTopRightRadius; -/** @type {string} */ CSSProperties.prototype.WebkitBorderVerticalSpacing; -/** @type {string} */ CSSProperties.prototype.WebkitBoxAlign; -/** @type {string} */ CSSProperties.prototype.WebkitBoxDecorationBreak; -/** @type {string} */ CSSProperties.prototype.WebkitBoxDirection; -/** @type {string} */ CSSProperties.prototype.WebkitBoxFlex; -/** @type {string} */ CSSProperties.prototype.WebkitBoxFlexGroup; -/** @type {string} */ CSSProperties.prototype.WebkitBoxLines; -/** @type {string} */ CSSProperties.prototype.WebkitBoxOrdinalGroup; -/** @type {string} */ CSSProperties.prototype.WebkitBoxOrient; -/** @type {string} */ CSSProperties.prototype.WebkitBoxPack; -/** @type {string} */ CSSProperties.prototype.WebkitBoxReflect; -/** @type {string} */ CSSProperties.prototype.WebkitBoxShadow; -/** @type {string} */ CSSProperties.prototype.WebkitBoxSizing; -/** @type {string} */ CSSProperties.prototype.WebkitColorCorrection; -/** @type {string} */ CSSProperties.prototype.WebkitColumnAxis; -/** @type {string} */ CSSProperties.prototype.WebkitColumnBreakAfter; -/** @type {string} */ CSSProperties.prototype.WebkitColumnBreakBefore; -/** @type {string} */ CSSProperties.prototype.WebkitColumnBreakInside; -/** @type {string} */ CSSProperties.prototype.WebkitColumnCount; -/** @type {string} */ CSSProperties.prototype.WebkitColumnGap; -/** @type {string} */ CSSProperties.prototype.WebkitColumnProgression; -/** @type {string} */ CSSProperties.prototype.WebkitColumnRule; -/** @type {string} */ CSSProperties.prototype.WebkitColumnRuleColor; -/** @type {string} */ CSSProperties.prototype.WebkitColumnRuleStyle; -/** @type {string} */ CSSProperties.prototype.WebkitColumnRuleWidth; -/** @type {string} */ CSSProperties.prototype.WebkitColumns; -/** @type {string} */ CSSProperties.prototype.WebkitColumnSpan; -/** @type {string} */ CSSProperties.prototype.WebkitColumnWidth; -/** @type {string} */ CSSProperties.prototype.WebkitDashboardRegion; -/** @type {string} */ CSSProperties.prototype.WebkitFilter; -/** @type {string} */ CSSProperties.prototype.WebkitFlex; -/** @type {string} */ CSSProperties.prototype.WebkitFlexBasis; -/** @type {string} */ CSSProperties.prototype.WebkitFlexDirection; -/** @type {string} */ CSSProperties.prototype.WebkitFlexFlow; -/** @type {string} */ CSSProperties.prototype.WebkitFlexGrow; -/** @type {string} */ CSSProperties.prototype.WebkitFlexShrink; -/** @type {string} */ CSSProperties.prototype.WebkitFlexWrap; -/** @type {string} */ CSSProperties.prototype.WebkitFlowFrom; -/** @type {string} */ CSSProperties.prototype.WebkitFlowInto; -/** @type {string} */ CSSProperties.prototype.WebkitFontSizeDelta; -/** @type {string} */ CSSProperties.prototype.WebkitFontSmoothing; -/** @type {string} */ CSSProperties.prototype.WebkitGridColumn; -/** @type {string} */ CSSProperties.prototype.WebkitGridColumns; -/** @type {string} */ CSSProperties.prototype.WebkitGridRow; -/** @type {string} */ CSSProperties.prototype.WebkitGridRows; -/** @type {string} */ CSSProperties.prototype.WebkitHighlight; -/** @type {string} */ CSSProperties.prototype.WebkitHyphenateCharacter; -/** @type {string} */ CSSProperties.prototype.WebkitHyphenateLimitAfter; -/** @type {string} */ CSSProperties.prototype.WebkitHyphenateLimitBefore; -/** @type {string} */ CSSProperties.prototype.WebkitHyphenateLimitLines; -/** @type {string} */ CSSProperties.prototype.WebkitHyphens; -/** @type {string} */ CSSProperties.prototype.WebkitJustifyContent; -/** @type {string} */ CSSProperties.prototype.WebkitLineAlign; -/** @type {string} */ CSSProperties.prototype.WebkitLineBoxContain; -/** @type {string} */ CSSProperties.prototype.WebkitLineBreak; -/** @type {string} */ CSSProperties.prototype.WebkitLineClamp; -/** @type {string} */ CSSProperties.prototype.WebkitLineGrid; -/** @type {string} */ CSSProperties.prototype.WebkitLineSnap; -/** @type {string} */ CSSProperties.prototype.WebkitLocale; -/** @type {string} */ CSSProperties.prototype.WebkitLogicalHeight; -/** @type {string} */ CSSProperties.prototype.WebkitLogicalWidth; -/** @type {string} */ CSSProperties.prototype.WebkitMarginAfter; -/** @type {string} */ CSSProperties.prototype.WebkitMarginAfterCollapse; -/** @type {string} */ CSSProperties.prototype.WebkitMarginBefore; -/** @type {string} */ CSSProperties.prototype.WebkitMarginBeforeCollapse; -/** @type {string} */ CSSProperties.prototype.WebkitMarginBottomCollapse; -/** @type {string} */ CSSProperties.prototype.WebkitMarginCollapse; -/** @type {string} */ CSSProperties.prototype.WebkitMarginEnd; -/** @type {string} */ CSSProperties.prototype.WebkitMarginStart; -/** @type {string} */ CSSProperties.prototype.WebkitMarginTopCollapse; -/** @type {string} */ CSSProperties.prototype.WebkitMarquee; -/** @type {string} */ CSSProperties.prototype.WebkitMarqueeDirection; -/** @type {string} */ CSSProperties.prototype.WebkitMarqueeIncrement; -/** @type {string} */ CSSProperties.prototype.WebkitMarqueeRepetition; -/** @type {string} */ CSSProperties.prototype.WebkitMarqueeSpeed; -/** @type {string} */ CSSProperties.prototype.WebkitMarqueeStyle; -/** @type {string} */ CSSProperties.prototype.WebkitMask; -/** @type {string} */ CSSProperties.prototype.WebkitMaskAttachment; -/** @type {string} */ CSSProperties.prototype.WebkitMaskBoxImage; -/** @type {string} */ CSSProperties.prototype.WebkitMaskBoxImageOutset; -/** @type {string} */ CSSProperties.prototype.WebkitMaskBoxImageRepeat; -/** @type {string} */ CSSProperties.prototype.WebkitMaskBoxImageSlice; -/** @type {string} */ CSSProperties.prototype.WebkitMaskBoxImageSource; -/** @type {string} */ CSSProperties.prototype.WebkitMaskBoxImageWidth; -/** @type {string} */ CSSProperties.prototype.WebkitMaskClip; -/** @type {string} */ CSSProperties.prototype.WebkitMaskComposite; -/** @type {string} */ CSSProperties.prototype.WebkitMaskImage; -/** @type {string} */ CSSProperties.prototype.WebkitMaskOrigin; -/** @type {string} */ CSSProperties.prototype.WebkitMaskPosition; -/** @type {string} */ CSSProperties.prototype.WebkitMaskPositionX; -/** @type {string} */ CSSProperties.prototype.WebkitMaskPositionY; -/** @type {string} */ CSSProperties.prototype.WebkitMaskRepeat; -/** @type {string} */ CSSProperties.prototype.WebkitMaskRepeatX; -/** @type {string} */ CSSProperties.prototype.WebkitMaskRepeatY; -/** @type {string} */ CSSProperties.prototype.WebkitMaskSize; -/** @type {string} */ -CSSProperties.prototype.WebkitMatchNearestMailBlockquoteColor; -/** @type {string} */ CSSProperties.prototype.WebkitMaxLogicalHeight; -/** @type {string} */ CSSProperties.prototype.WebkitMaxLogicalWidth; -/** @type {string} */ CSSProperties.prototype.WebkitMinLogicalHeight; -/** @type {string} */ CSSProperties.prototype.WebkitMinLogicalWidth; -/** @type {string} */ CSSProperties.prototype.WebkitNbspMode; -/** @type {string} */ CSSProperties.prototype.WebkitOrder; -/** @type {string} */ CSSProperties.prototype.WebkitOverflowScrolling; -/** @type {string} */ CSSProperties.prototype.WebkitPaddingAfter; -/** @type {string} */ CSSProperties.prototype.WebkitPaddingBefore; -/** @type {string} */ CSSProperties.prototype.WebkitPaddingEnd; -/** @type {string} */ CSSProperties.prototype.WebkitPaddingStart; -/** @type {string} */ CSSProperties.prototype.WebkitPerspective; -/** @type {string} */ CSSProperties.prototype.WebkitPerspectiveOrigin; -/** @type {string} */ CSSProperties.prototype.WebkitPerspectiveOriginX; -/** @type {string} */ CSSProperties.prototype.WebkitPerspectiveOriginY; -/** @type {string} */ CSSProperties.prototype.WebkitPrintColorAdjust; -/** @type {string} */ CSSProperties.prototype.WebkitRegionBreakAfter; -/** @type {string} */ CSSProperties.prototype.WebkitRegionBreakBefore; -/** @type {string} */ CSSProperties.prototype.WebkitRegionBreakInside; -/** @type {string} */ CSSProperties.prototype.WebkitRegionOverflow; -/** @type {string} */ CSSProperties.prototype.WebkitRtlOrdering; -/** @type {string} */ CSSProperties.prototype.WebkitRubyPosition; -/** @type {string} */ CSSProperties.prototype.WebkitShapeInside; -/** @type {string} */ CSSProperties.prototype.WebkitShapeMargin; -/** @type {string} */ CSSProperties.prototype.WebkitShapeOutside; -/** @type {string} */ CSSProperties.prototype.WebkitShapePadding; -/** @type {string} */ CSSProperties.prototype.WebkitTapHighlightColor; -/** @type {string} */ CSSProperties.prototype.WebkitTextAlignLast; -/** @type {string} */ CSSProperties.prototype.WebkitTextCombine; -/** @type {string} */ CSSProperties.prototype.WebkitTextDecorationLine; -/** @type {string} */ CSSProperties.prototype.WebkitTextDecorationsInEffect; -/** @type {string} */ CSSProperties.prototype.WebkitTextDecorationStyle; -/** @type {string} */ CSSProperties.prototype.WebkitTextEmphasis; -/** @type {string} */ CSSProperties.prototype.WebkitTextEmphasisColor; -/** @type {string} */ CSSProperties.prototype.WebkitTextEmphasisPosition; -/** @type {string} */ CSSProperties.prototype.WebkitTextEmphasisStyle; -/** @type {string} */ CSSProperties.prototype.WebkitTextFillColor; -/** @type {string} */ CSSProperties.prototype.WebkitTextOrientation; -/** @type {string} */ CSSProperties.prototype.WebkitTextSecurity; -/** @type {string} */ CSSProperties.prototype.WebkitTextSizeAdjust; -/** @type {string} */ CSSProperties.prototype.WebkitTextStroke; -/** @type {string} */ CSSProperties.prototype.WebkitTextStrokeColor; -/** @type {string} */ CSSProperties.prototype.WebkitTextStrokeWidth; -/** @type {string} */ CSSProperties.prototype.WebkitTransform; -/** @type {string} */ CSSProperties.prototype.WebkitTransformOrigin; -/** @type {string} */ CSSProperties.prototype.WebkitTransformOriginX; -/** @type {string} */ CSSProperties.prototype.WebkitTransformOriginY; -/** @type {string} */ CSSProperties.prototype.WebkitTransformOriginZ; -/** @type {string} */ CSSProperties.prototype.WebkitTransformStyle; -/** @type {string} */ CSSProperties.prototype.WebkitTransition; -/** @type {string} */ CSSProperties.prototype.WebkitTransitionDelay; -/** @type {string} */ CSSProperties.prototype.WebkitTransitionDuration; -/** @type {string} */ CSSProperties.prototype.WebkitTransitionProperty; -/** @type {string} */ CSSProperties.prototype.WebkitTransitionRepeatCount; -/** @type {string} */ CSSProperties.prototype.WebkitTransitionTimingFunction; -/** @type {string} */ CSSProperties.prototype.WebkitUserDrag; -/** @type {string} */ CSSProperties.prototype.WebkitUserModify; -/** @type {string} */ CSSProperties.prototype.WebkitUserSelect; -/** @type {string} */ CSSProperties.prototype.WebkitWrap; -/** @type {string} */ CSSProperties.prototype.WebkitWrapFlow; -/** @type {string} */ CSSProperties.prototype.WebkitWrapThrough; -/** @type {string} */ CSSProperties.prototype.WebkitWritingMode; - -// WebKit also adds bindings for the lowercase versions of these properties. -// The uppercase version is preferred. - -/** @type {string} */ CSSProperties.prototype.webkitAlignContent; -/** @type {string} */ CSSProperties.prototype.webkitAlignItems; -/** @type {string} */ CSSProperties.prototype.webkitAlignSelf; -/** @type {string} */ CSSProperties.prototype.webkitAnimation; -/** @type {string} */ CSSProperties.prototype.webkitAnimationDelay; -/** @type {string} */ CSSProperties.prototype.webkitAnimationDirection; -/** @type {string} */ CSSProperties.prototype.webkitAnimationDuration; -/** @type {string} */ CSSProperties.prototype.webkitAnimationFillMode; -/** @type {string} */ CSSProperties.prototype.webkitAnimationIterationCount; -/** @type {string} */ CSSProperties.prototype.webkitAnimationName; -/** @type {string} */ CSSProperties.prototype.webkitAnimationPlayState; -/** @type {string} */ CSSProperties.prototype.webkitAnimationTimingFunction; -/** @type {string} */ CSSProperties.prototype.webkitAppearance; -/** @type {string} */ CSSProperties.prototype.webkitAppRegion; -/** @type {string} */ CSSProperties.prototype.webkitAspectRatio; -/** @type {string} */ CSSProperties.prototype.webkitBackfaceVisibility; -/** @type {string} */ CSSProperties.prototype.webkitBackgroundClip; -/** @type {string} */ CSSProperties.prototype.webkitBackgroundComposite; -/** @type {string} */ CSSProperties.prototype.webkitBackgroundOrigin; -/** @type {string} */ CSSProperties.prototype.webkitBackgroundSize; -/** @type {string} */ CSSProperties.prototype.webkitBinding; -/** @type {string} */ CSSProperties.prototype.webkitBlendMode; -/** @type {string} */ CSSProperties.prototype.webkitBorderAfter; -/** @type {string} */ CSSProperties.prototype.webkitBorderAfterColor; -/** @type {string} */ CSSProperties.prototype.webkitBorderAfterStyle; -/** @type {string} */ CSSProperties.prototype.webkitBorderAfterWidth; -/** @type {string} */ CSSProperties.prototype.webkitBorderBefore; -/** @type {string} */ CSSProperties.prototype.webkitBorderBeforeColor; -/** @type {string} */ CSSProperties.prototype.webkitBorderBeforeStyle; -/** @type {string} */ CSSProperties.prototype.webkitBorderBeforeWidth; -/** @type {string} */ CSSProperties.prototype.webkitBorderBottomLeftRadius; -/** @type {string} */ CSSProperties.prototype.webkitBorderBottomRightRadius; -/** @type {string} */ CSSProperties.prototype.webkitBorderEnd; -/** @type {string} */ CSSProperties.prototype.webkitBorderEndColor; -/** @type {string} */ CSSProperties.prototype.webkitBorderEndStyle; -/** @type {string} */ CSSProperties.prototype.webkitBorderEndWidth; -/** @type {string} */ CSSProperties.prototype.webkitBorderFit; -/** @type {string} */ CSSProperties.prototype.webkitBorderHorizontalSpacing; -/** @type {string} */ CSSProperties.prototype.webkitBorderImage; -/** @type {string} */ CSSProperties.prototype.webkitBorderRadius; -/** @type {string} */ CSSProperties.prototype.webkitBorderStart; -/** @type {string} */ CSSProperties.prototype.webkitBorderStartColor; -/** @type {string} */ CSSProperties.prototype.webkitBorderStartStyle; -/** @type {string} */ CSSProperties.prototype.webkitBorderStartWidth; -/** @type {string} */ CSSProperties.prototype.webkitBorderTopLeftRadius; -/** @type {string} */ CSSProperties.prototype.webkitBorderTopRightRadius; -/** @type {string} */ CSSProperties.prototype.webkitBorderVerticalSpacing; -/** @type {string} */ CSSProperties.prototype.webkitBoxAlign; -/** @type {string} */ CSSProperties.prototype.webkitBoxDecorationBreak; -/** @type {string} */ CSSProperties.prototype.webkitBoxDirection; -/** @type {string} */ CSSProperties.prototype.webkitBoxFlex; -/** @type {string} */ CSSProperties.prototype.webkitBoxFlexGroup; -/** @type {string} */ CSSProperties.prototype.webkitBoxLines; -/** @type {string} */ CSSProperties.prototype.webkitBoxOrdinalGroup; -/** @type {string} */ CSSProperties.prototype.webkitBoxOrient; -/** @type {string} */ CSSProperties.prototype.webkitBoxPack; -/** @type {string} */ CSSProperties.prototype.webkitBoxReflect; -/** @type {string} */ CSSProperties.prototype.webkitBoxShadow; -/** @type {string} */ CSSProperties.prototype.webkitBoxSizing; -/** @type {string} */ CSSProperties.prototype.webkitColorCorrection; -/** @type {string} */ CSSProperties.prototype.webkitColumnAxis; -/** @type {string} */ CSSProperties.prototype.webkitColumnBreakAfter; -/** @type {string} */ CSSProperties.prototype.webkitColumnBreakBefore; -/** @type {string} */ CSSProperties.prototype.webkitColumnBreakInside; -/** @type {string} */ CSSProperties.prototype.webkitColumnCount; -/** @type {string} */ CSSProperties.prototype.webkitColumnGap; -/** @type {string} */ CSSProperties.prototype.webkitColumnProgression; -/** @type {string} */ CSSProperties.prototype.webkitColumnRule; -/** @type {string} */ CSSProperties.prototype.webkitColumnRuleColor; -/** @type {string} */ CSSProperties.prototype.webkitColumnRuleStyle; -/** @type {string} */ CSSProperties.prototype.webkitColumnRuleWidth; -/** @type {string} */ CSSProperties.prototype.webkitColumns; -/** @type {string} */ CSSProperties.prototype.webkitColumnSpan; -/** @type {string} */ CSSProperties.prototype.webkitColumnWidth; -/** @type {string} */ CSSProperties.prototype.webkitDashboardRegion; -/** @type {string} */ CSSProperties.prototype.webkitFilter; -/** @type {string} */ CSSProperties.prototype.webkitFlex; -/** @type {string} */ CSSProperties.prototype.webkitFlexBasis; -/** @type {string} */ CSSProperties.prototype.webkitFlexDirection; -/** @type {string} */ CSSProperties.prototype.webkitFlexFlow; -/** @type {string} */ CSSProperties.prototype.webkitFlexGrow; -/** @type {string} */ CSSProperties.prototype.webkitFlexShrink; -/** @type {string} */ CSSProperties.prototype.webkitFlexWrap; -/** @type {string} */ CSSProperties.prototype.webkitFlowFrom; -/** @type {string} */ CSSProperties.prototype.webkitFlowInto; -/** @type {string} */ CSSProperties.prototype.webkitFontSizeDelta; -/** @type {string} */ CSSProperties.prototype.webkitFontSmoothing; -/** @type {string} */ CSSProperties.prototype.webkitGridColumn; -/** @type {string} */ CSSProperties.prototype.webkitGridColumns; -/** @type {string} */ CSSProperties.prototype.webkitGridRow; -/** @type {string} */ CSSProperties.prototype.webkitGridRows; -/** @type {string} */ CSSProperties.prototype.webkitHighlight; -/** @type {string} */ CSSProperties.prototype.webkitHyphenateCharacter; -/** @type {string} */ CSSProperties.prototype.webkitHyphenateLimitAfter; -/** @type {string} */ CSSProperties.prototype.webkitHyphenateLimitBefore; -/** @type {string} */ CSSProperties.prototype.webkitHyphenateLimitLines; -/** @type {string} */ CSSProperties.prototype.webkitHyphens; -/** @type {string} */ CSSProperties.prototype.webkitJustifyContent; -/** @type {string} */ CSSProperties.prototype.webkitLineAlign; -/** @type {string} */ CSSProperties.prototype.webkitLineBoxContain; -/** @type {string} */ CSSProperties.prototype.webkitLineBreak; -/** @type {string} */ CSSProperties.prototype.webkitLineClamp; -/** @type {string} */ CSSProperties.prototype.webkitLineGrid; -/** @type {string} */ CSSProperties.prototype.webkitLineSnap; -/** @type {string} */ CSSProperties.prototype.webkitLocale; -/** @type {string} */ CSSProperties.prototype.webkitLogicalHeight; -/** @type {string} */ CSSProperties.prototype.webkitLogicalWidth; -/** @type {string} */ CSSProperties.prototype.webkitMarginAfter; -/** @type {string} */ CSSProperties.prototype.webkitMarginAfterCollapse; -/** @type {string} */ CSSProperties.prototype.webkitMarginBefore; -/** @type {string} */ CSSProperties.prototype.webkitMarginBeforeCollapse; -/** @type {string} */ CSSProperties.prototype.webkitMarginBottomCollapse; -/** @type {string} */ CSSProperties.prototype.webkitMarginCollapse; -/** @type {string} */ CSSProperties.prototype.webkitMarginEnd; -/** @type {string} */ CSSProperties.prototype.webkitMarginStart; -/** @type {string} */ CSSProperties.prototype.webkitMarginTopCollapse; -/** @type {string} */ CSSProperties.prototype.webkitMarquee; -/** @type {string} */ CSSProperties.prototype.webkitMarqueeDirection; -/** @type {string} */ CSSProperties.prototype.webkitMarqueeIncrement; -/** @type {string} */ CSSProperties.prototype.webkitMarqueeRepetition; -/** @type {string} */ CSSProperties.prototype.webkitMarqueeSpeed; -/** @type {string} */ CSSProperties.prototype.webkitMarqueeStyle; -/** @type {string} */ CSSProperties.prototype.webkitMask; -/** @type {string} */ CSSProperties.prototype.webkitMaskAttachment; -/** @type {string} */ CSSProperties.prototype.webkitMaskBoxImage; -/** @type {string} */ CSSProperties.prototype.webkitMaskBoxImageOutset; -/** @type {string} */ CSSProperties.prototype.webkitMaskBoxImageRepeat; -/** @type {string} */ CSSProperties.prototype.webkitMaskBoxImageSlice; -/** @type {string} */ CSSProperties.prototype.webkitMaskBoxImageSource; -/** @type {string} */ CSSProperties.prototype.webkitMaskBoxImageWidth; -/** @type {string} */ CSSProperties.prototype.webkitMaskClip; -/** @type {string} */ CSSProperties.prototype.webkitMaskComposite; -/** @type {string} */ CSSProperties.prototype.webkitMaskImage; -/** @type {string} */ CSSProperties.prototype.webkitMaskOrigin; -/** @type {string} */ CSSProperties.prototype.webkitMaskPosition; -/** @type {string} */ CSSProperties.prototype.webkitMaskPositionX; -/** @type {string} */ CSSProperties.prototype.webkitMaskPositionY; -/** @type {string} */ CSSProperties.prototype.webkitMaskRepeat; -/** @type {string} */ CSSProperties.prototype.webkitMaskRepeatX; -/** @type {string} */ CSSProperties.prototype.webkitMaskRepeatY; -/** @type {string} */ CSSProperties.prototype.webkitMaskSize; -/** @type {string} */ -CSSProperties.prototype.webkitMatchNearestMailBlockquoteColor; -/** @type {string} */ CSSProperties.prototype.webkitMaxLogicalHeight; -/** @type {string} */ CSSProperties.prototype.webkitMaxLogicalWidth; -/** @type {string} */ CSSProperties.prototype.webkitMinLogicalHeight; -/** @type {string} */ CSSProperties.prototype.webkitMinLogicalWidth; -/** @type {string} */ CSSProperties.prototype.webkitNbspMode; -/** @type {string} */ CSSProperties.prototype.webkitOrder; -/** @type {string} */ CSSProperties.prototype.webkitOverflowScrolling; -/** @type {string} */ CSSProperties.prototype.webkitPaddingAfter; -/** @type {string} */ CSSProperties.prototype.webkitPaddingBefore; -/** @type {string} */ CSSProperties.prototype.webkitPaddingEnd; -/** @type {string} */ CSSProperties.prototype.webkitPaddingStart; -/** @type {string} */ CSSProperties.prototype.webkitPerspective; -/** @type {string} */ CSSProperties.prototype.webkitPerspectiveOrigin; -/** @type {string} */ CSSProperties.prototype.webkitPerspectiveOriginX; -/** @type {string} */ CSSProperties.prototype.webkitPerspectiveOriginY; -/** @type {string} */ CSSProperties.prototype.webkitPrintColorAdjust; -/** @type {string} */ CSSProperties.prototype.webkitRegionBreakAfter; -/** @type {string} */ CSSProperties.prototype.webkitRegionBreakBefore; -/** @type {string} */ CSSProperties.prototype.webkitRegionBreakInside; -/** @type {string} */ CSSProperties.prototype.webkitRegionOverflow; -/** @type {string} */ CSSProperties.prototype.webkitRtlOrdering; -/** @type {string} */ CSSProperties.prototype.webkitRubyPosition; -/** @type {string} */ CSSProperties.prototype.webkitShapeInside; -/** @type {string} */ CSSProperties.prototype.webkitShapeMargin; -/** @type {string} */ CSSProperties.prototype.webkitShapeOutside; -/** @type {string} */ CSSProperties.prototype.webkitShapePadding; -/** @type {string} */ CSSProperties.prototype.webkitTapHighlightColor; -/** @type {string} */ CSSProperties.prototype.webkitTextAlignLast; -/** @type {string} */ CSSProperties.prototype.webkitTextCombine; -/** @type {string} */ CSSProperties.prototype.webkitTextDecorationLine; -/** @type {string} */ CSSProperties.prototype.webkitTextDecorationsInEffect; -/** @type {string} */ CSSProperties.prototype.webkitTextDecorationStyle; -/** @type {string} */ CSSProperties.prototype.webkitTextEmphasis; -/** @type {string} */ CSSProperties.prototype.webkitTextEmphasisColor; -/** @type {string} */ CSSProperties.prototype.webkitTextEmphasisPosition; -/** @type {string} */ CSSProperties.prototype.webkitTextEmphasisStyle; -/** @type {string} */ CSSProperties.prototype.webkitTextFillColor; -/** @type {string} */ CSSProperties.prototype.webkitTextOrientation; -/** @type {string} */ CSSProperties.prototype.webkitTextSecurity; -/** @type {string} */ CSSProperties.prototype.webkitTextSizeAdjust; -/** @type {string} */ CSSProperties.prototype.webkitTextStroke; -/** @type {string} */ CSSProperties.prototype.webkitTextStrokeColor; -/** @type {string} */ CSSProperties.prototype.webkitTextStrokeWidth; -/** @type {string} */ CSSProperties.prototype.webkitTransform; -/** @type {string} */ CSSProperties.prototype.webkitTransformOrigin; -/** @type {string} */ CSSProperties.prototype.webkitTransformOriginX; -/** @type {string} */ CSSProperties.prototype.webkitTransformOriginY; -/** @type {string} */ CSSProperties.prototype.webkitTransformOriginZ; -/** @type {string} */ CSSProperties.prototype.webkitTransformStyle; -/** @type {string} */ CSSProperties.prototype.webkitTransition; -/** @type {string} */ CSSProperties.prototype.webkitTransitionDelay; -/** @type {string} */ CSSProperties.prototype.webkitTransitionDuration; -/** @type {string} */ CSSProperties.prototype.webkitTransitionProperty; -/** @type {string} */ CSSProperties.prototype.webkitTransitionRepeatCount; -/** @type {string} */ CSSProperties.prototype.webkitTransitionTimingFunction; -/** @type {string} */ CSSProperties.prototype.webkitUserDrag; -/** @type {string} */ CSSProperties.prototype.webkitUserModify; -/** @type {string} */ CSSProperties.prototype.webkitUserSelect; -/** @type {string} */ CSSProperties.prototype.webkitWrap; -/** @type {string} */ CSSProperties.prototype.webkitWrapFlow; -/** @type {string} */ CSSProperties.prototype.webkitWrapThrough; -/** @type {string} */ CSSProperties.prototype.webkitWritingMode; - -/** - * @constructor - * @param {number} x - * @param {number} y - */ -function WebKitPoint(x, y) {} - -/** @type {number} */ -WebKitPoint.prototype.x; - -/** @type {number} */ -WebKitPoint.prototype.y; diff --git a/dom/html/HTMLDivElement.cpp b/dom/html/HTMLDivElement.cpp index b56187e299..d5b587241b 100644 --- a/dom/html/HTMLDivElement.cpp +++ b/dom/html/HTMLDivElement.cpp @@ -34,20 +34,6 @@ HTMLDivElement::ParseAttribute(int32_t aNamespaceID, nsAttrValue& aResult) { if (aNamespaceID == kNameSpaceID_None) { - if (mNodeInfo->Equals(nsGkAtoms::marquee)) { - if ((aAttribute == nsGkAtoms::width) || - (aAttribute == nsGkAtoms::height)) { - return aResult.ParseSpecialIntValue(aValue); - } - if (aAttribute == nsGkAtoms::bgcolor) { - return aResult.ParseColor(aValue); - } - if ((aAttribute == nsGkAtoms::hspace) || - (aAttribute == nsGkAtoms::vspace)) { - return aResult.ParseIntWithBounds(aValue, 0); - } - } - if (mNodeInfo->Equals(nsGkAtoms::div) && aAttribute == nsGkAtoms::align) { return ParseDivAlignValue(aValue, aResult); @@ -66,15 +52,6 @@ HTMLDivElement::MapAttributesIntoRule(const nsMappedAttributes* aAttributes, nsGenericHTMLElement::MapCommonAttributesInto(aAttributes, aData); } -static void -MapMarqueeAttributesIntoRule(const nsMappedAttributes* aAttributes, nsRuleData* aData) -{ - nsGenericHTMLElement::MapImageMarginAttributeInto(aAttributes, aData); - nsGenericHTMLElement::MapImageSizeAttributesInto(aAttributes, aData); - nsGenericHTMLElement::MapCommonAttributesInto(aAttributes, aData); - nsGenericHTMLElement::MapBGColorInto(aAttributes, aData); -} - NS_IMETHODIMP_(bool) HTMLDivElement::IsAttributeMapped(const nsIAtom* aAttribute) const { @@ -85,14 +62,6 @@ HTMLDivElement::IsAttributeMapped(const nsIAtom* aAttribute) const }; return FindAttributeDependence(aAttribute, map); } - if (mNodeInfo->Equals(nsGkAtoms::marquee)) { - static const MappedAttributeEntry* const map[] = { - sImageMarginSizeAttributeMap, - sBackgroundColorAttributeMap, - sCommonAttributeMap - }; - return FindAttributeDependence(aAttribute, map); - } return nsGenericHTMLElement::IsAttributeMapped(aAttribute); } @@ -103,9 +72,6 @@ HTMLDivElement::GetAttributeMappingFunction() const if (mNodeInfo->Equals(nsGkAtoms::div)) { return &MapAttributesIntoRule; } - if (mNodeInfo->Equals(nsGkAtoms::marquee)) { - return &MapMarqueeAttributesIntoRule; - } return nsGenericHTMLElement::GetAttributeMappingFunction(); } diff --git a/dom/html/test/test_bug389797.html b/dom/html/test/test_bug389797.html index 884348b126..373528c71e 100644 --- a/dom/html/test/test_bug389797.html +++ b/dom/html/test/test_bug389797.html @@ -168,7 +168,6 @@ HTML_TAG("listing", "Pre"); HTML_TAG("main", ""); HTML_TAG("map", "Map"); HTML_TAG("mark", ""); -HTML_TAG("marquee", "Div"); HTML_TAG("menu", "Menu"); HTML_TAG("meta", "Meta"); HTML_TAG("meter", "Meter"); diff --git a/dom/html/test/test_documentAll.html b/dom/html/test/test_documentAll.html index ec877acec1..9db77d2fe4 100644 --- a/dom/html/test/test_documentAll.html +++ b/dom/html/test/test_documentAll.html @@ -117,7 +117,7 @@ var elementNames = 'input','ins','isindex','kbd','keygen','label','li','legend','link','menu', 'multicol','noscript','noframes','object','spacer','table','td','td','th', 'thead','tfoot','tr','textarea','select','option','spacer','param', - 'marquee','hr','title','hx','tt','u','ul','var','wbr','sub','sup','cite', + 'hr','title','hx','tt','u','ul','var','wbr','sub','sup','cite', 'code','q','nobr','ol','p','pre','s','samp','small','body','html','map', 'bdo','legend','listing','style','script','tbody','caption','meta', 'optgroup','button','span','strike','strong','td'].sort(); diff --git a/dom/security/test/csp/file_bug1312272.html b/dom/security/test/csp/file_bug1312272.html deleted file mode 100644 index 18e0e5589e..0000000000 --- a/dom/security/test/csp/file_bug1312272.html +++ /dev/null @@ -1,13 +0,0 @@ -<!DOCTYPE HTML> -<!-- Any copyright is dedicated to the Public Domain. - http://creativecommons.org/publicdomain/zero/1.0/ --> -<html> -<head> - <meta charset="utf-8"> - <title>marquee inline script tests for Bug 1312272</title> -</head> -<body> -<marquee id="m" onstart="parent.postMessage('csp-violation-marquee-onstart', '*')">bug 1312272</marquee> -<script src="file_bug1312272.js"></script> -</body> -</html> diff --git a/dom/security/test/csp/file_strict_dynamic_script_events_xbl.html b/dom/security/test/csp/file_strict_dynamic_script_events_xbl.html deleted file mode 100644 index 701ef32269..0000000000 --- a/dom/security/test/csp/file_strict_dynamic_script_events_xbl.html +++ /dev/null @@ -1,14 +0,0 @@ -<!DOCTYPE HTML> -<html> -<head> - <title>Bug 1316826 - 'strict-dynamic' blocking DOM event handlers</title> -</head> -<body> -<div id="testdiv">blocked</div> - -<marquee onstart='document.getElementById("testdiv").innerHTML = "allowed";'> - Bug 1316826 -</marquee> - -</body> -</html> diff --git a/dom/security/test/csp/test_strict_dynamic.html b/dom/security/test/csp/test_strict_dynamic.html index 00e75143f8..8f1b53f312 100644 --- a/dom/security/test/csp/test_strict_dynamic.html +++ b/dom/security/test/csp/test_strict_dynamic.html @@ -79,13 +79,6 @@ var tests = [ policy: "script-src 'strict-dynamic' 'nonce-foo'" }, { - // marquee is a special snowflake. Extra test for xbl things. - desc: "strict-dynamic with DOM events should be blocked (XBL)", - result: "blocked", - file: "file_strict_dynamic_script_events_xbl.html", - policy: "script-src 'strict-dynamic' 'nonce-foo'" - }, - { desc: "strict-dynamic with JS URLs should be blocked", result: "blocked", file: "file_strict_dynamic_js_url.html", diff --git a/dom/tests/browser/browser_bug396843.js b/dom/tests/browser/browser_bug396843.js index 84d7e3b833..a2281d1b86 100644 --- a/dom/tests/browser/browser_bug396843.js +++ b/dom/tests/browser/browser_bug396843.js @@ -72,7 +72,6 @@ function testInDocument(doc, documentID) { HTML_TAG("link", "Link") HTML_TAG("listing", "Span") HTML_TAG("map", "Map") - HTML_TAG("marquee", "Div") HTML_TAG("menu", "Shared") HTML_TAG("meta", "Meta") HTML_TAG("multicol", "Unknown") diff --git a/dom/tests/mochitest/bugs/mochitest.ini b/dom/tests/mochitest/bugs/mochitest.ini index 3743c67822..6865ada88b 100644 --- a/dom/tests/mochitest/bugs/mochitest.ini +++ b/dom/tests/mochitest/bugs/mochitest.ini @@ -145,5 +145,4 @@ skip-if = toolkit == 'android' #Windows can't change size on Android skip-if = toolkit == 'android' [test_bug1022869.html] [test_bug1112040.html] -[test_bug1160342_marquee.html] [test_bug1171215.html] diff --git a/dom/tests/mochitest/bugs/test_bug1160342_marquee.html b/dom/tests/mochitest/bugs/test_bug1160342_marquee.html deleted file mode 100644 index 8da13478e1..0000000000 --- a/dom/tests/mochitest/bugs/test_bug1160342_marquee.html +++ /dev/null @@ -1,337 +0,0 @@ -<!DOCTYPE html> -<html> -<!-- -https://bugzilla.mozilla.org/show_bug.cgi?id=1160342 ---> -<head> - <title>Test for Bug 411103</title> - <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> - <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" /> -</head> -<body> -<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1160342">Mozilla Bug 1160342</a> -<p id="display"></p> -<div id="content"> -<marquee id="a" style="border: 1px solid black;">marquee</marquee> -</div> - -<pre id="test"> -<script class="testbody" type="text/javascript"> -/* The todos are cases where IE/Edge is throwing errors, but - for Mozilla it was decided to not do that for now */ - var x=document.getElementById('a'); - - SimpleTest.waitForExplicitFinish(); - - setTimeout(function() { - is(x.behavior, "scroll", "Wrong behavior value"); - x.setAttribute('behavior', 'alternate'); - is(x.behavior, "alternate", "Wrong behavior value"); - x.setAttribute('behavior', 'invalid'); - is(x.behavior, "scroll", "Wrong behavior value");; - x.setAttribute('behavior', 'Scroll'); - is(x.behavior, "scroll", "Wrong behavior value"); - x.setAttribute('behavior', 'Slide'); - is(x.behavior, "slide", "Wrong behavior value"); - x.setAttribute('behavior', ''); - is(x.behavior, "scroll", "Wrong behavior value"); - x.setAttribute('behavior', 'slide'); - x.removeAttribute('behavior'); - is(x.behavior, "scroll", "Wrong behavior value"); - is(x.getAttribute('behavior'), null, "Wrong behavior attribute"); - - x.behavior = 'alternate'; - is(x.behavior, "alternate", "Wrong behavior value"); - try { - x.behavior = 'invalid'; - todo_is(false, true, "marquee.behavior = 'invalid' should throw"); - } catch(e) { - ok(true, "Exception was raised"); - } - is(x.behavior, "alternate", "Wrong behavior value"); - is(x.getAttribute('behavior'), "alternate", "Wrong behavior attribute"); - x.behavior = 'Slide'; - is(x.behavior, "slide", "Wrong behavior value"); - is(x.getAttribute('behavior'), "slide", "Wrong behavior attribute"); - try { - x.behavior = 'invalid'; - todo_is(false, true, "marquee.behavior = 'invalid' should throw"); - } catch(e) { - ok(true, "Exception was raised"); - } - try { - x.behavior = null; - x.behavior = undefined; - todo_is(false, true, "marquee.behavior = 'invalid' should throw"); - } catch(e) { - ok(true, "Exception was raised"); - } - is(x.behavior, "slide", "Wrong behavior value"); - is(x.getAttribute('behavior'), "slide", "Wrong behavior attribute"); - // This doesn't work in Mozilla due to chrome XBL security issues - x.behavior = { toString: function _toString() { return "scroll"} } - is(x.behavior, x.getAttribute('behavior'), "Wrong behavior value"); - x.behavior = 'scroll'; - is(x.behavior, "scroll", "Wrong behavior value"); - - is(x.loop, -1, "Wrong loop value"); - x.setAttribute('loop', '1'); - is(x.loop, 1, "Wrong loop value"); - x.setAttribute('loop', 'invalid'); - is(x.loop, -1, "Wrong loop value"); - x.setAttribute('loop', ''); - is(x.loop, -1, "Wrong loop value"); - x.setAttribute('loop', '0'); - is(x.loop, -1, "Wrong loop value"); - x.setAttribute('loop', '1000'); - is(x.loop, 1000, "Wrong loop value"); - x.setAttribute('loop', '-0.123'); - is(x.loop, 1000, "Wrong loop value"); - x.setAttribute('loop', '-1.123'); - is(x.loop, -1, "Wrong loop value"); - x.setAttribute('loop', '-1'); - is(x.loop, -1, "Wrong loop value"); - x.setAttribute('loop', '1000'); - is(x.loop, 1000, "Wrong loop value"); - x.removeAttribute('loop'); - is(x.loop, -1, "Wrong loop value"); - is(x.getAttribute('loop'), null, "Wrong loop attribute"); - - x.loop = 1; - is(x.loop, 1, "Wrong loop value"); - is(x.getAttribute('loop'), "1", "Wrong loop attribute"); - try { - x.loop = -2; - todo_is(false, true, "marquee.loop = -2 should throw"); - } catch(e) { - ok(true, "Exception was raised"); - } - is(x.loop, 1, "Wrong loop value"); - is(x.getAttribute('loop'), "1", "Wrong loop attribute"); - try { - x.loop = 'invalid'; - todo_is(false, true, ".loop = 'invalid' should throw"); - } catch(e) { - ok(true, "Exception was raised"); - } - is(x.loop, 1, "Wrong loop value"); - is(x.getAttribute('loop'), "1", "Wrong loop attribute"); - try { - x.loop = null; - todo_is(false, true, "marquee.loop = null should throw"); - } catch(e) { - ok(true, "Exception was raised"); - } - is(x.loop, 1, "Wrong loop value"); - is(x.getAttribute('loop'), "1", "Wrong loop attribute"); - x.loop = -1; - is(x.loop, -1, "Wrong loop value"); - is(x.getAttribute('loop'), "-1", "Wrong loop attribute"); - x.loop = '100'; - is(x.loop, 100, "Wrong loop value"); - is(x.getAttribute('loop'), "100", "Wrong loop attribute"); - try { - x.loop = -0.123; - todo_is(false, true, "marquee.loop = null should throw"); - } catch(e) { - ok(true, "Exception was raised"); - } - is(x.loop, 100, "Wrong loop value"); - is(x.getAttribute('loop'), "100", "Wrong loop attribute"); - try { - x.loop = 0; - todo_is(false, true, "marquee.loop = null should throw"); - } catch(e) { - ok(true, "Exception was raised"); - } - is(x.loop, 100, "Wrong loop value"); - is(x.getAttribute('loop'), "100", "Wrong loop attribute"); - x.loop = -1.123; - is(x.loop, -1, "Wrong loop value"); - is(x.getAttribute('loop'), "-1", "Wrong loop attribute"); - - - is(x.scrollAmount, 6, "Wrong scrollAmount value"); - x.setAttribute('scrollAmount', '1'); - is(x.scrollAmount, 1, "Wrong scrollAmount value"); - x.setAttribute('scrollAmount', 'invalid'); - is(x.scrollAmount, 6, "Wrong scrollAmount value"); - x.setAttribute('scrollAmount', '1000'); - is(x.scrollAmount, 1000, "Wrong scrollAmount value"); - x.setAttribute('scrollAmount', '-1'); - is(x.scrollAmount, 1000, "Wrong scrollAmount value"); - x.setAttribute('scrollAmount', '999'); - is(x.scrollAmount, 999, "Wrong scrollAmount value"); - x.setAttribute('scrollAmount', ''); - is(x.scrollAmount, 6, "Wrong scrollAmount value"); - x.setAttribute('scrollAmount', '999'); - x.removeAttribute('scrollAmount'); - is(x.scrollAmount, 6, "Wrong scrollAmount value"); - is(x.getAttribute('scrollamount'), null, "Wrong scrollamount attribute"); - - x.scrollAmount = 1; - is(x.scrollAmount, 1, "Wrong scrollAmount value"); - is(x.getAttribute('scrollamount'), "1", "Wrong scrolldelay attribute"); - try { - x.scrollAmount = -2; - todo_is(false, true, "marquee.scrollAmount = -2 should throw"); - } catch(e) { - ok(true, "Exception was raised"); - } - is(x.scrollAmount, 1, "Wrong scrollAmount value"); - is(x.getAttribute('scrollamount'), "1", "Wrong scrolldelay attribute"); - x.scrollAmount = 'invalid'; - is(x.scrollAmount, 0, "Wrong scrollAmount value"); - is(x.getAttribute('scrollamount'), "0", "Wrong scrolldelay attribute"); - x.scrollAmount = 1; - x.scrollAmount = null; - is(x.scrollAmount, 0, "Wrong scrollAmount value"); - is(x.getAttribute('scrollamount'), "0", "Wrong scrolldelay attribute"); - x.scrollAmount = '2'; - is(x.scrollAmount, 2, "Wrong scrollAmount value"); - is(x.getAttribute('scrollamount'), "2", "Wrong scrolldelay attribute"); - - - is(x.scrollDelay, 85, "Wrong scrollDelay value"); - x.setAttribute('scrollDelay', '1'); - is(x.scrollDelay, 1, "Wrong scrollDelay value"); - x.setAttribute('scrollDelay', 'invalid'); - is(x.scrollDelay, 85, "Wrong scrollDelay value"); - x.setAttribute('scrollDelay', '70'); - is(x.scrollDelay, 70, "Wrong scrollDelay value"); - x.setAttribute('scrollDelay', '59'); - is(x.scrollDelay, 59, "Wrong scrollDelay value"); - x.setAttribute('scrollDelay', '1000'); - is(x.scrollDelay, 1000, "Wrong scrollDelay value"); - x.setAttribute('scrollDelay', '-1'); - is(x.scrollDelay, 1000, "Wrong scrollDelay value"); - x.setAttribute('scrollDelay', ''); - is(x.scrollDelay, 85, "Wrong scrollDelay value"); - x.setAttribute('scrollDelay', '1000'); - x.removeAttribute('scrollDelay'); - is(x.scrollDelay, 85, "Wrong scrollDelay value"); - is(x.getAttribute('scrolldelay'), null, "Wrong scrolldelay attribute"); - - x.scrollDelay = 100; - is(x.scrollDelay, 100, "Wrong scrollDelay value"); - is(x.getAttribute('scrolldelay'), "100", "Wrong scrolldelay attribute"); - try { - x.scrollDelay = -2; - todo_is(false, true, "marquee.scrollDelay = -2 should throw"); - } catch(e) { - ok(true, "Exception was raised"); - } - is(x.scrollDelay, 100, "Wrong scrollDelay value"); - is(x.getAttribute('scrolldelay'), "100", "Wrong scrolldelay attribute"); - try { - x.scrollDelay = 'invalid'; - todo_is(false, true, "marquee.scrollDelay = 'invalid' should throw"); - } catch(e) { - ok(true, "Exception was raised"); - } - is(x.scrollDelay, 100, "Wrong scrollDelay value"); - is(x.getAttribute('scrolldelay'), "100", "Wrong scrolldelay attribute"); - try { - x.scrollDelay = null; - todo_is(false, true, "marquee.scrollDelay = null should throw"); - } catch(e) { - ok(true, "Exception was raised"); - } - is(x.scrollDelay, 100, "Wrong scrollDelay value"); - is(x.getAttribute('scrolldelay'), "100", "Wrong scrolldelay attribute"); - try { - x.scrollDelay = -1; - todo_is(false, true, "marquee.scrollDelay = -1 should throw"); - } catch(e) { - ok(true, "Exception was raised"); - } - is(x.scrollDelay, 100, "Wrong scrollDelay value"); - is(x.getAttribute('scrolldelay'), "100", "Wrong scrolldelay attribute"); - x.scrollDelay = '50'; - is(x.scrollDelay, 50, "Wrong scrollDelay value"); - is(x.getAttribute('scrolldelay'), "50", "Wrong scrolldelay attribute"); - - - is(x.trueSpeed, false, "Wrong trueSpeed value"); - x.setAttribute('trueSpeed', '1'); - is(x.trueSpeed, true, "Wrong trueSpeed value"); - x.setAttribute('trueSpeed', 'false'); - is(x.trueSpeed, true, "Wrong trueSpeed value"); - x.setAttribute('trueSpeed', ''); - is(x.trueSpeed, true, "Wrong trueSpeed value"); - x.removeAttribute('trueSpeed'); - is(x.trueSpeed, false, "Wrong trueSpeed value"); - is(x.getAttribute('truespeed'), null, "Wrong truespeed attribute"); - - x.trueSpeed = 1; - is(x.trueSpeed, true, "Wrong trueSpeed value"); - is(x.getAttribute('truespeed'), "", "Wrong truespeed attribute"); - x.trueSpeed = -2; - is(x.trueSpeed, true, "Wrong trueSpeed value"); - is(x.getAttribute('truespeed'), "", "Wrong truespeed attribute"); - x.trueSpeed = null; - is(x.trueSpeed, false, "Wrong trueSpeed value"); - is(x.getAttribute('truespeed'), null, "Wrong truespeed attribute"); - x.trueSpeed = '100'; - is(x.trueSpeed, true, "Wrong trueSpeed value"); - is(x.getAttribute('truespeed'), "", "Wrong truespeed attribute"); - - - is(x.direction, "left", "Wrong direction value"); - x.setAttribute('direction', 'right'); - is(x.direction, "right", "Wrong direction value"); - x.setAttribute('direction', 'invalid'); - is(x.direction, "left", "Wrong direction value"); - x.setAttribute('direction', 'RIGHT'); - is(x.direction, "right", "Wrong direction value"); - x.setAttribute('direction', ''); - is(x.direction, "left", "Wrong direction value"); - x.setAttribute('direction', 'right'); - x.removeAttribute('direction'); - is(x.direction, "left", "Wrong direction value"); - is(x.getAttribute('direction'), null, "Wrong direction attribute"); - x.setAttribute('direction', 'up'); - is(x.direction, "up", "Wrong direction value"); - x.setAttribute('direction', 'down'); - is(x.direction, "down", "Wrong direction value"); - x.removeAttribute('direction'); - is(x.direction, "left", "Wrong direction value"); - is(x.getAttribute('direction'), null, "Wrong direction attribute"); - - x.direction = 'right'; - is(x.direction, "right", "Wrong direction value"); - is(x.getAttribute('direction'), "right", "Wrong direction attribute"); - x.direction = 'up'; - is(x.direction, "up", "Wrong direction value"); - is(x.getAttribute('direction'), "up", "Wrong direction attribute"); - x.direction = 'down'; - is(x.direction, "down", "Wrong direction value"); - is(x.getAttribute('direction'), "down", "Wrong direction attribute"); - try { - x.direction = 1; - todo_is(false, true, "marquee.direction = 1 should throw"); - } catch(e) { - ok(true, "Exception was raised"); - } - is(x.direction, "down", "Wrong direction value"); - is(x.getAttribute('direction'), "down", "Wrong direction attribute"); - try { - x.direction = null; - todo_is(false, true, "marquee.direction = null should throw"); - } catch(e) { - ok(true, "Exception was raised"); - } - is(x.direction, "down", "Wrong direction value"); - is(x.getAttribute('direction'), "down", "Wrong direction attribute"); - // This doesn't work in Mozilla due to chrome XBL security issues - x.direction = { toString: function _toString() { return "right"} } - is(x.direction, x.getAttribute('direction'), "Wrong direction value"); - x.direction = 'left'; - is(x.direction, "left", "Wrong direction value"); - SimpleTest.finish(); - }, 0); - -</script> -</pre> -</body> -</html> diff --git a/dom/tests/mochitest/bugs/test_bug396843.html b/dom/tests/mochitest/bugs/test_bug396843.html index 20dc530689..031843fd43 100644 --- a/dom/tests/mochitest/bugs/test_bug396843.html +++ b/dom/tests/mochitest/bugs/test_bug396843.html @@ -92,7 +92,6 @@ HTML_TAG("li", "LI") HTML_TAG("link", "Link") HTML_TAG("listing", "Span") HTML_TAG("map", "Map") -HTML_TAG("marquee", "Div") HTML_TAG("menu", "Shared") HTML_TAG("meta", "Meta") HTML_TAG("multicol", "Unknown") diff --git a/dom/tests/mochitest/webcomponents/htmlconstructor_builtin_tests.js b/dom/tests/mochitest/webcomponents/htmlconstructor_builtin_tests.js index dd65151482..0b04971e34 100644 --- a/dom/tests/mochitest/webcomponents/htmlconstructor_builtin_tests.js +++ b/dom/tests/mochitest/webcomponents/htmlconstructor_builtin_tests.js @@ -70,7 +70,6 @@ ['main', ''], ['map', 'Map'], ['mark', ''], - ['marquee', 'Div'], ['menu', 'Menu'], ['menuitem', 'MenuItem'], ['meta', 'Meta'], diff --git a/dom/xbl/crashtests/342954-1.xhtml b/dom/xbl/crashtests/342954-1.xhtml deleted file mode 100644 index dbaa153840..0000000000 --- a/dom/xbl/crashtests/342954-1.xhtml +++ /dev/null @@ -1,46 +0,0 @@ -<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xbl="http://www.mozilla.org/xbl"> - - -<head> - -<script> -<![CDATA[ - -function boo() -{ - s1 = document.getElementById("s1"); - marq = document.getElementById("marq"); - marqAnonymousSomething = document.getAnonymousNodes(marq)[0].childNodes[0]; - - removeNode(marqAnonymousSomething); - s1.appendChild(document.createElement("div")); -} - -function removeNode(q1) { q1.parentNode.removeChild(q1); } - -]]> -</script> - -<xbl:bindings id="marqueeBindings"> - <xbl:binding id="marquee-horizontal-12"> - <xbl:content> - <div> - <xbl:children/> - </div> - </xbl:content> - </xbl:binding> -</xbl:bindings> - -</head> - - -<body onload="boo()"> - -<span id="s1">Span</span> - -<div id="marq" style="-moz-binding: url('#marquee-horizontal-12');">Marquee</div> - -</body> - - -</html> diff --git a/dom/xbl/crashtests/342954-2-xbl.xml b/dom/xbl/crashtests/342954-2-xbl.xml deleted file mode 100644 index 3e73f1355a..0000000000 --- a/dom/xbl/crashtests/342954-2-xbl.xml +++ /dev/null @@ -1,19 +0,0 @@ -<?xml version="1.0"?> - -<bindings id="marqueeBindings" - xmlns="http://www.mozilla.org/xbl" - xmlns:html="http://www.w3.org/1999/xhtml" - xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" - xmlns:xbl="http://www.mozilla.org/xbl"> - - <binding id="marquee-horizontal-10"> - - <content> - <html:div> - <children/> - </html:div> - </content> - - </binding> - -</bindings> diff --git a/dom/xbl/crashtests/342954-2.xhtml b/dom/xbl/crashtests/342954-2.xhtml deleted file mode 100644 index 4a250e31c2..0000000000 --- a/dom/xbl/crashtests/342954-2.xhtml +++ /dev/null @@ -1,29 +0,0 @@ -<html xmlns="http://www.w3.org/1999/xhtml"> -<head> -<script> -<![CDATA[ - -function boo() -{ - s1 = document.getElementById("s1"); - marq = document.getElementById("marq"); - marqAnonymousSomething = document.getAnonymousNodes(marq)[0].childNodes[0]; - - removeNode(marqAnonymousSomething); - s1.appendChild(document.createElement("div")); -} - -function removeNode(q1) { q1.parentNode.removeChild(q1); } - -]]> -</script> -</head> - -<body onload="boo()"> - -<span id="s1">Span</span> - -<div id="marq" style="-moz-binding: url('342954-2-xbl.xml#marquee-horizontal-10');">Marquee</div> - -</body> -</html> diff --git a/dom/xbl/crashtests/477878-1.html b/dom/xbl/crashtests/477878-1.html deleted file mode 100644 index 17e4002b49..0000000000 --- a/dom/xbl/crashtests/477878-1.html +++ /dev/null @@ -1,4 +0,0 @@ -<html> -<head></head> -<body><iframe style="display:none" src="data:text/html,<marquee>Marquee</marquee>" onload="this.style.display = '';"></iframe></body> -</html> diff --git a/editor/libeditor/HTMLEditUtils.cpp b/editor/libeditor/HTMLEditUtils.cpp index aa0afda98c..0e95b7ce9d 100644 --- a/editor/libeditor/HTMLEditUtils.cpp +++ b/editor/libeditor/HTMLEditUtils.cpp @@ -686,7 +686,6 @@ static const ElementInfo kElements[eHTMLTag_userdefined] = { ELEM(main, true, true, GROUP_BLOCK, GROUP_FLOW_ELEMENT), ELEM(map, true, true, GROUP_SPECIAL, GROUP_BLOCK | GROUP_MAP_CONTENT), ELEM(mark, true, true, GROUP_PHRASE, GROUP_INLINE_ELEMENT), - ELEM(marquee, false, false, GROUP_NONE, GROUP_NONE), ELEM(menu, true, true, GROUP_BLOCK, GROUP_LI | GROUP_FLOW_ELEMENT), ELEM(menuitem, false, false, GROUP_NONE, GROUP_NONE), ELEM(meta, false, false, GROUP_HEAD_CONTENT, GROUP_NONE), diff --git a/layout/base/crashtests/265027-1.html b/layout/base/crashtests/265027-1.html deleted file mode 100644 index 9b455da41a..0000000000 --- a/layout/base/crashtests/265027-1.html +++ /dev/null @@ -1,19 +0,0 @@ -<HTML> -<HEAD> -<MARQUEE> -<TABLE> -<MARQUEE HEIGHT=100000000> -<MARQUEE HEIGHT=100000000> -<MARQUEE HEIGHT=100000000> -<MARQUEE HEIGHT=100000000> -<MARQUEE HEIGHT=100000000> -<MARQUEE HEIGHT=100000000> -<MARQUEE HEIGHT=100000000> -<MARQUEE HEIGHT=100000000> -<MARQUEE HEIGHT=100000000> -<MARQUEE HEIGHT=100000000> -<MARQUEE HEIGHT=100000000> -<TBODY> -Attack of the marquees! - - diff --git a/layout/base/crashtests/265986-1.html b/layout/base/crashtests/265986-1.html deleted file mode 100644 index 8d4ca290f5..0000000000 --- a/layout/base/crashtests/265986-1.html +++ /dev/null @@ -1,10 +0,0 @@ -<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.0 Transitional//EN'>
-<HTML>
-<HEAD>
-</HEAD>
-<BODY>
-<IFRAME STYLE="MARGIN:99999999999px; PADDING:-99999999999px;"></IFRAME>
-<APPLET STYLE="HEIGHT:9999999999pt; float:left; MARGIN:-99999999999px; border:99999999999px solid blue;"></APPLET>
-<MARQUEE STYLE=" WIDTH:9999999999px;">W</MARQUEE>
-</BODY>
-</HTML>
diff --git a/layout/base/crashtests/265999-1.html b/layout/base/crashtests/265999-1.html deleted file mode 100644 index 7e6e3d4162..0000000000 --- a/layout/base/crashtests/265999-1.html +++ /dev/null @@ -1,8 +0,0 @@ -<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.0 Transitional//EN'>
-<HTML>
-<HEAD>
-</HEAD>
-<BODY>
-<MARQUEE STYLE="HEIGHT:9999999999px; float:right; border:99999999999px solid blue;"></MARQUEE>
-</BODY>
-</HTML>
diff --git a/layout/base/crashtests/367498-2.html b/layout/base/crashtests/367498-2.html deleted file mode 100644 index 2c85ac0a46..0000000000 --- a/layout/base/crashtests/367498-2.html +++ /dev/null @@ -1,14 +0,0 @@ -<html><head> -</head><body> -<marquee> -<div style="border: 1px solid black; -moz-border-radius: 2em;"> -<marquee> -<span style="display: -moz-grid-line;"> -<select></select> -</span> -</marquee> -</div> -</marquee> - -</body> -</html> diff --git a/layout/base/crashtests/404491-1.html b/layout/base/crashtests/404491-1.html deleted file mode 100644 index 540a0f6a1b..0000000000 --- a/layout/base/crashtests/404491-1.html +++ /dev/null @@ -1,5 +0,0 @@ -<html> -<body> -<marquee><marquee></marquee><img></marquee> -</body> -</html> diff --git a/layout/base/crashtests/580129-1.html b/layout/base/crashtests/580129-1.html deleted file mode 100644 index 228051b5a4..0000000000 --- a/layout/base/crashtests/580129-1.html +++ /dev/null @@ -1,19 +0,0 @@ -<html> -<head> -<script> - -function boom() -{ - var a = document.documentElement; - var b = document.createElementNS("http://www.w3.org/1999/xhtml", "body"); - b.setAttributeNS(null, "style", "-moz-column-width: 20em;"); - a.innerHTML = "<frameset>"; - b.innerHTML = "<dd><marquee>x"; - document.removeChild(a); - document.appendChild(b); -} - -</script> -</head> -<body onload="boom();"></body> -</html> diff --git a/layout/base/crashtests/580494-1.html b/layout/base/crashtests/580494-1.html deleted file mode 100644 index c76125f74b..0000000000 --- a/layout/base/crashtests/580494-1.html +++ /dev/null @@ -1 +0,0 @@ -<html><body><marquee><video></video></marquee></body></html>
\ No newline at end of file diff --git a/layout/base/crashtests/597924-1.html b/layout/base/crashtests/597924-1.html deleted file mode 100644 index d855997eec..0000000000 --- a/layout/base/crashtests/597924-1.html +++ /dev/null @@ -1,16 +0,0 @@ -<!DOCTYPE html> -<html> -<head> -<script> - -function boom() -{ - document.getElementById("s").appendChild(document.createElement("div")); - var marq = document.getElementById("f").contentDocument.documentElement; - marq.behavior = "alternate"; -} - -</script> -</head> -<body onload="boom();"><span id="s"></span><iframe src="data:text/xml,%3Cmarquee%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%22%3EX%3C%2Fmarquee%3E" id="f"></iframe></body> -</html> diff --git a/layout/generic/crashtests/265867-1.html b/layout/generic/crashtests/265867-1.html deleted file mode 100644 index e9da8c7f6f..0000000000 --- a/layout/generic/crashtests/265867-1.html +++ /dev/null @@ -1,11 +0,0 @@ -<HTML> -<HEAD> -</HEAD> -<BODY> -<BODY STYLE="FLOAT:RIGHT;"></BODY> -<MARQUEE STYLE="MARGIN:99999999999px;"></MARQUEE> -<B STYLE="FLOAT:RIGHT; PADDING:99999999999px;"></B> -</BODY> -</HTML> - - diff --git a/layout/generic/crashtests/348510-1.html b/layout/generic/crashtests/348510-1.html deleted file mode 100644 index 6e00e71f1b..0000000000 --- a/layout/generic/crashtests/348510-1.html +++ /dev/null @@ -1,7 +0,0 @@ -<marquee> -<a> -<object> -<dd> -<form> -</object> -aaaaaaa diff --git a/layout/generic/crashtests/348510-2.html b/layout/generic/crashtests/348510-2.html deleted file mode 100644 index 8f8c998cfd..0000000000 --- a/layout/generic/crashtests/348510-2.html +++ /dev/null @@ -1,7 +0,0 @@ -<listing> -<marquee> -<aa> -<object> -<fieldset> -</object> -a
\ No newline at end of file diff --git a/layout/generic/crashtests/363722-1.html b/layout/generic/crashtests/363722-1.html deleted file mode 100644 index f83671c5ab..0000000000 --- a/layout/generic/crashtests/363722-1.html +++ /dev/null @@ -1,9 +0,0 @@ -<html> -<body> - <marquee style="background: yellow;"> - <marquee style="background: lightgreen;"> - I am a double-marquee. - </marquee> - </marquee> -</body> -</html> diff --git a/layout/generic/crashtests/363722-2.html b/layout/generic/crashtests/363722-2.html deleted file mode 100644 index 1a12a227e8..0000000000 --- a/layout/generic/crashtests/363722-2.html +++ /dev/null @@ -1,10 +0,0 @@ -<html> -<body> - <marquee style="background: yellow;"> - [inside OUTER marquee] - <marquee style="background: lightgreen;"> - [inside INNER marquee] - </marquee> - </marquee> -</body> -</html> diff --git a/layout/generic/crashtests/370866-1.xhtml b/layout/generic/crashtests/370866-1.xhtml deleted file mode 100644 index dbc673cc4c..0000000000 --- a/layout/generic/crashtests/370866-1.xhtml +++ /dev/null @@ -1,14 +0,0 @@ -<html xmlns="http://www.w3.org/1999/xhtml"> - -<head> -</head> - -<body> - -<table style="display: -moz-deck;"><tbody><tr><td> - <span style="position: relative;"><marquee><marquee><span style="position: absolute;">X</span></marquee></marquee></span> -</td></tr></tbody></table> - -</body> - -</html> diff --git a/layout/generic/crashtests/379917-1.xhtml b/layout/generic/crashtests/379917-1.xhtml deleted file mode 100644 index a99bd7f4ae..0000000000 --- a/layout/generic/crashtests/379917-1.xhtml +++ /dev/null @@ -1,35 +0,0 @@ -<html xmlns="http://www.w3.org/1999/xhtml" - xmlns:math="http://www.w3.org/1998/Math/MathML" - class="reftest-wait"> -<head> -<script> - -// This testcase uses long timeouts to make sure the marquee has a chance to animate. - -function boom() -{ - var div1 = document.getElementById("div1"); - var marquee = document.getElementById("marquee"); - - div1.parentNode.removeChild(div1); - marquee.width = 4; - - setTimeout(done, 100); -} - -function done() -{ - document.documentElement.removeAttribute("class"); -} - -</script> -</head> - -<body onload="setTimeout(boom, 100);"> - -<math:math><div id="div1"/>xע</math:math> -<marquee id="marquee">m</marquee> -<div/> - -</body> -</html> diff --git a/layout/generic/crashtests/398332-3.html b/layout/generic/crashtests/398332-3.html deleted file mode 100644 index 991aa6d3dd..0000000000 --- a/layout/generic/crashtests/398332-3.html +++ /dev/null @@ -1,4 +0,0 @@ -<marquee style="position: relative; right: 20%;">"Ë”Öqü®Û;<span style="position: relative; word-spacing: -100px;"><span style="position: absolute;"> -<style>span::before { content:"before textbefore textbefore textbefore textbefore textbefore text"; }</style> - - diff --git a/layout/generic/crashtests/421671.html b/layout/generic/crashtests/421671.html deleted file mode 100644 index e3919e6359..0000000000 --- a/layout/generic/crashtests/421671.html +++ /dev/null @@ -1,202 +0,0 @@ -<marquee> -<xmp style="-moz-column-count: 99999999"> - -<a> - -<a> - -<a> - -<a> - -<a> - -<a> - -<a> - -<a> - -<a> - -<a> - -<a> - -<a> - -<a> - -<a> - -<a> - -<a> - -<a> - -<a> - -<a> - -<a> - -<a> - -<a> -<a> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -<a> -<a> -<a> -<a> - -<a> -<a> - -<a> -<a>
\ No newline at end of file diff --git a/layout/generic/crashtests/619021.html b/layout/generic/crashtests/619021.html deleted file mode 100644 index 586c0f2dbd..0000000000 --- a/layout/generic/crashtests/619021.html +++ /dev/null @@ -1,5 +0,0 @@ -<foo> <marquee> <marquee> <marquee> <marquee> <marquee> <marquee> -<foo> <marquee> <foo> <marquee> <foo> <object> <marquee> <foo> -<marquee> <marquee> <foo> <foo> <marquee> <marquee> <foo> <marquee> -<marquee> <marquee> <foo> <marquee> <foo> <foo> <marquee> <marquee> -<marquee> </marquee> <foo> <foo> <pre> diff --git a/layout/generic/crashtests/724235.html b/layout/generic/crashtests/724235.html deleted file mode 100644 index 7054a99f57..0000000000 --- a/layout/generic/crashtests/724235.html +++ /dev/null @@ -1,28 +0,0 @@ -<!DOCTYPE html> -<html> -<head> -<title>Testcase for bug 724235</title> -</head> - -<body onload="setTimeout(function(){m=document.getElementsByTagName('marquee')[0]; m.style.fontSize='72px'},0)"> - -<a href="#"> - -<center> - -<marquee>This is a marquee ... </marquee> - -<table> - <tr> - <td><a href="#">click me to CRASH!</a></td> - </tr> -</table> - -<iframe></iframe> - -<script>document.body.offsetHeight;</script> - -<a href="#"></a> - - -</body></html> diff --git a/layout/reftests/bidi/logicalmarquee.html b/layout/reftests/bidi/logicalmarquee.html deleted file mode 100644 index cb13827dec..0000000000 --- a/layout/reftests/bidi/logicalmarquee.html +++ /dev/null @@ -1,11 +0,0 @@ -<!DOCTYPE HTML> -<html> - <head> - <meta http-equiv="Content-type" content="text/html; charset=iso-8859-8-i"> - <title>Marquee in Logical Hebrew</title> - </head> - - <body> - <marquee scrollamount="0" behavior="alternate" direction="right">עד שיפוח היום ונסו הצלילים</marquee> - </body> -</html> diff --git a/layout/reftests/bidi/marquee-ref.html b/layout/reftests/bidi/marquee-ref.html deleted file mode 100644 index d8778dc880..0000000000 --- a/layout/reftests/bidi/marquee-ref.html +++ /dev/null @@ -1,11 +0,0 @@ -<!DOCTYPE HTML> -<html> - <head> - <meta http-equiv="Content-type" content="text/html; charset=iso-8859-8-i"> - <title>Marquee in Logical Hebrew</title> - </head> - - <body> - <div dir="rtl" align="left">עד שיפוח היום ונסו הצלילים</div> - </body> -</html> diff --git a/layout/reftests/bidi/reftest-stylo.list b/layout/reftests/bidi/reftest-stylo.list index b6a48f9ca2..d0a854e7f3 100644 --- a/layout/reftests/bidi/reftest-stylo.list +++ b/layout/reftests/bidi/reftest-stylo.list @@ -21,9 +21,6 @@ skip == bidiSVG-03.svg bidiSVG-03.svg == bidiSVG-04.svg bidiSVG-04.svg == bidiSVG-05.svg bidiSVG-05.svg random-if(/^Windows\x20NT\x205\.1/.test(http.oscpu)) HTTP(..) == bidiMirroring.svg bidiMirroring.svg -fuzzy-if(Android,9,134) random-if(layersGPUAccelerated) == visualmarquee.html visualmarquee.html -fuzzy-if(Android,9,134) random-if(layersGPUAccelerated) == logicalmarquee.html logicalmarquee.html -== visualmarquee.html visualmarquee.html # test for glyph mirroring in right-to-left text == mirroring-01.html mirroring-01.html # quote marks are not supposed to mirror, but Unicode 5.0 said they should, so some systems do it diff --git a/layout/reftests/bidi/reftest.list b/layout/reftests/bidi/reftest.list index eeabd0beb7..5044e657fe 100644 --- a/layout/reftests/bidi/reftest.list +++ b/layout/reftests/bidi/reftest.list @@ -18,9 +18,6 @@ random-if(cocoaWidget) == bidi-006-j.html bidi-006-ref.html # bug 734313 fuzzy-if(skiaContent,1,1) == bidiSVG-04.svg bidiSVG-04-ref.svg == bidiSVG-05.svg bidiSVG-05-ref.svg random-if(/^Windows\x20NT\x205\.1/.test(http.oscpu)) HTTP(..) == bidiMirroring.svg bidiMirroring-ref.svg -fuzzy-if(Android,9,134) random-if(layersGPUAccelerated) == visualmarquee.html marquee-ref.html -fuzzy-if(Android,9,134) random-if(layersGPUAccelerated) == logicalmarquee.html marquee-ref.html -== visualmarquee.html logicalmarquee.html # test for glyph mirroring in right-to-left text == mirroring-01.html mirroring-01-ref.html # quote marks are not supposed to mirror, but Unicode 5.0 said they should, so some systems do it diff --git a/layout/reftests/bidi/visualmarquee.html b/layout/reftests/bidi/visualmarquee.html deleted file mode 100644 index 932fd775a1..0000000000 --- a/layout/reftests/bidi/visualmarquee.html +++ /dev/null @@ -1,11 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> - <head> - <meta http-equiv="Content-type" content="text/html; charset=iso-8859-8"> - <title>Marquee in Visual Hebrew</title> - </head> - - <body> - <marquee scrollamount="0" behavior="alternate" direction="right">םילילצה וסנו םויה חופיש דע</marquee> - </body> -</html> diff --git a/layout/reftests/marquee/1160342-1.html b/layout/reftests/marquee/1160342-1.html deleted file mode 100644 index 85e7215fbb..0000000000 --- a/layout/reftests/marquee/1160342-1.html +++ /dev/null @@ -1,10 +0,0 @@ -<html>
-<head>
-<title>Bug 1160342 - Implement marquee using mutation observers</title>
-</head>
-<body onload="document.getElementById('a').setAttribute('behavior', 'alternate')">
-<marquee id="a" scrollamount=0 direction=right>
-This text should be visible
-</marquee>
-</body>
-</html>
diff --git a/layout/reftests/marquee/1160342-2.html b/layout/reftests/marquee/1160342-2.html deleted file mode 100644 index 99b288568b..0000000000 --- a/layout/reftests/marquee/1160342-2.html +++ /dev/null @@ -1,10 +0,0 @@ -<html>
-<head>
-<title>Bug 1160342 - Implement marquee using mutation observers</title>
-</head>
-<body onload="document.getElementById('a').setAttribute('direction', 'right')">
-<marquee id="a" behavior=alternate scrollamount=0>
-This text should be visible
-</marquee>
-</body>
-</html>
diff --git a/layout/reftests/marquee/1160342-ref.html b/layout/reftests/marquee/1160342-ref.html deleted file mode 100644 index d56c90642a..0000000000 --- a/layout/reftests/marquee/1160342-ref.html +++ /dev/null @@ -1,10 +0,0 @@ -<html>
-<head>
-<title>Bug 1160342 - Implement marquee using mutation observers</title>
-</head>
-<body>
-<marquee id="a" behavior=alternate scrollamount=0 direction=right>
-This text should be visible
-</marquee>
-</body>
-</html>
diff --git a/layout/reftests/marquee/166591-dynamic-1-ref.html b/layout/reftests/marquee/166591-dynamic-1-ref.html deleted file mode 100644 index a9bed7d5fb..0000000000 --- a/layout/reftests/marquee/166591-dynamic-1-ref.html +++ /dev/null @@ -1,6 +0,0 @@ -<html><head> -</head> -<body> -<div id="test"><marquee behavior="alternate" scrollamount="0">dynamic marquee</marquee></div> -</body> -</html>
\ No newline at end of file diff --git a/layout/reftests/marquee/166591-dynamic-1.html b/layout/reftests/marquee/166591-dynamic-1.html deleted file mode 100644 index 278b2a37bf..0000000000 --- a/layout/reftests/marquee/166591-dynamic-1.html +++ /dev/null @@ -1,11 +0,0 @@ -<html><head> -<script> -function init() { - document.getElementById('test').innerHTML = '<marquee behavior="alternate" scrollamount="0">dynamic marquee</marquee>'; -} -</script> -</head> -<body onload="init();"> -<div id="test"></div> -</body> -</html>
\ No newline at end of file diff --git a/layout/reftests/marquee/336736-1-ref.html b/layout/reftests/marquee/336736-1-ref.html deleted file mode 100644 index 116e5ade28..0000000000 --- a/layout/reftests/marquee/336736-1-ref.html +++ /dev/null @@ -1,5 +0,0 @@ -<html> -<body> -<div style="background: green; width: 50px"> </div> -</body> -</html> diff --git a/layout/reftests/marquee/336736-1a.html b/layout/reftests/marquee/336736-1a.html deleted file mode 100644 index fb54f3060e..0000000000 --- a/layout/reftests/marquee/336736-1a.html +++ /dev/null @@ -1,13 +0,0 @@ -<html> -<body dir="rtl"> -<!-- The "alternate" behavior is necessary for the - marquee text to start out on the screen. --> -<marquee - direction="right" - scrollamount="0" - behavior="alternate" -> -<div style="background: green; width: 50px"> </div> -</marquee> -</body> -</html> diff --git a/layout/reftests/marquee/336736-1b.html b/layout/reftests/marquee/336736-1b.html deleted file mode 100644 index 85338167c2..0000000000 --- a/layout/reftests/marquee/336736-1b.html +++ /dev/null @@ -1,13 +0,0 @@ -<html> -<body> -<!-- The "alternate" behavior is necessary for the - marquee text to start out on the screen. --> -<marquee - direction="right" - scrollamount="0" - behavior="alternate" -> -<div style="background: green; width: 50px"> </div> -</marquee> -</body> -</html> diff --git a/layout/reftests/marquee/406073-1-ref.html b/layout/reftests/marquee/406073-1-ref.html deleted file mode 100644 index 751bb5db7f..0000000000 --- a/layout/reftests/marquee/406073-1-ref.html +++ /dev/null @@ -1,11 +0,0 @@ -<html class="reftest-wait"> -<body style="border:3px solid;" onload="setTimeout(doe, 0)"> -<marquee behavior="alternate" scrollamount="100"><span style="background-color: lime;">marquee</span></marquee> - <script> - function doe() { - document.getElementsByTagName('marquee')[0].stop(); - document.documentElement.className = ""; - } - </script> -</body> -</html> diff --git a/layout/reftests/marquee/406073-1.html b/layout/reftests/marquee/406073-1.html deleted file mode 100644 index 01787afda3..0000000000 --- a/layout/reftests/marquee/406073-1.html +++ /dev/null @@ -1,23 +0,0 @@ -<html class="reftest-wait"> -<body style="border:3px solid;" onload="setTimeout(doe, 0)"> -<marquee behavior="alternate" scrollamount="100"><span style="background-color: lime;">marquee</span></marquee> - <script> - function doe() { - document.getElementsByTagName('marquee')[0].stop(); - document.getElementsByTagName('marquee')[0].start(); - document.getElementsByTagName('marquee')[0].stop(); - document.getElementsByTagName('marquee')[0].start(); - document.getElementsByTagName('marquee')[0].stop(); - document.getElementsByTagName('marquee')[0].start(); - document.getElementsByTagName('marquee')[0].stop(); - document.getElementsByTagName('marquee')[0].start(); - document.getElementsByTagName('marquee')[0].stop(); - document.getElementsByTagName('marquee')[0].start(); - document.getElementsByTagName('marquee')[0].stop(); - document.getElementsByTagName('marquee')[0].start(); - document.getElementsByTagName('marquee')[0].stop(); - document.documentElement.className = ""; - } - </script> -</body> -</html> diff --git a/layout/reftests/marquee/407016-2-ref.html b/layout/reftests/marquee/407016-2-ref.html deleted file mode 100644 index 25fee1b7dc..0000000000 --- a/layout/reftests/marquee/407016-2-ref.html +++ /dev/null @@ -1,5 +0,0 @@ -<html> -<body> -<div style="background-color: lime; height: 50px;"></div> -</body> -</html> diff --git a/layout/reftests/marquee/407016-2.html b/layout/reftests/marquee/407016-2.html deleted file mode 100644 index 65e1273b9c..0000000000 --- a/layout/reftests/marquee/407016-2.html +++ /dev/null @@ -1,7 +0,0 @@ -<html> -<body> -<marquee scrollamount="0" style="height: 50px; background-color: lime;"> -<div style="width: 9999px;"> </div> -</marquee> -</body> -</html> diff --git a/layout/reftests/marquee/413027-4-ref.html b/layout/reftests/marquee/413027-4-ref.html deleted file mode 100644 index 22fdd42e60..0000000000 --- a/layout/reftests/marquee/413027-4-ref.html +++ /dev/null @@ -1,10 +0,0 @@ -<html><head> -<title>Testcase for bug 413027 - Marquee height is sized too small, clipping text vertically</title> -</head> -<body> - -<div style="background-color: lime; width: 600px; float:left;"> - <div style="margin: 100px 0px; padding-left: 2px;">text</div> -</div> - -</body></html> diff --git a/layout/reftests/marquee/413027-4.html b/layout/reftests/marquee/413027-4.html deleted file mode 100644 index d57f2f1215..0000000000 --- a/layout/reftests/marquee/413027-4.html +++ /dev/null @@ -1,15 +0,0 @@ -<html><head> -<title>Testcase for bug 413027 - Marquee height is sized too small, clipping text vertically</title> -</head> -<body> - -<marquee scrollamount="0" behavior="alternate" direction="right" style="background-color: lime; width: 600px;"> -<div> -<!-- padding-left used to avoid risk of an antialiasing pixel that may - project to the left of the origin, causing a spurious test failure - (see bugs 476927, 475968) --> - <div style="margin: 100px 0px; padding-left: 2px;">text</div> -</div> -</marquee> - -</body></html> diff --git a/layout/reftests/marquee/425247-1-ref.html b/layout/reftests/marquee/425247-1-ref.html deleted file mode 100644 index 3b3a84d41d..0000000000 --- a/layout/reftests/marquee/425247-1-ref.html +++ /dev/null @@ -1,9 +0,0 @@ -<html><head> -<title>Bug 425247 – Marquee with uppercase UP or DOWN as direction doesn't work properly</title> -</head> -<body> -<marquee direction="up" bgcolor="magenta" behavior="alternate" scrollamount="0"> -<marquee bgcolor="yellow" behavior="alternate" scrollamount="0">marquee up</marquee> -</marquee> -</body> -</html>
\ No newline at end of file diff --git a/layout/reftests/marquee/425247-1.html b/layout/reftests/marquee/425247-1.html deleted file mode 100644 index dfa5021c45..0000000000 --- a/layout/reftests/marquee/425247-1.html +++ /dev/null @@ -1,9 +0,0 @@ -<html><head> -<title>Bug 425247 – Marquee with uppercase UP or DOWN as direction doesn't work properly</title> -</head> -<body> -<MARQUEE DIRECTION=UP BGCOLOR=MAGENTA BEHAVIOR=ALTERNATE SCROLLAMOUNT=0> -<MARQUEE BGCOLOR=YELLOW BEHAVIOR=ALTERNATE SCROLLAMOUNT=0>marquee up</MARQUEE> -</MARQUEE> -</body> -</html>
\ No newline at end of file diff --git a/layout/reftests/marquee/425247-2-ref.html b/layout/reftests/marquee/425247-2-ref.html deleted file mode 100644 index 564d749798..0000000000 --- a/layout/reftests/marquee/425247-2-ref.html +++ /dev/null @@ -1,9 +0,0 @@ -<html><head> -<title>Bug 425247 – Marquee with uppercase UP or DOWN as direction doesn't work properly</title> -</head> -<body> -<marquee direction="down" bgcolor="magenta" behavior="alternate" scrollamount="0"> -<marquee bgcolor="yellow" behavior="alternate" scrollamount="0">marquee down</marquee> -</marquee> -</body> -</html>
\ No newline at end of file diff --git a/layout/reftests/marquee/425247-2.html b/layout/reftests/marquee/425247-2.html deleted file mode 100644 index 4cb66b9017..0000000000 --- a/layout/reftests/marquee/425247-2.html +++ /dev/null @@ -1,9 +0,0 @@ -<html><head> -<title>Bug 425247 – Marquee with uppercase UP or DOWN as direction doesn't work properly</title> -</head> -<body> -<MARQUEE DIRECTION=DOWN BGCOLOR=MAGENTA BEHAVIOR=ALTERNATE SCROLLAMOUNT=0> -<MARQUEE BGCOLOR=YELLOW BEHAVIOR=ALTERNATE SCROLLAMOUNT=0>marquee down</MARQUEE> -</MARQUEE> -</body> -</html>
\ No newline at end of file diff --git a/layout/reftests/marquee/429849-1-ref.html b/layout/reftests/marquee/429849-1-ref.html deleted file mode 100644 index 3b9c3166eb..0000000000 --- a/layout/reftests/marquee/429849-1-ref.html +++ /dev/null @@ -1,10 +0,0 @@ -<html>
-<head>
-<title>Bug 429849 – marquee text not on one line , part of this line on top and second part on bottom</title>
-</head>
-<body>
-<marquee behavior=alternate scrollamount=0 direction=right>
-This text should be on one line
-</marquee>
-</body>
-</html>
diff --git a/layout/reftests/marquee/429849-1.html b/layout/reftests/marquee/429849-1.html deleted file mode 100644 index 6b1757fd0e..0000000000 --- a/layout/reftests/marquee/429849-1.html +++ /dev/null @@ -1,10 +0,0 @@ -<html>
-<head>
-<title>Bug 429849 – marquee text not on one line , part of this line on top and second part on bottom</title>
-</head>
-<body>
-<marquee behavior=alternate scrollamount=0 direction=right>
-This text <script>document.body.offsetHeight;</script>should be on one line
-</marquee>
-</body>
-</html>
diff --git a/layout/reftests/marquee/reftest-stylo.list b/layout/reftests/marquee/reftest-stylo.list deleted file mode 100644 index 26c77acf94..0000000000 --- a/layout/reftests/marquee/reftest-stylo.list +++ /dev/null @@ -1,16 +0,0 @@ -# DO NOT EDIT! This is a auto-generated temporary list for Stylo testing -random-if((B2G&&browserIsRemote)||Mulet) == 166591-dynamic-1.html 166591-dynamic-1.html -# Initial mulet triage: parity with B2G/B2G Desktop -skip-if(B2G) fuzzy-if(Android,8,50) == 336736-1a.html 336736-1a.html -# Bug 1168747 for random b2g timeouts -skip-if(B2G) fuzzy-if(Android,8,50) == 336736-1b.html 336736-1b.html -# Bug 1168747 for random b2g timeouts -== 406073-1.html 406073-1.html -== 407016-2.html 407016-2.html -fuzzy-if(Android,8,220) == 413027-4.html 413027-4.html -fuzzy-if(Android,8,30) == 425247-1.html 425247-1.html -fuzzy-if(Android,8,30) == 425247-2.html 425247-2.html -random == 429849-1.html 429849-1.html -# bug 432288 -== 1160342-1.html 1160342-1.html -== 1160342-2.html 1160342-2.html diff --git a/layout/reftests/marquee/reftest.list b/layout/reftests/marquee/reftest.list deleted file mode 100644 index f033b46343..0000000000 --- a/layout/reftests/marquee/reftest.list +++ /dev/null @@ -1,11 +0,0 @@ -== 166591-dynamic-1.html 166591-dynamic-1-ref.html -fuzzy-if(Android,8,50) == 336736-1a.html 336736-1-ref.html -fuzzy-if(Android,8,50) == 336736-1b.html 336736-1-ref.html -== 406073-1.html 406073-1-ref.html -== 407016-2.html 407016-2-ref.html -fuzzy-if(Android,8,220) == 413027-4.html 413027-4-ref.html -fuzzy-if(Android,8,30) == 425247-1.html 425247-1-ref.html -fuzzy-if(Android,8,30) == 425247-2.html 425247-2-ref.html -random == 429849-1.html 429849-1-ref.html # bug 432288 -== 1160342-1.html 1160342-ref.html -== 1160342-2.html 1160342-ref.html diff --git a/layout/reftests/moz.build b/layout/reftests/moz.build index d486e5639b..3ab3d42460 100644 --- a/layout/reftests/moz.build +++ b/layout/reftests/moz.build @@ -201,8 +201,6 @@ with Files('list-item/**'): BUG_COMPONENT = ('Core', 'Layout: Block and Inline') with Files('margin-collapsing/**'): BUG_COMPONENT = ('Core', 'Layout: Block and Inline') -with Files('marquee/**'): - BUG_COMPONENT = ('Core', 'CSS Parsing and Computation') with Files('mathml/**'): BUG_COMPONENT = ('Core', 'MathML') with Files('native-theme/**'): diff --git a/layout/reftests/reftest-stylo.list b/layout/reftests/reftest-stylo.list index 7d4078f227..54afc3dac3 100644 --- a/layout/reftests/reftest-stylo.list +++ b/layout/reftests/reftest-stylo.list @@ -249,9 +249,6 @@ include mathml/reftest-stylo.list # margin-collapsing include margin-collapsing/reftest-stylo.list -# marquee/ -include marquee/reftest-stylo.list - # native-theme/ # skipping for B2G since something around radio-nonnative.html makes the whole suite hang skip-if(B2G||Android||Mulet) include native-theme/reftest-stylo.list diff --git a/layout/reftests/reftest.list b/layout/reftests/reftest.list index b2da025d5f..b06eba58ee 100644 --- a/layout/reftests/reftest.list +++ b/layout/reftests/reftest.list @@ -247,9 +247,6 @@ include mathml/reftest.list # margin-collapsing include margin-collapsing/reftest.list -# marquee/ -include marquee/reftest.list - # native-theme/ # (no XUL theme on Android) skip-if(Android) include native-theme/reftest.list diff --git a/layout/reftests/writing-mode/reftest-stylo.list b/layout/reftests/writing-mode/reftest-stylo.list index 5574d9b5b0..76f6813e64 100644 --- a/layout/reftests/writing-mode/reftest-stylo.list +++ b/layout/reftests/writing-mode/reftest-stylo.list @@ -65,8 +65,6 @@ HTTP(..) == 1115916-1-vertical-metrics.html 1115916-1-vertical-metrics.html == ua-style-sheet-border-3.html ua-style-sheet-border-3.html == ua-style-sheet-border-4.html ua-style-sheet-border-4.html == ua-style-sheet-border-5.html ua-style-sheet-border-5.html -== ua-style-sheet-size-1.html ua-style-sheet-size-1.html -== ua-style-sheet-size-2.html ua-style-sheet-size-2.html == ua-style-sheet-fieldset-1.html ua-style-sheet-fieldset-1.html skip-if(Android||B2G||Mulet||(winWidget&&!/^Windows\x20NT\x205\.1/.test(http.oscpu))) == ua-style-sheet-textarea-1.html ua-style-sheet-textarea-1.html diff --git a/layout/reftests/writing-mode/reftest.list b/layout/reftests/writing-mode/reftest.list index b670dbd136..13c58d2cb7 100644 --- a/layout/reftests/writing-mode/reftest.list +++ b/layout/reftests/writing-mode/reftest.list @@ -58,8 +58,6 @@ fuzzy(116,94) fuzzy-if(winWidget,135,124) HTTP(..) == 1115916-1-vertical-metrics == ua-style-sheet-border-3.html ua-style-sheet-border-3-ref.html == ua-style-sheet-border-4.html ua-style-sheet-border-4-ref.html == ua-style-sheet-border-5.html ua-style-sheet-border-5-ref.html -== ua-style-sheet-size-1.html ua-style-sheet-size-1-ref.html -== ua-style-sheet-size-2.html ua-style-sheet-size-2-ref.html == ua-style-sheet-fieldset-1.html ua-style-sheet-fieldset-1-ref.html skip-if(Android||(winWidget&&!/^Windows\x20NT\x205\.1/.test(http.oscpu))) == ua-style-sheet-textarea-1.html ua-style-sheet-textarea-1a-ref.html diff --git a/layout/reftests/writing-mode/ua-style-sheet-size-1-ref.html b/layout/reftests/writing-mode/ua-style-sheet-size-1-ref.html deleted file mode 100644 index 06f6d5700e..0000000000 --- a/layout/reftests/writing-mode/ua-style-sheet-size-1-ref.html +++ /dev/null @@ -1,22 +0,0 @@ -<!DOCTYPE html> -<meta charset=utf-8> -<title>Test for logical margins on marquee elements in the UA style sheet</title> -<style> -.v-rl { writing-mode: vertical-rl; } -.ltr, .rtl, .v-rl { border: 1px solid blue; padding: 16px; } -marquee { background-color: yellow; color: transparent; } -.ltr marquee { width: -moz-available; height: auto; } -.rtl marquee { width: -moz-available; height: auto; } -.v-rl marquee { width: auto; height: -moz-available; } -</style> -<div class=ltr> - <marquee>A</marquee> -</div> -<div class=rtl dir=rtl> - <marquee>A</marquee> -</div> -<!-- disabled until bug 1132308 -<div class=v-rl> - <marquee>A</marquee> -</div> ---> diff --git a/layout/reftests/writing-mode/ua-style-sheet-size-1.html b/layout/reftests/writing-mode/ua-style-sheet-size-1.html deleted file mode 100644 index 7549085010..0000000000 --- a/layout/reftests/writing-mode/ua-style-sheet-size-1.html +++ /dev/null @@ -1,19 +0,0 @@ -<!DOCTYPE html> -<meta charset=utf-8> -<title>Test for logical sizes on marquee elements in the UA style sheet</title> -<style> -.v-rl { writing-mode: vertical-rl; } -.ltr, .rtl, .v-rl { border: 1px solid blue; padding: 16px; } -marquee { background-color: yellow; color: transparent; } -</style> -<div class=ltr> - <marquee>A</marquee> -</div> -<div class=rtl dir=rtl> - <marquee>A</marquee> -</div> -<!-- disabled until bug 1132308 -<div class=v-rl> - <marquee>A</marquee> -</div> ---> diff --git a/layout/reftests/writing-mode/ua-style-sheet-size-2-ref.html b/layout/reftests/writing-mode/ua-style-sheet-size-2-ref.html deleted file mode 100644 index 3c53326ba7..0000000000 --- a/layout/reftests/writing-mode/ua-style-sheet-size-2-ref.html +++ /dev/null @@ -1,22 +0,0 @@ -<!DOCTYPE html> -<meta charset=utf-8> -<title>Test for logical margins on marquee elements in the UA style sheet</title> -<style> -.v-rl { writing-mode: vertical-rl; } -.ltr, .rtl, .v-rl { border: 1px solid blue; padding: 16px; } -marquee { background-color: yellow; color: transparent; } -.ltr marquee { width: -moz-available; height: 200px; } -.rtl marquee { width: -moz-available; height: 200px; } -.v-rl marquee { width: 200px; height: -moz-available; } -</style> -<div class=ltr> - <marquee direction=down>A</marquee> -</div> -<div class=rtl dir=rtl> - <marquee direction=down>A</marquee> -</div> -<!-- disabled until bug 1132308 -<div class=v-rl> - <marquee direction=down>A</marquee> -</div> ---> diff --git a/layout/reftests/writing-mode/ua-style-sheet-size-2.html b/layout/reftests/writing-mode/ua-style-sheet-size-2.html deleted file mode 100644 index 1c0be6f4b5..0000000000 --- a/layout/reftests/writing-mode/ua-style-sheet-size-2.html +++ /dev/null @@ -1,19 +0,0 @@ -<!DOCTYPE html> -<meta charset=utf-8> -<title>Test for logical sizes on marquee elements in the UA style sheet</title> -<style> -.v-rl { writing-mode: vertical-rl; } -.ltr, .rtl, .v-rl { border: 1px solid blue; padding: 16px; } -marquee { background-color: yellow; color: transparent; } -</style> -<div class=ltr> - <marquee direction=down>A</marquee> -</div> -<div class=rtl dir=rtl> - <marquee direction=down>A</marquee> -</div> -<!-- disabled until bug 1132308 -<div class=v-rl> - <marquee direction=down>A</marquee> -</div> ---> diff --git a/layout/style/contenteditable.css b/layout/style/contenteditable.css index c550bc7c90..6d569f75e9 100644 --- a/layout/style/contenteditable.css +++ b/layout/style/contenteditable.css @@ -80,15 +80,6 @@ input[contenteditable="true"][type="file"] { -moz-user-focus: none !important; } -/* emulation of non-standard HTML <marquee> tag */ -marquee:-moz-read-write { - -moz-binding: url('chrome://xbl-marquee/content/xbl-marquee.xml#marquee-horizontal-editable'); -} - -marquee[direction="up"]:-moz-read-write, marquee[direction="down"]:-moz-read-write { - -moz-binding: url('chrome://xbl-marquee/content/xbl-marquee.xml#marquee-vertical-editable'); -} - *|*:-moz-read-write > input[type="hidden"], input[contenteditable="true"][type="hidden"] { border: 1px solid black !important; diff --git a/layout/style/moz.build b/layout/style/moz.build index 74caf94dff..f17b279476 100644 --- a/layout/style/moz.build +++ b/layout/style/moz.build @@ -19,7 +19,6 @@ with Files('CSSRuleList.*'): with Files('nsDOM*'): BUG_COMPONENT = ('Core', 'DOM: CSS Object Model') -DIRS += ['xbl-marquee'] TEST_DIRS += ['test'] XPIDL_SOURCES += [ diff --git a/layout/style/nsCSSParser.cpp b/layout/style/nsCSSParser.cpp index 556e35406a..cdc84d34cb 100644 --- a/layout/style/nsCSSParser.cpp +++ b/layout/style/nsCSSParser.cpp @@ -5941,8 +5941,6 @@ CSSParserImpl::ParseAttributeSelector(int32_t& aDataMask, "language", "defer", "type", - // additional attributes not in HTML4 - "direction", // marquee nullptr }; short i = 0; diff --git a/layout/style/res/html.css b/layout/style/res/html.css index 4f43f3134f..066aab3976 100644 --- a/layout/style/res/html.css +++ b/layout/style/res/html.css @@ -64,7 +64,6 @@ legend, li, listing, main, -marquee, menu, nav, noframes, @@ -824,25 +823,9 @@ dialog:not([open]) { display: none; } -/* emulation of non-standard HTML <marquee> tag */ -marquee { - inline-size: -moz-available; - display: inline-block; - vertical-align: text-bottom; - text-align: start; - -moz-binding: url('chrome://xbl-marquee/content/xbl-marquee.xml#marquee-horizontal'); -} - -marquee[direction="up"], marquee[direction="down"] { - -moz-binding: url('chrome://xbl-marquee/content/xbl-marquee.xml#marquee-vertical'); - block-size: 200px; -} - /* PRINT ONLY rules follow */ @media print { - marquee { -moz-binding: none; } - } /* Ruby */ diff --git a/layout/style/xbl-marquee/jar.mn b/layout/style/xbl-marquee/jar.mn deleted file mode 100644 index 9247cb4a18..0000000000 --- a/layout/style/xbl-marquee/jar.mn +++ /dev/null @@ -1,8 +0,0 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - -toolkit.jar: -% content xbl-marquee %content/xbl-marquee/ contentaccessible=yes - content/xbl-marquee/xbl-marquee.xml - content/xbl-marquee/xbl-marquee.css diff --git a/layout/style/xbl-marquee/moz.build b/layout/style/xbl-marquee/moz.build deleted file mode 100644 index eb4454d28f..0000000000 --- a/layout/style/xbl-marquee/moz.build +++ /dev/null @@ -1,7 +0,0 @@ -# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- -# vim: set filetype=python: -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - -JAR_MANIFESTS += ['jar.mn']
\ No newline at end of file diff --git a/layout/style/xbl-marquee/xbl-marquee.css b/layout/style/xbl-marquee/xbl-marquee.css deleted file mode 100644 index e6d3ee94bf..0000000000 --- a/layout/style/xbl-marquee/xbl-marquee.css +++ /dev/null @@ -1,12 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ - -/* PRINT ONLY rules */ -@media print { - - marquee > * > * { - margin: 0 !important; - padding: 0 !important; - } /* This hack is needed until bug 119078 gets fixed */ -} diff --git a/layout/style/xbl-marquee/xbl-marquee.xml b/layout/style/xbl-marquee/xbl-marquee.xml deleted file mode 100644 index bb837624d8..0000000000 --- a/layout/style/xbl-marquee/xbl-marquee.xml +++ /dev/null @@ -1,733 +0,0 @@ -<?xml version="1.0"?> -<!-- This Source Code Form is subject to the terms of the Mozilla Public - - License, v. 2.0. If a copy of the MPL was not distributed with this - - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> - -<bindings id="marqueeBindings" - xmlns="http://www.mozilla.org/xbl" - xmlns:html="http://www.w3.org/1999/xhtml" - xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" - xmlns:xbl="http://www.mozilla.org/xbl"> - - - <binding id="marquee" bindToUntrustedContent="true"> - - <resources> - <stylesheet src="chrome://xbl-marquee/content/xbl-marquee.css"/> - </resources> - <implementation> - - <property name="scrollAmount" exposeToUntrustedContent="true"> - <getter> - <![CDATA[ - this._mutationActor(this._mutationObserver.takeRecords()); - return this._scrollAmount; - ]]> - </getter> - <setter> - <![CDATA[ - var val = parseInt(val); - if (val < 0) { - return; - } - if (isNaN(val)) { - val = 0; - } - this.setAttribute("scrollamount", val); - ]]> - </setter> - </property> - - <property name="scrollDelay" exposeToUntrustedContent="true"> - <getter> - <![CDATA[ - this._mutationActor(this._mutationObserver.takeRecords()); - var val = parseInt(this.getAttribute("scrolldelay")); - - if (val <= 0 || isNaN(val)) { - return this._scrollDelay; - } - - return val; - ]]> - </getter> - <setter> - var val = parseInt(val); - if (val > 0 ) { - this.setAttribute("scrolldelay", val); - } - </setter> - </property> - - <property name="trueSpeed" exposeToUntrustedContent="true"> - <getter> - <![CDATA[ - if (!this.hasAttribute("truespeed")) { - return false; - } - - return true; - ]]> - </getter> - <setter> - <![CDATA[ - if (val) { - this.setAttribute("truespeed", ""); - } else { - this.removeAttribute('truespeed'); - } - ]]> - </setter> - </property> - - <property name="direction" exposeToUntrustedContent="true"> - <getter> - this._mutationActor(this._mutationObserver.takeRecords()); - return this._direction; - </getter> - <setter> - <![CDATA[ - if (typeof val == 'string') { - val = val.toLowerCase(); - } else { - return; - } - if (val != 'left' && val != 'right' && val != 'up' && val != 'down') { - val = 'left'; - } - - this.setAttribute("direction", val); - ]]> - </setter> - </property> - - <property name="behavior" exposeToUntrustedContent="true"> - <getter> - this._mutationActor(this._mutationObserver.takeRecords()); - return this._behavior; - </getter> - <setter> - if (typeof val == 'string') { - val = val.toLowerCase(); - } - if (val == "alternate" || val == "slide" || val == 'scroll') { - this.setAttribute("behavior", val); - } - </setter> - </property> - - - <property name="loop" exposeToUntrustedContent="true"> - <getter> - <![CDATA[ - this._mutationActor(this._mutationObserver.takeRecords()); - return this._loop; - ]]> - </getter> - <setter> - <![CDATA[ - var val = parseInt(val); - if (val == -1 || val > 0) { - this.setAttribute("loop", val); - } - ]]> - </setter> - </property> - - - <property name="onstart" exposeToUntrustedContent="true"> - <getter> - return this.getAttribute("onstart"); - </getter> - <setter> - this._setEventListener("start", val, true); - this.setAttribute("onstart", val); - </setter> - </property> - - <property name="onfinish" exposeToUntrustedContent="true"> - <getter> - return this.getAttribute("onfinish"); - </getter> - <setter> - this._setEventListener("finish", val, true); - this.setAttribute("onfinish", val); - </setter> - </property> - - <property name="onbounce" exposeToUntrustedContent="true"> - <getter> - return this.getAttribute("onbounce"); - </getter> - <setter> - this._setEventListener("bounce", val, true); - this.setAttribute("onbounce", val); - </setter> - </property> - - <property name="outerDiv" - onget="return document.getAnonymousNodes(this)[0]" - /> - - <property name="innerDiv" - onget="return document.getAnonymousElementByAttribute(this, 'class', 'innerDiv');" - /> - - <property name="height" exposeToUntrustedContent="true" - onget="return this.getAttribute('height');" - onset="this.setAttribute('height', val);" - /> - - <property name="width" exposeToUntrustedContent="true" - onget="return this.getAttribute('width');" - onset="this.setAttribute('width', val);" - /> - - <method name="_set_scrollDelay"> - <parameter name="aValue"/> - <body> - <![CDATA[ - aValue = parseInt(aValue); - if (aValue <= 0) { - return; - } else if (isNaN(aValue)) { - this._scrollDelay = 85; - } else if (aValue < 60) { - if (this.trueSpeed == true) { - this._scrollDelay = aValue; - } else { - this._scrollDelay = 60; - } - } else { - this._scrollDelay = aValue; - } - ]]> - </body> - </method> - - <method name="_set_scrollAmount"> - <parameter name="aValue"/> - <body> - <![CDATA[ - aValue = parseInt(aValue); - if (isNaN(aValue)) { - this._scrollAmount = 6; - } else if (aValue < 0) { - return; - } else { - this._scrollAmount = aValue; - } - ]]> - </body> - </method> - - <method name="_set_behavior"> - <parameter name="aValue"/> - <body> - <![CDATA[ - if (typeof aValue == 'string') { - aValue = aValue.toLowerCase(); - } - if (aValue != 'alternate' && aValue != 'slide' && aValue != 'scroll') { - this._behavior = 'scroll'; - } else { - this._behavior = aValue; - } - ]]> - </body> - </method> - - <method name="_set_direction"> - <parameter name="aValue"/> - <body> - <![CDATA[ - if (typeof aValue == 'string') { - aValue = aValue.toLowerCase(); - } - if (aValue != 'left' && aValue != 'right' && aValue != 'up' && aValue != 'down') { - aValue = 'left'; - } - - if (aValue != this._direction) { - this.startNewDirection = true; - } - this._direction = aValue; - ]]> - </body> - </method> - - <method name="_set_loop"> - <parameter name="aValue"/> - <body> - <![CDATA[ - var aValue = parseInt(aValue); - if (aValue == 0) { - return; - } - if (isNaN(aValue) || aValue <= -1) { - aValue = -1; - } - this._loop = aValue; - ]]> - </body> - </method> - - <method name="_setEventListener"> - <parameter name="aName"/> - <parameter name="aValue"/> - <parameter name="aIgnoreNextCall"/> - <body> - <![CDATA[ - // _setEventListener is only used for setting the attribute event - // handlers, which we want to ignore if our document is sandboxed - // without the allow-scripts keyword. - if (document.hasScriptsBlockedBySandbox) { - return true; - } - - // attribute event handlers should only be added if the - // document's CSP allows it. - if (!document.inlineScriptAllowedByCSP) { - return true; - } - - if (this._ignoreNextCall) { - return this._ignoreNextCall = false; - } - - if (aIgnoreNextCall) { - this._ignoreNextCall = true; - } - - if (typeof this["_on" + aName] == 'function') { - this.removeEventListener(aName, this["_on" + aName], false); - } - - switch (typeof aValue) - { - case "function": - this["_on" + aName] = aValue; - this.addEventListener(aName, this["_on" + aName], false); - break; - - case "string": - if (!aIgnoreNextCall) { - try { - // Function Xrays make this simple and safe. \o/ - this["_on" + aName] = new window.Function("event", aValue); - } - catch(e) { - return false; - } - this.addEventListener(aName, this["_on" + aName], false); - } - else { - this["_on" + aName] = aValue; - } - break; - - case "object": - this["_on" + aName] = aValue; - break; - - default: - this._ignoreNextCall = false; - throw new Error("Invalid argument for Marquee::on" + aName); - } - return true; - ]]> - </body> - </method> - - <method name="_fireEvent"> - <parameter name="aName"/> - <parameter name="aBubbles"/> - <parameter name="aCancelable"/> - <body> - <![CDATA[ - var e = document.createEvent("Events"); - e.initEvent(aName, aBubbles, aCancelable); - this.dispatchEvent(e); - ]]> - </body> - </method> - - <method name="start" exposeToUntrustedContent="true"> - <body> - <![CDATA[ - if (this.runId == 0) { - var myThis = this; - var lambda = function myTimeOutFunction(){myThis._doMove(false);} - this.runId = window.setTimeout(lambda, this._scrollDelay - this._deltaStartStop); - this._deltaStartStop = 0; - } - ]]> - </body> - </method> - - <method name="stop" exposeToUntrustedContent="true"> - <body> - <![CDATA[ - if (this.runId != 0) { - this._deltaStartStop = Date.now()- this._lastMoveDate; - clearTimeout(this.runId); - } - - this.runId = 0; - ]]> - </body> - </method> - - <method name="_doMove"> - <parameter name="aResetPosition"/> - <body> - <![CDATA[ - this._lastMoveDate = Date.now(); - - //startNewDirection is true at first load and whenever the direction is changed - if (this.startNewDirection) { - this.startNewDirection = false; //we only want this to run once every scroll direction change - - var corrvalue = 0; - - switch (this._direction) - { - case "up": - var height = document.defaultView.getComputedStyle(this, "").height; - this.outerDiv.style.height = height; - if (this.originalHeight > this.outerDiv.offsetHeight) { - corrvalue = this.originalHeight - this.outerDiv.offsetHeight; - } - this.innerDiv.style.padding = height + " 0"; - this.dirsign = 1; - this.startAt = (this._behavior == 'alternate') ? (this.originalHeight - corrvalue) : 0; - this.stopAt = (this._behavior == 'alternate' || this._behavior == 'slide') ? - (parseInt(height) + corrvalue) : (this.originalHeight + parseInt(height)); - break; - - case "down": - var height = document.defaultView.getComputedStyle(this, "").height; - this.outerDiv.style.height = height; - if (this.originalHeight > this.outerDiv.offsetHeight) { - corrvalue = this.originalHeight - this.outerDiv.offsetHeight; - } - this.innerDiv.style.padding = height + " 0"; - this.dirsign = -1; - this.startAt = (this._behavior == 'alternate') ? - (parseInt(height) + corrvalue) : (this.originalHeight + parseInt(height)); - this.stopAt = (this._behavior == 'alternate' || this._behavior == 'slide') ? - (this.originalHeight - corrvalue) : 0; - break; - - case "right": - if (this.innerDiv.offsetWidth > this.outerDiv.offsetWidth) { - corrvalue = this.innerDiv.offsetWidth - this.outerDiv.offsetWidth; - } - this.dirsign = -1; - this.stopAt = (this._behavior == 'alternate' || this._behavior == 'slide') ? - (this.innerDiv.offsetWidth - corrvalue) : 0; - this.startAt = this.outerDiv.offsetWidth + ((this._behavior == 'alternate') ? - corrvalue : (this.innerDiv.offsetWidth + this.stopAt)); - break; - - case "left": - default: - if (this.innerDiv.offsetWidth > this.outerDiv.offsetWidth) { - corrvalue = this.innerDiv.offsetWidth - this.outerDiv.offsetWidth; - } - this.dirsign = 1; - this.startAt = (this._behavior == 'alternate') ? (this.innerDiv.offsetWidth - corrvalue) : 0; - this.stopAt = this.outerDiv.offsetWidth + - ((this._behavior == 'alternate' || this._behavior == 'slide') ? - corrvalue : (this.innerDiv.offsetWidth + this.startAt)); - } - - if (aResetPosition) { - this.newPosition = this.startAt; - this._fireEvent("start", false, false); - } - } //end if - - this.newPosition = this.newPosition + (this.dirsign * this._scrollAmount); - - if ((this.dirsign == 1 && this.newPosition > this.stopAt) || - (this.dirsign == -1 && this.newPosition < this.stopAt)) - { - switch (this._behavior) - { - case 'alternate': - // lets start afresh - this.startNewDirection = true; - - // swap direction - const swap = {left: "right", down: "up", up: "down", right: "left"}; - this._direction = swap[this._direction]; - this.newPosition = this.stopAt; - - if ((this._direction == "up") || (this._direction == "down")) { - this.outerDiv.scrollTop = this.newPosition; - } else { - this.outerDiv.scrollLeft = this.newPosition; - } - - if (this._loop != 1) { - this._fireEvent("bounce", false, true); - } - break; - - case 'slide': - if (this._loop > 1) { - this.newPosition = this.startAt; - } - break; - - default: - this.newPosition = this.startAt; - - if ((this._direction == "up") || (this._direction == "down")) { - this.outerDiv.scrollTop = this.newPosition; - } else { - this.outerDiv.scrollLeft = this.newPosition; - } - - //dispatch start event, even when this._loop == 1, comp. with IE6 - this._fireEvent("start", false, false); - } - - if (this._loop > 1) { - this._loop--; - } else if (this._loop == 1) { - if ((this._direction == "up") || (this._direction == "down")) { - this.outerDiv.scrollTop = this.stopAt; - } else { - this.outerDiv.scrollLeft = this.stopAt; - } - this.stop(); - this._fireEvent("finish", false, true); - return; - } - } - else { - if ((this._direction == "up") || (this._direction == "down")) { - this.outerDiv.scrollTop = this.newPosition; - } else { - this.outerDiv.scrollLeft = this.newPosition; - } - } - - var myThis = this; - var lambda = function myTimeOutFunction(){myThis._doMove(false);} - this.runId = window.setTimeout(lambda, this._scrollDelay); - ]]> - </body> - </method> - - <method name="init"> - <body> - <![CDATA[ - this.stop(); - - if ((this._direction != "up") && (this._direction != "down")) { - var width = window.getComputedStyle(this, "").width; - this.innerDiv.parentNode.style.margin = '0 ' + width; - - //XXX Adding the margin sometimes causes the marquee to widen, - // see testcase from bug bug 364434: - // https://bugzilla.mozilla.org/attachment.cgi?id=249233 - // Just add a fixed width with current marquee's width for now - if (width != window.getComputedStyle(this, "").width) { - var width = window.getComputedStyle(this, "").width; - this.outerDiv.style.width = width; - this.innerDiv.parentNode.style.margin = '0 ' + width; - } - } - else { - // store the original height before we add padding - this.innerDiv.style.padding = 0; - this.originalHeight = this.innerDiv.offsetHeight; - } - - this._doMove(true); - ]]> - </body> - </method> - - <method name="_mutationActor"> - <parameter name="aMutations"/> - <body> - <![CDATA[ - while (aMutations.length > 0) { - var mutation = aMutations.shift(); - var attrName = mutation.attributeName.toLowerCase(); - var oldValue = mutation.oldValue; - var target = mutation.target; - var newValue = target.getAttribute(attrName); - - if (oldValue != newValue) { - switch (attrName) { - case "loop": - target._set_loop(newValue); - if (target.rundId == 0) { - target.start(); - } - break; - case "scrollamount": - target._set_scrollAmount(newValue); - break; - case "scrolldelay": - target._set_scrollDelay(newValue); - target.stop(); - target.start(); - break; - case "truespeed": - //needed to update target._scrollDelay - var myThis = target; - var lambda = function() {myThis._set_scrollDelay(myThis.getAttribute('scrolldelay'));} - window.setTimeout(lambda, 0); - break; - case "behavior": - target._set_behavior(newValue); - target.startNewDirection = true; - if ((oldValue == "slide" && target.newPosition == target.stopAt) || - newValue == "alternate" || newValue == "slide") { - target.stop(); - target._doMove(true); - } - break; - case "direction": - if (!newValue) { - newValue = "left"; - } - target._set_direction(newValue); - break; - case "width": - case "height": - target.startNewDirection = true; - break; - case "onstart": - target._setEventListener("start", newValue); - break; - case "onfinish": - target._setEventListener("finish", newValue); - break; - case "onbounce": - target._setEventListener("bounce", newValue); - break; - } - } - } - ]]> - </body> - </method> - - <constructor> - <![CDATA[ - // Set up state. - this._scrollAmount = 6; - this._scrollDelay = 85; - this._direction = "left"; - this._behavior = "scroll"; - this._loop = -1; - this.dirsign = 1; - this.startAt = 0; - this.stopAt = 0; - this.newPosition = 0; - this.runId = 0; - this.originalHeight = 0; - this.startNewDirection = true; - - // hack needed to fix js error, see bug 386470 - var myThis = this; - var lambda = function myScopeFunction() { if (myThis.init) myThis.init(); } - - this._set_direction(this.getAttribute('direction')); - this._set_behavior(this.getAttribute('behavior')); - this._set_scrollDelay(this.getAttribute('scrolldelay')); - this._set_scrollAmount(this.getAttribute('scrollamount')); - this._set_loop(this.getAttribute('loop')); - this._setEventListener("start", this.getAttribute("onstart")); - this._setEventListener("finish", this.getAttribute("onfinish")); - this._setEventListener("bounce", this.getAttribute("onbounce")); - this.startNewDirection = true; - - this._mutationObserver = new MutationObserver(this._mutationActor); - this._mutationObserver.observe(this, { attributes: true, - attributeOldValue: true, - attributeFilter: ['loop', 'scrollamount', 'scrolldelay', '', 'truespeed', 'behavior', - 'direction', 'width', 'height', 'onstart', 'onfinish', 'onbounce'] }); - - // init needs to be run after the page has loaded in order to calculate - // the correct height/width - if (document.readyState == "complete") { - lambda(); - } else { - window.addEventListener("load", lambda, false); - } - ]]> - </constructor> - </implementation> - - </binding> - - <binding id="marquee-horizontal" bindToUntrustedContent="true" - extends="chrome://xbl-marquee/content/xbl-marquee.xml#marquee" - inheritstyle="false"> - - <!-- White-space isn't allowed because a marquee could be - inside 'white-space: pre' --> - <content> - <html:div style="display: -moz-box; overflow: hidden; width: -moz-available;" - ><html:div style="display: -moz-box;" - ><html:div class="innerDiv" style="display: table; border-spacing: 0;" - ><html:div - ><children - /></html:div - ></html:div - ></html:div - ></html:div> - </content> - - </binding> - - <binding id="marquee-vertical" bindToUntrustedContent="true" - extends="chrome://xbl-marquee/content/xbl-marquee.xml#marquee" - inheritstyle="false"> - - <!-- White-space isn't allowed because a marquee could be - inside 'white-space: pre' --> - <content> - <html:div style="overflow: hidden; width: -moz-available;" - ><html:div class="innerDiv" - ><children - /></html:div - ></html:div> - </content> - - </binding> - - <binding id="marquee-horizontal-editable" bindToUntrustedContent="true" - inheritstyle="false"> - - <!-- White-space isn't allowed because a marquee could be - inside 'white-space: pre' --> - <content> - <html:div style="display: inline-block; overflow: auto; width: -moz-available;" - ><children - /></html:div> - </content> - - </binding> - - <binding id="marquee-vertical-editable" bindToUntrustedContent="true" - inheritstyle="false"> - - <!-- White-space isn't allowed because a marquee could be - inside 'white-space: pre' --> - <content> - <html:div style="overflow: auto; height: inherit; width: -moz-available;" - ><children/></html:div> - </content> - - </binding> - -</bindings> diff --git a/parser/html/java/htmlparser/src/nu/validator/htmlparser/impl/ElementName.java b/parser/html/java/htmlparser/src/nu/validator/htmlparser/impl/ElementName.java index 4b87d3fde2..c888cdae12 100644 --- a/parser/html/java/htmlparser/src/nu/validator/htmlparser/impl/ElementName.java +++ b/parser/html/java/htmlparser/src/nu/validator/htmlparser/impl/ElementName.java @@ -1191,10 +1191,6 @@ public final class ElementName // CPPONLY: NS_NewHTMLUnknownElement, // CPPONLY: NS_NewSVGUnknownElement, TreeBuilder.OTHER); - public static final ElementName MARQUEE = new ElementName("marquee", "marquee", - // CPPONLY: NS_NewHTMLDivElement, - // CPPONLY: NS_NewSVGUnknownElement, - TreeBuilder.MARQUEE_OR_APPLET | SPECIAL | SCOPING); public static final ElementName MTABLE = new ElementName("mtable", "mtable", // CPPONLY: NS_NewHTMLUnknownElement, // CPPONLY: NS_NewSVGUnknownElement, @@ -2268,18 +2264,18 @@ public final class ElementName // CPPONLY: NS_NewSVGUnknownElement, TreeBuilder.TBODY_OR_THEAD_OR_TFOOT | SPECIAL | FOSTER_PARENTING | OPTIONAL_END_TAG); private final static @NoLength ElementName[] ELEMENT_NAMES = { - VKERN, + AUDIO, LOGBASE, FIELDSET, DATA, - LI, + IMAGINARYI, CANVAS, QUOTIENT, PRE, ARTICLE, - DIALOG, - ARCTAN, - LISTENER, + FEFUNCG, + ARCSIN, + MUNDER, REALS, MROOT, MROW, @@ -2287,11 +2283,11 @@ public final class ElementName G, DD, ELLIPSE, - STYLE, - COTH, - INTERVAL, - MN, - BR, + TABLE, + GLYPH, + OL, + KEYGEN, + ABBR, NOTANUMBER, MPRESCRIPTS, CARTESIANPRODUCT, @@ -2307,16 +2303,16 @@ public final class ElementName HEAD, CONJUGATE, FRAME, - OTHERWISE, - ALTGLYPHDEF, - ARCTANH, - TH, - TBREAK, - ANIMATETRANSFORM, - CAPTION, - OPTION, - MALIGNGROUP, - FECOMPONENTTRANSFER, + PIECE, + DIFF, + ARCSINH, + SECH, + TRACK, + ACRONYM, + CONDITION, + POLYGON, + MSUBSUP, + FILTER, MUNDEROVER, SELECTOR, EXISTS, @@ -2347,26 +2343,26 @@ public final class ElementName DEGREE, FEIMAGE, IMAGE, - MTABLE, - PIECEWISE, - TRANSPOSE, - PARTIALDIFF, - LISTING, - ARCCOTH, - MATH, - TANH, - LINK, - CURL, - REAL, - MENUITEM, - ANIMATEMOTION, - IN, - MEDIAN, - SPAN, - VIDEO, - OPTGROUP, - CENTER, - FEGAUSSIANBLUR, + MSTYLE, + RULE, + TEMPLATE, + SETDIFF, + STRONG, + CSCH, + MPATH, + TEXTPATH, + MARK, + FACTORIAL, + SMALL, + MPHANTOM, + BUTTON, + FIGCAPTION, + MAIN, + SECTION, + COLGROUP, + SAMP, + CURSOR, + HEADER, METER, MLABELEDTR, TR, @@ -2428,45 +2424,45 @@ public final class ElementName FALSE, INVERSE, MODE, - MENCLOSE, - POLYLINE, - SOURCE, - TITLE, - TRUE, - FACTOROF, - TREF, - FEDIFFUSELIGHTING, - ARCSECH, - ALTGLYPH, - COSH, - MGLYPH, - PREFETCH, - SWITCH, - CI, - MI, - MALIGNMARK, - DL, - FORALL, - LABEL, - SYMBOL, - EM, - PARAM, - ANIMATION, - FN, - DOMAIN, - HKERN, - LAPLACIAN, - MACTION, - PATTERN, - TSPAN, - MO, - FEDISPLACEMENTMAP, - MSUP, - STOP, - ANIMATECOLOR, - HR, - FOOTER, - HANDLER, + NONE, + PICTURE, + STRIKE, + TIME, + VARIANCE, + GLYPHREF, + CEILING, + FESPECULARLIGHTING, + ARCCSCH, + ARCCOSH, + CLIPPATH, + MISSING_GLYPH, + PATH, + SINH, + FONT_FACE_URI, + PI, + MASK, + CSYMBOL, + HTML, + UL, + ALTGLYPHITEM, + FORM, + CN, + ANNOTATION, + CODOMAIN, + DOMAINOFAPPLICATION, + LN, + MEAN, + NOTIN, + RELN, + UNION, + TENDSTO, + HGROUP, + RP, + EQ, + BVAR, + FEFUNCR, + FLOOR, + OR, MARKER, MOVER, MERROR, @@ -2588,100 +2584,99 @@ public final class ElementName IFRAME, LINE, MSPACE, - MARQUEE, - MSTYLE, - NONE, - PIECE, - PICTURE, - RULE, - STRIKE, - TABLE, - TIME, - TEMPLATE, - VARIANCE, - DIFF, - GLYPHREF, - SETDIFF, - CEILING, - FEFUNCG, - FESPECULARLIGHTING, - STRONG, - ARCCSCH, - ARCSINH, - ARCCOSH, - CSCH, - CLIPPATH, - GLYPH, - MISSING_GLYPH, - MPATH, - PATH, - SECH, - SINH, - TEXTPATH, - FONT_FACE_URI, - IMAGINARYI, - PI, - MARK, - MASK, - TRACK, - CSYMBOL, - FACTORIAL, - HTML, - OL, - UL, - SMALL, - ALTGLYPHITEM, - ACRONYM, - FORM, - MPHANTOM, - CN, - ARCSIN, - ANNOTATION, - BUTTON, - CODOMAIN, - CONDITION, - DOMAINOFAPPLICATION, - FIGCAPTION, - LN, - KEYGEN, - MEAN, - MAIN, - NOTIN, - POLYGON, - RELN, - SECTION, - UNION, - AUDIO, - TENDSTO, - COLGROUP, - HGROUP, - MSUBSUP, - RP, - SAMP, - EQ, - ABBR, - BVAR, - CURSOR, - FEFUNCR, - FILTER, - FLOOR, - HEADER, - OR, - MUNDER, + MTABLE, + MENCLOSE, + OTHERWISE, + POLYLINE, + PIECEWISE, + SOURCE, + STYLE, + TITLE, + TRANSPOSE, + TRUE, + ALTGLYPHDEF, + FACTOROF, + PARTIALDIFF, + TREF, + DIALOG, + FEDIFFUSELIGHTING, + LISTING, + ARCSECH, + ARCTANH, + ALTGLYPH, + ARCCOTH, + COSH, + COTH, + MGLYPH, + MATH, + PREFETCH, + TH, + SWITCH, + TANH, + CI, + LI, + MI, + LINK, + MALIGNMARK, + TBREAK, + DL, + CURL, + FORALL, + INTERVAL, + LABEL, + REAL, + SYMBOL, + ANIMATETRANSFORM, + EM, + MENUITEM, + PARAM, + ARCTAN, + ANIMATION, + ANIMATEMOTION, + FN, + CAPTION, + DOMAIN, + IN, + HKERN, + MN, + LAPLACIAN, + MEDIAN, + MACTION, + OPTION, + PATTERN, + SPAN, + TSPAN, + VKERN, + MO, + VIDEO, + FEDISPLACEMENTMAP, + MALIGNGROUP, + MSUP, + OPTGROUP, + STOP, + BR, + ANIMATECOLOR, + CENTER, + HR, + FECOMPONENTTRANSFER, + FOOTER, + FEGAUSSIANBLUR, + HANDLER, + LISTENER, }; private final static int[] ELEMENT_HASHES = { - 1909280949, + 1914900309, 1753057319, 2001349704, 1681770564, - 1818230786, + 1818700314, 1982935782, 2007257240, 58773795, 1747176599, - 1782357526, - 1897999926, - 1970938456, + 1783210839, + 1898130486, + 1971457766, 1990969429, 2005181733, 2055514836, @@ -2689,11 +2684,11 @@ public final class ElementName 62390273, 1730150402, 1749395095, - 1756625221, - 1798693940, - 1868641064, - 1902641154, - 1963982850, + 1757137429, + 1800730821, + 1870135298, + 1903302038, + 1965115924, 1971981018, 1988486811, 1999745104, @@ -2709,16 +2704,16 @@ public final class ElementName 1733890180, 1748355193, 1749813541, - 1754634617, - 1763839627, - 1797540167, - 1805647874, - 1857622310, - 1881498736, - 1899272519, - 1905563974, - 1938171179, - 1967788867, + 1754894485, + 1765431364, + 1797544247, + 1806799156, + 1857653029, + 1881613047, + 1899272521, + 1906087319, + 1938172967, + 1967795910, 1971467002, 1974775352, 1984294038, @@ -2749,26 +2744,26 @@ public final class ElementName 1748642422, 1749715159, 1751288021, - 1753467414, - 1755158905, - 1757259017, - 1771722827, - 1786534215, - 1797645367, - 1803929812, - 1807501636, - 1853642948, - 1865773108, - 1873350948, - 1887579800, - 1898223949, - 1900544002, - 1904285766, - 1907435316, - 1925844629, - 1939219752, - 1966223078, - 1968053806, + 1753479494, + 1756098852, + 1757268168, + 1773295687, + 1790207270, + 1798417460, + 1803929861, + 1807599880, + 1854228692, + 1867061545, + 1874053333, + 1887743720, + 1898753862, + 1900845386, + 1904412884, + 1907661127, + 1932928296, + 1941178676, + 1966386470, + 1968836118, 1971465813, 1971703386, 1973420034, @@ -2830,45 +2825,45 @@ public final class ElementName 1749917205, 1751493207, 1753343188, - 1753588936, - 1755076808, - 1756474198, - 1757146773, - 1757293380, - 1766632184, - 1773808452, - 1783388497, - 1797361975, - 1797585096, - 1798677556, - 1803876550, - 1805233752, - 1806806678, - 1813512194, - 1818755074, - 1854228698, - 1864368130, - 1867237670, - 1870268949, - 1874102998, - 1881669634, - 1889085973, - 1898223945, - 1898971138, - 1899694294, - 1901940917, - 1903761465, - 1904515399, - 1906135367, - 1907959605, - 1919418370, - 1934172497, - 1938173140, - 1941221172, - 1965334268, - 1967128578, - 1967795958, - 1968840263, + 1754031332, + 1755148615, + 1756600614, + 1757157700, + 1758044696, + 1766992520, + 1781815495, + 1783388498, + 1797368887, + 1797628983, + 1798686984, + 1803876557, + 1805502724, + 1806981428, + 1817013469, + 1820327938, + 1854245076, + 1865714391, + 1868312196, + 1873281026, + 1881288348, + 1884120164, + 1897398274, + 1898223946, + 1899170008, + 1899796819, + 1902116866, + 1904283860, + 1904946933, + 1907085604, + 1908709605, + 1925049415, + 1935549734, + 1938817026, + 1948778498, + 1965634084, + 1967760215, + 1967957189, + 1970798594, 1971461414, 1971466997, 1971628838, @@ -2990,85 +2985,84 @@ public final class ElementName 1751386406, 1752979652, 1753319686, - 1753362711, - 1753479494, - 1754031332, - 1754894485, - 1755148615, - 1756098852, - 1756600614, - 1757137429, - 1757157700, - 1757268168, - 1758044696, - 1765431364, - 1766992520, - 1773295687, - 1781815495, - 1783210839, - 1783388498, - 1790207270, - 1797368887, - 1797544247, - 1797628983, - 1798417460, - 1798686984, - 1800730821, - 1803876557, - 1803929861, - 1805502724, - 1806799156, - 1806981428, - 1807599880, - 1817013469, - 1818700314, - 1820327938, - 1854228692, - 1854245076, - 1857653029, - 1865714391, - 1867061545, - 1868312196, - 1870135298, - 1873281026, - 1874053333, - 1881288348, - 1881613047, - 1884120164, - 1887743720, - 1897398274, - 1898130486, - 1898223946, - 1898753862, - 1899170008, - 1899272521, - 1899796819, - 1900845386, - 1902116866, - 1903302038, - 1904283860, - 1904412884, - 1904946933, - 1906087319, - 1907085604, - 1907661127, - 1908709605, - 1914900309, - 1925049415, - 1932928296, - 1935549734, - 1938172967, - 1938817026, - 1941178676, - 1948778498, - 1965115924, - 1965634084, - 1966386470, - 1967760215, - 1967795910, - 1967957189, - 1968836118, - 1970798594, - 1971457766, + 1753467414, + 1753588936, + 1754634617, + 1755076808, + 1755158905, + 1756474198, + 1756625221, + 1757146773, + 1757259017, + 1757293380, + 1763839627, + 1766632184, + 1771722827, + 1773808452, + 1782357526, + 1783388497, + 1786534215, + 1797361975, + 1797540167, + 1797585096, + 1797645367, + 1798677556, + 1798693940, + 1803876550, + 1803929812, + 1805233752, + 1805647874, + 1806806678, + 1807501636, + 1813512194, + 1818230786, + 1818755074, + 1853642948, + 1854228698, + 1857622310, + 1864368130, + 1865773108, + 1867237670, + 1868641064, + 1870268949, + 1873350948, + 1874102998, + 1881498736, + 1881669634, + 1887579800, + 1889085973, + 1897999926, + 1898223945, + 1898223949, + 1898971138, + 1899272519, + 1899694294, + 1900544002, + 1901940917, + 1902641154, + 1903761465, + 1904285766, + 1904515399, + 1905563974, + 1906135367, + 1907435316, + 1907959605, + 1909280949, + 1919418370, + 1925844629, + 1934172497, + 1938171179, + 1938173140, + 1939219752, + 1941221172, + 1963982850, + 1965334268, + 1966223078, + 1967128578, + 1967788867, + 1967795958, + 1968053806, + 1968840263, + 1970938456, }; } diff --git a/parser/html/nsHtml5AtomList.h b/parser/html/nsHtml5AtomList.h index 0728f439b6..6c8874dde0 100644 --- a/parser/html/nsHtml5AtomList.h +++ b/parser/html/nsHtml5AtomList.h @@ -800,7 +800,6 @@ HTML5_ATOM(inverse, "inverse") HTML5_ATOM(line, "line") HTML5_ATOM(logbase, "logbase") HTML5_ATOM(mspace, "mspace") -HTML5_ATOM(marquee, "marquee") HTML5_ATOM(mtable, "mtable") HTML5_ATOM(mstyle, "mstyle") HTML5_ATOM(menclose, "menclose") diff --git a/parser/html/nsHtml5ElementName.cpp b/parser/html/nsHtml5ElementName.cpp index ecdfb102d4..af9436f086 100644 --- a/parser/html/nsHtml5ElementName.cpp +++ b/parser/html/nsHtml5ElementName.cpp @@ -217,7 +217,6 @@ nsHtml5ElementName* nsHtml5ElementName::ELT_LINE = nullptr; nsHtml5ElementName* nsHtml5ElementName::ELT_LOGBASE = nullptr; nsHtml5ElementName* nsHtml5ElementName::ELT_MSPACE = nullptr; nsHtml5ElementName* nsHtml5ElementName::ELT_MODE = nullptr; -nsHtml5ElementName* nsHtml5ElementName::ELT_MARQUEE = nullptr; nsHtml5ElementName* nsHtml5ElementName::ELT_MTABLE = nullptr; nsHtml5ElementName* nsHtml5ElementName::ELT_MSTYLE = nullptr; nsHtml5ElementName* nsHtml5ElementName::ELT_MENCLOSE = nullptr; @@ -487,7 +486,7 @@ nsHtml5ElementName* nsHtml5ElementName::ELT_RUBY = nullptr; nsHtml5ElementName* nsHtml5ElementName::ELT_SUMMARY = nullptr; nsHtml5ElementName* nsHtml5ElementName::ELT_TBODY = nullptr; nsHtml5ElementName** nsHtml5ElementName::ELEMENT_NAMES = 0; -static int32_t const ELEMENT_HASHES_DATA[] = { 1909280949, 1753057319, 2001349704, 1681770564, 1818230786, 1982935782, 2007257240, 58773795, 1747176599, 1782357526, 1897999926, 1970938456, 1990969429, 2005181733, 2055514836, 54061139, 62390273, 1730150402, 1749395095, 1756625221, 1798693940, 1868641064, 1902641154, 1963982850, 1971981018, 1988486811, 1999745104, 2002882873, 2005925890, 2008340774, 2082727685, 51965171, 57200451, 60350803, 69730305, 1703292116, 1733890180, 1748355193, 1749813541, 1754634617, 1763839627, 1797540167, 1805647874, 1857622310, 1881498736, 1899272519, 1905563974, 1938171179, 1967788867, 1971467002, 1974775352, 1984294038, 1988972590, 1998585858, 2000825752, 2001392796, 2004557976, 2005543977, 2006560839, 2008125638, 2009706573, 2068523853, 2087049448, 51434643, 52488851, 56151587, 57210387, 59826259, 60354131, 63438849, 926941186, 1686489160, 1715300574, 1732381397, 1737099991, 1748100148, 1748642422, 1749715159, 1751288021, 1753467414, 1755158905, 1757259017, 1771722827, 1786534215, 1797645367, 1803929812, 1807501636, 1853642948, 1865773108, 1873350948, 1887579800, 1898223949, 1900544002, 1904285766, 1907435316, 1925844629, 1939219752, 1966223078, 1968053806, 1971465813, 1971703386, 1973420034, 1982106678, 1983533124, 1986351224, 1988502165, 1990037800, 1991350601, 1998883894, 2000439531, 2001281328, 2001349736, 2001495140, 2003183333, 2004719812, 2005279787, 2005719336, 2006036556, 2006896969, 2007781534, 2008165414, 2008994116, 2041712436, 2060065124, 2070023911, 2085266636, 2092255447, 50910499, 51957043, 52485715, 53012355, 55110883, 56680499, 57206291, 57732851, 59768833, 60345427, 60352083, 61395251, 62973651, 67633153, 893386754, 960495618, 1682547543, 1689922072, 1713515574, 1716349149, 1731545140, 1733076167, 1736576231, 1740181637, 1747814436, 1748228205, 1748607578, 1748879564, 1749656156, 1749801286, 1749917205, 1751493207, 1753343188, 1753588936, 1755076808, 1756474198, 1757146773, 1757293380, 1766632184, 1773808452, 1783388497, 1797361975, 1797585096, 1798677556, 1803876550, 1805233752, 1806806678, 1813512194, 1818755074, 1854228698, 1864368130, 1867237670, 1870268949, 1874102998, 1881669634, 1889085973, 1898223945, 1898971138, 1899694294, 1901940917, 1903761465, 1904515399, 1906135367, 1907959605, 1919418370, 1934172497, 1938173140, 1941221172, 1965334268, 1967128578, 1967795958, 1968840263, 1971461414, 1971466997, 1971628838, 1971938532, 1973040373, 1974771450, 1976348214, 1982173479, 1983002201, 1983633431, 1986140359, 1986527234, 1988486813, 1988763672, 1989812374, 1990074116, 1990969577, 1991909525, 1998724870, 1999397992, 2000158722, 2000525512, 2000965834, 2001309869, 2001349720, 2001392795, 2001392798, 2002780162, 2003062853, 2004557973, 2004635806, 2005160150, 2005231925, 2005324101, 2005543979, 2005766372, 2006028454, 2006329158, 2006592552, 2006974466, 2007601444, 2007803172, 2008133709, 2008325940, 2008851557, 2009276567, 2021937364, 2051837468, 2055515017, 2066000646, 2068523856, 2072193862, 2083120164, 2087012585, 2091479332, 2092557349, 50908899, 50916387, 51438659, 51961587, 51965683, 52486755, 52490899, 54054451, 55104723, 55111395, 56677619, 56682579, 57205395, 57207619, 57731155, 57733651, 59244545, 59821379, 60345171, 60347747, 60351123, 60352339, 60875283, 61925907, 62450211, 62974707, 67108865, 68681729, 876609538, 910163970, 943718402, 1679960596, 1682186266, 1685703382, 1686491348, 1699324759, 1703936002, 1713736758, 1715310660, 1719741029, 1730965751, 1732069431, 1733054663, 1733372532, 1736200310, 1736576583, 1738539010, 1747048757, 1747306711, 1747838298, 1748225318, 1748346119, 1748359220, 1748621670, 1748846791, 1749272732, 1749649513, 1749673195, 1749723735, 1749813486, 1749905526, 1749932347, 1751386406, 1752979652, 1753319686, 1753362711, 1753479494, 1754031332, 1754894485, 1755148615, 1756098852, 1756600614, 1757137429, 1757157700, 1757268168, 1758044696, 1765431364, 1766992520, 1773295687, 1781815495, 1783210839, 1783388498, 1790207270, 1797368887, 1797544247, 1797628983, 1798417460, 1798686984, 1800730821, 1803876557, 1803929861, 1805502724, 1806799156, 1806981428, 1807599880, 1817013469, 1818700314, 1820327938, 1854228692, 1854245076, 1857653029, 1865714391, 1867061545, 1868312196, 1870135298, 1873281026, 1874053333, 1881288348, 1881613047, 1884120164, 1887743720, 1897398274, 1898130486, 1898223946, 1898753862, 1899170008, 1899272521, 1899796819, 1900845386, 1902116866, 1903302038, 1904283860, 1904412884, 1904946933, 1906087319, 1907085604, 1907661127, 1908709605, 1914900309, 1925049415, 1932928296, 1935549734, 1938172967, 1938817026, 1941178676, 1948778498, 1965115924, 1965634084, 1966386470, 1967760215, 1967795910, 1967957189, 1968836118, 1970798594, 1971457766 }; +static int32_t const ELEMENT_HASHES_DATA[] = { 1914900309, 1753057319, 2001349704, 1681770564, 1818700314, 1982935782, 2007257240, 58773795, 1747176599, 1783210839, 1898130486, 1971457766, 1990969429, 2005181733, 2055514836, 54061139, 62390273, 1730150402, 1749395095, 1757137429, 1800730821, 1870135298, 1903302038, 1965115924, 1971981018, 1988486811, 1999745104, 2002882873, 2005925890, 2008340774, 2082727685, 51965171, 57200451, 60350803, 69730305, 1703292116, 1733890180, 1748355193, 1749813541, 1754894485, 1765431364, 1797544247, 1806799156, 1857653029, 1881613047, 1899272521, 1906087319, 1938172967, 1967795910, 1971467002, 1974775352, 1984294038, 1988972590, 1998585858, 2000825752, 2001392796, 2004557976, 2005543977, 2006560839, 2008125638, 2009706573, 2068523853, 2087049448, 51434643, 52488851, 56151587, 57210387, 59826259, 60354131, 63438849, 926941186, 1686489160, 1715300574, 1732381397, 1737099991, 1748100148, 1748642422, 1749715159, 1751288021, 1753479494, 1756098852, 1757268168, 1773295687, 1790207270, 1798417460, 1803929861, 1807599880, 1854228692, 1867061545, 1874053333, 1887743720, 1898753862, 1900845386, 1904412884, 1907661127, 1932928296, 1941178676, 1966386470, 1968836118, 1971465813, 1971703386, 1973420034, 1982106678, 1983533124, 1986351224, 1988502165, 1990037800, 1991350601, 1998883894, 2000439531, 2001281328, 2001349736, 2001495140, 2003183333, 2004719812, 2005279787, 2005719336, 2006036556, 2006896969, 2007781534, 2008165414, 2008994116, 2041712436, 2060065124, 2070023911, 2085266636, 2092255447, 50910499, 51957043, 52485715, 53012355, 55110883, 56680499, 57206291, 57732851, 59768833, 60345427, 60352083, 61395251, 62973651, 67633153, 893386754, 960495618, 1682547543, 1689922072, 1713515574, 1716349149, 1731545140, 1733076167, 1736576231, 1740181637, 1747814436, 1748228205, 1748607578, 1748879564, 1749656156, 1749801286, 1749917205, 1751493207, 1753343188, 1754031332, 1755148615, 1756600614, 1757157700, 1758044696, 1766992520, 1781815495, 1783388498, 1797368887, 1797628983, 1798686984, 1803876557, 1805502724, 1806981428, 1817013469, 1820327938, 1854245076, 1865714391, 1868312196, 1873281026, 1881288348, 1884120164, 1897398274, 1898223946, 1899170008, 1899796819, 1902116866, 1904283860, 1904946933, 1907085604, 1908709605, 1925049415, 1935549734, 1938817026, 1948778498, 1965634084, 1967760215, 1967957189, 1970798594, 1971461414, 1971466997, 1971628838, 1971938532, 1973040373, 1974771450, 1976348214, 1982173479, 1983002201, 1983633431, 1986140359, 1986527234, 1988486813, 1988763672, 1989812374, 1990074116, 1990969577, 1991909525, 1998724870, 1999397992, 2000158722, 2000525512, 2000965834, 2001309869, 2001349720, 2001392795, 2001392798, 2002780162, 2003062853, 2004557973, 2004635806, 2005160150, 2005231925, 2005324101, 2005543979, 2005766372, 2006028454, 2006329158, 2006592552, 2006974466, 2007601444, 2007803172, 2008133709, 2008325940, 2008851557, 2009276567, 2021937364, 2051837468, 2055515017, 2066000646, 2068523856, 2072193862, 2083120164, 2087012585, 2091479332, 2092557349, 50908899, 50916387, 51438659, 51961587, 51965683, 52486755, 52490899, 54054451, 55104723, 55111395, 56677619, 56682579, 57205395, 57207619, 57731155, 57733651, 59244545, 59821379, 60345171, 60347747, 60351123, 60352339, 60875283, 61925907, 62450211, 62974707, 67108865, 68681729, 876609538, 910163970, 943718402, 1679960596, 1682186266, 1685703382, 1686491348, 1699324759, 1703936002, 1713736758, 1715310660, 1719741029, 1730965751, 1732069431, 1733054663, 1733372532, 1736200310, 1736576583, 1738539010, 1747048757, 1747306711, 1747838298, 1748225318, 1748346119, 1748359220, 1748621670, 1748846791, 1749272732, 1749649513, 1749673195, 1749723735, 1749813486, 1749905526, 1749932347, 1751386406, 1752979652, 1753319686, 1753467414, 1753588936, 1754634617, 1755076808, 1755158905, 1756474198, 1756625221, 1757146773, 1757259017, 1757293380, 1763839627, 1766632184, 1771722827, 1773808452, 1782357526, 1783388497, 1786534215, 1797361975, 1797540167, 1797585096, 1797645367, 1798677556, 1798693940, 1803876550, 1803929812, 1805233752, 1805647874, 1806806678, 1807501636, 1813512194, 1818230786, 1818755074, 1853642948, 1854228698, 1857622310, 1864368130, 1865773108, 1867237670, 1868641064, 1870268949, 1873350948, 1874102998, 1881498736, 1881669634, 1887579800, 1889085973, 1897999926, 1898223945, 1898223949, 1898971138, 1899272519, 1899694294, 1900544002, 1901940917, 1902641154, 1903761465, 1904285766, 1904515399, 1905563974, 1906135367, 1907435316, 1907959605, 1909280949, 1919418370, 1925844629, 1934172497, 1938171179, 1938173140, 1939219752, 1941221172, 1963982850, 1965334268, 1966223078, 1967128578, 1967788867, 1967795958, 1968053806, 1968840263, 1970938456 }; staticJArray<int32_t,int32_t> nsHtml5ElementName::ELEMENT_HASHES = { ELEMENT_HASHES_DATA, MOZ_ARRAY_LENGTH(ELEMENT_HASHES_DATA) }; void nsHtml5ElementName::initializeStatics() @@ -624,7 +623,6 @@ nsHtml5ElementName::initializeStatics() ELT_LOGBASE = new nsHtml5ElementName(nsHtml5Atoms::logbase, nsHtml5Atoms::logbase, NS_NewHTMLUnknownElement, NS_NewSVGUnknownElement, nsHtml5TreeBuilder::OTHER); ELT_MSPACE = new nsHtml5ElementName(nsHtml5Atoms::mspace, nsHtml5Atoms::mspace, NS_NewHTMLUnknownElement, NS_NewSVGUnknownElement, nsHtml5TreeBuilder::OTHER); ELT_MODE = new nsHtml5ElementName(nsHtml5Atoms::mode, nsHtml5Atoms::mode, NS_NewHTMLUnknownElement, NS_NewSVGUnknownElement, nsHtml5TreeBuilder::OTHER); - ELT_MARQUEE = new nsHtml5ElementName(nsHtml5Atoms::marquee, nsHtml5Atoms::marquee, NS_NewHTMLDivElement, NS_NewSVGUnknownElement, nsHtml5TreeBuilder::MARQUEE_OR_APPLET | SPECIAL | SCOPING); ELT_MTABLE = new nsHtml5ElementName(nsHtml5Atoms::mtable, nsHtml5Atoms::mtable, NS_NewHTMLUnknownElement, NS_NewSVGUnknownElement, nsHtml5TreeBuilder::OTHER); ELT_MSTYLE = new nsHtml5ElementName(nsHtml5Atoms::mstyle, nsHtml5Atoms::mstyle, NS_NewHTMLUnknownElement, NS_NewSVGUnknownElement, nsHtml5TreeBuilder::OTHER); ELT_MENCLOSE = new nsHtml5ElementName(nsHtml5Atoms::menclose, nsHtml5Atoms::menclose, NS_NewHTMLUnknownElement, NS_NewSVGUnknownElement, nsHtml5TreeBuilder::OTHER); @@ -893,19 +891,19 @@ nsHtml5ElementName::initializeStatics() ELT_RUBY = new nsHtml5ElementName(nsHtml5Atoms::ruby, nsHtml5Atoms::ruby, NS_NewHTMLElement, NS_NewSVGUnknownElement, nsHtml5TreeBuilder::RUBY_OR_SPAN_OR_SUB_OR_SUP_OR_VAR); ELT_SUMMARY = new nsHtml5ElementName(nsHtml5Atoms::summary, nsHtml5Atoms::summary, NS_NewHTMLSummaryElement, NS_NewSVGUnknownElement, nsHtml5TreeBuilder::ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL); ELT_TBODY = new nsHtml5ElementName(nsHtml5Atoms::tbody, nsHtml5Atoms::tbody, NS_NewHTMLTableSectionElement, NS_NewSVGUnknownElement, nsHtml5TreeBuilder::TBODY_OR_THEAD_OR_TFOOT | SPECIAL | FOSTER_PARENTING | OPTIONAL_END_TAG); - ELEMENT_NAMES = new nsHtml5ElementName*[400]; - ELEMENT_NAMES[0] = ELT_VKERN; + ELEMENT_NAMES = new nsHtml5ElementName*[399]; + ELEMENT_NAMES[0] = ELT_AUDIO; ELEMENT_NAMES[1] = ELT_LOGBASE; ELEMENT_NAMES[2] = ELT_FIELDSET; ELEMENT_NAMES[3] = ELT_DATA; - ELEMENT_NAMES[4] = ELT_LI; + ELEMENT_NAMES[4] = ELT_IMAGINARYI; ELEMENT_NAMES[5] = ELT_CANVAS; ELEMENT_NAMES[6] = ELT_QUOTIENT; ELEMENT_NAMES[7] = ELT_PRE; ELEMENT_NAMES[8] = ELT_ARTICLE; - ELEMENT_NAMES[9] = ELT_DIALOG; - ELEMENT_NAMES[10] = ELT_ARCTAN; - ELEMENT_NAMES[11] = ELT_LISTENER; + ELEMENT_NAMES[9] = ELT_FEFUNCG; + ELEMENT_NAMES[10] = ELT_ARCSIN; + ELEMENT_NAMES[11] = ELT_MUNDER; ELEMENT_NAMES[12] = ELT_REALS; ELEMENT_NAMES[13] = ELT_MROOT; ELEMENT_NAMES[14] = ELT_MROW; @@ -913,11 +911,11 @@ nsHtml5ElementName::initializeStatics() ELEMENT_NAMES[16] = ELT_G; ELEMENT_NAMES[17] = ELT_DD; ELEMENT_NAMES[18] = ELT_ELLIPSE; - ELEMENT_NAMES[19] = ELT_STYLE; - ELEMENT_NAMES[20] = ELT_COTH; - ELEMENT_NAMES[21] = ELT_INTERVAL; - ELEMENT_NAMES[22] = ELT_MN; - ELEMENT_NAMES[23] = ELT_BR; + ELEMENT_NAMES[19] = ELT_TABLE; + ELEMENT_NAMES[20] = ELT_GLYPH; + ELEMENT_NAMES[21] = ELT_OL; + ELEMENT_NAMES[22] = ELT_KEYGEN; + ELEMENT_NAMES[23] = ELT_ABBR; ELEMENT_NAMES[24] = ELT_NOTANUMBER; ELEMENT_NAMES[25] = ELT_MPRESCRIPTS; ELEMENT_NAMES[26] = ELT_CARTESIANPRODUCT; @@ -933,16 +931,16 @@ nsHtml5ElementName::initializeStatics() ELEMENT_NAMES[36] = ELT_HEAD; ELEMENT_NAMES[37] = ELT_CONJUGATE; ELEMENT_NAMES[38] = ELT_FRAME; - ELEMENT_NAMES[39] = ELT_OTHERWISE; - ELEMENT_NAMES[40] = ELT_ALTGLYPHDEF; - ELEMENT_NAMES[41] = ELT_ARCTANH; - ELEMENT_NAMES[42] = ELT_TH; - ELEMENT_NAMES[43] = ELT_TBREAK; - ELEMENT_NAMES[44] = ELT_ANIMATETRANSFORM; - ELEMENT_NAMES[45] = ELT_CAPTION; - ELEMENT_NAMES[46] = ELT_OPTION; - ELEMENT_NAMES[47] = ELT_MALIGNGROUP; - ELEMENT_NAMES[48] = ELT_FECOMPONENTTRANSFER; + ELEMENT_NAMES[39] = ELT_PIECE; + ELEMENT_NAMES[40] = ELT_DIFF; + ELEMENT_NAMES[41] = ELT_ARCSINH; + ELEMENT_NAMES[42] = ELT_SECH; + ELEMENT_NAMES[43] = ELT_TRACK; + ELEMENT_NAMES[44] = ELT_ACRONYM; + ELEMENT_NAMES[45] = ELT_CONDITION; + ELEMENT_NAMES[46] = ELT_POLYGON; + ELEMENT_NAMES[47] = ELT_MSUBSUP; + ELEMENT_NAMES[48] = ELT_FILTER; ELEMENT_NAMES[49] = ELT_MUNDEROVER; ELEMENT_NAMES[50] = ELT_SELECTOR; ELEMENT_NAMES[51] = ELT_EXISTS; @@ -973,26 +971,26 @@ nsHtml5ElementName::initializeStatics() ELEMENT_NAMES[76] = ELT_DEGREE; ELEMENT_NAMES[77] = ELT_FEIMAGE; ELEMENT_NAMES[78] = ELT_IMAGE; - ELEMENT_NAMES[79] = ELT_MTABLE; - ELEMENT_NAMES[80] = ELT_PIECEWISE; - ELEMENT_NAMES[81] = ELT_TRANSPOSE; - ELEMENT_NAMES[82] = ELT_PARTIALDIFF; - ELEMENT_NAMES[83] = ELT_LISTING; - ELEMENT_NAMES[84] = ELT_ARCCOTH; - ELEMENT_NAMES[85] = ELT_MATH; - ELEMENT_NAMES[86] = ELT_TANH; - ELEMENT_NAMES[87] = ELT_LINK; - ELEMENT_NAMES[88] = ELT_CURL; - ELEMENT_NAMES[89] = ELT_REAL; - ELEMENT_NAMES[90] = ELT_MENUITEM; - ELEMENT_NAMES[91] = ELT_ANIMATEMOTION; - ELEMENT_NAMES[92] = ELT_IN; - ELEMENT_NAMES[93] = ELT_MEDIAN; - ELEMENT_NAMES[94] = ELT_SPAN; - ELEMENT_NAMES[95] = ELT_VIDEO; - ELEMENT_NAMES[96] = ELT_OPTGROUP; - ELEMENT_NAMES[97] = ELT_CENTER; - ELEMENT_NAMES[98] = ELT_FEGAUSSIANBLUR; + ELEMENT_NAMES[79] = ELT_MSTYLE; + ELEMENT_NAMES[80] = ELT_RULE; + ELEMENT_NAMES[81] = ELT_TEMPLATE; + ELEMENT_NAMES[82] = ELT_SETDIFF; + ELEMENT_NAMES[83] = ELT_STRONG; + ELEMENT_NAMES[84] = ELT_CSCH; + ELEMENT_NAMES[85] = ELT_MPATH; + ELEMENT_NAMES[86] = ELT_TEXTPATH; + ELEMENT_NAMES[87] = ELT_MARK; + ELEMENT_NAMES[88] = ELT_FACTORIAL; + ELEMENT_NAMES[89] = ELT_SMALL; + ELEMENT_NAMES[90] = ELT_MPHANTOM; + ELEMENT_NAMES[91] = ELT_BUTTON; + ELEMENT_NAMES[92] = ELT_FIGCAPTION; + ELEMENT_NAMES[93] = ELT_MAIN; + ELEMENT_NAMES[94] = ELT_SECTION; + ELEMENT_NAMES[95] = ELT_COLGROUP; + ELEMENT_NAMES[96] = ELT_SAMP; + ELEMENT_NAMES[97] = ELT_CURSOR; + ELEMENT_NAMES[98] = ELT_HEADER; ELEMENT_NAMES[99] = ELT_METER; ELEMENT_NAMES[100] = ELT_MLABELEDTR; ELEMENT_NAMES[101] = ELT_TR; @@ -1054,45 +1052,45 @@ nsHtml5ElementName::initializeStatics() ELEMENT_NAMES[157] = ELT_FALSE; ELEMENT_NAMES[158] = ELT_INVERSE; ELEMENT_NAMES[159] = ELT_MODE; - ELEMENT_NAMES[160] = ELT_MENCLOSE; - ELEMENT_NAMES[161] = ELT_POLYLINE; - ELEMENT_NAMES[162] = ELT_SOURCE; - ELEMENT_NAMES[163] = ELT_TITLE; - ELEMENT_NAMES[164] = ELT_TRUE; - ELEMENT_NAMES[165] = ELT_FACTOROF; - ELEMENT_NAMES[166] = ELT_TREF; - ELEMENT_NAMES[167] = ELT_FEDIFFUSELIGHTING; - ELEMENT_NAMES[168] = ELT_ARCSECH; - ELEMENT_NAMES[169] = ELT_ALTGLYPH; - ELEMENT_NAMES[170] = ELT_COSH; - ELEMENT_NAMES[171] = ELT_MGLYPH; - ELEMENT_NAMES[172] = ELT_PREFETCH; - ELEMENT_NAMES[173] = ELT_SWITCH; - ELEMENT_NAMES[174] = ELT_CI; - ELEMENT_NAMES[175] = ELT_MI; - ELEMENT_NAMES[176] = ELT_MALIGNMARK; - ELEMENT_NAMES[177] = ELT_DL; - ELEMENT_NAMES[178] = ELT_FORALL; - ELEMENT_NAMES[179] = ELT_LABEL; - ELEMENT_NAMES[180] = ELT_SYMBOL; - ELEMENT_NAMES[181] = ELT_EM; - ELEMENT_NAMES[182] = ELT_PARAM; - ELEMENT_NAMES[183] = ELT_ANIMATION; - ELEMENT_NAMES[184] = ELT_FN; - ELEMENT_NAMES[185] = ELT_DOMAIN; - ELEMENT_NAMES[186] = ELT_HKERN; - ELEMENT_NAMES[187] = ELT_LAPLACIAN; - ELEMENT_NAMES[188] = ELT_MACTION; - ELEMENT_NAMES[189] = ELT_PATTERN; - ELEMENT_NAMES[190] = ELT_TSPAN; - ELEMENT_NAMES[191] = ELT_MO; - ELEMENT_NAMES[192] = ELT_FEDISPLACEMENTMAP; - ELEMENT_NAMES[193] = ELT_MSUP; - ELEMENT_NAMES[194] = ELT_STOP; - ELEMENT_NAMES[195] = ELT_ANIMATECOLOR; - ELEMENT_NAMES[196] = ELT_HR; - ELEMENT_NAMES[197] = ELT_FOOTER; - ELEMENT_NAMES[198] = ELT_HANDLER; + ELEMENT_NAMES[160] = ELT_NONE; + ELEMENT_NAMES[161] = ELT_PICTURE; + ELEMENT_NAMES[162] = ELT_STRIKE; + ELEMENT_NAMES[163] = ELT_TIME; + ELEMENT_NAMES[164] = ELT_VARIANCE; + ELEMENT_NAMES[165] = ELT_GLYPHREF; + ELEMENT_NAMES[166] = ELT_CEILING; + ELEMENT_NAMES[167] = ELT_FESPECULARLIGHTING; + ELEMENT_NAMES[168] = ELT_ARCCSCH; + ELEMENT_NAMES[169] = ELT_ARCCOSH; + ELEMENT_NAMES[170] = ELT_CLIPPATH; + ELEMENT_NAMES[171] = ELT_MISSING_GLYPH; + ELEMENT_NAMES[172] = ELT_PATH; + ELEMENT_NAMES[173] = ELT_SINH; + ELEMENT_NAMES[174] = ELT_FONT_FACE_URI; + ELEMENT_NAMES[175] = ELT_PI; + ELEMENT_NAMES[176] = ELT_MASK; + ELEMENT_NAMES[177] = ELT_CSYMBOL; + ELEMENT_NAMES[178] = ELT_HTML; + ELEMENT_NAMES[179] = ELT_UL; + ELEMENT_NAMES[180] = ELT_ALTGLYPHITEM; + ELEMENT_NAMES[181] = ELT_FORM; + ELEMENT_NAMES[182] = ELT_CN; + ELEMENT_NAMES[183] = ELT_ANNOTATION; + ELEMENT_NAMES[184] = ELT_CODOMAIN; + ELEMENT_NAMES[185] = ELT_DOMAINOFAPPLICATION; + ELEMENT_NAMES[186] = ELT_LN; + ELEMENT_NAMES[187] = ELT_MEAN; + ELEMENT_NAMES[188] = ELT_NOTIN; + ELEMENT_NAMES[189] = ELT_RELN; + ELEMENT_NAMES[190] = ELT_UNION; + ELEMENT_NAMES[191] = ELT_TENDSTO; + ELEMENT_NAMES[192] = ELT_HGROUP; + ELEMENT_NAMES[193] = ELT_RP; + ELEMENT_NAMES[194] = ELT_EQ; + ELEMENT_NAMES[195] = ELT_BVAR; + ELEMENT_NAMES[196] = ELT_FEFUNCR; + ELEMENT_NAMES[197] = ELT_FLOOR; + ELEMENT_NAMES[198] = ELT_OR; ELEMENT_NAMES[199] = ELT_MARKER; ELEMENT_NAMES[200] = ELT_MOVER; ELEMENT_NAMES[201] = ELT_MERROR; @@ -1214,86 +1212,85 @@ nsHtml5ElementName::initializeStatics() ELEMENT_NAMES[317] = ELT_IFRAME; ELEMENT_NAMES[318] = ELT_LINE; ELEMENT_NAMES[319] = ELT_MSPACE; - ELEMENT_NAMES[320] = ELT_MARQUEE; - ELEMENT_NAMES[321] = ELT_MSTYLE; - ELEMENT_NAMES[322] = ELT_NONE; - ELEMENT_NAMES[323] = ELT_PIECE; - ELEMENT_NAMES[324] = ELT_PICTURE; - ELEMENT_NAMES[325] = ELT_RULE; - ELEMENT_NAMES[326] = ELT_STRIKE; - ELEMENT_NAMES[327] = ELT_TABLE; - ELEMENT_NAMES[328] = ELT_TIME; - ELEMENT_NAMES[329] = ELT_TEMPLATE; - ELEMENT_NAMES[330] = ELT_VARIANCE; - ELEMENT_NAMES[331] = ELT_DIFF; - ELEMENT_NAMES[332] = ELT_GLYPHREF; - ELEMENT_NAMES[333] = ELT_SETDIFF; - ELEMENT_NAMES[334] = ELT_CEILING; - ELEMENT_NAMES[335] = ELT_FEFUNCG; - ELEMENT_NAMES[336] = ELT_FESPECULARLIGHTING; - ELEMENT_NAMES[337] = ELT_STRONG; - ELEMENT_NAMES[338] = ELT_ARCCSCH; - ELEMENT_NAMES[339] = ELT_ARCSINH; - ELEMENT_NAMES[340] = ELT_ARCCOSH; - ELEMENT_NAMES[341] = ELT_CSCH; - ELEMENT_NAMES[342] = ELT_CLIPPATH; - ELEMENT_NAMES[343] = ELT_GLYPH; - ELEMENT_NAMES[344] = ELT_MISSING_GLYPH; - ELEMENT_NAMES[345] = ELT_MPATH; - ELEMENT_NAMES[346] = ELT_PATH; - ELEMENT_NAMES[347] = ELT_SECH; - ELEMENT_NAMES[348] = ELT_SINH; - ELEMENT_NAMES[349] = ELT_TEXTPATH; - ELEMENT_NAMES[350] = ELT_FONT_FACE_URI; - ELEMENT_NAMES[351] = ELT_IMAGINARYI; - ELEMENT_NAMES[352] = ELT_PI; - ELEMENT_NAMES[353] = ELT_MARK; - ELEMENT_NAMES[354] = ELT_MASK; - ELEMENT_NAMES[355] = ELT_TRACK; - ELEMENT_NAMES[356] = ELT_CSYMBOL; - ELEMENT_NAMES[357] = ELT_FACTORIAL; - ELEMENT_NAMES[358] = ELT_HTML; - ELEMENT_NAMES[359] = ELT_OL; - ELEMENT_NAMES[360] = ELT_UL; - ELEMENT_NAMES[361] = ELT_SMALL; - ELEMENT_NAMES[362] = ELT_ALTGLYPHITEM; - ELEMENT_NAMES[363] = ELT_ACRONYM; - ELEMENT_NAMES[364] = ELT_FORM; - ELEMENT_NAMES[365] = ELT_MPHANTOM; - ELEMENT_NAMES[366] = ELT_CN; - ELEMENT_NAMES[367] = ELT_ARCSIN; - ELEMENT_NAMES[368] = ELT_ANNOTATION; - ELEMENT_NAMES[369] = ELT_BUTTON; - ELEMENT_NAMES[370] = ELT_CODOMAIN; - ELEMENT_NAMES[371] = ELT_CONDITION; - ELEMENT_NAMES[372] = ELT_DOMAINOFAPPLICATION; - ELEMENT_NAMES[373] = ELT_FIGCAPTION; - ELEMENT_NAMES[374] = ELT_LN; - ELEMENT_NAMES[375] = ELT_KEYGEN; - ELEMENT_NAMES[376] = ELT_MEAN; - ELEMENT_NAMES[377] = ELT_MAIN; - ELEMENT_NAMES[378] = ELT_NOTIN; - ELEMENT_NAMES[379] = ELT_POLYGON; - ELEMENT_NAMES[380] = ELT_RELN; - ELEMENT_NAMES[381] = ELT_SECTION; - ELEMENT_NAMES[382] = ELT_UNION; - ELEMENT_NAMES[383] = ELT_AUDIO; - ELEMENT_NAMES[384] = ELT_TENDSTO; - ELEMENT_NAMES[385] = ELT_COLGROUP; - ELEMENT_NAMES[386] = ELT_HGROUP; - ELEMENT_NAMES[387] = ELT_MSUBSUP; - ELEMENT_NAMES[388] = ELT_RP; - ELEMENT_NAMES[389] = ELT_SAMP; - ELEMENT_NAMES[390] = ELT_EQ; - ELEMENT_NAMES[391] = ELT_ABBR; - ELEMENT_NAMES[392] = ELT_BVAR; - ELEMENT_NAMES[393] = ELT_CURSOR; - ELEMENT_NAMES[394] = ELT_FEFUNCR; - ELEMENT_NAMES[395] = ELT_FILTER; - ELEMENT_NAMES[396] = ELT_FLOOR; - ELEMENT_NAMES[397] = ELT_HEADER; - ELEMENT_NAMES[398] = ELT_OR; - ELEMENT_NAMES[399] = ELT_MUNDER; + ELEMENT_NAMES[320] = ELT_MTABLE; + ELEMENT_NAMES[321] = ELT_MENCLOSE; + ELEMENT_NAMES[322] = ELT_OTHERWISE; + ELEMENT_NAMES[323] = ELT_POLYLINE; + ELEMENT_NAMES[324] = ELT_PIECEWISE; + ELEMENT_NAMES[325] = ELT_SOURCE; + ELEMENT_NAMES[326] = ELT_STYLE; + ELEMENT_NAMES[327] = ELT_TITLE; + ELEMENT_NAMES[328] = ELT_TRANSPOSE; + ELEMENT_NAMES[329] = ELT_TRUE; + ELEMENT_NAMES[330] = ELT_ALTGLYPHDEF; + ELEMENT_NAMES[331] = ELT_FACTOROF; + ELEMENT_NAMES[332] = ELT_PARTIALDIFF; + ELEMENT_NAMES[333] = ELT_TREF; + ELEMENT_NAMES[334] = ELT_DIALOG; + ELEMENT_NAMES[335] = ELT_FEDIFFUSELIGHTING; + ELEMENT_NAMES[336] = ELT_LISTING; + ELEMENT_NAMES[337] = ELT_ARCSECH; + ELEMENT_NAMES[338] = ELT_ARCTANH; + ELEMENT_NAMES[339] = ELT_ALTGLYPH; + ELEMENT_NAMES[340] = ELT_ARCCOTH; + ELEMENT_NAMES[341] = ELT_COSH; + ELEMENT_NAMES[342] = ELT_COTH; + ELEMENT_NAMES[343] = ELT_MGLYPH; + ELEMENT_NAMES[344] = ELT_MATH; + ELEMENT_NAMES[345] = ELT_PREFETCH; + ELEMENT_NAMES[346] = ELT_TH; + ELEMENT_NAMES[347] = ELT_SWITCH; + ELEMENT_NAMES[348] = ELT_TANH; + ELEMENT_NAMES[349] = ELT_CI; + ELEMENT_NAMES[350] = ELT_LI; + ELEMENT_NAMES[351] = ELT_MI; + ELEMENT_NAMES[352] = ELT_LINK; + ELEMENT_NAMES[353] = ELT_MALIGNMARK; + ELEMENT_NAMES[354] = ELT_TBREAK; + ELEMENT_NAMES[355] = ELT_DL; + ELEMENT_NAMES[356] = ELT_CURL; + ELEMENT_NAMES[357] = ELT_FORALL; + ELEMENT_NAMES[358] = ELT_INTERVAL; + ELEMENT_NAMES[359] = ELT_LABEL; + ELEMENT_NAMES[360] = ELT_REAL; + ELEMENT_NAMES[361] = ELT_SYMBOL; + ELEMENT_NAMES[362] = ELT_ANIMATETRANSFORM; + ELEMENT_NAMES[363] = ELT_EM; + ELEMENT_NAMES[364] = ELT_MENUITEM; + ELEMENT_NAMES[365] = ELT_PARAM; + ELEMENT_NAMES[366] = ELT_ARCTAN; + ELEMENT_NAMES[367] = ELT_ANIMATION; + ELEMENT_NAMES[368] = ELT_ANIMATEMOTION; + ELEMENT_NAMES[369] = ELT_FN; + ELEMENT_NAMES[370] = ELT_CAPTION; + ELEMENT_NAMES[371] = ELT_DOMAIN; + ELEMENT_NAMES[372] = ELT_IN; + ELEMENT_NAMES[373] = ELT_HKERN; + ELEMENT_NAMES[374] = ELT_MN; + ELEMENT_NAMES[375] = ELT_LAPLACIAN; + ELEMENT_NAMES[376] = ELT_MEDIAN; + ELEMENT_NAMES[377] = ELT_MACTION; + ELEMENT_NAMES[378] = ELT_OPTION; + ELEMENT_NAMES[379] = ELT_PATTERN; + ELEMENT_NAMES[380] = ELT_SPAN; + ELEMENT_NAMES[381] = ELT_TSPAN; + ELEMENT_NAMES[382] = ELT_VKERN; + ELEMENT_NAMES[383] = ELT_MO; + ELEMENT_NAMES[384] = ELT_VIDEO; + ELEMENT_NAMES[385] = ELT_FEDISPLACEMENTMAP; + ELEMENT_NAMES[386] = ELT_MALIGNGROUP; + ELEMENT_NAMES[387] = ELT_MSUP; + ELEMENT_NAMES[388] = ELT_OPTGROUP; + ELEMENT_NAMES[389] = ELT_STOP; + ELEMENT_NAMES[390] = ELT_BR; + ELEMENT_NAMES[391] = ELT_ANIMATECOLOR; + ELEMENT_NAMES[392] = ELT_CENTER; + ELEMENT_NAMES[393] = ELT_HR; + ELEMENT_NAMES[394] = ELT_FECOMPONENTTRANSFER; + ELEMENT_NAMES[395] = ELT_FOOTER; + ELEMENT_NAMES[396] = ELT_FEGAUSSIANBLUR; + ELEMENT_NAMES[397] = ELT_HANDLER; + ELEMENT_NAMES[398] = ELT_LISTENER; } void @@ -1431,7 +1428,6 @@ nsHtml5ElementName::releaseStatics() delete ELT_LOGBASE; delete ELT_MSPACE; delete ELT_MODE; - delete ELT_MARQUEE; delete ELT_MTABLE; delete ELT_MSTYLE; delete ELT_MENCLOSE; diff --git a/parser/html/nsHtml5ElementName.h b/parser/html/nsHtml5ElementName.h index 131b9e6281..97d6d8d5e2 100644 --- a/parser/html/nsHtml5ElementName.h +++ b/parser/html/nsHtml5ElementName.h @@ -340,7 +340,6 @@ class nsHtml5ElementName static nsHtml5ElementName* ELT_LOGBASE; static nsHtml5ElementName* ELT_MSPACE; static nsHtml5ElementName* ELT_MODE; - static nsHtml5ElementName* ELT_MARQUEE; static nsHtml5ElementName* ELT_MTABLE; static nsHtml5ElementName* ELT_MSTYLE; static nsHtml5ElementName* ELT_MENCLOSE; diff --git a/parser/htmlparser/nsHTMLTagList.h b/parser/htmlparser/nsHTMLTagList.h index 6f2316ac79..4cb2a61e00 100644 --- a/parser/htmlparser/nsHTMLTagList.h +++ b/parser/htmlparser/nsHTMLTagList.h @@ -119,7 +119,6 @@ HTML_TAG(listing, Pre, Pre) HTML_HTMLELEMENT_TAG(main) HTML_TAG(map, Map, Map) HTML_HTMLELEMENT_TAG(mark) -HTML_TAG(marquee, Div, Div) HTML_TAG(menu, Menu, Menu) HTML_TAG(menuitem, MenuItem, MenuItem) HTML_TAG(meta, Meta, Meta) diff --git a/testing/mozbase/mozlog/mozlog/formatters/html/xmlgen.py b/testing/mozbase/mozlog/mozlog/formatters/html/xmlgen.py index e545e9a7d2..e5998cda33 100644 --- a/testing/mozbase/mozlog/mozlog/formatters/html/xmlgen.py +++ b/testing/mozbase/mozlog/mozlog/formatters/html/xmlgen.py @@ -106,7 +106,7 @@ class html(Namespace): 'colgroup,comment,dd,del,dfn,dir,div,dl,dt,em,embed,' 'fieldset,font,form,frameset,h1,h2,h3,h4,h5,h6,head,html,' 'i,iframe,img,input,ins,kbd,label,legend,li,link,listing,' - 'map,marquee,menu,meta,multicol,nobr,noembed,noframes,' + 'map,menu,meta,multicol,nobr,noembed,noframes,' 'noscript,object,ol,optgroup,option,p,pre,q,s,script,' 'select,small,span,strike,strong,style,sub,sup,table,' 'tbody,td,textarea,tfoot,th,thead,title,tr,tt,u,ul,xmp,' diff --git a/testing/web-platform/tests/dom/nodes/Node-cloneNode.html b/testing/web-platform/tests/dom/nodes/Node-cloneNode.html index 9fb939f7e6..644a614fba 100644 --- a/testing/web-platform/tests/dom/nodes/Node-cloneNode.html +++ b/testing/web-platform/tests/dom/nodes/Node-cloneNode.html @@ -115,7 +115,6 @@ test(function() { create_element_and_check("main", HTMLElement); create_element_and_check("map", HTMLMapElement); create_element_and_check("mark", HTMLElement); - create_element_and_check("marquee", HTMLElement); create_element_and_check("meta", HTMLMetaElement); create_element_and_check("meter", HTMLMeterElement); create_element_and_check("nav", HTMLElement); diff --git a/testing/web-platform/tests/tools/html5lib/html5lib/constants.py b/testing/web-platform/tests/tools/html5lib/html5lib/constants.py index e7089846d5..a1f601b40f 100644 --- a/testing/web-platform/tests/tools/html5lib/html5lib/constants.py +++ b/testing/web-platform/tests/tools/html5lib/html5lib/constants.py @@ -302,7 +302,6 @@ scopingElements = frozenset(( (namespaces["html"], "applet"), (namespaces["html"], "caption"), (namespaces["html"], "html"), - (namespaces["html"], "marquee"), (namespaces["html"], "object"), (namespaces["html"], "table"), (namespaces["html"], "td"), @@ -386,7 +385,6 @@ specialElements = frozenset(( (namespaces["html"], "li"), (namespaces["html"], "link"), (namespaces["html"], "listing"), - (namespaces["html"], "marquee"), (namespaces["html"], "menu"), (namespaces["html"], "meta"), (namespaces["html"], "nav"), diff --git a/testing/web-platform/tests/tools/html5lib/html5lib/html5parser.py b/testing/web-platform/tests/tools/html5lib/html5lib/html5parser.py index 5b9ce7d720..0fdba6c892 100644 --- a/testing/web-platform/tests/tools/html5lib/html5lib/html5parser.py +++ b/testing/web-platform/tests/tools/html5lib/html5lib/html5parser.py @@ -898,7 +898,6 @@ def getPhases(debug): "strong", "tt", "u"), self.startTagFormatting), ("nobr", self.startTagNobr), ("button", self.startTagButton), - (("applet", "marquee", "object"), self.startTagAppletMarqueeObject), ("xmp", self.startTagXmp), ("table", self.startTagTable), (("area", "br", "embed", "img", "keygen", "wbr"), @@ -935,7 +934,6 @@ def getPhases(debug): (headingElements, self.endTagHeading), (("a", "b", "big", "code", "em", "font", "i", "nobr", "s", "small", "strike", "strong", "tt", "u"), self.endTagFormatting), - (("applet", "marquee", "object"), self.endTagAppletMarqueeObject), ("br", self.endTagBr), ]) self.endTagHandler.default = self.endTagOther @@ -1133,12 +1131,6 @@ def getPhases(debug): self.tree.insertElement(token) self.parser.framesetOK = False - def startTagAppletMarqueeObject(self, token): - self.tree.reconstructActiveFormattingElements() - self.tree.insertElement(token) - self.tree.activeFormattingElements.append(Marker) - self.parser.framesetOK = False - def startTagXmp(self, token): if self.tree.elementInScope("p", variant="button"): self.endTagP(impliedTagToken("p")) @@ -1558,18 +1550,6 @@ def getPhases(debug): self.tree.openElements.insert( self.tree.openElements.index(furthestBlock) + 1, clone) - def endTagAppletMarqueeObject(self, token): - if self.tree.elementInScope(token["name"]): - self.tree.generateImpliedEndTags() - if self.tree.openElements[-1].name != token["name"]: - self.parser.parseError("end-tag-too-early", {"name": token["name"]}) - - if self.tree.elementInScope(token["name"]): - element = self.tree.openElements.pop() - while element.name != token["name"]: - element = self.tree.openElements.pop() - self.tree.clearActiveFormattingElements() - def endTagBr(self, token): self.parser.parseError("unexpected-end-tag-treated-as", {"originalName": "br", "newName": "br element"}) diff --git a/testing/web-platform/tests/tools/html5lib/html5lib/tests/testdata/tree-construction/tests1.dat b/testing/web-platform/tests/tools/html5lib/html5lib/tests/testdata/tree-construction/tests1.dat index d6726e305c..cc65fd2faa 100644 --- a/testing/web-platform/tests/tools/html5lib/html5lib/tests/testdata/tree-construction/tests1.dat +++ b/testing/web-platform/tests/tools/html5lib/html5lib/tests/testdata/tree-construction/tests1.dat @@ -284,27 +284,6 @@ Line1<br>Line2<br>Line3<br>Line4 | "foobar" #data -<p><b><div><marquee></p></b></div>X -#errors -(1,3): expected-doctype-but-got-start-tag -(1,11): unexpected-end-tag -(1,24): unexpected-end-tag -(1,28): unexpected-end-tag -(1,34): end-tag-too-early -(1,35): expected-closing-tag-but-got-eof -#document -| <html> -| <head> -| <body> -| <p> -| <b> -| <div> -| <b> -| <marquee> -| <p> -| "X" - -#data <script><div></script></div><title><p></title><p><p> #errors (1,8): expected-doctype-but-got-start-tag @@ -1205,26 +1184,6 @@ Line1<br>Line2<br>Line3<br>Line4 | "aoe" #data -<a href=a>aa<marquee>aa<a href=b>bb</marquee>aa -#errors -(1,10): expected-doctype-but-got-start-tag -(1,45): end-tag-too-early -(1,47): expected-closing-tag-but-got-eof -#document -| <html> -| <head> -| <body> -| <a> -| href="a" -| "aa" -| <marquee> -| "aa" -| <a> -| href="b" -| "bb" -| "aa" - -#data <wbr><strike><code></strike><code><strike></code> #errors (1,5): expected-doctype-but-got-start-tag @@ -1485,26 +1444,6 @@ Line1<br>Line2<br>Line3<br>Line4 | <b> #data -<p><b><div><marquee></p></b></div> -#errors -(1,3): expected-doctype-but-got-start-tag -(1,11): unexpected-end-tag -(1,24): unexpected-end-tag -(1,28): unexpected-end-tag -(1,34): end-tag-too-early -(1,34): expected-closing-tag-but-got-eof -#document -| <html> -| <head> -| <body> -| <p> -| <b> -| <div> -| <b> -| <marquee> -| <p> - -#data <script></script></div><title></title><p><p> #errors (1,8): expected-doctype-but-got-start-tag @@ -1730,225 +1669,6 @@ Line1<br>Line2<br>Line3<br>Line4 | <colgroup> #data -</strong></b></em></i></u></strike></s></blink></tt></pre></big></small></font></select></h1></h2></h3></h4></h5></h6></body></br></a></img></title></span></style></script></table></th></td></tr></frame></area></link></param></hr></input></col></base></meta></basefont></bgsound></embed></spacer></p></dd></dt></caption></colgroup></tbody></tfoot></thead></address></blockquote></center></dir></div></dl></fieldset></listing></menu></ol></ul></li></nobr></wbr></form></button></marquee></object></html></frameset></head></iframe></image></isindex></noembed></noframes></noscript></optgroup></option></plaintext></textarea> -#errors -(1,9): expected-doctype-but-got-end-tag -(1,9): unexpected-end-tag-before-html -(1,13): unexpected-end-tag-before-html -(1,18): unexpected-end-tag-before-html -(1,22): unexpected-end-tag-before-html -(1,26): unexpected-end-tag-before-html -(1,35): unexpected-end-tag-before-html -(1,39): unexpected-end-tag-before-html -(1,47): unexpected-end-tag-before-html -(1,52): unexpected-end-tag-before-html -(1,58): unexpected-end-tag-before-html -(1,64): unexpected-end-tag-before-html -(1,72): unexpected-end-tag-before-html -(1,79): unexpected-end-tag-before-html -(1,88): unexpected-end-tag-before-html -(1,93): unexpected-end-tag-before-html -(1,98): unexpected-end-tag-before-html -(1,103): unexpected-end-tag-before-html -(1,108): unexpected-end-tag-before-html -(1,113): unexpected-end-tag-before-html -(1,118): unexpected-end-tag-before-html -(1,130): unexpected-end-tag-after-body -(1,130): unexpected-end-tag-treated-as -(1,134): unexpected-end-tag -(1,140): unexpected-end-tag -(1,148): unexpected-end-tag -(1,155): unexpected-end-tag -(1,163): unexpected-end-tag -(1,172): unexpected-end-tag -(1,180): unexpected-end-tag -(1,185): unexpected-end-tag -(1,190): unexpected-end-tag -(1,195): unexpected-end-tag -(1,203): unexpected-end-tag -(1,210): unexpected-end-tag -(1,217): unexpected-end-tag -(1,225): unexpected-end-tag -(1,230): unexpected-end-tag -(1,238): unexpected-end-tag -(1,244): unexpected-end-tag -(1,251): unexpected-end-tag -(1,258): unexpected-end-tag -(1,269): unexpected-end-tag -(1,279): unexpected-end-tag -(1,287): unexpected-end-tag -(1,296): unexpected-end-tag -(1,300): unexpected-end-tag -(1,305): unexpected-end-tag -(1,310): unexpected-end-tag -(1,320): unexpected-end-tag -(1,331): unexpected-end-tag -(1,339): unexpected-end-tag -(1,347): unexpected-end-tag -(1,355): unexpected-end-tag -(1,365): end-tag-too-early -(1,378): end-tag-too-early -(1,387): end-tag-too-early -(1,393): end-tag-too-early -(1,399): end-tag-too-early -(1,404): end-tag-too-early -(1,415): end-tag-too-early -(1,425): end-tag-too-early -(1,432): end-tag-too-early -(1,437): end-tag-too-early -(1,442): end-tag-too-early -(1,447): unexpected-end-tag -(1,454): unexpected-end-tag -(1,460): unexpected-end-tag -(1,467): unexpected-end-tag -(1,476): end-tag-too-early -(1,486): end-tag-too-early -(1,495): end-tag-too-early -(1,513): expected-eof-but-got-end-tag -(1,513): unexpected-end-tag -(1,520): unexpected-end-tag -(1,529): unexpected-end-tag -(1,537): unexpected-end-tag -(1,547): unexpected-end-tag -(1,557): unexpected-end-tag -(1,568): unexpected-end-tag -(1,579): unexpected-end-tag -(1,590): unexpected-end-tag -(1,599): unexpected-end-tag -(1,611): unexpected-end-tag -(1,622): unexpected-end-tag -#document -| <html> -| <head> -| <body> -| <br> -| <p> - -#data -<table><tr></strong></b></em></i></u></strike></s></blink></tt></pre></big></small></font></select></h1></h2></h3></h4></h5></h6></body></br></a></img></title></span></style></script></table></th></td></tr></frame></area></link></param></hr></input></col></base></meta></basefont></bgsound></embed></spacer></p></dd></dt></caption></colgroup></tbody></tfoot></thead></address></blockquote></center></dir></div></dl></fieldset></listing></menu></ol></ul></li></nobr></wbr></form></button></marquee></object></html></frameset></head></iframe></image></isindex></noembed></noframes></noscript></optgroup></option></plaintext></textarea> -#errors -(1,7): expected-doctype-but-got-start-tag -(1,20): unexpected-end-tag-implies-table-voodoo -(1,20): unexpected-end-tag -(1,24): unexpected-end-tag-implies-table-voodoo -(1,24): unexpected-end-tag -(1,29): unexpected-end-tag-implies-table-voodoo -(1,29): unexpected-end-tag -(1,33): unexpected-end-tag-implies-table-voodoo -(1,33): unexpected-end-tag -(1,37): unexpected-end-tag-implies-table-voodoo -(1,37): unexpected-end-tag -(1,46): unexpected-end-tag-implies-table-voodoo -(1,46): unexpected-end-tag -(1,50): unexpected-end-tag-implies-table-voodoo -(1,50): unexpected-end-tag -(1,58): unexpected-end-tag-implies-table-voodoo -(1,58): unexpected-end-tag -(1,63): unexpected-end-tag-implies-table-voodoo -(1,63): unexpected-end-tag -(1,69): unexpected-end-tag-implies-table-voodoo -(1,69): end-tag-too-early -(1,75): unexpected-end-tag-implies-table-voodoo -(1,75): unexpected-end-tag -(1,83): unexpected-end-tag-implies-table-voodoo -(1,83): unexpected-end-tag -(1,90): unexpected-end-tag-implies-table-voodoo -(1,90): unexpected-end-tag -(1,99): unexpected-end-tag-implies-table-voodoo -(1,99): unexpected-end-tag -(1,104): unexpected-end-tag-implies-table-voodoo -(1,104): end-tag-too-early -(1,109): unexpected-end-tag-implies-table-voodoo -(1,109): end-tag-too-early -(1,114): unexpected-end-tag-implies-table-voodoo -(1,114): end-tag-too-early -(1,119): unexpected-end-tag-implies-table-voodoo -(1,119): end-tag-too-early -(1,124): unexpected-end-tag-implies-table-voodoo -(1,124): end-tag-too-early -(1,129): unexpected-end-tag-implies-table-voodoo -(1,129): end-tag-too-early -(1,136): unexpected-end-tag-in-table-row -(1,141): unexpected-end-tag-implies-table-voodoo -(1,141): unexpected-end-tag-treated-as -(1,145): unexpected-end-tag-implies-table-voodoo -(1,145): unexpected-end-tag -(1,151): unexpected-end-tag-implies-table-voodoo -(1,151): unexpected-end-tag -(1,159): unexpected-end-tag-implies-table-voodoo -(1,159): unexpected-end-tag -(1,166): unexpected-end-tag-implies-table-voodoo -(1,166): unexpected-end-tag -(1,174): unexpected-end-tag-implies-table-voodoo -(1,174): unexpected-end-tag -(1,183): unexpected-end-tag-implies-table-voodoo -(1,183): unexpected-end-tag -(1,196): unexpected-end-tag -(1,201): unexpected-end-tag -(1,206): unexpected-end-tag -(1,214): unexpected-end-tag -(1,221): unexpected-end-tag -(1,228): unexpected-end-tag -(1,236): unexpected-end-tag -(1,241): unexpected-end-tag -(1,249): unexpected-end-tag -(1,255): unexpected-end-tag -(1,262): unexpected-end-tag -(1,269): unexpected-end-tag -(1,280): unexpected-end-tag -(1,290): unexpected-end-tag -(1,298): unexpected-end-tag -(1,307): unexpected-end-tag -(1,311): unexpected-end-tag -(1,316): unexpected-end-tag -(1,321): unexpected-end-tag -(1,331): unexpected-end-tag -(1,342): unexpected-end-tag -(1,350): unexpected-end-tag -(1,358): unexpected-end-tag -(1,366): unexpected-end-tag -(1,376): end-tag-too-early -(1,389): end-tag-too-early -(1,398): end-tag-too-early -(1,404): end-tag-too-early -(1,410): end-tag-too-early -(1,415): end-tag-too-early -(1,426): end-tag-too-early -(1,436): end-tag-too-early -(1,443): end-tag-too-early -(1,448): end-tag-too-early -(1,453): end-tag-too-early -(1,458): unexpected-end-tag -(1,465): unexpected-end-tag -(1,471): unexpected-end-tag -(1,478): unexpected-end-tag -(1,487): end-tag-too-early -(1,497): end-tag-too-early -(1,506): end-tag-too-early -(1,524): expected-eof-but-got-end-tag -(1,524): unexpected-end-tag -(1,531): unexpected-end-tag -(1,540): unexpected-end-tag -(1,548): unexpected-end-tag -(1,558): unexpected-end-tag -(1,568): unexpected-end-tag -(1,579): unexpected-end-tag -(1,590): unexpected-end-tag -(1,601): unexpected-end-tag -(1,610): unexpected-end-tag -(1,622): unexpected-end-tag -(1,633): unexpected-end-tag -#document -| <html> -| <head> -| <body> -| <br> -| <table> -| <tbody> -| <tr> -| <p> - -#data <frameset> #errors (1,10): expected-doctype-but-got-start-tag diff --git a/testing/web-platform/tests/tools/html5lib/html5lib/tests/testdata/tree-construction/tests19.dat b/testing/web-platform/tests/tools/html5lib/html5lib/tests/testdata/tree-construction/tests19.dat index 02158c8bba..00cc79243e 100644 --- a/testing/web-platform/tests/tools/html5lib/html5lib/tests/testdata/tree-construction/tests19.dat +++ b/testing/web-platform/tests/tools/html5lib/html5lib/tests/testdata/tree-construction/tests19.dat @@ -782,18 +782,6 @@ | <applet> #data -<!doctype html><marquee><frameset> -#errors -(1,34): unexpected-start-tag -(1,34): expected-closing-tag-but-got-eof -#document -| <!DOCTYPE html> -| <html> -| <head> -| <body> -| <marquee> - -#data <!doctype html><object><frameset> #errors (1,33): unexpected-start-tag diff --git a/testing/web-platform/tests/tools/html5lib/html5lib/treebuilders/_base.py b/testing/web-platform/tests/tools/html5lib/html5lib/treebuilders/_base.py index 8b97cc11a2..3bae57be3d 100644 --- a/testing/web-platform/tests/tools/html5lib/html5lib/treebuilders/_base.py +++ b/testing/web-platform/tests/tools/html5lib/html5lib/treebuilders/_base.py @@ -4,8 +4,8 @@ from six import text_type from ..constants import scopingElements, tableInsertModeElements, namespaces # The scope markers are inserted when entering object elements, -# marquees, table cells, and table captions, and are used to prevent formatting -# from "leaking" into tables, object elements, and marquees. +# table cells, and table captions, and are used to prevent formatting +# from "leaking" into tables and object elements. Marker = None listElementsMap = { diff --git a/testing/web-platform/tests/tools/py/py/_xmlgen.py b/testing/web-platform/tests/tools/py/py/_xmlgen.py index 2ffcaa14b8..741e2029ee 100644 --- a/testing/web-platform/tests/tools/py/py/_xmlgen.py +++ b/testing/web-platform/tests/tools/py/py/_xmlgen.py @@ -79,7 +79,7 @@ class html(Namespace): 'colgroup,comment,dd,del,dfn,dir,div,dl,dt,em,embed,' 'fieldset,font,form,frameset,h1,h2,h3,h4,h5,h6,head,html,' 'i,iframe,img,input,ins,kbd,label,legend,li,link,listing,' - 'map,marquee,menu,meta,multicol,nobr,noembed,noframes,' + 'map,menu,meta,multicol,nobr,noembed,noframes,' 'noscript,object,ol,optgroup,option,p,pre,q,s,script,' 'select,small,span,strike,strong,style,sub,sup,table,' 'tbody,td,textarea,tfoot,th,thead,title,tr,tt,u,ul,xmp,' |