Bug 1880188 - Add shadowrootclonable attribute support. r=webidl,emilio

Differential Revision: https://phabricator.services.mozilla.com/D202357
This commit is contained in:
Adam Vandolder 2024-02-28 19:00:34 +00:00
parent 48d77f800d
commit 6d14b717be
17 changed files with 1281 additions and 1268 deletions

View file

@ -11427,6 +11427,7 @@ int32_t nsContentUtils::CompareTreePosition(const nsINode* aNode1,
nsIContent* nsContentUtils::AttachDeclarativeShadowRoot(nsIContent* aHost, nsIContent* nsContentUtils::AttachDeclarativeShadowRoot(nsIContent* aHost,
ShadowRootMode aMode, ShadowRootMode aMode,
bool aIsClonable,
bool aDelegatesFocus) { bool aDelegatesFocus) {
RefPtr<Element> host = mozilla::dom::Element::FromNodeOrNull(aHost); RefPtr<Element> host = mozilla::dom::Element::FromNodeOrNull(aHost);
if (!host) { if (!host) {
@ -11437,7 +11438,7 @@ nsIContent* nsContentUtils::AttachDeclarativeShadowRoot(nsIContent* aHost,
init.mMode = aMode; init.mMode = aMode;
init.mDelegatesFocus = aDelegatesFocus; init.mDelegatesFocus = aDelegatesFocus;
init.mSlotAssignment = SlotAssignmentMode::Named; init.mSlotAssignment = SlotAssignmentMode::Named;
init.mClonable = true; init.mClonable = aIsClonable;
RefPtr shadowRoot = host->AttachShadow(init, IgnoreErrors(), RefPtr shadowRoot = host->AttachShadow(init, IgnoreErrors(),
Element::ShadowRootDeclarative::Yes); Element::ShadowRootDeclarative::Yes);

View file

@ -3441,7 +3441,7 @@ class nsContentUtils {
MOZ_CAN_RUN_SCRIPT_BOUNDARY MOZ_CAN_RUN_SCRIPT_BOUNDARY
static nsIContent* AttachDeclarativeShadowRoot( static nsIContent* AttachDeclarativeShadowRoot(
nsIContent* aHost, mozilla::dom::ShadowRootMode aMode, nsIContent* aHost, mozilla::dom::ShadowRootMode aMode, bool aIsClonable,
bool aDelegatesFocus); bool aDelegatesFocus);
private: private:

View file

@ -3672,15 +3672,13 @@ already_AddRefed<nsINode> nsINode::CloneAndAdopt(
} }
newShadowRoot->SetIsDeclarative(originalShadowRoot->IsDeclarative()); newShadowRoot->SetIsDeclarative(originalShadowRoot->IsDeclarative());
if (aDeep) { for (nsIContent* origChild = originalShadowRoot->GetFirstChild();
for (nsIContent* origChild = originalShadowRoot->GetFirstChild(); origChild; origChild = origChild->GetNextSibling()) {
origChild; origChild = origChild->GetNextSibling()) { nsCOMPtr<nsINode> child =
nsCOMPtr<nsINode> child = CloneAndAdopt(origChild, aClone, true, nodeInfoManager,
CloneAndAdopt(origChild, aClone, aDeep, nodeInfoManager, aReparentScope, newShadowRoot, aError);
aReparentScope, newShadowRoot, aError); if (NS_WARN_IF(aError.Failed())) {
if (NS_WARN_IF(aError.Failed())) { return nullptr;
return nullptr;
}
} }
} }
} }

View file

@ -51,12 +51,18 @@ class HTMLTemplateElement final : public nsGenericHTMLElement {
SetHTMLAttr(nsGkAtoms::shadowrootmode, aValue); SetHTMLAttr(nsGkAtoms::shadowrootmode, aValue);
} }
bool ShadowRootDelegatesFocus() { bool ShadowRootDelegatesFocus() const {
return GetBoolAttr(nsGkAtoms::shadowrootdelegatesfocus); return GetBoolAttr(nsGkAtoms::shadowrootdelegatesfocus);
} }
void SetShadowRootDelegatesFocus(bool aValue) { void SetShadowRootDelegatesFocus(bool aValue, ErrorResult& aRv) {
SetHTMLBoolAttr(nsGkAtoms::shadowrootdelegatesfocus, aValue, SetHTMLBoolAttr(nsGkAtoms::shadowrootdelegatesfocus, aValue, aRv);
IgnoredErrorResult()); }
bool ShadowRootClonable() const {
return GetBoolAttr(nsGkAtoms::shadowrootclonable);
}
void SetShadowRootClonable(bool aValue, ErrorResult& aRv) {
SetHTMLBoolAttr(nsGkAtoms::shadowrootclonable, aValue, aRv);
} }
MOZ_CAN_RUN_SCRIPT MOZ_CAN_RUN_SCRIPT

View file

@ -16,6 +16,8 @@ interface HTMLTemplateElement : HTMLElement {
readonly attribute DocumentFragment content; readonly attribute DocumentFragment content;
[CEReactions, Pref="dom.webcomponents.shadowdom.declarative.enabled"] [CEReactions, Pref="dom.webcomponents.shadowdom.declarative.enabled"]
attribute DOMString shadowRootMode; attribute DOMString shadowRootMode;
[CEReactions, Pref="dom.webcomponents.shadowdom.declarative.enabled"] [CEReactions, SetterThrows, Pref="dom.webcomponents.shadowdom.declarative.enabled"]
attribute boolean shadowRootDelegatesFocus; attribute boolean shadowRootDelegatesFocus;
[CEReactions, SetterThrows, Pref="dom.webcomponents.shadowdom.declarative.enabled"]
attribute boolean shadowRootClonable;
}; };

File diff suppressed because it is too large Load diff

View file

@ -2970,8 +2970,9 @@ public abstract class TreeBuilder<T> implements TokenHandler,
return null; return null;
} }
boolean shadowRootIsClonable = attributes.contains(AttributeName.SHADOWROOTCLONABLE);
boolean shadowRootDelegatesFocus = attributes.contains(AttributeName.SHADOWROOTDELEGATESFOCUS); boolean shadowRootDelegatesFocus = attributes.contains(AttributeName.SHADOWROOTDELEGATESFOCUS);
return getShadowRootFromHost(currentNode, templateNode, shadowRootMode, shadowRootDelegatesFocus); return getShadowRootFromHost(currentNode, templateNode, shadowRootMode, shadowRootIsClonable, shadowRootDelegatesFocus);
} }
/** /**
@ -5418,7 +5419,8 @@ public abstract class TreeBuilder<T> implements TokenHandler,
void setDocumentFragmentForTemplate(T template, T fragment) { void setDocumentFragmentForTemplate(T template, T fragment) {
} }
T getShadowRootFromHost(T host, T template, String shadowRootMode, boolean shadowRootDelegatesFocus) { T getShadowRootFromHost(T host, T template, String shadowRootMode,
boolean shadowRootIsClonable, boolean shadowRootDelegatesFocus) {
return null; return null;
} }

View file

@ -196,6 +196,7 @@ nsHtml5AttributeName* nsHtml5AttributeName::ATTR_READONLY = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_RENDERING_INTENT = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_RENDERING_INTENT = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_SHADOWROOTMODE = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_SHADOWROOTMODE = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_SEED = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_SEED = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_SHADOWROOTCLONABLE = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_SRCDOC = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_SRCDOC = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_STDDEVIATION = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_STDDEVIATION = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_SANDBOX = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_SANDBOX = nullptr;
@ -595,48 +596,48 @@ nsHtml5AttributeName* nsHtml5AttributeName::ATTR_RY = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_REFY = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_REFY = nullptr;
nsHtml5AttributeName** nsHtml5AttributeName::ATTRIBUTE_NAMES = 0; nsHtml5AttributeName** nsHtml5AttributeName::ATTRIBUTE_NAMES = 0;
static int32_t const ATTRIBUTE_HASHES_DATA[] = { static int32_t const ATTRIBUTE_HASHES_DATA[] = {
1865910331, 1748503880, 1965512429, 1681174213, 1781007934, 1915757815, 1864698185, 1748306996, 1965349396, 1681174213, 1780975314, 1915394254,
2001826027, 1680165421, 1721347639, 1754835516, 1814560070, 1903612236, 2001814704, 1680165421, 1721347639, 1754798923, 1814558026, 1902640276,
1924517489, 1984430082, 2019887833, 71827457, 1680282148, 1689324870, 1924462384, 1983461061, 2018908874, 71827457, 1680282148, 1689324870,
1740119884, 1753550036, 1756762256, 1791068279, 1824159037, 1884079398, 1740096054, 1753297133, 1756737685, 1790814502, 1823841492, 1881750231,
1908462185, 1922413307, 1934970504, 1972922984, 2000096287, 2008401563, 1908316832, 1922413292, 1934917372, 1972909592, 1999273799, 2008084807,
2073034754, 57205395, 911736834, 1680181996, 1680368221, 1685882101, 2066743298, 57205395, 911736834, 1680181996, 1680368221, 1685882101,
1704526375, 1734182982, 1747479606, 1749549708, 1754644293, 1756147974, 1704526375, 1734182982, 1747446838, 1749399124, 1754643237, 1754958648,
1767725700, 1786775671, 1804081401, 1820727381, 1854366938, 1872343590, 1765800271, 1786740932, 1804069019, 1820262641, 1854302364, 1872034503,
1890996553, 1906408542, 1910503637, 1917857531, 1922677495, 1932959284, 1889633006, 1905902311, 1910487243, 1917327080, 1922671417, 1932870919,
1941435445, 1972656710, 1983157559, 1990107683, 2001634458, 2006459190, 1941409583, 1972196486, 1982640164, 1990062797, 2001578182, 2005925890,
2010716309, 2026893641, 2082471938, 53006051, 60345635, 885522434, 2010452700, 2026741958, 2082471938, 53006051, 60345635, 885522434,
1680095865, 1680165533, 1680229115, 1680343801, 1680437801, 1682440540, 1680095865, 1680165533, 1680229115, 1680343801, 1680437801, 1682440540,
1687620127, 1692408896, 1716623661, 1731048742, 1739583824, 1747295467, 1687620127, 1692408896, 1716623661, 1731048742, 1739583824, 1742183484,
1747906667, 1748971848, 1751755561, 1754579720, 1754698327, 1754899031, 1747839118, 1748869205, 1751679545, 1754546894, 1754647353, 1754872618,
1756360955, 1756889417, 1773606972, 1785053243, 1787365531, 1803561214, 1756302628, 1756874572, 1772032615, 1785051290, 1787193500, 1801312388,
1805715690, 1816104145, 1823574314, 1848600826, 1854497001, 1867462756, 1804978712, 1814986837, 1822002839, 1825677514, 1854474395, 1867448617,
1874270021, 1884295780, 1898415413, 1905628916, 1906423097, 1910441627, 1874261045, 1884267068, 1894552650, 1905541832, 1906421049, 1910328970,
1915025672, 1916286197, 1921977416, 1922607670, 1923088386, 1924629705, 1910572893, 1916278099, 1921894426, 1922567078, 1922699851, 1924585254,
1933369607, 1939976792, 1941550652, 1966442279, 1972904518, 1975062341, 1933145837, 1937777860, 1941454586, 1966439670, 1972863609, 1974849131,
1983398182, 1988784439, 1991625270, 2000752725, 2001710298, 2004846654, 1983347764, 1988132214, 1991392548, 2000162011, 2001669450, 2004199576,
2007021895, 2009079867, 2016810187, 2024647008, 2060474743, 2081423362, 2007019632, 2009071951, 2016787611, 2024616088, 2060302634, 2081423362,
2089811970, 52488851, 55077603, 59825747, 68157441, 878182402, 2089811970, 52488851, 55077603, 59825747, 68157441, 878182402,
901775362, 1037879561, 1680159327, 1680165437, 1680165692, 1680198203, 901775362, 1037879561, 1680159327, 1680165437, 1680165692, 1680198203,
1680231247, 1680315086, 1680345965, 1680413393, 1680452349, 1681879063, 1680231247, 1680315086, 1680345965, 1680413393, 1680452349, 1681879063,
1683805446, 1686731997, 1689048326, 1689839946, 1699185409, 1714763319, 1683805446, 1686731997, 1689048326, 1689839946, 1699185409, 1714763319,
1721189160, 1723336432, 1733874289, 1736416327, 1739927860, 1740222216, 1721189160, 1723336432, 1733874289, 1736416327, 1739927860, 1740130375,
1747309881, 1747800157, 1748021284, 1748566068, 1749350104, 1751507685, 1747299630, 1747792072, 1747939528, 1748552744, 1749027145, 1749856356,
1753049109, 1754434872, 1754612424, 1754647074, 1754794646, 1754860061, 1752985897, 1754214628, 1754606246, 1754645079, 1754792749, 1754858317,
1754927689, 1756219733, 1756704824, 1756836998, 1757421892, 1771569964, 1754907227, 1756190926, 1756471625, 1756804936, 1757053236, 1767875272,
1780879045, 1784574102, 1786622296, 1786851500, 1788842244, 1797886599, 1776114564, 1782518297, 1785174319, 1786821704, 1788254870, 1791070327,
1804054854, 1804405895, 1814517574, 1814656840, 1816178925, 1821958888, 1804036350, 1804235064, 1805715716, 1814656326, 1816144023, 1820928104,
1823829083, 1825437894, 1854285018, 1854466380, 1854497008, 1866496199, 1823580230, 1824377064, 1853862084, 1854464212, 1854497003, 1865910347,
1871251689, 1873656984, 1874788501, 1884246821, 1889569526, 1891937366, 1867620412, 1873590471, 1874698443, 1884142379, 1884343396, 1891186903,
1900544002, 1903759600, 1905754853, 1906419001, 1907701479, 1909819252, 1898428101, 1903659239, 1905672729, 1906408598, 1907660596, 1909438149,
1910441773, 1910527802, 1915341049, 1916247343, 1917295176, 1921061206, 1910441770, 1910507338, 1915295948, 1916210285, 1916337499, 1917953597,
1922400908, 1922566877, 1922665179, 1922679610, 1924443742, 1924583073, 1922319046, 1922470745, 1922665052, 1922679386, 1924206934, 1924570799,
1924773438, 1933123337, 1934917290, 1937336473, 1941286708, 1941440197, 1924738716, 1932986153, 1933508940, 1935597338, 1941253366, 1941438085,
1943317364, 1966384692, 1972151670, 1972744954, 1972908839, 1972996699, 1942026440, 1965561677, 1966454567, 1972744939, 1972904522, 1972962123,
1982254612, 1983290011, 1983432389, 1987422362, 1989522022, 1991220282, 1980235778, 1983266615, 1983416119, 1987410233, 1988788535, 1991021879,
1993343287, 2000160071, 2001527900, 2001669449, 2001732764, 2001898809, 1991643278, 2000125224, 2001210183, 2001634459, 2001710299, 2001898808,
2005342360, 2006824246, 2007064819, 2009041198, 2009231684, 2016711994, 2004957380, 2006516551, 2007064812, 2008408414, 2009141482, 2015950026,
2017010843, 2023342821, 2024794274, 2034765641, 2065694722, 2075005220, 2016910397, 2023146024, 2024763702, 2026975253, 2065170434, 2075005220,
2081947650, 2083520514, 2091784484, 50917059, 52489043, 53537523, 2081947650, 2083520514, 2091784484, 50917059, 52489043, 53537523,
56685811, 57210387, 59830867, 60817409, 71303169, 72351745, 56685811, 57210387, 59830867, 60817409, 71303169, 72351745,
884998146, 894959618, 902299650, 928514050, 1038063816, 1680140893, 884998146, 894959618, 902299650, 928514050, 1038063816, 1680140893,
@ -646,39 +647,39 @@ static int32_t const ATTRIBUTE_HASHES_DATA[] = {
1681969220, 1682587945, 1684319541, 1685902598, 1687164232, 1687751191, 1681969220, 1682587945, 1684319541, 1685902598, 1687164232, 1687751191,
1689130184, 1689788441, 1691145478, 1692933184, 1704262346, 1714745560, 1689130184, 1689788441, 1691145478, 1692933184, 1704262346, 1714745560,
1716303957, 1720503541, 1721305962, 1723309623, 1723336528, 1732771842, 1716303957, 1720503541, 1721305962, 1723309623, 1723336528, 1732771842,
1733919469, 1734404167, 1739561208, 1739914974, 1740096054, 1740130375, 1733919469, 1734404167, 1739561208, 1739914974, 1740045858, 1740119884,
1742183484, 1747299630, 1747446838, 1747792072, 1747839118, 1747939528, 1740222216, 1747295467, 1747309881, 1747479606, 1747800157, 1747906667,
1748306996, 1748552744, 1748869205, 1749027145, 1749399124, 1749856356, 1748021284, 1748503880, 1748566068, 1748971848, 1749350104, 1749549708,
1751679545, 1752985897, 1753297133, 1754214628, 1754546894, 1754606246, 1751507685, 1751755561, 1753049109, 1753550036, 1754434872, 1754579720,
1754643237, 1754645079, 1754647353, 1754792749, 1754798923, 1754858317, 1754612424, 1754644293, 1754647074, 1754698327, 1754794646, 1754835516,
1754872618, 1754907227, 1754958648, 1756190926, 1756302628, 1756471625, 1754860061, 1754899031, 1754927689, 1756147974, 1756219733, 1756360955,
1756737685, 1756804936, 1756874572, 1757053236, 1765800271, 1767875272, 1756704824, 1756762256, 1756836998, 1756889417, 1757421892, 1767725700,
1772032615, 1776114564, 1780975314, 1782518297, 1785051290, 1785174319, 1771569964, 1773606972, 1780879045, 1781007934, 1784574102, 1785053243,
1786740932, 1786821704, 1787193500, 1788254870, 1790814502, 1791070327, 1786622296, 1786775671, 1786851500, 1787365531, 1788842244, 1791068279,
1801312388, 1804036350, 1804069019, 1804235064, 1804978712, 1805715716, 1797886599, 1803561214, 1804054854, 1804081401, 1804405895, 1805715690,
1814558026, 1814656326, 1814986837, 1816144023, 1820262641, 1820928104, 1814517574, 1814560070, 1814656840, 1816104145, 1816178925, 1820727381,
1822002839, 1823580230, 1823841492, 1824377064, 1825677514, 1853862084, 1821958888, 1823574314, 1823829083, 1824159037, 1825437894, 1848600826,
1854302364, 1854464212, 1854474395, 1854497003, 1864698185, 1865910347, 1854285018, 1854366938, 1854466380, 1854497001, 1854497008, 1865910331,
1867448617, 1867620412, 1872034503, 1873590471, 1874261045, 1874698443, 1866496199, 1867462756, 1871251689, 1872343590, 1873656984, 1874270021,
1881750231, 1884142379, 1884267068, 1884343396, 1889633006, 1891186903, 1874788501, 1884079398, 1884246821, 1884295780, 1889569526, 1890996553,
1894552650, 1898428101, 1902640276, 1903659239, 1905541832, 1905672729, 1891937366, 1898415413, 1900544002, 1903612236, 1903759600, 1905628916,
1905902311, 1906408598, 1906421049, 1907660596, 1908316832, 1909438149, 1905754853, 1906408542, 1906419001, 1906423097, 1907701479, 1908462185,
1910328970, 1910441770, 1910487243, 1910507338, 1910572893, 1915295948, 1909819252, 1910441627, 1910441773, 1910503637, 1910527802, 1915025672,
1915394254, 1916210285, 1916278099, 1916337499, 1917327080, 1917953597, 1915341049, 1915757815, 1916247343, 1916286197, 1917295176, 1917857531,
1921894426, 1922319046, 1922413292, 1922470745, 1922567078, 1922665052, 1921061206, 1921977416, 1922400908, 1922413307, 1922566877, 1922607670,
1922671417, 1922679386, 1922699851, 1924206934, 1924462384, 1924570799, 1922665179, 1922677495, 1922679610, 1923088386, 1924443742, 1924517489,
1924585254, 1924738716, 1932870919, 1932986153, 1933145837, 1933508940, 1924583073, 1924629705, 1924773438, 1932959284, 1933123337, 1933369607,
1934917372, 1935597338, 1937777860, 1941253366, 1941409583, 1941438085, 1934917290, 1934970504, 1937336473, 1939976792, 1941286708, 1941435445,
1941454586, 1942026440, 1965349396, 1965561677, 1966439670, 1966454567, 1941440197, 1941550652, 1943317364, 1965512429, 1966384692, 1966442279,
1972196486, 1972744939, 1972863609, 1972904522, 1972909592, 1972962123, 1972151670, 1972656710, 1972744954, 1972904518, 1972908839, 1972922984,
1974849131, 1980235778, 1982640164, 1983266615, 1983347764, 1983416119, 1972996699, 1975062341, 1982254612, 1983157559, 1983290011, 1983398182,
1983461061, 1987410233, 1988132214, 1988788535, 1990062797, 1991021879, 1983432389, 1984430082, 1987422362, 1988784439, 1989522022, 1990107683,
1991392548, 1991643278, 1999273799, 2000125224, 2000162011, 2001210183, 1991220282, 1991625270, 1993343287, 2000096287, 2000160071, 2000752725,
2001578182, 2001634459, 2001669450, 2001710299, 2001814704, 2001898808, 2001527900, 2001634458, 2001669449, 2001710298, 2001732764, 2001826027,
2004199576, 2004957380, 2005925890, 2006516551, 2007019632, 2007064812, 2001898809, 2004846654, 2005342360, 2006459190, 2006824246, 2007021895,
2008084807, 2008408414, 2009071951, 2009141482, 2010452700, 2015950026, 2007064819, 2008401563, 2009041198, 2009079867, 2009231684, 2010716309,
2016787611, 2016910397, 2018908874, 2023146024, 2024616088, 2024763702, 2016711994, 2016810187, 2017010843, 2019887833, 2023342821, 2024647008,
2026741958, 2026975253, 2060302634, 2065170434, 2066743298}; 2024794274, 2026893641, 2034765641, 2060474743, 2065694722, 2073034754};
staticJArray<int32_t, int32_t> nsHtml5AttributeName::ATTRIBUTE_HASHES = { staticJArray<int32_t, int32_t> nsHtml5AttributeName::ATTRIBUTE_HASHES = {
ATTRIBUTE_HASHES_DATA, MOZ_ARRAY_LENGTH(ATTRIBUTE_HASHES_DATA)}; ATTRIBUTE_HASHES_DATA, MOZ_ARRAY_LENGTH(ATTRIBUTE_HASHES_DATA)};
void nsHtml5AttributeName::initializeStatics() { void nsHtml5AttributeName::initializeStatics() {
@ -1021,6 +1022,9 @@ void nsHtml5AttributeName::initializeStatics() {
ATTR_SEED = ATTR_SEED =
new nsHtml5AttributeName(ALL_NO_NS, nsGkAtoms::seed, nsGkAtoms::seed, new nsHtml5AttributeName(ALL_NO_NS, nsGkAtoms::seed, nsGkAtoms::seed,
nsGkAtoms::seed, ALL_NO_PREFIX); nsGkAtoms::seed, ALL_NO_PREFIX);
ATTR_SHADOWROOTCLONABLE = new nsHtml5AttributeName(
ALL_NO_NS, nsGkAtoms::shadowrootclonable, nsGkAtoms::shadowrootclonable,
nsGkAtoms::shadowrootclonable, ALL_NO_PREFIX);
ATTR_SRCDOC = ATTR_SRCDOC =
new nsHtml5AttributeName(ALL_NO_NS, nsGkAtoms::srcdoc, nsGkAtoms::srcdoc, new nsHtml5AttributeName(ALL_NO_NS, nsGkAtoms::srcdoc, nsGkAtoms::srcdoc,
nsGkAtoms::srcdoc, ALL_NO_PREFIX); nsGkAtoms::srcdoc, ALL_NO_PREFIX);
@ -2191,38 +2195,38 @@ void nsHtml5AttributeName::initializeStatics() {
ATTR_REFY = ATTR_REFY =
new nsHtml5AttributeName(ALL_NO_NS, nsGkAtoms::refy, nsGkAtoms::refy, new nsHtml5AttributeName(ALL_NO_NS, nsGkAtoms::refy, nsGkAtoms::refy,
nsGkAtoms::refY, ALL_NO_PREFIX); nsGkAtoms::refY, ALL_NO_PREFIX);
ATTRIBUTE_NAMES = new nsHtml5AttributeName*[503]; ATTRIBUTE_NAMES = new nsHtml5AttributeName*[504];
ATTRIBUTE_NAMES[0] = ATTR_CELLSPACING; ATTRIBUTE_NAMES[0] = ATTR_AMPLITUDE;
ATTRIBUTE_NAMES[1] = ATTR_CODETYPE; ATTRIBUTE_NAMES[1] = ATTR_CODE;
ATTRIBUTE_NAMES[2] = ATTR_ATTRIBUTENAME; ATTRIBUTE_NAMES[2] = ATTR_ABBR;
ATTRIBUTE_NAMES[3] = ATTR_CLEAR; ATTRIBUTE_NAMES[3] = ATTR_CLEAR;
ATTRIBUTE_NAMES[4] = ATTR_ALIGNMENTSCOPE; ATTRIBUTE_NAMES[4] = ATTR_ALIGNMENT_BASELINE;
ATTRIBUTE_NAMES[5] = ATTR_BGCOLOR; ATTRIBUTE_NAMES[5] = ATTR_AUTOCAPITALIZE;
ATTRIBUTE_NAMES[6] = ATTR_FILTERUNITS; ATTRIBUTE_NAMES[6] = ATTR_FONT_SIZE_ADJUST;
ATTRIBUTE_NAMES[7] = ATTR_ARIA_DISABLED; ATTRIBUTE_NAMES[7] = ATTR_ARIA_DISABLED;
ATTRIBUTE_NAMES[8] = ATTR_OPACITY; ATTRIBUTE_NAMES[8] = ATTR_OPACITY;
ATTRIBUTE_NAMES[9] = ATTR_ONBEFORECOPY; ATTRIBUTE_NAMES[9] = ATTR_ORIENTATION;
ATTRIBUTE_NAMES[10] = ATTR_ACTION; ATTRIBUTE_NAMES[10] = ATTR_ACTIONTYPE;
ATTRIBUTE_NAMES[11] = ATTR_KERNELMATRIX; ATTRIBUTE_NAMES[11] = ATTR_ICON;
ATTRIBUTE_NAMES[12] = ATTR_STROKE_DASHOFFSET; ATTRIBUTE_NAMES[12] = ATTR_STROKE_DASHARRAY;
ATTRIBUTE_NAMES[13] = ATTR_IS; ATTRIBUTE_NAMES[13] = ATTR_CLASS;
ATTRIBUTE_NAMES[14] = ATTR_INPUTMODE; ATTRIBUTE_NAMES[14] = ATTR_GROUPALIGN;
ATTRIBUTE_NAMES[15] = ATTR_Y; ATTRIBUTE_NAMES[15] = ATTR_Y;
ATTRIBUTE_NAMES[16] = ATTR_ARIA_MULTISELECTABLE; ATTRIBUTE_NAMES[16] = ATTR_ARIA_MULTISELECTABLE;
ATTRIBUTE_NAMES[17] = ATTR_ROTATE; ATTRIBUTE_NAMES[17] = ATTR_ROTATE;
ATTRIBUTE_NAMES[18] = ATTR_STDDEVIATION; ATTRIBUTE_NAMES[18] = ATTR_SRCDOC;
ATTRIBUTE_NAMES[19] = ATTR_MODE; ATTRIBUTE_NAMES[19] = ATTR_LINETHICKNESS;
ATTRIBUTE_NAMES[20] = ATTR_SUPERSCRIPTSHIFT; ATTRIBUTE_NAMES[20] = ATTR_SIZES;
ATTRIBUTE_NAMES[21] = ATTR_TARGETX; ATTRIBUTE_NAMES[21] = ATTR_TARGET;
ATTRIBUTE_NAMES[22] = ATTR_SCRIPTMINSIZE; ATTRIBUTE_NAMES[22] = ATTR_SCRIPTSIZEMULTIPLIER;
ATTRIBUTE_NAMES[23] = ATTR_FORMAT; ATTRIBUTE_NAMES[23] = ATTR_AZIMUTH;
ATTRIBUTE_NAMES[24] = ATTR_TRANSFORM; ATTRIBUTE_NAMES[24] = ATTR_TRANSFORM_ORIGIN;
ATTRIBUTE_NAMES[25] = ATTR_ONMOUSEOVER; ATTRIBUTE_NAMES[25] = ATTR_ONMOUSEENTER;
ATTRIBUTE_NAMES[26] = ATTR_GLYPHREF; ATTRIBUTE_NAMES[26] = ATTR_GLYPH_ORIENTATION_HORIZONTAL;
ATTRIBUTE_NAMES[27] = ATTR_OVERFLOW; ATTRIBUTE_NAMES[27] = ATTR_OPERATOR;
ATTRIBUTE_NAMES[28] = ATTR_CONTENTEDITABLE; ATTRIBUTE_NAMES[28] = ATTR_ALTTEXT;
ATTRIBUTE_NAMES[29] = ATTR_STITCHTILES; ATTRIBUTE_NAMES[29] = ATTR_RESTART;
ATTRIBUTE_NAMES[30] = ATTR_RX; ATTRIBUTE_NAMES[30] = ATTR_FX;
ATTRIBUTE_NAMES[31] = ATTR_MIN; ATTRIBUTE_NAMES[31] = ATTR_MIN;
ATTRIBUTE_NAMES[32] = ATTR_K3; ATTRIBUTE_NAMES[32] = ATTR_K3;
ATTRIBUTE_NAMES[33] = ATTR_ARIA_CHANNEL; ATTRIBUTE_NAMES[33] = ATTR_ARIA_CHANNEL;
@ -2230,30 +2234,30 @@ void nsHtml5AttributeName::initializeStatics() {
ATTRIBUTE_NAMES[35] = ATTR_LOCAL; ATTRIBUTE_NAMES[35] = ATTR_LOCAL;
ATTRIBUTE_NAMES[36] = ATTR_ONABORT; ATTRIBUTE_NAMES[36] = ATTR_ONABORT;
ATTRIBUTE_NAMES[37] = ATTR_HIDDEN; ATTRIBUTE_NAMES[37] = ATTR_HIDDEN;
ATTRIBUTE_NAMES[38] = ATTR_ACCEPT; ATTRIBUTE_NAMES[38] = ATTR_ACCENT;
ATTRIBUTE_NAMES[39] = ATTR_ENTERKEYHINT; ATTRIBUTE_NAMES[39] = ATTR_EDGE;
ATTRIBUTE_NAMES[40] = ATTR_OTHER; ATTRIBUTE_NAMES[40] = ATTR_ORDER;
ATTRIBUTE_NAMES[41] = ATTR_REPEAT; ATTRIBUTE_NAMES[41] = ATTR_ONRESIZE;
ATTRIBUTE_NAMES[42] = ATTR_HREF; ATTRIBUTE_NAMES[42] = ATTR_DIFFUSECONSTANT;
ATTRIBUTE_NAMES[43] = ATTR_LARGEOP; ATTRIBUTE_NAMES[43] = ATTR_LANG;
ATTRIBUTE_NAMES[44] = ATTR_MATHCOLOR; ATTRIBUTE_NAMES[44] = ATTR_MATHVARIANT;
ATTRIBUTE_NAMES[45] = ATTR_MEDIA; ATTRIBUTE_NAMES[45] = ATTR_LIMITINGCONEANGLE;
ATTRIBUTE_NAMES[46] = ATTR_MARKER_END; ATTRIBUTE_NAMES[46] = ATTR_MARKERHEIGHT;
ATTRIBUTE_NAMES[47] = ATTR_ONBLUR; ATTRIBUTE_NAMES[47] = ATTR_ONCLICK;
ATTRIBUTE_NAMES[48] = ATTR_SYMMETRIC; ATTRIBUTE_NAMES[48] = ATTR_PRIMITIVEUNITS;
ATTRIBUTE_NAMES[49] = ATTR_POINTER_EVENTS; ATTRIBUTE_NAMES[49] = ATTR_ONINPUT;
ATTRIBUTE_NAMES[50] = ATTR_XMLNS; ATTRIBUTE_NAMES[50] = ATTR_XMLNS_XLINK;
ATTRIBUTE_NAMES[51] = ATTR_FLOOD_COLOR; ATTRIBUTE_NAMES[51] = ATTR_EXPONENT;
ATTRIBUTE_NAMES[52] = ATTR_ONFOCUS; ATTRIBUTE_NAMES[52] = ATTR_ONMOUSEUP;
ATTRIBUTE_NAMES[53] = ATTR_CLIP; ATTRIBUTE_NAMES[53] = ATTR_COMPACT;
ATTRIBUTE_NAMES[54] = ATTR_SCOPE; ATTRIBUTE_NAMES[54] = ATTR_SHAPE_RENDERING;
ATTRIBUTE_NAMES[55] = ATTR_ONDRAG; ATTRIBUTE_NAMES[55] = ATTR_NOHREF;
ATTRIBUTE_NAMES[56] = ATTR_COLSPAN; ATTRIBUTE_NAMES[56] = ATTR_BIAS;
ATTRIBUTE_NAMES[57] = ATTR_PRESERVEASPECTRATIO; ATTRIBUTE_NAMES[57] = ATTR_PRESERVEALPHA;
ATTRIBUTE_NAMES[58] = ATTR_FONTWEIGHT; ATTRIBUTE_NAMES[58] = ATTR_FILTER;
ATTRIBUTE_NAMES[59] = ATTR_ONSTOP; ATTRIBUTE_NAMES[59] = ATTR_RT;
ATTRIBUTE_NAMES[60] = ATTR_WIDTH; ATTRIBUTE_NAMES[60] = ATTR_WRITING_MODE;
ATTRIBUTE_NAMES[61] = ATTR_VALUETYPE; ATTRIBUTE_NAMES[61] = ATTR_VALUES;
ATTRIBUTE_NAMES[62] = ATTR_DY; ATTRIBUTE_NAMES[62] = ATTR_DY;
ATTRIBUTE_NAMES[63] = ATTR_END; ATTRIBUTE_NAMES[63] = ATTR_END;
ATTRIBUTE_NAMES[64] = ATTR_SRC; ATTRIBUTE_NAMES[64] = ATTR_SRC;
@ -2269,54 +2273,54 @@ void nsHtml5AttributeName::initializeStatics() {
ATTRIBUTE_NAMES[74] = ATTR_FETCHPRIORITY; ATTRIBUTE_NAMES[74] = ATTR_FETCHPRIORITY;
ATTRIBUTE_NAMES[75] = ATTR_BORDER; ATTRIBUTE_NAMES[75] = ATTR_BORDER;
ATTRIBUTE_NAMES[76] = ATTR_RENDERING_INTENT; ATTRIBUTE_NAMES[76] = ATTR_RENDERING_INTENT;
ATTRIBUTE_NAMES[77] = ATTR_ACCENTUNDER; ATTRIBUTE_NAMES[77] = ATTR_WORD_SPACING;
ATTRIBUTE_NAMES[78] = ATTR_BASEPROFILE; ATTRIBUTE_NAMES[78] = ATTR_BASELINE_SHIFT;
ATTRIBUTE_NAMES[79] = ATTR_DATETIME; ATTRIBUTE_NAMES[79] = ATTR_DEFER;
ATTRIBUTE_NAMES[80] = ATTR_INTEGRITY; ATTRIBUTE_NAMES[80] = ATTR_INTERCEPT;
ATTRIBUTE_NAMES[81] = ATTR_ONREPEAT; ATTRIBUTE_NAMES[81] = ATTR_ONBEFOREUNLOAD;
ATTRIBUTE_NAMES[82] = ATTR_ONBEGIN; ATTRIBUTE_NAMES[82] = ATTR_ONMESSAGE;
ATTRIBUTE_NAMES[83] = ATTR_ONKEYUP; ATTRIBUTE_NAMES[83] = ATTR_ONKEYPRESS;
ATTRIBUTE_NAMES[84] = ATTR_REPEATCOUNT; ATTRIBUTE_NAMES[84] = ATTR_ROLE;
ATTRIBUTE_NAMES[85] = ATTR_SELECTION; ATTRIBUTE_NAMES[85] = ATTR_SPREADMETHOD;
ATTRIBUTE_NAMES[86] = ATTR_SURFACESCALE; ATTRIBUTE_NAMES[86] = ATTR_PROFILE;
ATTRIBUTE_NAMES[87] = ATTR_IMAGESRCSET; ATTRIBUTE_NAMES[87] = ATTR_IMAGESIZES;
ATTRIBUTE_NAMES[88] = ATTR_MARGINWIDTH; ATTRIBUTE_NAMES[88] = ATTR_MARGINHEIGHT;
ATTRIBUTE_NAMES[89] = ATTR_LIGHTING_COLOR; ATTRIBUTE_NAMES[89] = ATTR_HIGH;
ATTRIBUTE_NAMES[90] = ATTR_PATHLENGTH; ATTRIBUTE_NAMES[90] = ATTR_ONCHANGE;
ATTRIBUTE_NAMES[91] = ATTR_DOMINANT_BASELINE; ATTRIBUTE_NAMES[91] = ATTR_BEGIN;
ATTRIBUTE_NAMES[92] = ATTR_RADIOGROUP; ATTRIBUTE_NAMES[92] = ATTR_OPTIMUM;
ATTRIBUTE_NAMES[93] = ATTR_BACKGROUND; ATTRIBUTE_NAMES[93] = ATTR_VISIBILITY;
ATTRIBUTE_NAMES[94] = ATTR_MASKUNITS; ATTRIBUTE_NAMES[94] = ATTR_MARKERWIDTH;
ATTRIBUTE_NAMES[95] = ATTR_FILL; ATTRIBUTE_NAMES[95] = ATTR_FILL_RULE;
ATTRIBUTE_NAMES[96] = ATTR_STYLE; ATTRIBUTE_NAMES[96] = ATTR_SCALE;
ATTRIBUTE_NAMES[97] = ATTR_FROM; ATTRIBUTE_NAMES[97] = ATTR_FRAMESPACING;
ATTRIBUTE_NAMES[98] = ATTR_ASYNC; ATTRIBUTE_NAMES[98] = ATTR_ZOOMANDPAN;
ATTRIBUTE_NAMES[99] = ATTR_OPEN; ATTRIBUTE_NAMES[99] = ATTR_ONUNLOAD;
ATTRIBUTE_NAMES[100] = ATTR_POINTSATZ; ATTRIBUTE_NAMES[100] = ATTR_POINTSATY;
ATTRIBUTE_NAMES[101] = ATTR_XLINK_TITLE; ATTRIBUTE_NAMES[101] = ATTR_XLINK_HREF;
ATTRIBUTE_NAMES[102] = ATTR_AUTOPLAY; ATTRIBUTE_NAMES[102] = ATTR_XLINK_ACTUATE;
ATTRIBUTE_NAMES[103] = ATTR_COLOR; ATTRIBUTE_NAMES[103] = ATTR_COLOR_INTERPOLATION;
ATTRIBUTE_NAMES[104] = ATTR_NOMODULE; ATTRIBUTE_NAMES[104] = ATTR_NUMOCTAVES;
ATTRIBUTE_NAMES[105] = ATTR_ONCOPY; ATTRIBUTE_NAMES[105] = ATTR_ONZOOM;
ATTRIBUTE_NAMES[106] = ATTR_TO; ATTRIBUTE_NAMES[106] = ATTR_ONMOUSEDOWN;
ATTRIBUTE_NAMES[107] = ATTR_SCROLLING; ATTRIBUTE_NAMES[107] = ATTR_STROKE;
ATTRIBUTE_NAMES[108] = ATTR_DISPLAY; ATTRIBUTE_NAMES[108] = ATTR_CLIPPATHUNITS;
ATTRIBUTE_NAMES[109] = ATTR_PROPERTY; ATTRIBUTE_NAMES[109] = ATTR_LOOP;
ATTRIBUTE_NAMES[110] = ATTR_STOP_OPACITY; ATTRIBUTE_NAMES[110] = ATTR_STOP_COLOR;
ATTRIBUTE_NAMES[111] = ATTR_CHAROFF; ATTRIBUTE_NAMES[111] = ATTR_COORDS;
ATTRIBUTE_NAMES[112] = ATTR_ONDROP; ATTRIBUTE_NAMES[112] = ATTR_ONDRAGEND;
ATTRIBUTE_NAMES[113] = ATTR_START; ATTRIBUTE_NAMES[113] = ATTR_STARTOFFSET;
ATTRIBUTE_NAMES[114] = ATTR_CURSOR; ATTRIBUTE_NAMES[114] = ATTR_COLS;
ATTRIBUTE_NAMES[115] = ATTR_MAXSIZE; ATTRIBUTE_NAMES[115] = ATTR_LOWSRC;
ATTRIBUTE_NAMES[116] = ATTR_SRCSET; ATTRIBUTE_NAMES[116] = ATTR_ROWS;
ATTRIBUTE_NAMES[117] = ATTR_DEPTH; ATTRIBUTE_NAMES[117] = ATTR_CONTEXTMENU;
ATTRIBUTE_NAMES[118] = ATTR_FONTFAMILY; ATTRIBUTE_NAMES[118] = ATTR_FONT_STYLE;
ATTRIBUTE_NAMES[119] = ATTR_LETTER_SPACING; ATTRIBUTE_NAMES[119] = ATTR_KEYTIMES;
ATTRIBUTE_NAMES[120] = ATTR_PATTERN; ATTRIBUTE_NAMES[120] = ATTR_PATTERNTRANSFORM;
ATTRIBUTE_NAMES[121] = ATTR_TEXT_ANCHOR; ATTRIBUTE_NAMES[121] = ATTR_TEXT_DECORATION;
ATTRIBUTE_NAMES[122] = ATTR_COLUMNALIGN; ATTRIBUTE_NAMES[122] = ATTR_COLUMNLINES;
ATTRIBUTE_NAMES[123] = ATTR_REQUIREDFEATURES; ATTRIBUTE_NAMES[123] = ATTR_REQUIRED;
ATTRIBUTE_NAMES[124] = ATTR_VIEWBOX; ATTRIBUTE_NAMES[124] = ATTR_VIEWTARGET;
ATTRIBUTE_NAMES[125] = ATTR_BY; ATTRIBUTE_NAMES[125] = ATTR_BY;
ATTRIBUTE_NAMES[126] = ATTR_RY; ATTRIBUTE_NAMES[126] = ATTR_RY;
ATTRIBUTE_NAMES[127] = ATTR_DIR; ATTRIBUTE_NAMES[127] = ATTR_DIR;
@ -2347,102 +2351,102 @@ void nsHtml5AttributeName::initializeStatics() {
ATTRIBUTE_NAMES[152] = ATTR_GRADIENTTRANSFORM; ATTRIBUTE_NAMES[152] = ATTR_GRADIENTTRANSFORM;
ATTRIBUTE_NAMES[153] = ATTR_LOADING; ATTRIBUTE_NAMES[153] = ATTR_LOADING;
ATTRIBUTE_NAMES[154] = ATTR_SEED; ATTRIBUTE_NAMES[154] = ATTR_SEED;
ATTRIBUTE_NAMES[155] = ATTR_SHADOWROOTDELEGATESFOCUS; ATTRIBUTE_NAMES[155] = ATTR_SANDBOX;
ATTRIBUTE_NAMES[156] = ATTR_ACCESSKEY; ATTRIBUTE_NAMES[156] = ATTR_ACCEPT_CHARSET;
ATTRIBUTE_NAMES[157] = ATTR_BASEFREQUENCY; ATTRIBUTE_NAMES[157] = ATTR_BEVELLED;
ATTRIBUTE_NAMES[158] = ATTR_BASE; ATTRIBUTE_NAMES[158] = ATTR_BASELINE;
ATTRIBUTE_NAMES[159] = ATTR_CITE; ATTRIBUTE_NAMES[159] = ATTR_CODEBASE;
ATTRIBUTE_NAMES[160] = ATTR_EDGEMODE; ATTRIBUTE_NAMES[160] = ATTR_DIRECTION;
ATTRIBUTE_NAMES[161] = ATTR_INDEX; ATTRIBUTE_NAMES[161] = ATTR_FACE;
ATTRIBUTE_NAMES[162] = ATTR_LABEL; ATTRIBUTE_NAMES[162] = ATTR_LINEBREAK;
ATTRIBUTE_NAMES[163] = ATTR_NORESIZE; ATTRIBUTE_NAMES[163] = ATTR_NAME;
ATTRIBUTE_NAMES[164] = ATTR_ONSELECT; ATTRIBUTE_NAMES[164] = ATTR_OBJECT;
ATTRIBUTE_NAMES[165] = ATTR_ONREADYSTATECHANGE; ATTRIBUTE_NAMES[165] = ATTR_ONRESET;
ATTRIBUTE_NAMES[166] = ATTR_ORIENT; ATTRIBUTE_NAMES[166] = ATTR_ONBEFOREPRINT;
ATTRIBUTE_NAMES[167] = ATTR_ONBEFOREPASTE; ATTRIBUTE_NAMES[167] = ATTR_ONSELECTSTART;
ATTRIBUTE_NAMES[168] = ATTR_ONKEYDOWN; ATTRIBUTE_NAMES[168] = ATTR_ONBEFORECUT;
ATTRIBUTE_NAMES[169] = ATTR_RULES; ATTRIBUTE_NAMES[169] = ATTR_REFERRERPOLICY;
ATTRIBUTE_NAMES[170] = ATTR_SELECTED; ATTRIBUTE_NAMES[170] = ATTR_REPEATDUR;
ATTRIBUTE_NAMES[171] = ATTR_SCHEME; ATTRIBUTE_NAMES[171] = ATTR_STRETCHY;
ATTRIBUTE_NAMES[172] = ATTR_TYPE; ATTRIBUTE_NAMES[172] = ATTR_SIZE;
ATTRIBUTE_NAMES[173] = ATTR_ONAFTERPRINT; ATTRIBUTE_NAMES[173] = ATTR_HREFLANG;
ATTRIBUTE_NAMES[174] = ATTR_ALIGN; ATTRIBUTE_NAMES[174] = ATTR_XREF;
ATTRIBUTE_NAMES[175] = ATTR_HEIGHT; ATTRIBUTE_NAMES[175] = ATTR_DRAGGABLE;
ATTRIBUTE_NAMES[176] = ATTR_LANGUAGE; ATTRIBUTE_NAMES[176] = ATTR_IMAGE_RENDERING;
ATTRIBUTE_NAMES[177] = ATTR_LENGTHADJUST; ATTRIBUTE_NAMES[177] = ATTR_LONGDESC;
ATTRIBUTE_NAMES[178] = ATTR_PING; ATTRIBUTE_NAMES[178] = ATTR_ORIGIN;
ATTRIBUTE_NAMES[179] = ATTR_ARCHIVE; ATTRIBUTE_NAMES[179] = ATTR_TARGETY;
ATTRIBUTE_NAMES[180] = ATTR_METHOD; ATTRIBUTE_NAMES[180] = ATTR_MATHBACKGROUND;
ATTRIBUTE_NAMES[181] = ATTR_NOSHADE; ATTRIBUTE_NAMES[181] = ATTR_MATHSIZE;
ATTRIBUTE_NAMES[182] = ATTR_ALTIMG; ATTRIBUTE_NAMES[182] = ATTR_PATH;
ATTRIBUTE_NAMES[183] = ATTR_ADDITIVE; ATTRIBUTE_NAMES[183] = ATTR_ACTIVE;
ATTRIBUTE_NAMES[184] = ATTR_DEFINITIONURL; ATTRIBUTE_NAMES[184] = ATTR_DIVISOR;
ATTRIBUTE_NAMES[185] = ATTR_ONFINISH; ATTRIBUTE_NAMES[185] = ATTR_MANIFEST;
ATTRIBUTE_NAMES[186] = ATTR_SCRIPTLEVEL; ATTRIBUTE_NAMES[186] = ATTR_RADIUS;
ATTRIBUTE_NAMES[187] = ATTR_VALIGN; ATTRIBUTE_NAMES[187] = ATTR_TABINDEX;
ATTRIBUTE_NAMES[188] = ATTR_MARKER_MID; ATTRIBUTE_NAMES[188] = ATTR_LINK;
ATTRIBUTE_NAMES[189] = ATTR_MARKER_START; ATTRIBUTE_NAMES[189] = ATTR_MASK;
ATTRIBUTE_NAMES[190] = ATTR_MASKCONTENTUNITS; ATTRIBUTE_NAMES[190] = ATTR_MARKERUNITS;
ATTRIBUTE_NAMES[191] = ATTR_DECLARE; ATTRIBUTE_NAMES[191] = ATTR_CELLPADDING;
ATTRIBUTE_NAMES[192] = ATTR_MAXLENGTH; ATTRIBUTE_NAMES[192] = ATTR_FILL_OPACITY;
ATTRIBUTE_NAMES[193] = ATTR_ROWLINES; ATTRIBUTE_NAMES[193] = ATTR_REPLACE;
ATTRIBUTE_NAMES[194] = ATTR_TITLE; ATTRIBUTE_NAMES[194] = ATTR_TABLEVALUES;
ATTRIBUTE_NAMES[195] = ATTR_FRAME; ATTRIBUTE_NAMES[195] = ATTR_FRAMEBORDER;
ATTRIBUTE_NAMES[196] = ATTR_PROMPT; ATTRIBUTE_NAMES[196] = ATTR_FORM;
ATTRIBUTE_NAMES[197] = ATTR_USEMAP; ATTRIBUTE_NAMES[197] = ATTR_SUMMARY;
ATTRIBUTE_NAMES[198] = ATTR_IN; ATTRIBUTE_NAMES[198] = ATTR_ALINK;
ATTRIBUTE_NAMES[199] = ATTR_KERNELUNITLENGTH; ATTRIBUTE_NAMES[199] = ATTR_KERNING;
ATTRIBUTE_NAMES[200] = ATTR_ONEND; ATTRIBUTE_NAMES[200] = ATTR_ONINVALID;
ATTRIBUTE_NAMES[201] = ATTR_POINTSATX; ATTRIBUTE_NAMES[201] = ATTR_POINTS;
ATTRIBUTE_NAMES[202] = ATTR_STANDBY; ATTRIBUTE_NAMES[202] = ATTR_SPAN;
ATTRIBUTE_NAMES[203] = ATTR_WHEN; ATTRIBUTE_NAMES[203] = ATTR_VLINK;
ATTRIBUTE_NAMES[204] = ATTR_XLINK_ARCROLE; ATTRIBUTE_NAMES[204] = ATTR_XLINK_ROLE;
ATTRIBUTE_NAMES[205] = ATTR_XLINK_SHOW; ATTRIBUTE_NAMES[205] = ATTR_XLINK_TYPE;
ATTRIBUTE_NAMES[206] = ATTR_AUTOFOCUS; ATTRIBUTE_NAMES[206] = ATTR_AUTOCOMPLETE;
ATTRIBUTE_NAMES[207] = ATTR_COLOR_RENDERING; ATTRIBUTE_NAMES[207] = ATTR_COLOR_PROFILE;
ATTRIBUTE_NAMES[208] = ATTR_ENCODING; ATTRIBUTE_NAMES[208] = ATTR_COLOR_INTERPOLATION_FILTERS;
ATTRIBUTE_NAMES[209] = ATTR_LQUOTE; ATTRIBUTE_NAMES[209] = ATTR_FLOOD_OPACITY;
ATTRIBUTE_NAMES[210] = ATTR_ONMOUSEWHEEL; ATTRIBUTE_NAMES[210] = ATTR_ONLOAD;
ATTRIBUTE_NAMES[211] = ATTR_ONCONTEXTMENU; ATTRIBUTE_NAMES[211] = ATTR_ONFOCUSIN;
ATTRIBUTE_NAMES[212] = ATTR_ONMOUSEMOVE; ATTRIBUTE_NAMES[212] = ATTR_ONMOUSELEAVE;
ATTRIBUTE_NAMES[213] = ATTR_ONFOCUSOUT; ATTRIBUTE_NAMES[213] = ATTR_ONMOUSEOUT;
ATTRIBUTE_NAMES[214] = ATTR_STROKE_LINECAP; ATTRIBUTE_NAMES[214] = ATTR_RQUOTE;
ATTRIBUTE_NAMES[215] = ATTR_STROKE_MITERLIMIT; ATTRIBUTE_NAMES[215] = ATTR_STROKE_LINEJOIN;
ATTRIBUTE_NAMES[216] = ATTR_STROKE_OPACITY; ATTRIBUTE_NAMES[216] = ATTR_STROKE_WIDTH;
ATTRIBUTE_NAMES[217] = ATTR_CLIP_PATH; ATTRIBUTE_NAMES[217] = ATTR_CLIP_RULE;
ATTRIBUTE_NAMES[218] = ATTR_GLYPH_ORIENTATION_VERTICAL; ATTRIBUTE_NAMES[218] = ATTR_DISPLAYSTYLE;
ATTRIBUTE_NAMES[219] = ATTR_KEYPOINTS; ATTRIBUTE_NAMES[219] = ATTR_HTTP_EQUIV;
ATTRIBUTE_NAMES[220] = ATTR_STEP; ATTRIBUTE_NAMES[220] = ATTR_SCOPED;
ATTRIBUTE_NAMES[221] = ATTR_SLOPE; ATTRIBUTE_NAMES[221] = ATTR_SHAPE;
ATTRIBUTE_NAMES[222] = ATTR_WRAP; ATTRIBUTE_NAMES[222] = ATTR_TEMPLATE;
ATTRIBUTE_NAMES[223] = ATTR_CHAR; ATTRIBUTE_NAMES[223] = ATTR_ATTRIBUTETYPE;
ATTRIBUTE_NAMES[224] = ATTR_NOWRAP; ATTRIBUTE_NAMES[224] = ATTR_CHARSET;
ATTRIBUTE_NAMES[225] = ATTR_ONDRAGOVER; ATTRIBUTE_NAMES[225] = ATTR_ONDRAGENTER;
ATTRIBUTE_NAMES[226] = ATTR_ONERROR; ATTRIBUTE_NAMES[226] = ATTR_ONDRAGDROP;
ATTRIBUTE_NAMES[227] = ATTR_ONDRAGLEAVE; ATTRIBUTE_NAMES[227] = ATTR_ONDRAGSTART;
ATTRIBUTE_NAMES[228] = ATTR_AXIS; ATTRIBUTE_NAMES[228] = ATTR_AS;
ATTRIBUTE_NAMES[229] = ATTR_CROSSORIGIN; ATTRIBUTE_NAMES[229] = ATTR_CLASSID;
ATTRIBUTE_NAMES[230] = ATTR_CLOSE; ATTRIBUTE_NAMES[230] = ATTR_CLOSURE;
ATTRIBUTE_NAMES[231] = ATTR_KEYSPLINES; ATTRIBUTE_NAMES[231] = ATTR_KEYSYSTEM;
ATTRIBUTE_NAMES[232] = ATTR_OFFSET; ATTRIBUTE_NAMES[232] = ATTR_MINSIZE;
ATTRIBUTE_NAMES[233] = ATTR_ROWSPACING; ATTRIBUTE_NAMES[233] = ATTR_ROWSPAN;
ATTRIBUTE_NAMES[234] = ATTR_VERSION; ATTRIBUTE_NAMES[234] = ATTR_SUBSCRIPTSHIFT;
ATTRIBUTE_NAMES[235] = ATTR_CONTENT; ATTRIBUTE_NAMES[235] = ATTR_CONTROLS;
ATTRIBUTE_NAMES[236] = ATTR_FONT_STRETCH; ATTRIBUTE_NAMES[236] = ATTR_ENCTYPE;
ATTRIBUTE_NAMES[237] = ATTR_FONTSTYLE; ATTRIBUTE_NAMES[237] = ATTR_FONT_WEIGHT;
ATTRIBUTE_NAMES[238] = ATTR_FONT_VARIANT; ATTRIBUTE_NAMES[238] = ATTR_FONT_FAMILY;
ATTRIBUTE_NAMES[239] = ATTR_FONT_SIZE; ATTRIBUTE_NAMES[239] = ATTR_FONTSIZE;
ATTRIBUTE_NAMES[240] = ATTR_MULTIPLE; ATTRIBUTE_NAMES[240] = ATTR_LIST;
ATTRIBUTE_NAMES[241] = ATTR_POSTER; ATTRIBUTE_NAMES[241] = ATTR_ONSTART;
ATTRIBUTE_NAMES[242] = ATTR_PATTERNCONTENTUNITS; ATTRIBUTE_NAMES[242] = ATTR_PATTERNUNITS;
ATTRIBUTE_NAMES[243] = ATTR_TEXT_RENDERING; ATTRIBUTE_NAMES[243] = ATTR_SYSTEMLANGUAGE;
ATTRIBUTE_NAMES[244] = ATTR_TEXT; ATTRIBUTE_NAMES[244] = ATTR_TEXTLENGTH;
ATTRIBUTE_NAMES[245] = ATTR_COLUMNSPAN; ATTRIBUTE_NAMES[245] = ATTR_ACCUMULATE;
ATTRIBUTE_NAMES[246] = ATTR_COLUMNWIDTH; ATTRIBUTE_NAMES[246] = ATTR_COLUMNSPACING;
ATTRIBUTE_NAMES[247] = ATTR_ONCUT; ATTRIBUTE_NAMES[247] = ATTR_ONSUBMIT;
ATTRIBUTE_NAMES[248] = ATTR_REQUIREDEXTENSIONS; ATTRIBUTE_NAMES[248] = ATTR_RESULT;
ATTRIBUTE_NAMES[249] = ATTR_ELEVATION; ATTRIBUTE_NAMES[249] = ATTR_VALUE;
ATTRIBUTE_NAMES[250] = ATTR_DX; ATTRIBUTE_NAMES[250] = ATTR_CX;
ATTRIBUTE_NAMES[251] = ATTR_REFX; ATTRIBUTE_NAMES[251] = ATTR_REFX;
ATTRIBUTE_NAMES[252] = ATTR_CY; ATTRIBUTE_NAMES[252] = ATTR_CY;
ATTRIBUTE_NAMES[253] = ATTR_FY; ATTRIBUTE_NAMES[253] = ATTR_FY;
@ -2502,199 +2506,200 @@ void nsHtml5AttributeName::initializeStatics() {
ATTRIBUTE_NAMES[307] = ATTR_HEADERS; ATTRIBUTE_NAMES[307] = ATTR_HEADERS;
ATTRIBUTE_NAMES[308] = ATTR_READONLY; ATTRIBUTE_NAMES[308] = ATTR_READONLY;
ATTRIBUTE_NAMES[309] = ATTR_SHADOWROOTMODE; ATTRIBUTE_NAMES[309] = ATTR_SHADOWROOTMODE;
ATTRIBUTE_NAMES[310] = ATTR_SRCDOC; ATTRIBUTE_NAMES[310] = ATTR_SHADOWROOTCLONABLE;
ATTRIBUTE_NAMES[311] = ATTR_SANDBOX; ATTRIBUTE_NAMES[311] = ATTR_STDDEVIATION;
ATTRIBUTE_NAMES[312] = ATTR_WORD_SPACING; ATTRIBUTE_NAMES[312] = ATTR_SHADOWROOTDELEGATESFOCUS;
ATTRIBUTE_NAMES[313] = ATTR_ACCEPT_CHARSET; ATTRIBUTE_NAMES[313] = ATTR_ACCENTUNDER;
ATTRIBUTE_NAMES[314] = ATTR_ACCENT; ATTRIBUTE_NAMES[314] = ATTR_ACCESSKEY;
ATTRIBUTE_NAMES[315] = ATTR_BEVELLED; ATTRIBUTE_NAMES[315] = ATTR_ACCEPT;
ATTRIBUTE_NAMES[316] = ATTR_BASELINE_SHIFT; ATTRIBUTE_NAMES[316] = ATTR_BASEFREQUENCY;
ATTRIBUTE_NAMES[317] = ATTR_BASELINE; ATTRIBUTE_NAMES[317] = ATTR_BASEPROFILE;
ATTRIBUTE_NAMES[318] = ATTR_CODE; ATTRIBUTE_NAMES[318] = ATTR_BASE;
ATTRIBUTE_NAMES[319] = ATTR_CODEBASE; ATTRIBUTE_NAMES[319] = ATTR_CODETYPE;
ATTRIBUTE_NAMES[320] = ATTR_DEFER; ATTRIBUTE_NAMES[320] = ATTR_CITE;
ATTRIBUTE_NAMES[321] = ATTR_DIRECTION; ATTRIBUTE_NAMES[321] = ATTR_DATETIME;
ATTRIBUTE_NAMES[322] = ATTR_EDGE; ATTRIBUTE_NAMES[322] = ATTR_EDGEMODE;
ATTRIBUTE_NAMES[323] = ATTR_FACE; ATTRIBUTE_NAMES[323] = ATTR_ENTERKEYHINT;
ATTRIBUTE_NAMES[324] = ATTR_INTERCEPT; ATTRIBUTE_NAMES[324] = ATTR_INDEX;
ATTRIBUTE_NAMES[325] = ATTR_LINEBREAK; ATTRIBUTE_NAMES[325] = ATTR_INTEGRITY;
ATTRIBUTE_NAMES[326] = ATTR_LINETHICKNESS; ATTRIBUTE_NAMES[326] = ATTR_LABEL;
ATTRIBUTE_NAMES[327] = ATTR_NAME; ATTRIBUTE_NAMES[327] = ATTR_MODE;
ATTRIBUTE_NAMES[328] = ATTR_ONBEFOREUNLOAD; ATTRIBUTE_NAMES[328] = ATTR_NORESIZE;
ATTRIBUTE_NAMES[329] = ATTR_OBJECT; ATTRIBUTE_NAMES[329] = ATTR_ONREPEAT;
ATTRIBUTE_NAMES[330] = ATTR_ORDER; ATTRIBUTE_NAMES[330] = ATTR_ONSELECT;
ATTRIBUTE_NAMES[331] = ATTR_ONRESET; ATTRIBUTE_NAMES[331] = ATTR_OTHER;
ATTRIBUTE_NAMES[332] = ATTR_ONMESSAGE; ATTRIBUTE_NAMES[332] = ATTR_ONREADYSTATECHANGE;
ATTRIBUTE_NAMES[333] = ATTR_ONBEFOREPRINT; ATTRIBUTE_NAMES[333] = ATTR_ONBEGIN;
ATTRIBUTE_NAMES[334] = ATTR_ORIENTATION; ATTRIBUTE_NAMES[334] = ATTR_ORIENT;
ATTRIBUTE_NAMES[335] = ATTR_ONSELECTSTART; ATTRIBUTE_NAMES[335] = ATTR_ONBEFORECOPY;
ATTRIBUTE_NAMES[336] = ATTR_ONKEYPRESS; ATTRIBUTE_NAMES[336] = ATTR_ONBEFOREPASTE;
ATTRIBUTE_NAMES[337] = ATTR_ONBEFORECUT; ATTRIBUTE_NAMES[337] = ATTR_ONKEYUP;
ATTRIBUTE_NAMES[338] = ATTR_ONRESIZE; ATTRIBUTE_NAMES[338] = ATTR_ONKEYDOWN;
ATTRIBUTE_NAMES[339] = ATTR_REFERRERPOLICY; ATTRIBUTE_NAMES[339] = ATTR_REPEAT;
ATTRIBUTE_NAMES[340] = ATTR_ROLE; ATTRIBUTE_NAMES[340] = ATTR_RULES;
ATTRIBUTE_NAMES[341] = ATTR_REPEATDUR; ATTRIBUTE_NAMES[341] = ATTR_REPEATCOUNT;
ATTRIBUTE_NAMES[342] = ATTR_SIZES; ATTRIBUTE_NAMES[342] = ATTR_SELECTED;
ATTRIBUTE_NAMES[343] = ATTR_STRETCHY; ATTRIBUTE_NAMES[343] = ATTR_SUPERSCRIPTSHIFT;
ATTRIBUTE_NAMES[344] = ATTR_SPREADMETHOD; ATTRIBUTE_NAMES[344] = ATTR_SCHEME;
ATTRIBUTE_NAMES[345] = ATTR_SIZE; ATTRIBUTE_NAMES[345] = ATTR_SELECTION;
ATTRIBUTE_NAMES[346] = ATTR_DIFFUSECONSTANT; ATTRIBUTE_NAMES[346] = ATTR_TYPE;
ATTRIBUTE_NAMES[347] = ATTR_HREFLANG; ATTRIBUTE_NAMES[347] = ATTR_HREF;
ATTRIBUTE_NAMES[348] = ATTR_PROFILE; ATTRIBUTE_NAMES[348] = ATTR_ONAFTERPRINT;
ATTRIBUTE_NAMES[349] = ATTR_XREF; ATTRIBUTE_NAMES[349] = ATTR_SURFACESCALE;
ATTRIBUTE_NAMES[350] = ATTR_ALIGNMENT_BASELINE; ATTRIBUTE_NAMES[350] = ATTR_ALIGN;
ATTRIBUTE_NAMES[351] = ATTR_DRAGGABLE; ATTRIBUTE_NAMES[351] = ATTR_ALIGNMENTSCOPE;
ATTRIBUTE_NAMES[352] = ATTR_IMAGESIZES; ATTRIBUTE_NAMES[352] = ATTR_HEIGHT;
ATTRIBUTE_NAMES[353] = ATTR_IMAGE_RENDERING; ATTRIBUTE_NAMES[353] = ATTR_IMAGESRCSET;
ATTRIBUTE_NAMES[354] = ATTR_LANG; ATTRIBUTE_NAMES[354] = ATTR_LANGUAGE;
ATTRIBUTE_NAMES[355] = ATTR_LONGDESC; ATTRIBUTE_NAMES[355] = ATTR_LARGEOP;
ATTRIBUTE_NAMES[356] = ATTR_MARGINHEIGHT; ATTRIBUTE_NAMES[356] = ATTR_LENGTHADJUST;
ATTRIBUTE_NAMES[357] = ATTR_ORIGIN; ATTRIBUTE_NAMES[357] = ATTR_MARGINWIDTH;
ATTRIBUTE_NAMES[358] = ATTR_TARGET; ATTRIBUTE_NAMES[358] = ATTR_PING;
ATTRIBUTE_NAMES[359] = ATTR_TARGETY; ATTRIBUTE_NAMES[359] = ATTR_TARGETX;
ATTRIBUTE_NAMES[360] = ATTR_HIGH; ATTRIBUTE_NAMES[360] = ATTR_ARCHIVE;
ATTRIBUTE_NAMES[361] = ATTR_MATHBACKGROUND; ATTRIBUTE_NAMES[361] = ATTR_LIGHTING_COLOR;
ATTRIBUTE_NAMES[362] = ATTR_MATHVARIANT; ATTRIBUTE_NAMES[362] = ATTR_METHOD;
ATTRIBUTE_NAMES[363] = ATTR_MATHSIZE; ATTRIBUTE_NAMES[363] = ATTR_MATHCOLOR;
ATTRIBUTE_NAMES[364] = ATTR_ONCHANGE; ATTRIBUTE_NAMES[364] = ATTR_NOSHADE;
ATTRIBUTE_NAMES[365] = ATTR_PATH; ATTRIBUTE_NAMES[365] = ATTR_PATHLENGTH;
ATTRIBUTE_NAMES[366] = ATTR_ACTIONTYPE; ATTRIBUTE_NAMES[366] = ATTR_ALTIMG;
ATTRIBUTE_NAMES[367] = ATTR_ACTIVE; ATTRIBUTE_NAMES[367] = ATTR_ACTION;
ATTRIBUTE_NAMES[368] = ATTR_BEGIN; ATTRIBUTE_NAMES[368] = ATTR_ADDITIVE;
ATTRIBUTE_NAMES[369] = ATTR_DIVISOR; ATTRIBUTE_NAMES[369] = ATTR_DOMINANT_BASELINE;
ATTRIBUTE_NAMES[370] = ATTR_LIMITINGCONEANGLE; ATTRIBUTE_NAMES[370] = ATTR_DEFINITIONURL;
ATTRIBUTE_NAMES[371] = ATTR_MANIFEST; ATTRIBUTE_NAMES[371] = ATTR_MEDIA;
ATTRIBUTE_NAMES[372] = ATTR_OPTIMUM; ATTRIBUTE_NAMES[372] = ATTR_ONFINISH;
ATTRIBUTE_NAMES[373] = ATTR_RADIUS; ATTRIBUTE_NAMES[373] = ATTR_RADIOGROUP;
ATTRIBUTE_NAMES[374] = ATTR_SCRIPTSIZEMULTIPLIER; ATTRIBUTE_NAMES[374] = ATTR_SCRIPTLEVEL;
ATTRIBUTE_NAMES[375] = ATTR_TABINDEX; ATTRIBUTE_NAMES[375] = ATTR_SCRIPTMINSIZE;
ATTRIBUTE_NAMES[376] = ATTR_VISIBILITY; ATTRIBUTE_NAMES[376] = ATTR_VALIGN;
ATTRIBUTE_NAMES[377] = ATTR_LINK; ATTRIBUTE_NAMES[377] = ATTR_BACKGROUND;
ATTRIBUTE_NAMES[378] = ATTR_MARKERHEIGHT; ATTRIBUTE_NAMES[378] = ATTR_MARKER_MID;
ATTRIBUTE_NAMES[379] = ATTR_MASK; ATTRIBUTE_NAMES[379] = ATTR_MARKER_END;
ATTRIBUTE_NAMES[380] = ATTR_MARKERWIDTH; ATTRIBUTE_NAMES[380] = ATTR_MARKER_START;
ATTRIBUTE_NAMES[381] = ATTR_MARKERUNITS; ATTRIBUTE_NAMES[381] = ATTR_MASKUNITS;
ATTRIBUTE_NAMES[382] = ATTR_AMPLITUDE; ATTRIBUTE_NAMES[382] = ATTR_MASKCONTENTUNITS;
ATTRIBUTE_NAMES[383] = ATTR_CELLPADDING; ATTRIBUTE_NAMES[383] = ATTR_CELLSPACING;
ATTRIBUTE_NAMES[384] = ATTR_FILL_RULE; ATTRIBUTE_NAMES[384] = ATTR_DECLARE;
ATTRIBUTE_NAMES[385] = ATTR_FILL_OPACITY; ATTRIBUTE_NAMES[385] = ATTR_FILL;
ATTRIBUTE_NAMES[386] = ATTR_ONCLICK; ATTRIBUTE_NAMES[386] = ATTR_MAXLENGTH;
ATTRIBUTE_NAMES[387] = ATTR_REPLACE; ATTRIBUTE_NAMES[387] = ATTR_ONBLUR;
ATTRIBUTE_NAMES[388] = ATTR_SCALE; ATTRIBUTE_NAMES[388] = ATTR_ROWLINES;
ATTRIBUTE_NAMES[389] = ATTR_TABLEVALUES; ATTRIBUTE_NAMES[389] = ATTR_STYLE;
ATTRIBUTE_NAMES[390] = ATTR_AZIMUTH; ATTRIBUTE_NAMES[390] = ATTR_TITLE;
ATTRIBUTE_NAMES[391] = ATTR_FRAMEBORDER; ATTRIBUTE_NAMES[391] = ATTR_FORMAT;
ATTRIBUTE_NAMES[392] = ATTR_FRAMESPACING; ATTRIBUTE_NAMES[392] = ATTR_FRAME;
ATTRIBUTE_NAMES[393] = ATTR_FORM; ATTRIBUTE_NAMES[393] = ATTR_FROM;
ATTRIBUTE_NAMES[394] = ATTR_PRIMITIVEUNITS; ATTRIBUTE_NAMES[394] = ATTR_PROMPT;
ATTRIBUTE_NAMES[395] = ATTR_SUMMARY; ATTRIBUTE_NAMES[395] = ATTR_SYMMETRIC;
ATTRIBUTE_NAMES[396] = ATTR_ZOOMANDPAN; ATTRIBUTE_NAMES[396] = ATTR_USEMAP;
ATTRIBUTE_NAMES[397] = ATTR_ALINK; ATTRIBUTE_NAMES[397] = ATTR_ASYNC;
ATTRIBUTE_NAMES[398] = ATTR_ICON; ATTRIBUTE_NAMES[398] = ATTR_IN;
ATTRIBUTE_NAMES[399] = ATTR_KERNING; ATTRIBUTE_NAMES[399] = ATTR_KERNELMATRIX;
ATTRIBUTE_NAMES[400] = ATTR_ONUNLOAD; ATTRIBUTE_NAMES[400] = ATTR_KERNELUNITLENGTH;
ATTRIBUTE_NAMES[401] = ATTR_ONINVALID; ATTRIBUTE_NAMES[401] = ATTR_OPEN;
ATTRIBUTE_NAMES[402] = ATTR_ONINPUT; ATTRIBUTE_NAMES[402] = ATTR_ONEND;
ATTRIBUTE_NAMES[403] = ATTR_POINTS; ATTRIBUTE_NAMES[403] = ATTR_POINTER_EVENTS;
ATTRIBUTE_NAMES[404] = ATTR_POINTSATY; ATTRIBUTE_NAMES[404] = ATTR_POINTSATX;
ATTRIBUTE_NAMES[405] = ATTR_SPAN; ATTRIBUTE_NAMES[405] = ATTR_POINTSATZ;
ATTRIBUTE_NAMES[406] = ATTR_TRANSFORM_ORIGIN; ATTRIBUTE_NAMES[406] = ATTR_STANDBY;
ATTRIBUTE_NAMES[407] = ATTR_VLINK; ATTRIBUTE_NAMES[407] = ATTR_TRANSFORM;
ATTRIBUTE_NAMES[408] = ATTR_XLINK_HREF; ATTRIBUTE_NAMES[408] = ATTR_WHEN;
ATTRIBUTE_NAMES[409] = ATTR_XLINK_ROLE; ATTRIBUTE_NAMES[409] = ATTR_XLINK_TITLE;
ATTRIBUTE_NAMES[410] = ATTR_XMLNS_XLINK; ATTRIBUTE_NAMES[410] = ATTR_XLINK_ARCROLE;
ATTRIBUTE_NAMES[411] = ATTR_XLINK_TYPE; ATTRIBUTE_NAMES[411] = ATTR_XMLNS;
ATTRIBUTE_NAMES[412] = ATTR_XLINK_ACTUATE; ATTRIBUTE_NAMES[412] = ATTR_XLINK_SHOW;
ATTRIBUTE_NAMES[413] = ATTR_AUTOCOMPLETE; ATTRIBUTE_NAMES[413] = ATTR_AUTOPLAY;
ATTRIBUTE_NAMES[414] = ATTR_AUTOCAPITALIZE; ATTRIBUTE_NAMES[414] = ATTR_AUTOFOCUS;
ATTRIBUTE_NAMES[415] = ATTR_COLOR_PROFILE; ATTRIBUTE_NAMES[415] = ATTR_BGCOLOR;
ATTRIBUTE_NAMES[416] = ATTR_COLOR_INTERPOLATION; ATTRIBUTE_NAMES[416] = ATTR_COLOR_RENDERING;
ATTRIBUTE_NAMES[417] = ATTR_COLOR_INTERPOLATION_FILTERS; ATTRIBUTE_NAMES[417] = ATTR_COLOR;
ATTRIBUTE_NAMES[418] = ATTR_EXPONENT; ATTRIBUTE_NAMES[418] = ATTR_ENCODING;
ATTRIBUTE_NAMES[419] = ATTR_FLOOD_OPACITY; ATTRIBUTE_NAMES[419] = ATTR_FLOOD_COLOR;
ATTRIBUTE_NAMES[420] = ATTR_NUMOCTAVES; ATTRIBUTE_NAMES[420] = ATTR_LQUOTE;
ATTRIBUTE_NAMES[421] = ATTR_ONLOAD; ATTRIBUTE_NAMES[421] = ATTR_NOMODULE;
ATTRIBUTE_NAMES[422] = ATTR_ONMOUSEENTER; ATTRIBUTE_NAMES[422] = ATTR_ONMOUSEWHEEL;
ATTRIBUTE_NAMES[423] = ATTR_ONFOCUSIN; ATTRIBUTE_NAMES[423] = ATTR_ONMOUSEOVER;
ATTRIBUTE_NAMES[424] = ATTR_ONZOOM; ATTRIBUTE_NAMES[424] = ATTR_ONCONTEXTMENU;
ATTRIBUTE_NAMES[425] = ATTR_ONMOUSELEAVE; ATTRIBUTE_NAMES[425] = ATTR_ONCOPY;
ATTRIBUTE_NAMES[426] = ATTR_ONMOUSEUP; ATTRIBUTE_NAMES[426] = ATTR_ONMOUSEMOVE;
ATTRIBUTE_NAMES[427] = ATTR_ONMOUSEOUT; ATTRIBUTE_NAMES[427] = ATTR_ONFOCUS;
ATTRIBUTE_NAMES[428] = ATTR_ONMOUSEDOWN; ATTRIBUTE_NAMES[428] = ATTR_ONFOCUSOUT;
ATTRIBUTE_NAMES[429] = ATTR_RQUOTE; ATTRIBUTE_NAMES[429] = ATTR_TO;
ATTRIBUTE_NAMES[430] = ATTR_STROKE_DASHARRAY; ATTRIBUTE_NAMES[430] = ATTR_STROKE_LINECAP;
ATTRIBUTE_NAMES[431] = ATTR_STROKE_LINEJOIN; ATTRIBUTE_NAMES[431] = ATTR_STROKE_DASHOFFSET;
ATTRIBUTE_NAMES[432] = ATTR_STROKE; ATTRIBUTE_NAMES[432] = ATTR_STROKE_MITERLIMIT;
ATTRIBUTE_NAMES[433] = ATTR_STROKE_WIDTH; ATTRIBUTE_NAMES[433] = ATTR_SCROLLING;
ATTRIBUTE_NAMES[434] = ATTR_COMPACT; ATTRIBUTE_NAMES[434] = ATTR_STROKE_OPACITY;
ATTRIBUTE_NAMES[435] = ATTR_CLIP_RULE; ATTRIBUTE_NAMES[435] = ATTR_CLIP;
ATTRIBUTE_NAMES[436] = ATTR_CLIPPATHUNITS; ATTRIBUTE_NAMES[436] = ATTR_CLIP_PATH;
ATTRIBUTE_NAMES[437] = ATTR_DISPLAYSTYLE; ATTRIBUTE_NAMES[437] = ATTR_DISPLAY;
ATTRIBUTE_NAMES[438] = ATTR_GLYPH_ORIENTATION_HORIZONTAL; ATTRIBUTE_NAMES[438] = ATTR_GLYPH_ORIENTATION_VERTICAL;
ATTRIBUTE_NAMES[439] = ATTR_HTTP_EQUIV; ATTRIBUTE_NAMES[439] = ATTR_GLYPHREF;
ATTRIBUTE_NAMES[440] = ATTR_LOOP; ATTRIBUTE_NAMES[440] = ATTR_KEYPOINTS;
ATTRIBUTE_NAMES[441] = ATTR_SCOPED; ATTRIBUTE_NAMES[441] = ATTR_PROPERTY;
ATTRIBUTE_NAMES[442] = ATTR_SHAPE_RENDERING; ATTRIBUTE_NAMES[442] = ATTR_STEP;
ATTRIBUTE_NAMES[443] = ATTR_SHAPE; ATTRIBUTE_NAMES[443] = ATTR_SCOPE;
ATTRIBUTE_NAMES[444] = ATTR_STOP_COLOR; ATTRIBUTE_NAMES[444] = ATTR_SLOPE;
ATTRIBUTE_NAMES[445] = ATTR_TEMPLATE; ATTRIBUTE_NAMES[445] = ATTR_STOP_OPACITY;
ATTRIBUTE_NAMES[446] = ATTR_ABBR; ATTRIBUTE_NAMES[446] = ATTR_WRAP;
ATTRIBUTE_NAMES[447] = ATTR_ATTRIBUTETYPE; ATTRIBUTE_NAMES[447] = ATTR_ATTRIBUTENAME;
ATTRIBUTE_NAMES[448] = ATTR_COORDS; ATTRIBUTE_NAMES[448] = ATTR_CHAR;
ATTRIBUTE_NAMES[449] = ATTR_CHARSET; ATTRIBUTE_NAMES[449] = ATTR_CHAROFF;
ATTRIBUTE_NAMES[450] = ATTR_NOHREF; ATTRIBUTE_NAMES[450] = ATTR_NOWRAP;
ATTRIBUTE_NAMES[451] = ATTR_ONDRAGENTER; ATTRIBUTE_NAMES[451] = ATTR_ONDRAG;
ATTRIBUTE_NAMES[452] = ATTR_ONDRAGEND; ATTRIBUTE_NAMES[452] = ATTR_ONDRAGOVER;
ATTRIBUTE_NAMES[453] = ATTR_ONDRAGDROP; ATTRIBUTE_NAMES[453] = ATTR_ONDROP;
ATTRIBUTE_NAMES[454] = ATTR_OPERATOR; ATTRIBUTE_NAMES[454] = ATTR_ONERROR;
ATTRIBUTE_NAMES[455] = ATTR_ONDRAGSTART; ATTRIBUTE_NAMES[455] = ATTR_OVERFLOW;
ATTRIBUTE_NAMES[456] = ATTR_STARTOFFSET; ATTRIBUTE_NAMES[456] = ATTR_ONDRAGLEAVE;
ATTRIBUTE_NAMES[457] = ATTR_AS; ATTRIBUTE_NAMES[457] = ATTR_START;
ATTRIBUTE_NAMES[458] = ATTR_BIAS; ATTRIBUTE_NAMES[458] = ATTR_AXIS;
ATTRIBUTE_NAMES[459] = ATTR_CLASSID; ATTRIBUTE_NAMES[459] = ATTR_COLSPAN;
ATTRIBUTE_NAMES[460] = ATTR_COLS; ATTRIBUTE_NAMES[460] = ATTR_CROSSORIGIN;
ATTRIBUTE_NAMES[461] = ATTR_CLOSURE; ATTRIBUTE_NAMES[461] = ATTR_CURSOR;
ATTRIBUTE_NAMES[462] = ATTR_CLASS; ATTRIBUTE_NAMES[462] = ATTR_CLOSE;
ATTRIBUTE_NAMES[463] = ATTR_KEYSYSTEM; ATTRIBUTE_NAMES[463] = ATTR_IS;
ATTRIBUTE_NAMES[464] = ATTR_LOWSRC; ATTRIBUTE_NAMES[464] = ATTR_KEYSPLINES;
ATTRIBUTE_NAMES[465] = ATTR_MINSIZE; ATTRIBUTE_NAMES[465] = ATTR_MAXSIZE;
ATTRIBUTE_NAMES[466] = ATTR_PRESERVEALPHA; ATTRIBUTE_NAMES[466] = ATTR_OFFSET;
ATTRIBUTE_NAMES[467] = ATTR_ROWSPAN; ATTRIBUTE_NAMES[467] = ATTR_PRESERVEASPECTRATIO;
ATTRIBUTE_NAMES[468] = ATTR_ROWS; ATTRIBUTE_NAMES[468] = ATTR_ROWSPACING;
ATTRIBUTE_NAMES[469] = ATTR_SUBSCRIPTSHIFT; ATTRIBUTE_NAMES[469] = ATTR_SRCSET;
ATTRIBUTE_NAMES[470] = ATTR_ALTTEXT; ATTRIBUTE_NAMES[470] = ATTR_VERSION;
ATTRIBUTE_NAMES[471] = ATTR_CONTROLS; ATTRIBUTE_NAMES[471] = ATTR_CONTENTEDITABLE;
ATTRIBUTE_NAMES[472] = ATTR_CONTEXTMENU; ATTRIBUTE_NAMES[472] = ATTR_CONTENT;
ATTRIBUTE_NAMES[473] = ATTR_ENCTYPE; ATTRIBUTE_NAMES[473] = ATTR_DEPTH;
ATTRIBUTE_NAMES[474] = ATTR_FILTER; ATTRIBUTE_NAMES[474] = ATTR_FONT_STRETCH;
ATTRIBUTE_NAMES[475] = ATTR_FONT_WEIGHT; ATTRIBUTE_NAMES[475] = ATTR_FONTWEIGHT;
ATTRIBUTE_NAMES[476] = ATTR_FONT_STYLE; ATTRIBUTE_NAMES[476] = ATTR_FONTSTYLE;
ATTRIBUTE_NAMES[477] = ATTR_FONT_FAMILY; ATTRIBUTE_NAMES[477] = ATTR_FONTFAMILY;
ATTRIBUTE_NAMES[478] = ATTR_FONT_SIZE_ADJUST; ATTRIBUTE_NAMES[478] = ATTR_FONT_VARIANT;
ATTRIBUTE_NAMES[479] = ATTR_FONTSIZE; ATTRIBUTE_NAMES[479] = ATTR_FILTERUNITS;
ATTRIBUTE_NAMES[480] = ATTR_KEYTIMES; ATTRIBUTE_NAMES[480] = ATTR_FONT_SIZE;
ATTRIBUTE_NAMES[481] = ATTR_LIST; ATTRIBUTE_NAMES[481] = ATTR_LETTER_SPACING;
ATTRIBUTE_NAMES[482] = ATTR_RT; ATTRIBUTE_NAMES[482] = ATTR_MULTIPLE;
ATTRIBUTE_NAMES[483] = ATTR_ONSTART; ATTRIBUTE_NAMES[483] = ATTR_ONSTOP;
ATTRIBUTE_NAMES[484] = ATTR_PATTERNTRANSFORM; ATTRIBUTE_NAMES[484] = ATTR_POSTER;
ATTRIBUTE_NAMES[485] = ATTR_PATTERNUNITS; ATTRIBUTE_NAMES[485] = ATTR_PATTERN;
ATTRIBUTE_NAMES[486] = ATTR_RESTART; ATTRIBUTE_NAMES[486] = ATTR_PATTERNCONTENTUNITS;
ATTRIBUTE_NAMES[487] = ATTR_SYSTEMLANGUAGE; ATTRIBUTE_NAMES[487] = ATTR_STITCHTILES;
ATTRIBUTE_NAMES[488] = ATTR_TEXT_DECORATION; ATTRIBUTE_NAMES[488] = ATTR_TEXT_RENDERING;
ATTRIBUTE_NAMES[489] = ATTR_TEXTLENGTH; ATTRIBUTE_NAMES[489] = ATTR_TEXT_ANCHOR;
ATTRIBUTE_NAMES[490] = ATTR_WRITING_MODE; ATTRIBUTE_NAMES[490] = ATTR_TEXT;
ATTRIBUTE_NAMES[491] = ATTR_ACCUMULATE; ATTRIBUTE_NAMES[491] = ATTR_WIDTH;
ATTRIBUTE_NAMES[492] = ATTR_COLUMNLINES; ATTRIBUTE_NAMES[492] = ATTR_COLUMNSPAN;
ATTRIBUTE_NAMES[493] = ATTR_COLUMNSPACING; ATTRIBUTE_NAMES[493] = ATTR_COLUMNALIGN;
ATTRIBUTE_NAMES[494] = ATTR_GROUPALIGN; ATTRIBUTE_NAMES[494] = ATTR_COLUMNWIDTH;
ATTRIBUTE_NAMES[495] = ATTR_ONSUBMIT; ATTRIBUTE_NAMES[495] = ATTR_INPUTMODE;
ATTRIBUTE_NAMES[496] = ATTR_REQUIRED; ATTRIBUTE_NAMES[496] = ATTR_ONCUT;
ATTRIBUTE_NAMES[497] = ATTR_RESULT; ATTRIBUTE_NAMES[497] = ATTR_REQUIREDFEATURES;
ATTRIBUTE_NAMES[498] = ATTR_VALUES; ATTRIBUTE_NAMES[498] = ATTR_REQUIREDEXTENSIONS;
ATTRIBUTE_NAMES[499] = ATTR_VALUE; ATTRIBUTE_NAMES[499] = ATTR_VALUETYPE;
ATTRIBUTE_NAMES[500] = ATTR_VIEWTARGET; ATTRIBUTE_NAMES[500] = ATTR_ELEVATION;
ATTRIBUTE_NAMES[501] = ATTR_CX; ATTRIBUTE_NAMES[501] = ATTR_VIEWBOX;
ATTRIBUTE_NAMES[502] = ATTR_FX; ATTRIBUTE_NAMES[502] = ATTR_DX;
ATTRIBUTE_NAMES[503] = ATTR_RX;
} }
void nsHtml5AttributeName::releaseStatics() { void nsHtml5AttributeName::releaseStatics() {
@ -2816,6 +2821,7 @@ void nsHtml5AttributeName::releaseStatics() {
delete ATTR_RENDERING_INTENT; delete ATTR_RENDERING_INTENT;
delete ATTR_SHADOWROOTMODE; delete ATTR_SHADOWROOTMODE;
delete ATTR_SEED; delete ATTR_SEED;
delete ATTR_SHADOWROOTCLONABLE;
delete ATTR_SRCDOC; delete ATTR_SRCDOC;
delete ATTR_STDDEVIATION; delete ATTR_STDDEVIATION;
delete ATTR_SANDBOX; delete ATTR_SANDBOX;

View file

@ -283,6 +283,7 @@ class nsHtml5AttributeName {
static nsHtml5AttributeName* ATTR_RENDERING_INTENT; static nsHtml5AttributeName* ATTR_RENDERING_INTENT;
static nsHtml5AttributeName* ATTR_SHADOWROOTMODE; static nsHtml5AttributeName* ATTR_SHADOWROOTMODE;
static nsHtml5AttributeName* ATTR_SEED; static nsHtml5AttributeName* ATTR_SEED;
static nsHtml5AttributeName* ATTR_SHADOWROOTCLONABLE;
static nsHtml5AttributeName* ATTR_SRCDOC; static nsHtml5AttributeName* ATTR_SRCDOC;
static nsHtml5AttributeName* ATTR_STDDEVIATION; static nsHtml5AttributeName* ATTR_STDDEVIATION;
static nsHtml5AttributeName* ATTR_SANDBOX; static nsHtml5AttributeName* ATTR_SANDBOX;

View file

@ -2104,10 +2104,12 @@ nsIContentHandle* nsHtml5TreeBuilder::getDeclarativeShadowRoot(
if (!shadowRootMode) { if (!shadowRootMode) {
return nullptr; return nullptr;
} }
bool shadowRootIsClonable =
attributes->contains(nsHtml5AttributeName::ATTR_SHADOWROOTCLONABLE);
bool shadowRootDelegatesFocus = bool shadowRootDelegatesFocus =
attributes->contains(nsHtml5AttributeName::ATTR_SHADOWROOTDELEGATESFOCUS); attributes->contains(nsHtml5AttributeName::ATTR_SHADOWROOTDELEGATESFOCUS);
return getShadowRootFromHost(currentNode, templateNode, shadowRootMode, return getShadowRootFromHost(currentNode, templateNode, shadowRootMode,
shadowRootDelegatesFocus); shadowRootIsClonable, shadowRootDelegatesFocus);
} }
nsHtml5String nsHtml5TreeBuilder::extractCharsetFromContent( nsHtml5String nsHtml5TreeBuilder::extractCharsetFromContent(

View file

@ -1706,7 +1706,8 @@ void nsHtml5TreeBuilder::setDocumentFragmentForTemplate(
nsIContentHandle* nsHtml5TreeBuilder::getShadowRootFromHost( nsIContentHandle* nsHtml5TreeBuilder::getShadowRootFromHost(
nsIContentHandle* aHost, nsIContentHandle* aTemplateNode, nsIContentHandle* aHost, nsIContentHandle* aTemplateNode,
nsHtml5String aShadowRootMode, bool aShadowRootDelegatesFocus) { nsHtml5String aShadowRootMode, bool aShadowRootIsClonable,
bool aShadowRootDelegatesFocus) {
mozilla::dom::ShadowRootMode mode; mozilla::dom::ShadowRootMode mode;
if (aShadowRootMode.LowerCaseEqualsASCII("open")) { if (aShadowRootMode.LowerCaseEqualsASCII("open")) {
mode = mozilla::dom::ShadowRootMode::Open; mode = mozilla::dom::ShadowRootMode::Open;
@ -1718,7 +1719,8 @@ nsIContentHandle* nsHtml5TreeBuilder::getShadowRootFromHost(
if (mBuilder) { if (mBuilder) {
nsIContent* root = nsContentUtils::AttachDeclarativeShadowRoot( nsIContent* root = nsContentUtils::AttachDeclarativeShadowRoot(
static_cast<nsIContent*>(aHost), mode, aShadowRootDelegatesFocus); static_cast<nsIContent*>(aHost), mode, aShadowRootIsClonable,
aShadowRootDelegatesFocus);
if (!root) { if (!root) {
nsContentUtils::LogSimpleConsoleError( nsContentUtils::LogSimpleConsoleError(
u"Failed to attach Declarative Shadow DOM."_ns, "DOM"_ns, u"Failed to attach Declarative Shadow DOM."_ns, "DOM"_ns,
@ -1735,6 +1737,7 @@ nsIContentHandle* nsHtml5TreeBuilder::getShadowRootFromHost(
} }
nsIContentHandle* fragHandle = AllocateContentHandle(); nsIContentHandle* fragHandle = AllocateContentHandle();
opGetShadowRootFromHost operation(aHost, fragHandle, aTemplateNode, mode, opGetShadowRootFromHost operation(aHost, fragHandle, aTemplateNode, mode,
aShadowRootIsClonable,
aShadowRootDelegatesFocus); aShadowRootDelegatesFocus);
treeOp->Init(mozilla::AsVariant(operation)); treeOp->Init(mozilla::AsVariant(operation));
return fragHandle; return fragHandle;

View file

@ -64,6 +64,7 @@ void setDocumentFragmentForTemplate(nsIContentHandle* aTemplate,
nsIContentHandle* getShadowRootFromHost(nsIContentHandle* aHost, nsIContentHandle* getShadowRootFromHost(nsIContentHandle* aHost,
nsIContentHandle* aTemplateNode, nsIContentHandle* aTemplateNode,
nsHtml5String aShadowRootMode, nsHtml5String aShadowRootMode,
bool aShadowRootIsClonable,
bool aShadowRootDelegatesFocus); bool aShadowRootDelegatesFocus);
nsIContentHandle* getFormPointerForContext(nsIContentHandle* aContext); nsIContentHandle* getFormPointerForContext(nsIContentHandle* aContext);

View file

@ -930,6 +930,7 @@ nsresult nsHtml5TreeOperation::Perform(nsHtml5TreeOpExecutor* aBuilder,
nsresult operator()(const opGetShadowRootFromHost& aOperation) { nsresult operator()(const opGetShadowRootFromHost& aOperation) {
nsIContent* root = nsContentUtils::AttachDeclarativeShadowRoot( nsIContent* root = nsContentUtils::AttachDeclarativeShadowRoot(
*aOperation.mHost, aOperation.mShadowRootMode, *aOperation.mHost, aOperation.mShadowRootMode,
aOperation.mShadowRootIsClonable,
aOperation.mShadowRootDelegatesFocus); aOperation.mShadowRootDelegatesFocus);
if (root) { if (root) {
*aOperation.mFragHandle = root; *aOperation.mFragHandle = root;

View file

@ -281,17 +281,20 @@ struct opGetShadowRootFromHost {
nsIContent** mFragHandle; nsIContent** mFragHandle;
nsIContent** mTemplateNode; nsIContent** mTemplateNode;
mozilla::dom::ShadowRootMode mShadowRootMode; mozilla::dom::ShadowRootMode mShadowRootMode;
bool mShadowRootIsClonable;
bool mShadowRootDelegatesFocus; bool mShadowRootDelegatesFocus;
explicit opGetShadowRootFromHost(nsIContentHandle* aHost, explicit opGetShadowRootFromHost(nsIContentHandle* aHost,
nsIContentHandle* aFragHandle, nsIContentHandle* aFragHandle,
nsIContentHandle* aTemplateNode, nsIContentHandle* aTemplateNode,
mozilla::dom::ShadowRootMode aShadowRootMode, mozilla::dom::ShadowRootMode aShadowRootMode,
bool aShadowRootIsClonable,
bool aShadowRootDelegatesFocus) { bool aShadowRootDelegatesFocus) {
mHost = static_cast<nsIContent**>(aHost); mHost = static_cast<nsIContent**>(aHost);
mFragHandle = static_cast<nsIContent**>(aFragHandle); mFragHandle = static_cast<nsIContent**>(aFragHandle);
mTemplateNode = static_cast<nsIContent**>(aTemplateNode); mTemplateNode = static_cast<nsIContent**>(aTemplateNode);
mShadowRootMode = aShadowRootMode; mShadowRootMode = aShadowRootMode;
mShadowRootIsClonable = aShadowRootIsClonable;
mShadowRootDelegatesFocus = aShadowRootDelegatesFocus; mShadowRootDelegatesFocus = aShadowRootDelegatesFocus;
} }
}; };

View file

@ -1,12 +1,3 @@
[declarative-shadow-dom-basic.html] [declarative-shadow-dom-basic.html]
[Declarative Shadow DOM: Multiple roots] [Declarative Shadow DOM: Multiple roots]
expected: FAIL expected: FAIL
[Declarative Shadow DOM: clonable attribute]
expected: FAIL
[Shadowrootclonable reflection]
expected: FAIL
[Shadowrootclonable reflection, setter]
expected: FAIL

View file

@ -1,9 +0,0 @@
[shadow-root-clonable.html]
[attachShadow with clonable: true]
expected: FAIL
[declarative shadow roots do *not* get clonable: true automatically]
expected: FAIL
[declarative shadow roots inside templates do *not* get cloned automatically]
expected: FAIL

View file

@ -41,6 +41,8 @@ HTML_PARSER_ATOMS = [
# ATOM GENERATED BY HTML PARSER TRANSLATOR (WILL BE AUTOMATICALLY OVERWRITTEN): # ATOM GENERATED BY HTML PARSER TRANSLATOR (WILL BE AUTOMATICALLY OVERWRITTEN):
Atom("shadowrootmode", "shadowrootmode"), Atom("shadowrootmode", "shadowrootmode"),
# ATOM GENERATED BY HTML PARSER TRANSLATOR (WILL BE AUTOMATICALLY OVERWRITTEN): # ATOM GENERATED BY HTML PARSER TRANSLATOR (WILL BE AUTOMATICALLY OVERWRITTEN):
Atom("shadowrootclonable", "shadowrootclonable"),
# ATOM GENERATED BY HTML PARSER TRANSLATOR (WILL BE AUTOMATICALLY OVERWRITTEN):
Atom("stddeviation", "stddeviation"), Atom("stddeviation", "stddeviation"),
# ATOM GENERATED BY HTML PARSER TRANSLATOR (WILL BE AUTOMATICALLY OVERWRITTEN): # ATOM GENERATED BY HTML PARSER TRANSLATOR (WILL BE AUTOMATICALLY OVERWRITTEN):
Atom("shadowrootdelegatesfocus", "shadowrootdelegatesfocus"), Atom("shadowrootdelegatesfocus", "shadowrootdelegatesfocus"),