diff --git a/dom/base/Document.cpp b/dom/base/Document.cpp index 34322814c563..c43f308dc918 100644 --- a/dom/base/Document.cpp +++ b/dom/base/Document.cpp @@ -1394,7 +1394,6 @@ Document::Document(const char* aContentType) mHasUserInteractionTimerScheduled(false), mShouldResistFingerprinting(false), mCloningForSVGUse(false), - mAllowDeclarativeShadowRoots(false), mXMLDeclarationBits(0), mOnloadBlockCount(0), mWriteLevel(0), @@ -18989,41 +18988,4 @@ void Document::UpdateHiddenByContentVisibilityForAnimations() { timeline->UpdateHiddenByContentVisibility(); } } - -void Document::SetAllowDeclarativeShadowRoots( - bool aAllowDeclarativeShadowRoots) { - mAllowDeclarativeShadowRoots = aAllowDeclarativeShadowRoots; -} - -bool Document::AllowsDeclarativeShadowRoots() const { - return mAllowDeclarativeShadowRoots; -} - -/* static */ -already_AddRefed Document::ParseHTMLUnsafe(GlobalObject& aGlobal, - const nsAString& aHTML) { - nsCOMPtr uri; - NS_NewURI(getter_AddRefs(uri), "about:blank"); - if (!uri) { - return nullptr; - } - - nsCOMPtr doc; - nsresult rv = - NS_NewHTMLDocument(getter_AddRefs(doc), aGlobal.GetSubjectPrincipal(), - aGlobal.GetSubjectPrincipal()); - if (NS_WARN_IF(NS_FAILED(rv))) { - return nullptr; - } - - doc->SetAllowDeclarativeShadowRoots(true); - doc->SetDocumentURI(uri); - rv = nsContentUtils::ParseDocumentHTML(aHTML, doc, false); - if (NS_WARN_IF(NS_FAILED(rv))) { - return nullptr; - } - - return doc.forget(); -} - } // namespace mozilla::dom diff --git a/dom/base/Document.h b/dom/base/Document.h index 61dd9206d410..9615d96c1886 100644 --- a/dom/base/Document.h +++ b/dom/base/Document.h @@ -3866,9 +3866,6 @@ class Document : public nsINode, */ bool AllowsL10n() const; - void SetAllowDeclarativeShadowRoots(bool aAllowDeclarativeShadowRoots); - bool AllowsDeclarativeShadowRoots() const; - protected: RefPtr mDocumentL10n; @@ -4831,8 +4828,6 @@ class Document : public nsINode, // Whether we're cloning the contents of an SVG use element. bool mCloningForSVGUse : 1; - bool mAllowDeclarativeShadowRoots : 1; - // The fingerprinting protections overrides for this document. The value will // override the default enabled fingerprinting protections for this document. // This will only get populated if these is one that comes from the local @@ -5347,9 +5342,6 @@ class Document : public nsINode, void LoadEventFired(); RadioGroupContainer& OwnedRadioGroupContainer(); - - static already_AddRefed ParseHTMLUnsafe(GlobalObject& aGlobal, - const nsAString& aHTML); }; NS_DEFINE_STATIC_IID_ACCESSOR(Document, NS_IDOCUMENT_IID) diff --git a/dom/base/Element.cpp b/dom/base/Element.cpp index 55bfe2310fdd..f6311a5d9b78 100644 --- a/dom/base/Element.cpp +++ b/dom/base/Element.cpp @@ -1252,9 +1252,8 @@ bool Element::CanAttachShadowDOM() const { } // https://dom.spec.whatwg.org/commit-snapshots/1eadf0a4a271acc92013d1c0de8c730ac96204f9/#dom-element-attachshadow -already_AddRefed Element::AttachShadow( - const ShadowRootInit& aInit, ErrorResult& aError, - ShadowRootDeclarative aNewShadowIsDeclarative) { +already_AddRefed Element::AttachShadow(const ShadowRootInit& aInit, + ErrorResult& aError) { /** * Step 1, 2, and 3. */ @@ -1264,41 +1263,25 @@ already_AddRefed Element::AttachShadow( } /** - * 4. If element is a shadow host, then: + * 4. If this is a shadow host, then throw a "NotSupportedError" DOMException. */ - if (RefPtr root = GetShadowRoot()) { - /* - * 1. If element’s shadow root’s declarative is false, then throw an - * "NotSupportedError" DOMException. - */ - if (!root->IsDeclarative()) { - aError.Throw(NS_ERROR_DOM_NOT_SUPPORTED_ERR); - return nullptr; - } - // https://github.com/whatwg/dom/issues/1235 - root->SetIsDeclarative(aNewShadowIsDeclarative); - /* - * 2. Otherwise, remove all of element’s shadow root’s children, in tree - * order, and return. - */ - root->ReplaceChildren(nullptr, aError); - return root.forget(); + if (GetShadowRoot()) { + aError.Throw(NS_ERROR_DOM_NOT_SUPPORTED_ERR); + return nullptr; } if (StaticPrefs::dom_webcomponents_shadowdom_report_usage()) { OwnerDoc()->ReportShadowDOMUsage(); } - return AttachShadowWithoutNameChecks( - aInit.mMode, DelegatesFocus(aInit.mDelegatesFocus), aInit.mSlotAssignment, - ShadowRootClonable(aInit.mClonable), - ShadowRootDeclarative(aNewShadowIsDeclarative)); + return AttachShadowWithoutNameChecks(aInit.mMode, + DelegatesFocus(aInit.mDelegatesFocus), + aInit.mSlotAssignment); } already_AddRefed Element::AttachShadowWithoutNameChecks( ShadowRootMode aMode, DelegatesFocus aDelegatesFocus, - SlotAssignmentMode aSlotAssignment, ShadowRootClonable aClonable, - ShadowRootDeclarative aDeclarative) { + SlotAssignmentMode aSlotAssignment) { nsAutoScriptBlocker scriptBlocker; auto* nim = mNodeInfo->NodeInfoManager(); @@ -1322,9 +1305,8 @@ already_AddRefed Element::AttachShadowWithoutNameChecks( * context object's node document, host is context object, * and mode is init's mode. */ - RefPtr shadowRoot = - new (nim) ShadowRoot(this, aMode, aDelegatesFocus, aSlotAssignment, - aClonable, aDeclarative, nodeInfo.forget()); + RefPtr shadowRoot = new (nim) ShadowRoot( + this, aMode, aDelegatesFocus, aSlotAssignment, nodeInfo.forget()); if (NodeOrAncestorHasDirAuto()) { shadowRoot->SetAncestorHasDirAuto(); @@ -5045,8 +5027,4 @@ EditorBase* Element::GetEditorWithoutCreation() const { return docShell ? docShell->GetHTMLEditorInternal() : nullptr; } -void Element::SetHTMLUnsafe(const nsAString& aHTML) { - nsContentUtils::SetHTMLUnsafe(this, this, aHTML); -} - } // namespace mozilla::dom diff --git a/dom/base/Element.h b/dom/base/Element.h index 1e7889632c4a..931f88410bd2 100644 --- a/dom/base/Element.h +++ b/dom/base/Element.h @@ -1320,23 +1320,15 @@ class Element : public FragmentOrElement { bool ParseLoadingAttribute(const nsAString& aValue, nsAttrValue& aResult); // Shadow DOM v1 - enum class ShadowRootDeclarative : bool { No, Yes }; - - MOZ_CAN_RUN_SCRIPT_BOUNDARY - already_AddRefed AttachShadow( - const ShadowRootInit& aInit, ErrorResult& aError, - ShadowRootDeclarative aNewShadowIsDeclarative = - ShadowRootDeclarative::No); + already_AddRefed AttachShadow(const ShadowRootInit& aInit, + ErrorResult& aError); bool CanAttachShadowDOM() const; enum class DelegatesFocus : bool { No, Yes }; - enum class ShadowRootClonable : bool { No, Yes }; already_AddRefed AttachShadowWithoutNameChecks( ShadowRootMode aMode, DelegatesFocus = DelegatesFocus::No, - SlotAssignmentMode aSlotAssignmentMode = SlotAssignmentMode::Named, - ShadowRootClonable aClonable = ShadowRootClonable::No, - ShadowRootDeclarative aDeclarative = ShadowRootDeclarative::No); + SlotAssignmentMode aSlotAssignmentMode = SlotAssignmentMode::Named); // Attach UA Shadow Root if it is not attached. enum class NotifyUAWidgetSetup : bool { No, Yes }; @@ -2087,9 +2079,6 @@ class Element : public FragmentOrElement { virtual bool Translate() const; - MOZ_CAN_RUN_SCRIPT - virtual void SetHTMLUnsafe(const nsAString& aHTML); - protected: enum class ReparseAttributes { No, Yes }; /** diff --git a/dom/base/ShadowRoot.cpp b/dom/base/ShadowRoot.cpp index c24cefc92f78..770ffcdaef11 100644 --- a/dom/base/ShadowRoot.cpp +++ b/dom/base/ShadowRoot.cpp @@ -51,8 +51,7 @@ NS_IMPL_RELEASE_INHERITED(ShadowRoot, DocumentFragment) ShadowRoot::ShadowRoot(Element* aElement, ShadowRootMode aMode, Element::DelegatesFocus aDelegatesFocus, - SlotAssignmentMode aSlotAssignment, Clonable aIsClonable, - Declarative aDeclarative, + SlotAssignmentMode aSlotAssignment, already_AddRefed&& aNodeInfo) : DocumentFragment(std::move(aNodeInfo)), DocumentOrShadowRoot(this), @@ -60,9 +59,7 @@ ShadowRoot::ShadowRoot(Element* aElement, ShadowRootMode aMode, mDelegatesFocus(aDelegatesFocus), mSlotAssignment(aSlotAssignment), mIsDetailsShadowTree(aElement->IsHTMLElement(nsGkAtoms::details)), - mIsAvailableToElementInternals(false), - mIsDeclarative(aDeclarative), - mIsClonable(aIsClonable) { + mIsAvailableToElementInternals(false) { // nsINode.h relies on this. MOZ_ASSERT(static_cast(this) == reinterpret_cast(this)); MOZ_ASSERT(static_cast(this) == @@ -877,8 +874,3 @@ nsresult ShadowRoot::Clone(dom::NodeInfo* aNodeInfo, nsINode** aResult) const { *aResult = nullptr; return NS_ERROR_DOM_NOT_SUPPORTED_ERR; } - -void ShadowRoot::SetHTMLUnsafe(const nsAString& aHTML) { - RefPtr host = GetHost(); - nsContentUtils::SetHTMLUnsafe(this, host, aHTML); -} diff --git a/dom/base/ShadowRoot.h b/dom/base/ShadowRoot.h index 1ff1f48a26f4..96f1259a863c 100644 --- a/dom/base/ShadowRoot.h +++ b/dom/base/ShadowRoot.h @@ -42,9 +42,6 @@ class HTMLInputElement; class ShadowRoot final : public DocumentFragment, public DocumentOrShadowRoot { friend class DocumentOrShadowRoot; - using Declarative = Element::ShadowRootDeclarative; - using Clonable = Element::ShadowRootClonable; - public: NS_IMPL_FROMNODE_HELPER(ShadowRoot, IsShadowRoot()); @@ -53,8 +50,7 @@ class ShadowRoot final : public DocumentFragment, public DocumentOrShadowRoot { ShadowRoot(Element* aElement, ShadowRootMode aMode, Element::DelegatesFocus aDelegatesFocus, - SlotAssignmentMode aSlotAssignment, Clonable aClonable, - Declarative aDeclarative, + SlotAssignmentMode aSlotAssignment, already_AddRefed&& aNodeInfo); void AddSizeOfExcludingThis(nsWindowSizes&, size_t* aNodeSize) const final; @@ -235,19 +231,6 @@ class ShadowRoot final : public DocumentFragment, public DocumentOrShadowRoot { void GetEventTargetParent(EventChainPreVisitor& aVisitor) override; - bool IsDeclarative() const { return mIsDeclarative == Declarative::Yes; } - void SetIsDeclarative(Declarative aIsDeclarative) { - mIsDeclarative = aIsDeclarative; - } - void SetIsDeclarative(bool aIsDeclarative) { - mIsDeclarative = aIsDeclarative ? Declarative::Yes : Declarative::No; - } - - bool IsClonable() const { return mIsClonable == Clonable::Yes; } - - MOZ_CAN_RUN_SCRIPT - void SetHTMLUnsafe(const nsAString& aHTML); - protected: // FIXME(emilio): This will need to become more fine-grained. void ApplicableRulesChanged(); @@ -285,12 +268,6 @@ class ShadowRoot final : public DocumentFragment, public DocumentOrShadowRoot { // https://dom.spec.whatwg.org/#shadowroot-available-to-element-internals bool mIsAvailableToElementInternals : 1; - // https://dom.spec.whatwg.org/#shadowroot-declarative - Declarative mIsDeclarative; - - // https://dom.spec.whatwg.org/#shadowroot-clonable - Clonable mIsClonable; - nsresult Clone(dom::NodeInfo*, nsINode** aResult) const override; }; diff --git a/dom/base/nsContentUtils.cpp b/dom/base/nsContentUtils.cpp index d86c656d59f3..427e387ff3aa 100644 --- a/dom/base/nsContentUtils.cpp +++ b/dom/base/nsContentUtils.cpp @@ -5446,34 +5446,6 @@ bool AllowsUnsanitizedContentForAboutNewTab(nsIPrincipal* aPrincipal) { return aboutModuleFlags & nsIAboutModule::ALLOW_UNSANITIZED_CONTENT; } -/* static */ -void nsContentUtils::SetHTMLUnsafe(FragmentOrElement* aTarget, - Element* aContext, - const nsAString& aSource) { - MOZ_ASSERT(!sFragmentParsingActive, "Re-entrant fragment parsing attempted."); - mozilla::AutoRestore guard(sFragmentParsingActive); - sFragmentParsingActive = true; - if (!sHTMLFragmentParser) { - NS_ADDREF(sHTMLFragmentParser = new nsHtml5StringParser()); - // Now sHTMLFragmentParser owns the object - } - - nsAtom* contextLocalName = aContext->NodeInfo()->NameAtom(); - int32_t contextNameSpaceID = aContext->GetNameSpaceID(); - - RefPtr doc = aTarget->OwnerDoc(); - RefPtr fragment = doc->CreateDocumentFragment(); - nsresult rv = sHTMLFragmentParser->ParseFragment( - aSource, fragment, contextLocalName, contextNameSpaceID, - fragment->OwnerDoc()->GetCompatibilityMode() == eCompatibility_NavQuirks, - true, true); - if (NS_FAILED(rv)) { - NS_WARNING("Failed to parse fragment for SetHTMLUnsafe"); - } - - aTarget->ReplaceChildren(fragment, IgnoreErrors()); -} - /* static */ nsresult nsContentUtils::ParseFragmentHTML( const nsAString& aSourceBuffer, nsIContent* aTargetNode, @@ -5529,7 +5501,7 @@ nsresult nsContentUtils::ParseFragmentHTML( nsresult rv = sHTMLFragmentParser->ParseFragment( aSourceBuffer, target, aContextLocalName, aContextNamespace, aQuirks, - aPreventScriptExecution, false); + aPreventScriptExecution); NS_ENSURE_SUCCESS(rv, rv); if (fragment) { @@ -11367,25 +11339,6 @@ template bool nsContentUtils::AddElementToListByTreeOrder( nsTArray>& aList, HTMLInputElement* aChild, nsIContent* aAncestor); -nsIContent* nsContentUtils::AttachDeclarativeShadowRoot(nsIContent* aHost, - ShadowRootMode aMode, - bool aDelegatesFocus) { - RefPtr host = mozilla::dom::Element::FromNodeOrNull(aHost); - if (!host) { - return nullptr; - } - - ShadowRootInit init; - init.mMode = aMode; - init.mDelegatesFocus = aDelegatesFocus; - init.mSlotAssignment = SlotAssignmentMode::Named; - init.mClonable = true; - - RefPtr shadowRoot = host->AttachShadow(init, IgnoreErrors(), - Element::ShadowRootDeclarative::Yes); - return shadowRoot; -} - namespace mozilla { std::ostream& operator<<(std::ostream& aOut, const PreventDefaultResult aPreventDefaultResult) { diff --git a/dom/base/nsContentUtils.h b/dom/base/nsContentUtils.h index 43572f09baec..3aca84f01071 100644 --- a/dom/base/nsContentUtils.h +++ b/dom/base/nsContentUtils.h @@ -176,7 +176,6 @@ class DOMArena; class Element; class Event; class EventTarget; -class FragmentOrElement; class HTMLElement; class HTMLInputElement; class IPCTransferable; @@ -188,7 +187,6 @@ class MessageBroadcaster; class NodeInfo; class OwningFileOrUSVStringOrFormData; class Selection; -enum class ShadowRootMode : uint8_t; struct StructuredSerializeOptions; class WorkerPrivate; enum class ElementCallbackType; @@ -1804,9 +1802,6 @@ class nsContentUtils { bool aPreventScriptExecution, mozilla::ErrorResult& aRv); - MOZ_CAN_RUN_SCRIPT - static void SetHTMLUnsafe(mozilla::dom::FragmentOrElement* aTarget, - Element* aContext, const nsAString& aSource); /** * Invoke the fragment parsing algorithm (innerHTML) using the HTML parser. * @@ -3462,11 +3457,6 @@ class nsContentUtils { nsIContent* aContent2, const nsIContent* aCommonAncestor); - MOZ_CAN_RUN_SCRIPT_BOUNDARY - static nsIContent* AttachDeclarativeShadowRoot( - nsIContent* aHost, mozilla::dom::ShadowRootMode aMode, - bool aDelegatesFocus); - private: static bool InitializeEventTable(); diff --git a/dom/base/nsINode.cpp b/dom/base/nsINode.cpp index bd294ae1dc72..369bb41fe459 100644 --- a/dom/base/nsINode.cpp +++ b/dom/base/nsINode.cpp @@ -37,7 +37,6 @@ #include "mozilla/dom/DebuggerNotificationBinding.h" #include "mozilla/dom/DocumentType.h" #include "mozilla/dom/Element.h" -#include "mozilla/dom/ElementBinding.h" #include "mozilla/dom/Event.h" #include "mozilla/dom/Exceptions.h" #include "mozilla/dom/Link.h" @@ -3615,38 +3614,6 @@ already_AddRefed nsINode::CloneAndAdopt( } } - if (aClone && aNode->IsElement() && - !nodeInfo->GetDocument()->IsStaticDocument()) { - // Clone the Shadow DOM - ShadowRoot* originalShadowRoot = aNode->AsElement()->GetShadowRoot(); - if (originalShadowRoot && originalShadowRoot->IsClonable()) { - ShadowRootInit init; - init.mMode = originalShadowRoot->Mode(); - init.mDelegatesFocus = originalShadowRoot->DelegatesFocus(); - init.mSlotAssignment = originalShadowRoot->SlotAssignment(); - init.mClonable = true; - - RefPtr newShadowRoot = - clone->AsElement()->AttachShadow(init, aError); - if (NS_WARN_IF(aError.Failed())) { - return nullptr; - } - newShadowRoot->SetIsDeclarative(originalShadowRoot->IsDeclarative()); - - if (aDeep) { - for (nsIContent* origChild = originalShadowRoot->GetFirstChild(); - origChild; origChild = origChild->GetNextSibling()) { - nsCOMPtr child = - CloneAndAdopt(origChild, aClone, aDeep, nodeInfoManager, - aReparentScope, newShadowRoot, aError); - if (NS_WARN_IF(aError.Failed())) { - return nullptr; - } - } - } - } - } - // Cloning template element. if (aDeep && aClone && aNode->IsTemplateElement()) { DocumentFragment* origContent = diff --git a/dom/html/HTMLTemplateElement.cpp b/dom/html/HTMLTemplateElement.cpp index 2a608f1c506c..1ffe93b7f53b 100644 --- a/dom/html/HTMLTemplateElement.cpp +++ b/dom/html/HTMLTemplateElement.cpp @@ -8,9 +8,6 @@ #include "mozilla/dom/HTMLTemplateElementBinding.h" #include "mozilla/dom/Document.h" -#include "mozilla/dom/NameSpaceConstants.h" -#include "mozilla/dom/ShadowRootBinding.h" -#include "nsGenericHTMLElement.h" #include "nsGkAtoms.h" #include "nsStyleConsts.h" #include "nsAtom.h" @@ -19,13 +16,6 @@ NS_IMPL_NS_NEW_HTML_ELEMENT(Template) namespace mozilla::dom { -static constexpr nsAttrValue::EnumTable kShadowRootModeTable[] = { - {"open", ShadowRootMode::Open}, - {"closed", ShadowRootMode::Closed}, - {nullptr, {}}}; - -const nsAttrValue::EnumTable* kShadowRootModeDefault = &kShadowRootModeTable[2]; - HTMLTemplateElement::HTMLTemplateElement( already_AddRefed&& aNodeInfo) : nsGenericHTMLElement(std::move(aNodeInfo)) { @@ -41,7 +31,7 @@ HTMLTemplateElement::HTMLTemplateElement( } HTMLTemplateElement::~HTMLTemplateElement() { - if (mContent && mContent->GetHost() == this) { + if (mContent) { mContent->SetHost(nullptr); } } @@ -54,9 +44,7 @@ NS_IMPL_CYCLE_COLLECTION_CLASS(HTMLTemplateElement) NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(HTMLTemplateElement, nsGenericHTMLElement) if (tmp->mContent) { - if (tmp->mContent->GetHost() == tmp) { - tmp->mContent->SetHost(nullptr); - } + tmp->mContent->SetHost(nullptr); tmp->mContent = nullptr; } NS_IMPL_CYCLE_COLLECTION_UNLINK_END @@ -73,38 +61,4 @@ JSObject* HTMLTemplateElement::WrapNode(JSContext* aCx, return HTMLTemplateElement_Binding::Wrap(aCx, this, aGivenProto); } -void HTMLTemplateElement::AfterSetAttr(int32_t aNamespaceID, nsAtom* aName, - const nsAttrValue* aValue, - const nsAttrValue* aOldValue, - nsIPrincipal* aMaybeScriptedPrincipal, - bool aNotify) { - if (aNamespaceID == kNameSpaceID_None && aName == nsGkAtoms::shadowrootmode && - aValue && aValue->Type() == nsAttrValue::ValueType::eEnum && - !mShadowRootMode.isSome()) { - mShadowRootMode.emplace( - static_cast(aValue->GetEnumValue())); - } - - nsGenericHTMLElement::AfterSetAttr(aNamespaceID, aName, aValue, aOldValue, - aMaybeScriptedPrincipal, aNotify); -} - -bool HTMLTemplateElement::ParseAttribute(int32_t aNamespaceID, - nsAtom* aAttribute, - const nsAString& aValue, - nsIPrincipal* aMaybeScriptedPrincipal, - nsAttrValue& aResult) { - if (aNamespaceID == kNameSpaceID_None && - aAttribute == nsGkAtoms::shadowrootmode) { - return aResult.ParseEnumValue(aValue, kShadowRootModeTable, false, nullptr); - } - return nsGenericHTMLElement::ParseAttribute(aNamespaceID, aAttribute, aValue, - aMaybeScriptedPrincipal, aResult); -} - -void HTMLTemplateElement::SetHTMLUnsafe(const nsAString& aHTML) { - RefPtr content = mContent; - nsContentUtils::SetHTMLUnsafe(content, this, aHTML); -} - } // namespace mozilla::dom diff --git a/dom/html/HTMLTemplateElement.h b/dom/html/HTMLTemplateElement.h index be643d215bbf..085b39b55052 100644 --- a/dom/html/HTMLTemplateElement.h +++ b/dom/html/HTMLTemplateElement.h @@ -8,11 +8,8 @@ #define mozilla_dom_HTMLTemplateElement_h #include "mozilla/Attributes.h" -#include "mozilla/ErrorResult.h" #include "nsGenericHTMLElement.h" #include "mozilla/dom/DocumentFragment.h" -#include "mozilla/dom/ShadowRootBinding.h" -#include "nsGkAtoms.h" namespace mozilla::dom { @@ -29,38 +26,9 @@ class HTMLTemplateElement final : public nsGenericHTMLElement { NS_DECL_CYCLE_COLLECTION_CLASS_INHERITED(HTMLTemplateElement, nsGenericHTMLElement) - void AfterSetAttr(int32_t aNamespaceID, nsAtom* aName, - const nsAttrValue* aValue, const nsAttrValue* aOldValue, - nsIPrincipal* aMaybeScriptedPrincipal, - bool aNotify) override; - - bool ParseAttribute(int32_t aNamespaceID, nsAtom* aAttribute, - const nsAString& aValue, - nsIPrincipal* aMaybeScriptedPrincipal, - nsAttrValue& aResult) override; - virtual nsresult Clone(dom::NodeInfo*, nsINode** aResult) const override; DocumentFragment* Content() { return mContent; } - void SetContent(DocumentFragment* aContent) { mContent = aContent; } - - void GetShadowRootMode(nsAString& aResult) const { - GetEnumAttr(nsGkAtoms::shadowrootmode, nullptr, aResult); - } - void SetShadowRootMode(const nsAString& aValue) { - SetHTMLAttr(nsGkAtoms::shadowrootmode, aValue); - } - - bool ShadowRootDelegatesFocus() { - return GetBoolAttr(nsGkAtoms::shadowrootdelegatesfocus); - } - void SetShadowRootDelegatesFocus(bool aValue) { - SetHTMLBoolAttr(nsGkAtoms::shadowrootdelegatesfocus, aValue, - IgnoredErrorResult()); - } - - MOZ_CAN_RUN_SCRIPT - void SetHTMLUnsafe(const nsAString& aHTML) final; protected: virtual ~HTMLTemplateElement(); @@ -69,7 +37,6 @@ class HTMLTemplateElement final : public nsGenericHTMLElement { JS::Handle aGivenProto) override; RefPtr mContent; - Maybe mShadowRootMode; }; } // namespace mozilla::dom diff --git a/dom/webidl/Document.webidl b/dom/webidl/Document.webidl index c82710bf8fa2..87b865fd177c 100644 --- a/dom/webidl/Document.webidl +++ b/dom/webidl/Document.webidl @@ -151,9 +151,6 @@ interface Document : Node { // https://html.spec.whatwg.org/multipage/dom.html#the-document-object partial interface Document { - [Pref="dom.webcomponents.shadowdom.declarative.enabled"] - static Document parseHTMLUnsafe(DOMString html); - [PutForwards=href, LegacyUnforgeable] readonly attribute Location? location; [SetterThrows] attribute DOMString domain; readonly attribute DOMString referrer; diff --git a/dom/webidl/Element.webidl b/dom/webidl/Element.webidl index 603dfd9bdc3e..c81fc74b8482 100644 --- a/dom/webidl/Element.webidl +++ b/dom/webidl/Element.webidl @@ -276,8 +276,6 @@ dictionary ShadowRootInit { required ShadowRootMode mode; boolean delegatesFocus = false; SlotAssignmentMode slotAssignment = "named"; - [Pref="dom.webcomponents.shadowdom.declarative.enabled"] - boolean clonable = false; }; // https://dom.spec.whatwg.org/#element @@ -405,9 +403,3 @@ partial interface Element { [SecureContext, UseCounter, Throws, Pref="dom.security.setHTML.enabled"] undefined setHTML(DOMString aInnerHTML, optional SetHTMLOptions options = {}); }; - -partial interface Element { - // https://html.spec.whatwg.org/#dom-element-sethtmlunsafe - [Pref="dom.webcomponents.shadowdom.declarative.enabled"] - undefined setHTMLUnsafe(DOMString html); -}; diff --git a/dom/webidl/HTMLTemplateElement.webidl b/dom/webidl/HTMLTemplateElement.webidl index ce71a51fe59e..f65d00b0c2a1 100644 --- a/dom/webidl/HTMLTemplateElement.webidl +++ b/dom/webidl/HTMLTemplateElement.webidl @@ -3,7 +3,7 @@ * You can obtain one at http://mozilla.org/MPL/2.0/. * * The origin of this IDL file is - * https://html.spec.whatwg.org/multipage/scripting.html#the-template-element + * https://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/templates/index.html * * Copyright © 2012 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C * liability, trademark and document use rules apply. @@ -13,9 +13,5 @@ interface HTMLTemplateElement : HTMLElement { [HTMLConstructor] constructor(); - readonly attribute DocumentFragment content; - [CEReactions, Pref="dom.webcomponents.shadowdom.declarative.enabled"] - attribute DOMString shadowRootMode; - [CEReactions, Pref="dom.webcomponents.shadowdom.declarative.enabled"] - attribute boolean shadowRootDelegatesFocus; + readonly attribute DocumentFragment content; }; diff --git a/dom/webidl/ShadowRoot.webidl b/dom/webidl/ShadowRoot.webidl index 3a39894d112a..50bbc285c384 100644 --- a/dom/webidl/ShadowRoot.webidl +++ b/dom/webidl/ShadowRoot.webidl @@ -56,10 +56,4 @@ interface ShadowRoot : DocumentFragment boolean isUAWidget(); }; -partial interface ShadowRoot { - // https://html.spec.whatwg.org/#dom-shadowroot-sethtmlunsafe - [Pref="dom.webcomponents.shadowdom.declarative.enabled"] - undefined setHTMLUnsafe(DOMString html); -}; - ShadowRoot includes DocumentOrShadowRoot; diff --git a/layout/build/nsContentDLF.cpp b/layout/build/nsContentDLF.cpp index a9234099b0e0..60375d8e5657 100644 --- a/layout/build/nsContentDLF.cpp +++ b/layout/build/nsContentDLF.cpp @@ -314,8 +314,6 @@ nsresult nsContentDLF::CreateDocument( nsCOMPtr viewer = NS_NewDocumentViewer(); doc->SetContainer(static_cast(aContainer)); - doc->SetAllowDeclarativeShadowRoots( - mozilla::StaticPrefs::dom_webcomponents_shadowdom_declarative_enabled()); // Initialize the document to begin loading the data. An // nsIStreamListener connected to the parser is returned in diff --git a/modules/libpref/init/StaticPrefList.yaml b/modules/libpref/init/StaticPrefList.yaml index 2491397524ed..2db301da6362 100644 --- a/modules/libpref/init/StaticPrefList.yaml +++ b/modules/libpref/init/StaticPrefList.yaml @@ -4528,12 +4528,6 @@ value: false mirror: always -# Is support for Declarative ShadowDOM enabled? -- name: dom.webcomponents.shadowdom.declarative.enabled - type: bool - value: @IS_NIGHTLY_BUILD@ - mirror: always - # Is support for the Web GPU API enabled? - name: dom.webgpu.enabled type: RelaxedAtomicBool diff --git a/parser/html/javasrc/AttributeName.java b/parser/html/javasrc/AttributeName.java index 87adc2909856..bd9958903d20 100644 --- a/parser/html/javasrc/AttributeName.java +++ b/parser/html/javasrc/AttributeName.java @@ -798,12 +798,10 @@ public final class AttributeName public static final AttributeName LOADING = new AttributeName(ALL_NO_NS, "loading", "loading", "loading", "loading", ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG); public static final AttributeName READONLY = new AttributeName(ALL_NO_NS, "readonly", "readonly", "readonly", "readonly", ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG | CASE_FOLDED | BOOLEAN); public static final AttributeName RENDERING_INTENT = new AttributeName(ALL_NO_NS, "rendering-intent", "rendering-intent", "rendering-intent", "rendering-intent", ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG); - public static final AttributeName SHADOWROOTMODE = new AttributeName(ALL_NO_NS, "shadowrootmode", "shadowrootmode", "shadowrootmode", "shadowrootmode", ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG); public static final AttributeName SEED = new AttributeName(ALL_NO_NS, "seed", "seed", "seed", "seed", ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG); public static final AttributeName SRCDOC = new AttributeName(ALL_NO_NS, "srcdoc", "srcdoc", "srcdoc", "srcdoc", ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG); public static final AttributeName STDDEVIATION = new AttributeName(ALL_NO_NS, "stddeviation", "stddeviation", "stdDeviation", "stddeviation", ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG); public static final AttributeName SANDBOX = new AttributeName(ALL_NO_NS, "sandbox", "sandbox", "sandbox", "sandbox", ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG); - public static final AttributeName SHADOWROOTDELEGATESFOCUS = new AttributeName(ALL_NO_NS, "shadowrootdelegatesfocus", "shadowrootdelegatesfocus", "shadowrootdelegatesfocus", "shadowrootdelegatesfocus", ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG); public static final AttributeName WORD_SPACING = new AttributeName(ALL_NO_NS, "word-spacing", "word-spacing", "word-spacing", "word-spacing", ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG); public static final AttributeName ACCENTUNDER = new AttributeName(ALL_NO_NS, "accentunder", "accentunder", "accentunder", "accentunder", ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG); public static final AttributeName ACCEPT_CHARSET = new AttributeName(ALL_NO_NS, "accept-charset", "accept-charset", "accept-charset", "accept-charset", ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG); @@ -1194,36 +1192,36 @@ public final class AttributeName public static final AttributeName RY = new AttributeName(ALL_NO_NS, "ry", "ry", "ry", "ry", ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG); public static final AttributeName REFY = new AttributeName(ALL_NO_NS, "refy", "refy", "refY", "refy", ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG); private final static @NoLength AttributeName[] ATTRIBUTE_NAMES = { - CELLSPACING, - CODETYPE, - ATTRIBUTENAME, + DECLARE, + CITE, + CHAR, CLEAR, - ALIGNMENTSCOPE, - BGCOLOR, - FILTERUNITS, + HEIGHT, + COLOR_RENDERING, + FONT_SIZE, ARIA_DISABLED, OPACITY, - ONBEFORECOPY, - ACTION, - KERNELMATRIX, - STROKE_DASHOFFSET, - IS, - INPUTMODE, + ONBEFOREPASTE, + ADDITIVE, + KERNELUNITLENGTH, + STROKE_MITERLIMIT, + KEYSPLINES, + ONCUT, Y, ARIA_MULTISELECTABLE, ROTATE, - STDDEVIATION, - MODE, - SUPERSCRIPTSHIFT, - TARGETX, - SCRIPTMINSIZE, - FORMAT, - TRANSFORM, - ONMOUSEOVER, - GLYPHREF, - OVERFLOW, - CONTENTEDITABLE, - STITCHTILES, + SANDBOX, + NORESIZE, + SCHEME, + ARCHIVE, + VALIGN, + FRAME, + WHEN, + ONCONTEXTMENU, + KEYPOINTS, + ONDRAGLEAVE, + CONTENT, + TEXT_RENDERING, RX, MIN, K3, @@ -1232,30 +1230,30 @@ public final class AttributeName LOCAL, ONABORT, HIDDEN, - ACCEPT, - ENTERKEYHINT, - OTHER, - REPEAT, - HREF, - LARGEOP, - MATHCOLOR, - MEDIA, - MARKER_END, - ONBLUR, - SYMMETRIC, - POINTER_EVENTS, - XMLNS, - FLOOD_COLOR, - ONFOCUS, - CLIP, - SCOPE, - ONDRAG, - COLSPAN, - PRESERVEASPECTRATIO, - FONTWEIGHT, - ONSTOP, - WIDTH, - VALUETYPE, + BASEFREQUENCY, + INDEX, + ONREADYSTATECHANGE, + RULES, + ONAFTERPRINT, + LENGTHADJUST, + NOSHADE, + ONFINISH, + MARKER_START, + ROWLINES, + USEMAP, + POINTSATX, + XLINK_SHOW, + LQUOTE, + ONFOCUSOUT, + CLIP_PATH, + SLOPE, + ONDRAGOVER, + CROSSORIGIN, + ROWSPACING, + FONTSTYLE, + POSTER, + COLUMNSPAN, + ELEVATION, DY, END, SRC, @@ -1271,54 +1269,54 @@ public final class AttributeName FETCHPRIORITY, BORDER, RENDERING_INTENT, - ACCENTUNDER, - BASEPROFILE, - DATETIME, - INTEGRITY, - ONREPEAT, - ONBEGIN, - ONKEYUP, - REPEATCOUNT, - SELECTION, - SURFACESCALE, - IMAGESRCSET, - MARGINWIDTH, - LIGHTING_COLOR, - PATHLENGTH, - DOMINANT_BASELINE, - RADIOGROUP, - BACKGROUND, - MASKUNITS, - FILL, - STYLE, - FROM, - ASYNC, - OPEN, - POINTSATZ, - XLINK_TITLE, - AUTOPLAY, - COLOR, - NOMODULE, - ONCOPY, - TO, - SCROLLING, - DISPLAY, - PROPERTY, - STOP_OPACITY, - CHAROFF, - ONDROP, - START, - CURSOR, - MAXSIZE, - SRCSET, - DEPTH, - FONTFAMILY, - LETTER_SPACING, - PATTERN, - TEXT_ANCHOR, - COLUMNALIGN, - REQUIREDFEATURES, - VIEWBOX, + ACCESSKEY, + BASE, + EDGEMODE, + LABEL, + ONSELECT, + ORIENT, + ONKEYDOWN, + SELECTED, + TYPE, + ALIGN, + LANGUAGE, + PING, + METHOD, + ALTIMG, + DEFINITIONURL, + SCRIPTLEVEL, + MARKER_MID, + MASKCONTENTUNITS, + MAXLENGTH, + TITLE, + PROMPT, + IN, + ONEND, + STANDBY, + XLINK_ARCROLE, + AUTOFOCUS, + ENCODING, + ONMOUSEWHEEL, + ONMOUSEMOVE, + STROKE_LINECAP, + STROKE_OPACITY, + GLYPH_ORIENTATION_VERTICAL, + STEP, + WRAP, + NOWRAP, + ONERROR, + AXIS, + CLOSE, + OFFSET, + VERSION, + FONT_STRETCH, + FONT_VARIANT, + MULTIPLE, + PATTERNCONTENTUNITS, + TEXT, + COLUMNWIDTH, + REQUIREDEXTENSIONS, + DX, BY, RY, DIR, @@ -1348,103 +1346,103 @@ public final class AttributeName SPECULAREXPONENT, GRADIENTTRANSFORM, LOADING, - SEED, - SHADOWROOTDELEGATESFOCUS, - ACCESSKEY, - BASEFREQUENCY, - BASE, - CITE, - EDGEMODE, - INDEX, - LABEL, - NORESIZE, - ONSELECT, - ONREADYSTATECHANGE, - ORIENT, - ONBEFOREPASTE, - ONKEYDOWN, - RULES, - SELECTED, - SCHEME, - TYPE, - ONAFTERPRINT, - ALIGN, - HEIGHT, - LANGUAGE, - LENGTHADJUST, - PING, - ARCHIVE, - METHOD, - NOSHADE, - ALTIMG, - ADDITIVE, - DEFINITIONURL, - ONFINISH, - SCRIPTLEVEL, - VALIGN, - MARKER_MID, - MARKER_START, - MASKCONTENTUNITS, - DECLARE, - MAXLENGTH, - ROWLINES, - TITLE, - FRAME, - PROMPT, - USEMAP, - IN, - KERNELUNITLENGTH, - ONEND, - POINTSATX, - STANDBY, - WHEN, - XLINK_ARCROLE, - XLINK_SHOW, - AUTOFOCUS, - COLOR_RENDERING, - ENCODING, - LQUOTE, - ONMOUSEWHEEL, - ONCONTEXTMENU, - ONMOUSEMOVE, - ONFOCUSOUT, - STROKE_LINECAP, - STROKE_MITERLIMIT, - STROKE_OPACITY, - CLIP_PATH, - GLYPH_ORIENTATION_VERTICAL, - KEYPOINTS, - STEP, - SLOPE, - WRAP, - CHAR, - NOWRAP, - ONDRAGOVER, - ONERROR, - ONDRAGLEAVE, - AXIS, - CROSSORIGIN, - CLOSE, - KEYSPLINES, - OFFSET, - ROWSPACING, - VERSION, - CONTENT, - FONT_STRETCH, - FONTSTYLE, - FONT_VARIANT, - FONT_SIZE, - MULTIPLE, - POSTER, - PATTERNCONTENTUNITS, - TEXT_RENDERING, - TEXT, - COLUMNSPAN, - COLUMNWIDTH, - ONCUT, - REQUIREDEXTENSIONS, - ELEVATION, - DX, + SRCDOC, + ACCENTUNDER, + ACCEPT, + BASEPROFILE, + CODETYPE, + DATETIME, + ENTERKEYHINT, + INTEGRITY, + MODE, + ONREPEAT, + OTHER, + ONBEGIN, + ONBEFORECOPY, + ONKEYUP, + REPEAT, + REPEATCOUNT, + SUPERSCRIPTSHIFT, + SELECTION, + HREF, + SURFACESCALE, + ALIGNMENTSCOPE, + IMAGESRCSET, + LARGEOP, + MARGINWIDTH, + TARGETX, + LIGHTING_COLOR, + MATHCOLOR, + PATHLENGTH, + ACTION, + DOMINANT_BASELINE, + MEDIA, + RADIOGROUP, + SCRIPTMINSIZE, + BACKGROUND, + MARKER_END, + MASKUNITS, + CELLSPACING, + FILL, + ONBLUR, + STYLE, + FORMAT, + FROM, + SYMMETRIC, + ASYNC, + KERNELMATRIX, + OPEN, + POINTER_EVENTS, + POINTSATZ, + TRANSFORM, + XLINK_TITLE, + XMLNS, + AUTOPLAY, + BGCOLOR, + COLOR, + FLOOD_COLOR, + NOMODULE, + ONMOUSEOVER, + ONCOPY, + ONFOCUS, + TO, + STROKE_DASHOFFSET, + SCROLLING, + CLIP, + DISPLAY, + GLYPHREF, + PROPERTY, + SCOPE, + STOP_OPACITY, + ATTRIBUTENAME, + CHAROFF, + ONDRAG, + ONDROP, + OVERFLOW, + START, + COLSPAN, + CURSOR, + IS, + MAXSIZE, + PRESERVEASPECTRATIO, + SRCSET, + CONTENTEDITABLE, + DEPTH, + FONTWEIGHT, + FONTFAMILY, + FILTERUNITS, + LETTER_SPACING, + ONSTOP, + PATTERN, + STITCHTILES, + TEXT_ANCHOR, + WIDTH, + COLUMNALIGN, + INPUTMODE, + REQUIREDFEATURES, + VALUETYPE, + VIEWBOX, + FX, REFX, CY, FY, @@ -1503,9 +1501,8 @@ public final class AttributeName GRADIENTUNITS, HEADERS, READONLY, - SHADOWROOTMODE, - SRCDOC, - SANDBOX, + SEED, + STDDEVIATION, WORD_SPACING, ACCEPT_CHARSET, ACCENT, @@ -1696,39 +1693,38 @@ public final class AttributeName VALUE, VIEWTARGET, CX, - FX, }; private final static int[] ATTRIBUTE_HASHES = { - 1865910331, - 1748503880, - 1965512429, + 1866496199, + 1748566068, + 1966384692, 1681174213, - 1781007934, - 1915757815, - 2001826027, + 1784574102, + 1916247343, + 2001898809, 1680165421, 1721347639, - 1754835516, - 1814560070, - 1903612236, - 1924517489, - 1984430082, - 2019887833, + 1754860061, + 1814656840, + 1903759600, + 1924583073, + 1987422362, + 2023342821, 71827457, 1680282148, 1689324870, - 1740119884, - 1753550036, - 1756762256, - 1791068279, - 1824159037, - 1884079398, - 1908462185, - 1922413307, - 1934970504, - 1972922984, - 2000096287, - 2008401563, + 1740130375, + 1754434872, + 1756836998, + 1797886599, + 1825437894, + 1884246821, + 1909819252, + 1922566877, + 1937336473, + 1972996699, + 2000160071, + 2009041198, 2073034754, 57205395, 911736834, @@ -1737,30 +1733,30 @@ public final class AttributeName 1685882101, 1704526375, 1734182982, - 1747479606, - 1749549708, - 1754644293, - 1756147974, - 1767725700, - 1786775671, - 1804081401, - 1820727381, - 1854366938, - 1872343590, - 1890996553, - 1906408542, - 1910503637, - 1917857531, - 1922677495, - 1932959284, - 1941435445, - 1972656710, - 1983157559, - 1990107683, - 2001634458, - 2006459190, - 2010716309, - 2026893641, + 1747800157, + 1751507685, + 1754647074, + 1756219733, + 1771569964, + 1786851500, + 1804405895, + 1821958888, + 1854466380, + 1873656984, + 1891937366, + 1906419001, + 1910527802, + 1921061206, + 1922679610, + 1933123337, + 1941440197, + 1972744954, + 1983290011, + 1991220282, + 2001669449, + 2006824246, + 2016711994, + 2034765641, 2082471938, 53006051, 60345635, @@ -1776,54 +1772,54 @@ public final class AttributeName 1716623661, 1731048742, 1739583824, - 1747295467, - 1747906667, - 1748971848, - 1751755561, - 1754579720, - 1754698327, - 1754899031, - 1756360955, - 1756889417, - 1773606972, - 1785053243, - 1787365531, - 1803561214, - 1805715690, - 1816104145, - 1823574314, - 1848600826, - 1854497001, - 1867462756, - 1874270021, - 1884295780, - 1898415413, - 1905628916, - 1906423097, - 1910441627, - 1915025672, - 1916286197, - 1921977416, - 1922607670, - 1923088386, - 1924629705, - 1933369607, - 1939976792, - 1941550652, - 1966442279, - 1972904518, - 1975062341, - 1983398182, - 1988784439, - 1991625270, - 2000752725, - 2001710298, - 2004846654, - 2007021895, - 2009079867, - 2016810187, - 2024647008, - 2060474743, + 1747309881, + 1748021284, + 1749350104, + 1753049109, + 1754612424, + 1754794646, + 1754927689, + 1756704824, + 1757421892, + 1780879045, + 1786622296, + 1788842244, + 1804054854, + 1814517574, + 1816178925, + 1823829083, + 1854285018, + 1854497008, + 1871251689, + 1874788501, + 1889569526, + 1900544002, + 1905754853, + 1907701479, + 1910441773, + 1915341049, + 1917295176, + 1922400908, + 1922665179, + 1924443742, + 1924773438, + 1934917290, + 1941286708, + 1943317364, + 1972151670, + 1972908839, + 1982254612, + 1983432389, + 1989522022, + 1993343287, + 2001527900, + 2001732764, + 2005342360, + 2007064819, + 2009231684, + 2017010843, + 2024794274, + 2065694722, 2081423362, 2089811970, 52488851, @@ -1853,103 +1849,103 @@ public final class AttributeName 1723336432, 1733874289, 1736416327, - 1739927860, - 1740222216, - 1747309881, - 1747800157, - 1748021284, - 1748566068, - 1749350104, - 1751507685, - 1753049109, - 1754434872, - 1754612424, - 1754647074, - 1754794646, - 1754860061, - 1754927689, - 1756219733, - 1756704824, - 1756836998, - 1757421892, - 1771569964, - 1780879045, - 1784574102, - 1786622296, - 1786851500, - 1788842244, - 1797886599, - 1804054854, - 1804405895, - 1814517574, - 1814656840, - 1816178925, - 1821958888, - 1823829083, - 1825437894, - 1854285018, - 1854466380, - 1854497008, - 1866496199, - 1871251689, - 1873656984, - 1874788501, - 1884246821, - 1889569526, - 1891937366, - 1900544002, - 1903759600, - 1905754853, - 1906419001, - 1907701479, - 1909819252, - 1910441773, - 1910527802, - 1915341049, - 1916247343, - 1917295176, - 1921061206, - 1922400908, - 1922566877, - 1922665179, - 1922679610, - 1924443742, - 1924583073, - 1924773438, - 1933123337, - 1934917290, - 1937336473, - 1941286708, - 1941440197, - 1943317364, - 1966384692, - 1972151670, - 1972744954, - 1972908839, - 1972996699, - 1982254612, - 1983290011, - 1983432389, - 1987422362, - 1989522022, - 1991220282, - 1993343287, - 2000160071, - 2001527900, - 2001669449, - 2001732764, - 2001898809, - 2005342360, - 2006824246, - 2007064819, - 2009041198, - 2009231684, - 2016711994, - 2017010843, - 2023342821, - 2024794274, - 2034765641, - 2065694722, + 1740096054, + 1747295467, + 1747479606, + 1747906667, + 1748503880, + 1748971848, + 1749549708, + 1751755561, + 1753550036, + 1754579720, + 1754644293, + 1754698327, + 1754835516, + 1754899031, + 1756147974, + 1756360955, + 1756762256, + 1756889417, + 1767725700, + 1773606972, + 1781007934, + 1785053243, + 1786775671, + 1787365531, + 1791068279, + 1803561214, + 1804081401, + 1805715690, + 1814560070, + 1816104145, + 1820727381, + 1823574314, + 1824159037, + 1848600826, + 1854366938, + 1854497001, + 1865910331, + 1867462756, + 1872343590, + 1874270021, + 1884079398, + 1884295780, + 1890996553, + 1898415413, + 1903612236, + 1905628916, + 1906408542, + 1906423097, + 1908462185, + 1910441627, + 1910503637, + 1915025672, + 1915757815, + 1916286197, + 1917857531, + 1921977416, + 1922413307, + 1922607670, + 1922677495, + 1923088386, + 1924517489, + 1924629705, + 1932959284, + 1933369607, + 1934970504, + 1939976792, + 1941435445, + 1941550652, + 1965512429, + 1966442279, + 1972656710, + 1972904518, + 1972922984, + 1975062341, + 1983157559, + 1983398182, + 1984430082, + 1988784439, + 1990107683, + 1991625270, + 2000096287, + 2000752725, + 2001634458, + 2001710298, + 2001826027, + 2004846654, + 2006459190, + 2007021895, + 2008401563, + 2009079867, + 2010716309, + 2016810187, + 2019887833, + 2024647008, + 2026893641, + 2060474743, + 2066743298, 2075005220, 2081947650, 2083520514, @@ -2008,9 +2004,8 @@ public final class AttributeName 1733919469, 1734404167, 1739561208, - 1739914974, - 1740096054, - 1740130375, + 1739927860, + 1740119884, 1742183484, 1747299630, 1747446838, @@ -2201,6 +2196,5 @@ public final class AttributeName 2026975253, 2060302634, 2065170434, - 2066743298, }; } diff --git a/parser/html/javasrc/TreeBuilder.java b/parser/html/javasrc/TreeBuilder.java index 1fa67647e193..db5fe9474390 100644 --- a/parser/html/javasrc/TreeBuilder.java +++ b/parser/html/javasrc/TreeBuilder.java @@ -434,8 +434,6 @@ public abstract class TreeBuilder implements TokenHandler, private boolean forceNoQuirks = false; - private boolean allowDeclarativeShadowRoots = false; - // [NOCPP[ private boolean reportingDoctype = true; @@ -2960,20 +2958,6 @@ public abstract class TreeBuilder implements TokenHandler, || (("http://www.w3.org/1998/Math/MathML" == ns) && (stackNode.getGroup() == MI_MO_MN_MS_MTEXT)); } - private T getDeclarativeShadowRoot(T currentNode, T templateNode, HtmlAttributes attributes) { - if (!isAllowDeclarativeShadowRoots()) { - return null; - } - - String shadowRootMode = attributes.getValue(AttributeName.SHADOWROOTMODE); - if (shadowRootMode == null) { - return null; - } - - boolean shadowRootDelegatesFocus = attributes.contains(AttributeName.SHADOWROOTDELEGATESFOCUS); - return getShadowRootFromHost(currentNode, templateNode, shadowRootMode, shadowRootDelegatesFocus); - } - /** * *

@@ -5318,17 +5302,9 @@ public abstract class TreeBuilder implements TokenHandler, T elt = createElement("http://www.w3.org/1999/xhtml", elementName.getName(), attributes, currentNode // CPPONLY: , htmlCreator(elementName.getHtmlCreator()) ); + appendElement(elt, currentNode); if (ElementName.TEMPLATE == elementName) { - T root = getDeclarativeShadowRoot(currentNode, elt, attributes); - if (root != null) { - setDocumentFragmentForTemplate(elt, root); - elt = root; - } else { - appendElement(elt, currentNode); - elt = getDocumentFragmentForTemplate(elt); - } - } else { - appendElement(elt, currentNode); + elt = getDocumentFragmentForTemplate(elt); } StackNode node = createStackNode(elementName, elt // [NOCPP[ @@ -5415,13 +5391,6 @@ public abstract class TreeBuilder implements TokenHandler, return template; } - void setDocumentFragmentForTemplate(T template, T fragment) { - } - - T getShadowRootFromHost(T host, T template, String shadowRootMode, boolean shadowRootDelegatesFocus) { - return null; - } - T getFormPointerForContext(T context) { return null; } @@ -5540,7 +5509,6 @@ public abstract class TreeBuilder implements TokenHandler, } else { T currentNode = nodeFromStackWithBlinkCompat(currentPtr); elt = createElement("http://www.w3.org/1999/xhtml", name, - attributes, formOwner, currentNode // CPPONLY: , htmlCreator(elementName.getHtmlCreator()) ); @@ -5925,14 +5893,6 @@ public abstract class TreeBuilder implements TokenHandler, this.setForceNoQuirks(isSrcdocDocument); } - public boolean isAllowDeclarativeShadowRoots() { - return allowDeclarativeShadowRoots; - } - - public void setAllowDeclarativeShadowRoots(boolean allow) { - allowDeclarativeShadowRoots = allow; - } - // [NOCPP[ public void setNamePolicy(XmlViolationPolicy namePolicy) { diff --git a/parser/html/nsHtml5AttributeName.cpp b/parser/html/nsHtml5AttributeName.cpp index f0b0df339edd..b16352585511 100644 --- a/parser/html/nsHtml5AttributeName.cpp +++ b/parser/html/nsHtml5AttributeName.cpp @@ -194,13 +194,10 @@ nsHtml5AttributeName* nsHtml5AttributeName::ATTR_HEADERS = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_LOADING = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_READONLY = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_RENDERING_INTENT = nullptr; -nsHtml5AttributeName* nsHtml5AttributeName::ATTR_SHADOWROOTMODE = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_SEED = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_SRCDOC = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_STDDEVIATION = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_SANDBOX = nullptr; -nsHtml5AttributeName* nsHtml5AttributeName::ATTR_SHADOWROOTDELEGATESFOCUS = - nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_WORD_SPACING = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ACCENTUNDER = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ACCEPT_CHARSET = nullptr; @@ -595,48 +592,48 @@ nsHtml5AttributeName* nsHtml5AttributeName::ATTR_RY = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_REFY = nullptr; nsHtml5AttributeName** nsHtml5AttributeName::ATTRIBUTE_NAMES = 0; static int32_t const ATTRIBUTE_HASHES_DATA[] = { - 1865910331, 1748503880, 1965512429, 1681174213, 1781007934, 1915757815, - 2001826027, 1680165421, 1721347639, 1754835516, 1814560070, 1903612236, - 1924517489, 1984430082, 2019887833, 71827457, 1680282148, 1689324870, - 1740119884, 1753550036, 1756762256, 1791068279, 1824159037, 1884079398, - 1908462185, 1922413307, 1934970504, 1972922984, 2000096287, 2008401563, + 1866496199, 1748566068, 1966384692, 1681174213, 1784574102, 1916247343, + 2001898809, 1680165421, 1721347639, 1754860061, 1814656840, 1903759600, + 1924583073, 1987422362, 2023342821, 71827457, 1680282148, 1689324870, + 1740130375, 1754434872, 1756836998, 1797886599, 1825437894, 1884246821, + 1909819252, 1922566877, 1937336473, 1972996699, 2000160071, 2009041198, 2073034754, 57205395, 911736834, 1680181996, 1680368221, 1685882101, - 1704526375, 1734182982, 1747479606, 1749549708, 1754644293, 1756147974, - 1767725700, 1786775671, 1804081401, 1820727381, 1854366938, 1872343590, - 1890996553, 1906408542, 1910503637, 1917857531, 1922677495, 1932959284, - 1941435445, 1972656710, 1983157559, 1990107683, 2001634458, 2006459190, - 2010716309, 2026893641, 2082471938, 53006051, 60345635, 885522434, + 1704526375, 1734182982, 1747800157, 1751507685, 1754647074, 1756219733, + 1771569964, 1786851500, 1804405895, 1821958888, 1854466380, 1873656984, + 1891937366, 1906419001, 1910527802, 1921061206, 1922679610, 1933123337, + 1941440197, 1972744954, 1983290011, 1991220282, 2001669449, 2006824246, + 2016711994, 2034765641, 2082471938, 53006051, 60345635, 885522434, 1680095865, 1680165533, 1680229115, 1680343801, 1680437801, 1682440540, - 1687620127, 1692408896, 1716623661, 1731048742, 1739583824, 1747295467, - 1747906667, 1748971848, 1751755561, 1754579720, 1754698327, 1754899031, - 1756360955, 1756889417, 1773606972, 1785053243, 1787365531, 1803561214, - 1805715690, 1816104145, 1823574314, 1848600826, 1854497001, 1867462756, - 1874270021, 1884295780, 1898415413, 1905628916, 1906423097, 1910441627, - 1915025672, 1916286197, 1921977416, 1922607670, 1923088386, 1924629705, - 1933369607, 1939976792, 1941550652, 1966442279, 1972904518, 1975062341, - 1983398182, 1988784439, 1991625270, 2000752725, 2001710298, 2004846654, - 2007021895, 2009079867, 2016810187, 2024647008, 2060474743, 2081423362, + 1687620127, 1692408896, 1716623661, 1731048742, 1739583824, 1747309881, + 1748021284, 1749350104, 1753049109, 1754612424, 1754794646, 1754927689, + 1756704824, 1757421892, 1780879045, 1786622296, 1788842244, 1804054854, + 1814517574, 1816178925, 1823829083, 1854285018, 1854497008, 1871251689, + 1874788501, 1889569526, 1900544002, 1905754853, 1907701479, 1910441773, + 1915341049, 1917295176, 1922400908, 1922665179, 1924443742, 1924773438, + 1934917290, 1941286708, 1943317364, 1972151670, 1972908839, 1982254612, + 1983432389, 1989522022, 1993343287, 2001527900, 2001732764, 2005342360, + 2007064819, 2009231684, 2017010843, 2024794274, 2065694722, 2081423362, 2089811970, 52488851, 55077603, 59825747, 68157441, 878182402, 901775362, 1037879561, 1680159327, 1680165437, 1680165692, 1680198203, 1680231247, 1680315086, 1680345965, 1680413393, 1680452349, 1681879063, 1683805446, 1686731997, 1689048326, 1689839946, 1699185409, 1714763319, - 1721189160, 1723336432, 1733874289, 1736416327, 1739927860, 1740222216, - 1747309881, 1747800157, 1748021284, 1748566068, 1749350104, 1751507685, - 1753049109, 1754434872, 1754612424, 1754647074, 1754794646, 1754860061, - 1754927689, 1756219733, 1756704824, 1756836998, 1757421892, 1771569964, - 1780879045, 1784574102, 1786622296, 1786851500, 1788842244, 1797886599, - 1804054854, 1804405895, 1814517574, 1814656840, 1816178925, 1821958888, - 1823829083, 1825437894, 1854285018, 1854466380, 1854497008, 1866496199, - 1871251689, 1873656984, 1874788501, 1884246821, 1889569526, 1891937366, - 1900544002, 1903759600, 1905754853, 1906419001, 1907701479, 1909819252, - 1910441773, 1910527802, 1915341049, 1916247343, 1917295176, 1921061206, - 1922400908, 1922566877, 1922665179, 1922679610, 1924443742, 1924583073, - 1924773438, 1933123337, 1934917290, 1937336473, 1941286708, 1941440197, - 1943317364, 1966384692, 1972151670, 1972744954, 1972908839, 1972996699, - 1982254612, 1983290011, 1983432389, 1987422362, 1989522022, 1991220282, - 1993343287, 2000160071, 2001527900, 2001669449, 2001732764, 2001898809, - 2005342360, 2006824246, 2007064819, 2009041198, 2009231684, 2016711994, - 2017010843, 2023342821, 2024794274, 2034765641, 2065694722, 2075005220, + 1721189160, 1723336432, 1733874289, 1736416327, 1740096054, 1747295467, + 1747479606, 1747906667, 1748503880, 1748971848, 1749549708, 1751755561, + 1753550036, 1754579720, 1754644293, 1754698327, 1754835516, 1754899031, + 1756147974, 1756360955, 1756762256, 1756889417, 1767725700, 1773606972, + 1781007934, 1785053243, 1786775671, 1787365531, 1791068279, 1803561214, + 1804081401, 1805715690, 1814560070, 1816104145, 1820727381, 1823574314, + 1824159037, 1848600826, 1854366938, 1854497001, 1865910331, 1867462756, + 1872343590, 1874270021, 1884079398, 1884295780, 1890996553, 1898415413, + 1903612236, 1905628916, 1906408542, 1906423097, 1908462185, 1910441627, + 1910503637, 1915025672, 1915757815, 1916286197, 1917857531, 1921977416, + 1922413307, 1922607670, 1922677495, 1923088386, 1924517489, 1924629705, + 1932959284, 1933369607, 1934970504, 1939976792, 1941435445, 1941550652, + 1965512429, 1966442279, 1972656710, 1972904518, 1972922984, 1975062341, + 1983157559, 1983398182, 1984430082, 1988784439, 1990107683, 1991625270, + 2000096287, 2000752725, 2001634458, 2001710298, 2001826027, 2004846654, + 2006459190, 2007021895, 2008401563, 2009079867, 2010716309, 2016810187, + 2019887833, 2024647008, 2026893641, 2060474743, 2066743298, 2075005220, 2081947650, 2083520514, 2091784484, 50917059, 52489043, 53537523, 56685811, 57210387, 59830867, 60817409, 71303169, 72351745, 884998146, 894959618, 902299650, 928514050, 1038063816, 1680140893, @@ -646,39 +643,39 @@ static int32_t const ATTRIBUTE_HASHES_DATA[] = { 1681969220, 1682587945, 1684319541, 1685902598, 1687164232, 1687751191, 1689130184, 1689788441, 1691145478, 1692933184, 1704262346, 1714745560, 1716303957, 1720503541, 1721305962, 1723309623, 1723336528, 1732771842, - 1733919469, 1734404167, 1739561208, 1739914974, 1740096054, 1740130375, - 1742183484, 1747299630, 1747446838, 1747792072, 1747839118, 1747939528, - 1748306996, 1748552744, 1748869205, 1749027145, 1749399124, 1749856356, - 1751679545, 1752985897, 1753297133, 1754214628, 1754546894, 1754606246, - 1754643237, 1754645079, 1754647353, 1754792749, 1754798923, 1754858317, - 1754872618, 1754907227, 1754958648, 1756190926, 1756302628, 1756471625, - 1756737685, 1756804936, 1756874572, 1757053236, 1765800271, 1767875272, - 1772032615, 1776114564, 1780975314, 1782518297, 1785051290, 1785174319, - 1786740932, 1786821704, 1787193500, 1788254870, 1790814502, 1791070327, - 1801312388, 1804036350, 1804069019, 1804235064, 1804978712, 1805715716, - 1814558026, 1814656326, 1814986837, 1816144023, 1820262641, 1820928104, - 1822002839, 1823580230, 1823841492, 1824377064, 1825677514, 1853862084, - 1854302364, 1854464212, 1854474395, 1854497003, 1864698185, 1865910347, - 1867448617, 1867620412, 1872034503, 1873590471, 1874261045, 1874698443, - 1881750231, 1884142379, 1884267068, 1884343396, 1889633006, 1891186903, - 1894552650, 1898428101, 1902640276, 1903659239, 1905541832, 1905672729, - 1905902311, 1906408598, 1906421049, 1907660596, 1908316832, 1909438149, - 1910328970, 1910441770, 1910487243, 1910507338, 1910572893, 1915295948, - 1915394254, 1916210285, 1916278099, 1916337499, 1917327080, 1917953597, - 1921894426, 1922319046, 1922413292, 1922470745, 1922567078, 1922665052, - 1922671417, 1922679386, 1922699851, 1924206934, 1924462384, 1924570799, - 1924585254, 1924738716, 1932870919, 1932986153, 1933145837, 1933508940, - 1934917372, 1935597338, 1937777860, 1941253366, 1941409583, 1941438085, - 1941454586, 1942026440, 1965349396, 1965561677, 1966439670, 1966454567, - 1972196486, 1972744939, 1972863609, 1972904522, 1972909592, 1972962123, - 1974849131, 1980235778, 1982640164, 1983266615, 1983347764, 1983416119, - 1983461061, 1987410233, 1988132214, 1988788535, 1990062797, 1991021879, - 1991392548, 1991643278, 1999273799, 2000125224, 2000162011, 2001210183, - 2001578182, 2001634459, 2001669450, 2001710299, 2001814704, 2001898808, - 2004199576, 2004957380, 2005925890, 2006516551, 2007019632, 2007064812, - 2008084807, 2008408414, 2009071951, 2009141482, 2010452700, 2015950026, - 2016787611, 2016910397, 2018908874, 2023146024, 2024616088, 2024763702, - 2026741958, 2026975253, 2060302634, 2065170434, 2066743298}; + 1733919469, 1734404167, 1739561208, 1739927860, 1740119884, 1742183484, + 1747299630, 1747446838, 1747792072, 1747839118, 1747939528, 1748306996, + 1748552744, 1748869205, 1749027145, 1749399124, 1749856356, 1751679545, + 1752985897, 1753297133, 1754214628, 1754546894, 1754606246, 1754643237, + 1754645079, 1754647353, 1754792749, 1754798923, 1754858317, 1754872618, + 1754907227, 1754958648, 1756190926, 1756302628, 1756471625, 1756737685, + 1756804936, 1756874572, 1757053236, 1765800271, 1767875272, 1772032615, + 1776114564, 1780975314, 1782518297, 1785051290, 1785174319, 1786740932, + 1786821704, 1787193500, 1788254870, 1790814502, 1791070327, 1801312388, + 1804036350, 1804069019, 1804235064, 1804978712, 1805715716, 1814558026, + 1814656326, 1814986837, 1816144023, 1820262641, 1820928104, 1822002839, + 1823580230, 1823841492, 1824377064, 1825677514, 1853862084, 1854302364, + 1854464212, 1854474395, 1854497003, 1864698185, 1865910347, 1867448617, + 1867620412, 1872034503, 1873590471, 1874261045, 1874698443, 1881750231, + 1884142379, 1884267068, 1884343396, 1889633006, 1891186903, 1894552650, + 1898428101, 1902640276, 1903659239, 1905541832, 1905672729, 1905902311, + 1906408598, 1906421049, 1907660596, 1908316832, 1909438149, 1910328970, + 1910441770, 1910487243, 1910507338, 1910572893, 1915295948, 1915394254, + 1916210285, 1916278099, 1916337499, 1917327080, 1917953597, 1921894426, + 1922319046, 1922413292, 1922470745, 1922567078, 1922665052, 1922671417, + 1922679386, 1922699851, 1924206934, 1924462384, 1924570799, 1924585254, + 1924738716, 1932870919, 1932986153, 1933145837, 1933508940, 1934917372, + 1935597338, 1937777860, 1941253366, 1941409583, 1941438085, 1941454586, + 1942026440, 1965349396, 1965561677, 1966439670, 1966454567, 1972196486, + 1972744939, 1972863609, 1972904522, 1972909592, 1972962123, 1974849131, + 1980235778, 1982640164, 1983266615, 1983347764, 1983416119, 1983461061, + 1987410233, 1988132214, 1988788535, 1990062797, 1991021879, 1991392548, + 1991643278, 1999273799, 2000125224, 2000162011, 2001210183, 2001578182, + 2001634459, 2001669450, 2001710299, 2001814704, 2001898808, 2004199576, + 2004957380, 2005925890, 2006516551, 2007019632, 2007064812, 2008084807, + 2008408414, 2009071951, 2009141482, 2010452700, 2015950026, 2016787611, + 2016910397, 2018908874, 2023146024, 2024616088, 2024763702, 2026741958, + 2026975253, 2060302634, 2065170434}; staticJArray nsHtml5AttributeName::ATTRIBUTE_HASHES = { ATTRIBUTE_HASHES_DATA, MOZ_ARRAY_LENGTH(ATTRIBUTE_HASHES_DATA)}; void nsHtml5AttributeName::initializeStatics() { @@ -1015,9 +1012,6 @@ void nsHtml5AttributeName::initializeStatics() { ATTR_RENDERING_INTENT = new nsHtml5AttributeName( ALL_NO_NS, nsGkAtoms::rendering_intent, nsGkAtoms::rendering_intent, nsGkAtoms::rendering_intent, ALL_NO_PREFIX); - ATTR_SHADOWROOTMODE = new nsHtml5AttributeName( - ALL_NO_NS, nsGkAtoms::shadowrootmode, nsGkAtoms::shadowrootmode, - nsGkAtoms::shadowrootmode, ALL_NO_PREFIX); ATTR_SEED = new nsHtml5AttributeName(ALL_NO_NS, nsGkAtoms::seed, nsGkAtoms::seed, nsGkAtoms::seed, ALL_NO_PREFIX); @@ -1030,10 +1024,6 @@ void nsHtml5AttributeName::initializeStatics() { ATTR_SANDBOX = new nsHtml5AttributeName(ALL_NO_NS, nsGkAtoms::sandbox, nsGkAtoms::sandbox, nsGkAtoms::sandbox, ALL_NO_PREFIX); - ATTR_SHADOWROOTDELEGATESFOCUS = new nsHtml5AttributeName( - ALL_NO_NS, nsGkAtoms::shadowrootdelegatesfocus, - nsGkAtoms::shadowrootdelegatesfocus, nsGkAtoms::shadowrootdelegatesfocus, - ALL_NO_PREFIX); ATTR_WORD_SPACING = new nsHtml5AttributeName( ALL_NO_NS, nsGkAtoms::word_spacing, nsGkAtoms::word_spacing, nsGkAtoms::word_spacing, ALL_NO_PREFIX); @@ -2191,37 +2181,37 @@ void nsHtml5AttributeName::initializeStatics() { ATTR_REFY = new nsHtml5AttributeName(ALL_NO_NS, nsGkAtoms::refy, nsGkAtoms::refy, nsGkAtoms::refY, ALL_NO_PREFIX); - ATTRIBUTE_NAMES = new nsHtml5AttributeName*[503]; - ATTRIBUTE_NAMES[0] = ATTR_CELLSPACING; - ATTRIBUTE_NAMES[1] = ATTR_CODETYPE; - ATTRIBUTE_NAMES[2] = ATTR_ATTRIBUTENAME; + ATTRIBUTE_NAMES = new nsHtml5AttributeName*[501]; + ATTRIBUTE_NAMES[0] = ATTR_DECLARE; + ATTRIBUTE_NAMES[1] = ATTR_CITE; + ATTRIBUTE_NAMES[2] = ATTR_CHAR; ATTRIBUTE_NAMES[3] = ATTR_CLEAR; - ATTRIBUTE_NAMES[4] = ATTR_ALIGNMENTSCOPE; - ATTRIBUTE_NAMES[5] = ATTR_BGCOLOR; - ATTRIBUTE_NAMES[6] = ATTR_FILTERUNITS; + ATTRIBUTE_NAMES[4] = ATTR_HEIGHT; + ATTRIBUTE_NAMES[5] = ATTR_COLOR_RENDERING; + ATTRIBUTE_NAMES[6] = ATTR_FONT_SIZE; ATTRIBUTE_NAMES[7] = ATTR_ARIA_DISABLED; ATTRIBUTE_NAMES[8] = ATTR_OPACITY; - ATTRIBUTE_NAMES[9] = ATTR_ONBEFORECOPY; - ATTRIBUTE_NAMES[10] = ATTR_ACTION; - ATTRIBUTE_NAMES[11] = ATTR_KERNELMATRIX; - ATTRIBUTE_NAMES[12] = ATTR_STROKE_DASHOFFSET; - ATTRIBUTE_NAMES[13] = ATTR_IS; - ATTRIBUTE_NAMES[14] = ATTR_INPUTMODE; + ATTRIBUTE_NAMES[9] = ATTR_ONBEFOREPASTE; + ATTRIBUTE_NAMES[10] = ATTR_ADDITIVE; + ATTRIBUTE_NAMES[11] = ATTR_KERNELUNITLENGTH; + ATTRIBUTE_NAMES[12] = ATTR_STROKE_MITERLIMIT; + ATTRIBUTE_NAMES[13] = ATTR_KEYSPLINES; + ATTRIBUTE_NAMES[14] = ATTR_ONCUT; ATTRIBUTE_NAMES[15] = ATTR_Y; ATTRIBUTE_NAMES[16] = ATTR_ARIA_MULTISELECTABLE; ATTRIBUTE_NAMES[17] = ATTR_ROTATE; - ATTRIBUTE_NAMES[18] = ATTR_STDDEVIATION; - ATTRIBUTE_NAMES[19] = ATTR_MODE; - ATTRIBUTE_NAMES[20] = ATTR_SUPERSCRIPTSHIFT; - ATTRIBUTE_NAMES[21] = ATTR_TARGETX; - ATTRIBUTE_NAMES[22] = ATTR_SCRIPTMINSIZE; - ATTRIBUTE_NAMES[23] = ATTR_FORMAT; - ATTRIBUTE_NAMES[24] = ATTR_TRANSFORM; - ATTRIBUTE_NAMES[25] = ATTR_ONMOUSEOVER; - ATTRIBUTE_NAMES[26] = ATTR_GLYPHREF; - ATTRIBUTE_NAMES[27] = ATTR_OVERFLOW; - ATTRIBUTE_NAMES[28] = ATTR_CONTENTEDITABLE; - ATTRIBUTE_NAMES[29] = ATTR_STITCHTILES; + ATTRIBUTE_NAMES[18] = ATTR_SANDBOX; + ATTRIBUTE_NAMES[19] = ATTR_NORESIZE; + ATTRIBUTE_NAMES[20] = ATTR_SCHEME; + ATTRIBUTE_NAMES[21] = ATTR_ARCHIVE; + ATTRIBUTE_NAMES[22] = ATTR_VALIGN; + ATTRIBUTE_NAMES[23] = ATTR_FRAME; + ATTRIBUTE_NAMES[24] = ATTR_WHEN; + ATTRIBUTE_NAMES[25] = ATTR_ONCONTEXTMENU; + ATTRIBUTE_NAMES[26] = ATTR_KEYPOINTS; + ATTRIBUTE_NAMES[27] = ATTR_ONDRAGLEAVE; + ATTRIBUTE_NAMES[28] = ATTR_CONTENT; + ATTRIBUTE_NAMES[29] = ATTR_TEXT_RENDERING; ATTRIBUTE_NAMES[30] = ATTR_RX; ATTRIBUTE_NAMES[31] = ATTR_MIN; ATTRIBUTE_NAMES[32] = ATTR_K3; @@ -2230,30 +2220,30 @@ void nsHtml5AttributeName::initializeStatics() { ATTRIBUTE_NAMES[35] = ATTR_LOCAL; ATTRIBUTE_NAMES[36] = ATTR_ONABORT; ATTRIBUTE_NAMES[37] = ATTR_HIDDEN; - ATTRIBUTE_NAMES[38] = ATTR_ACCEPT; - ATTRIBUTE_NAMES[39] = ATTR_ENTERKEYHINT; - ATTRIBUTE_NAMES[40] = ATTR_OTHER; - ATTRIBUTE_NAMES[41] = ATTR_REPEAT; - ATTRIBUTE_NAMES[42] = ATTR_HREF; - ATTRIBUTE_NAMES[43] = ATTR_LARGEOP; - ATTRIBUTE_NAMES[44] = ATTR_MATHCOLOR; - ATTRIBUTE_NAMES[45] = ATTR_MEDIA; - ATTRIBUTE_NAMES[46] = ATTR_MARKER_END; - ATTRIBUTE_NAMES[47] = ATTR_ONBLUR; - ATTRIBUTE_NAMES[48] = ATTR_SYMMETRIC; - ATTRIBUTE_NAMES[49] = ATTR_POINTER_EVENTS; - ATTRIBUTE_NAMES[50] = ATTR_XMLNS; - ATTRIBUTE_NAMES[51] = ATTR_FLOOD_COLOR; - ATTRIBUTE_NAMES[52] = ATTR_ONFOCUS; - ATTRIBUTE_NAMES[53] = ATTR_CLIP; - ATTRIBUTE_NAMES[54] = ATTR_SCOPE; - ATTRIBUTE_NAMES[55] = ATTR_ONDRAG; - ATTRIBUTE_NAMES[56] = ATTR_COLSPAN; - ATTRIBUTE_NAMES[57] = ATTR_PRESERVEASPECTRATIO; - ATTRIBUTE_NAMES[58] = ATTR_FONTWEIGHT; - ATTRIBUTE_NAMES[59] = ATTR_ONSTOP; - ATTRIBUTE_NAMES[60] = ATTR_WIDTH; - ATTRIBUTE_NAMES[61] = ATTR_VALUETYPE; + ATTRIBUTE_NAMES[38] = ATTR_BASEFREQUENCY; + ATTRIBUTE_NAMES[39] = ATTR_INDEX; + ATTRIBUTE_NAMES[40] = ATTR_ONREADYSTATECHANGE; + ATTRIBUTE_NAMES[41] = ATTR_RULES; + ATTRIBUTE_NAMES[42] = ATTR_ONAFTERPRINT; + ATTRIBUTE_NAMES[43] = ATTR_LENGTHADJUST; + ATTRIBUTE_NAMES[44] = ATTR_NOSHADE; + ATTRIBUTE_NAMES[45] = ATTR_ONFINISH; + ATTRIBUTE_NAMES[46] = ATTR_MARKER_START; + ATTRIBUTE_NAMES[47] = ATTR_ROWLINES; + ATTRIBUTE_NAMES[48] = ATTR_USEMAP; + ATTRIBUTE_NAMES[49] = ATTR_POINTSATX; + ATTRIBUTE_NAMES[50] = ATTR_XLINK_SHOW; + ATTRIBUTE_NAMES[51] = ATTR_LQUOTE; + ATTRIBUTE_NAMES[52] = ATTR_ONFOCUSOUT; + ATTRIBUTE_NAMES[53] = ATTR_CLIP_PATH; + ATTRIBUTE_NAMES[54] = ATTR_SLOPE; + ATTRIBUTE_NAMES[55] = ATTR_ONDRAGOVER; + ATTRIBUTE_NAMES[56] = ATTR_CROSSORIGIN; + ATTRIBUTE_NAMES[57] = ATTR_ROWSPACING; + ATTRIBUTE_NAMES[58] = ATTR_FONTSTYLE; + ATTRIBUTE_NAMES[59] = ATTR_POSTER; + ATTRIBUTE_NAMES[60] = ATTR_COLUMNSPAN; + ATTRIBUTE_NAMES[61] = ATTR_ELEVATION; ATTRIBUTE_NAMES[62] = ATTR_DY; ATTRIBUTE_NAMES[63] = ATTR_END; ATTRIBUTE_NAMES[64] = ATTR_SRC; @@ -2269,54 +2259,54 @@ void nsHtml5AttributeName::initializeStatics() { ATTRIBUTE_NAMES[74] = ATTR_FETCHPRIORITY; ATTRIBUTE_NAMES[75] = ATTR_BORDER; ATTRIBUTE_NAMES[76] = ATTR_RENDERING_INTENT; - ATTRIBUTE_NAMES[77] = ATTR_ACCENTUNDER; - ATTRIBUTE_NAMES[78] = ATTR_BASEPROFILE; - ATTRIBUTE_NAMES[79] = ATTR_DATETIME; - ATTRIBUTE_NAMES[80] = ATTR_INTEGRITY; - ATTRIBUTE_NAMES[81] = ATTR_ONREPEAT; - ATTRIBUTE_NAMES[82] = ATTR_ONBEGIN; - ATTRIBUTE_NAMES[83] = ATTR_ONKEYUP; - ATTRIBUTE_NAMES[84] = ATTR_REPEATCOUNT; - ATTRIBUTE_NAMES[85] = ATTR_SELECTION; - ATTRIBUTE_NAMES[86] = ATTR_SURFACESCALE; - ATTRIBUTE_NAMES[87] = ATTR_IMAGESRCSET; - ATTRIBUTE_NAMES[88] = ATTR_MARGINWIDTH; - ATTRIBUTE_NAMES[89] = ATTR_LIGHTING_COLOR; - ATTRIBUTE_NAMES[90] = ATTR_PATHLENGTH; - ATTRIBUTE_NAMES[91] = ATTR_DOMINANT_BASELINE; - ATTRIBUTE_NAMES[92] = ATTR_RADIOGROUP; - ATTRIBUTE_NAMES[93] = ATTR_BACKGROUND; - ATTRIBUTE_NAMES[94] = ATTR_MASKUNITS; - ATTRIBUTE_NAMES[95] = ATTR_FILL; - ATTRIBUTE_NAMES[96] = ATTR_STYLE; - ATTRIBUTE_NAMES[97] = ATTR_FROM; - ATTRIBUTE_NAMES[98] = ATTR_ASYNC; - ATTRIBUTE_NAMES[99] = ATTR_OPEN; - ATTRIBUTE_NAMES[100] = ATTR_POINTSATZ; - ATTRIBUTE_NAMES[101] = ATTR_XLINK_TITLE; - ATTRIBUTE_NAMES[102] = ATTR_AUTOPLAY; - ATTRIBUTE_NAMES[103] = ATTR_COLOR; - ATTRIBUTE_NAMES[104] = ATTR_NOMODULE; - ATTRIBUTE_NAMES[105] = ATTR_ONCOPY; - ATTRIBUTE_NAMES[106] = ATTR_TO; - ATTRIBUTE_NAMES[107] = ATTR_SCROLLING; - ATTRIBUTE_NAMES[108] = ATTR_DISPLAY; - ATTRIBUTE_NAMES[109] = ATTR_PROPERTY; - ATTRIBUTE_NAMES[110] = ATTR_STOP_OPACITY; - ATTRIBUTE_NAMES[111] = ATTR_CHAROFF; - ATTRIBUTE_NAMES[112] = ATTR_ONDROP; - ATTRIBUTE_NAMES[113] = ATTR_START; - ATTRIBUTE_NAMES[114] = ATTR_CURSOR; - ATTRIBUTE_NAMES[115] = ATTR_MAXSIZE; - ATTRIBUTE_NAMES[116] = ATTR_SRCSET; - ATTRIBUTE_NAMES[117] = ATTR_DEPTH; - ATTRIBUTE_NAMES[118] = ATTR_FONTFAMILY; - ATTRIBUTE_NAMES[119] = ATTR_LETTER_SPACING; - ATTRIBUTE_NAMES[120] = ATTR_PATTERN; - ATTRIBUTE_NAMES[121] = ATTR_TEXT_ANCHOR; - ATTRIBUTE_NAMES[122] = ATTR_COLUMNALIGN; - ATTRIBUTE_NAMES[123] = ATTR_REQUIREDFEATURES; - ATTRIBUTE_NAMES[124] = ATTR_VIEWBOX; + ATTRIBUTE_NAMES[77] = ATTR_ACCESSKEY; + ATTRIBUTE_NAMES[78] = ATTR_BASE; + ATTRIBUTE_NAMES[79] = ATTR_EDGEMODE; + ATTRIBUTE_NAMES[80] = ATTR_LABEL; + ATTRIBUTE_NAMES[81] = ATTR_ONSELECT; + ATTRIBUTE_NAMES[82] = ATTR_ORIENT; + ATTRIBUTE_NAMES[83] = ATTR_ONKEYDOWN; + ATTRIBUTE_NAMES[84] = ATTR_SELECTED; + ATTRIBUTE_NAMES[85] = ATTR_TYPE; + ATTRIBUTE_NAMES[86] = ATTR_ALIGN; + ATTRIBUTE_NAMES[87] = ATTR_LANGUAGE; + ATTRIBUTE_NAMES[88] = ATTR_PING; + ATTRIBUTE_NAMES[89] = ATTR_METHOD; + ATTRIBUTE_NAMES[90] = ATTR_ALTIMG; + ATTRIBUTE_NAMES[91] = ATTR_DEFINITIONURL; + ATTRIBUTE_NAMES[92] = ATTR_SCRIPTLEVEL; + ATTRIBUTE_NAMES[93] = ATTR_MARKER_MID; + ATTRIBUTE_NAMES[94] = ATTR_MASKCONTENTUNITS; + ATTRIBUTE_NAMES[95] = ATTR_MAXLENGTH; + ATTRIBUTE_NAMES[96] = ATTR_TITLE; + ATTRIBUTE_NAMES[97] = ATTR_PROMPT; + ATTRIBUTE_NAMES[98] = ATTR_IN; + ATTRIBUTE_NAMES[99] = ATTR_ONEND; + ATTRIBUTE_NAMES[100] = ATTR_STANDBY; + ATTRIBUTE_NAMES[101] = ATTR_XLINK_ARCROLE; + ATTRIBUTE_NAMES[102] = ATTR_AUTOFOCUS; + ATTRIBUTE_NAMES[103] = ATTR_ENCODING; + ATTRIBUTE_NAMES[104] = ATTR_ONMOUSEWHEEL; + ATTRIBUTE_NAMES[105] = ATTR_ONMOUSEMOVE; + ATTRIBUTE_NAMES[106] = ATTR_STROKE_LINECAP; + ATTRIBUTE_NAMES[107] = ATTR_STROKE_OPACITY; + ATTRIBUTE_NAMES[108] = ATTR_GLYPH_ORIENTATION_VERTICAL; + ATTRIBUTE_NAMES[109] = ATTR_STEP; + ATTRIBUTE_NAMES[110] = ATTR_WRAP; + ATTRIBUTE_NAMES[111] = ATTR_NOWRAP; + ATTRIBUTE_NAMES[112] = ATTR_ONERROR; + ATTRIBUTE_NAMES[113] = ATTR_AXIS; + ATTRIBUTE_NAMES[114] = ATTR_CLOSE; + ATTRIBUTE_NAMES[115] = ATTR_OFFSET; + ATTRIBUTE_NAMES[116] = ATTR_VERSION; + ATTRIBUTE_NAMES[117] = ATTR_FONT_STRETCH; + ATTRIBUTE_NAMES[118] = ATTR_FONT_VARIANT; + ATTRIBUTE_NAMES[119] = ATTR_MULTIPLE; + ATTRIBUTE_NAMES[120] = ATTR_PATTERNCONTENTUNITS; + ATTRIBUTE_NAMES[121] = ATTR_TEXT; + ATTRIBUTE_NAMES[122] = ATTR_COLUMNWIDTH; + ATTRIBUTE_NAMES[123] = ATTR_REQUIREDEXTENSIONS; + ATTRIBUTE_NAMES[124] = ATTR_DX; ATTRIBUTE_NAMES[125] = ATTR_BY; ATTRIBUTE_NAMES[126] = ATTR_RY; ATTRIBUTE_NAMES[127] = ATTR_DIR; @@ -2346,103 +2336,103 @@ void nsHtml5AttributeName::initializeStatics() { ATTRIBUTE_NAMES[151] = ATTR_SPECULAREXPONENT; ATTRIBUTE_NAMES[152] = ATTR_GRADIENTTRANSFORM; ATTRIBUTE_NAMES[153] = ATTR_LOADING; - ATTRIBUTE_NAMES[154] = ATTR_SEED; - ATTRIBUTE_NAMES[155] = ATTR_SHADOWROOTDELEGATESFOCUS; - ATTRIBUTE_NAMES[156] = ATTR_ACCESSKEY; - ATTRIBUTE_NAMES[157] = ATTR_BASEFREQUENCY; - ATTRIBUTE_NAMES[158] = ATTR_BASE; - ATTRIBUTE_NAMES[159] = ATTR_CITE; - ATTRIBUTE_NAMES[160] = ATTR_EDGEMODE; - ATTRIBUTE_NAMES[161] = ATTR_INDEX; - ATTRIBUTE_NAMES[162] = ATTR_LABEL; - ATTRIBUTE_NAMES[163] = ATTR_NORESIZE; - ATTRIBUTE_NAMES[164] = ATTR_ONSELECT; - ATTRIBUTE_NAMES[165] = ATTR_ONREADYSTATECHANGE; - ATTRIBUTE_NAMES[166] = ATTR_ORIENT; - ATTRIBUTE_NAMES[167] = ATTR_ONBEFOREPASTE; - ATTRIBUTE_NAMES[168] = ATTR_ONKEYDOWN; - ATTRIBUTE_NAMES[169] = ATTR_RULES; - ATTRIBUTE_NAMES[170] = ATTR_SELECTED; - ATTRIBUTE_NAMES[171] = ATTR_SCHEME; - ATTRIBUTE_NAMES[172] = ATTR_TYPE; - ATTRIBUTE_NAMES[173] = ATTR_ONAFTERPRINT; - ATTRIBUTE_NAMES[174] = ATTR_ALIGN; - ATTRIBUTE_NAMES[175] = ATTR_HEIGHT; - ATTRIBUTE_NAMES[176] = ATTR_LANGUAGE; - ATTRIBUTE_NAMES[177] = ATTR_LENGTHADJUST; - ATTRIBUTE_NAMES[178] = ATTR_PING; - ATTRIBUTE_NAMES[179] = ATTR_ARCHIVE; - ATTRIBUTE_NAMES[180] = ATTR_METHOD; - ATTRIBUTE_NAMES[181] = ATTR_NOSHADE; - ATTRIBUTE_NAMES[182] = ATTR_ALTIMG; - ATTRIBUTE_NAMES[183] = ATTR_ADDITIVE; - ATTRIBUTE_NAMES[184] = ATTR_DEFINITIONURL; - ATTRIBUTE_NAMES[185] = ATTR_ONFINISH; - ATTRIBUTE_NAMES[186] = ATTR_SCRIPTLEVEL; - ATTRIBUTE_NAMES[187] = ATTR_VALIGN; - ATTRIBUTE_NAMES[188] = ATTR_MARKER_MID; - ATTRIBUTE_NAMES[189] = ATTR_MARKER_START; - ATTRIBUTE_NAMES[190] = ATTR_MASKCONTENTUNITS; - ATTRIBUTE_NAMES[191] = ATTR_DECLARE; - ATTRIBUTE_NAMES[192] = ATTR_MAXLENGTH; - ATTRIBUTE_NAMES[193] = ATTR_ROWLINES; - ATTRIBUTE_NAMES[194] = ATTR_TITLE; - ATTRIBUTE_NAMES[195] = ATTR_FRAME; - ATTRIBUTE_NAMES[196] = ATTR_PROMPT; - ATTRIBUTE_NAMES[197] = ATTR_USEMAP; - ATTRIBUTE_NAMES[198] = ATTR_IN; - ATTRIBUTE_NAMES[199] = ATTR_KERNELUNITLENGTH; - ATTRIBUTE_NAMES[200] = ATTR_ONEND; - ATTRIBUTE_NAMES[201] = ATTR_POINTSATX; - ATTRIBUTE_NAMES[202] = ATTR_STANDBY; - ATTRIBUTE_NAMES[203] = ATTR_WHEN; - ATTRIBUTE_NAMES[204] = ATTR_XLINK_ARCROLE; - ATTRIBUTE_NAMES[205] = ATTR_XLINK_SHOW; - ATTRIBUTE_NAMES[206] = ATTR_AUTOFOCUS; - ATTRIBUTE_NAMES[207] = ATTR_COLOR_RENDERING; - ATTRIBUTE_NAMES[208] = ATTR_ENCODING; - ATTRIBUTE_NAMES[209] = ATTR_LQUOTE; - ATTRIBUTE_NAMES[210] = ATTR_ONMOUSEWHEEL; - ATTRIBUTE_NAMES[211] = ATTR_ONCONTEXTMENU; - ATTRIBUTE_NAMES[212] = ATTR_ONMOUSEMOVE; - ATTRIBUTE_NAMES[213] = ATTR_ONFOCUSOUT; - ATTRIBUTE_NAMES[214] = ATTR_STROKE_LINECAP; - ATTRIBUTE_NAMES[215] = ATTR_STROKE_MITERLIMIT; - ATTRIBUTE_NAMES[216] = ATTR_STROKE_OPACITY; - ATTRIBUTE_NAMES[217] = ATTR_CLIP_PATH; - ATTRIBUTE_NAMES[218] = ATTR_GLYPH_ORIENTATION_VERTICAL; - ATTRIBUTE_NAMES[219] = ATTR_KEYPOINTS; - ATTRIBUTE_NAMES[220] = ATTR_STEP; - ATTRIBUTE_NAMES[221] = ATTR_SLOPE; - ATTRIBUTE_NAMES[222] = ATTR_WRAP; - ATTRIBUTE_NAMES[223] = ATTR_CHAR; - ATTRIBUTE_NAMES[224] = ATTR_NOWRAP; - ATTRIBUTE_NAMES[225] = ATTR_ONDRAGOVER; - ATTRIBUTE_NAMES[226] = ATTR_ONERROR; - ATTRIBUTE_NAMES[227] = ATTR_ONDRAGLEAVE; - ATTRIBUTE_NAMES[228] = ATTR_AXIS; - ATTRIBUTE_NAMES[229] = ATTR_CROSSORIGIN; - ATTRIBUTE_NAMES[230] = ATTR_CLOSE; - ATTRIBUTE_NAMES[231] = ATTR_KEYSPLINES; - ATTRIBUTE_NAMES[232] = ATTR_OFFSET; - ATTRIBUTE_NAMES[233] = ATTR_ROWSPACING; - ATTRIBUTE_NAMES[234] = ATTR_VERSION; - ATTRIBUTE_NAMES[235] = ATTR_CONTENT; - ATTRIBUTE_NAMES[236] = ATTR_FONT_STRETCH; - ATTRIBUTE_NAMES[237] = ATTR_FONTSTYLE; - ATTRIBUTE_NAMES[238] = ATTR_FONT_VARIANT; - ATTRIBUTE_NAMES[239] = ATTR_FONT_SIZE; - ATTRIBUTE_NAMES[240] = ATTR_MULTIPLE; - ATTRIBUTE_NAMES[241] = ATTR_POSTER; - ATTRIBUTE_NAMES[242] = ATTR_PATTERNCONTENTUNITS; - ATTRIBUTE_NAMES[243] = ATTR_TEXT_RENDERING; - ATTRIBUTE_NAMES[244] = ATTR_TEXT; - ATTRIBUTE_NAMES[245] = ATTR_COLUMNSPAN; - ATTRIBUTE_NAMES[246] = ATTR_COLUMNWIDTH; - ATTRIBUTE_NAMES[247] = ATTR_ONCUT; - ATTRIBUTE_NAMES[248] = ATTR_REQUIREDEXTENSIONS; - ATTRIBUTE_NAMES[249] = ATTR_ELEVATION; - ATTRIBUTE_NAMES[250] = ATTR_DX; + ATTRIBUTE_NAMES[154] = ATTR_SRCDOC; + ATTRIBUTE_NAMES[155] = ATTR_ACCENTUNDER; + ATTRIBUTE_NAMES[156] = ATTR_ACCEPT; + ATTRIBUTE_NAMES[157] = ATTR_BASEPROFILE; + ATTRIBUTE_NAMES[158] = ATTR_CODETYPE; + ATTRIBUTE_NAMES[159] = ATTR_DATETIME; + ATTRIBUTE_NAMES[160] = ATTR_ENTERKEYHINT; + ATTRIBUTE_NAMES[161] = ATTR_INTEGRITY; + ATTRIBUTE_NAMES[162] = ATTR_MODE; + ATTRIBUTE_NAMES[163] = ATTR_ONREPEAT; + ATTRIBUTE_NAMES[164] = ATTR_OTHER; + ATTRIBUTE_NAMES[165] = ATTR_ONBEGIN; + ATTRIBUTE_NAMES[166] = ATTR_ONBEFORECOPY; + ATTRIBUTE_NAMES[167] = ATTR_ONKEYUP; + ATTRIBUTE_NAMES[168] = ATTR_REPEAT; + ATTRIBUTE_NAMES[169] = ATTR_REPEATCOUNT; + ATTRIBUTE_NAMES[170] = ATTR_SUPERSCRIPTSHIFT; + ATTRIBUTE_NAMES[171] = ATTR_SELECTION; + ATTRIBUTE_NAMES[172] = ATTR_HREF; + ATTRIBUTE_NAMES[173] = ATTR_SURFACESCALE; + ATTRIBUTE_NAMES[174] = ATTR_ALIGNMENTSCOPE; + ATTRIBUTE_NAMES[175] = ATTR_IMAGESRCSET; + ATTRIBUTE_NAMES[176] = ATTR_LARGEOP; + ATTRIBUTE_NAMES[177] = ATTR_MARGINWIDTH; + ATTRIBUTE_NAMES[178] = ATTR_TARGETX; + ATTRIBUTE_NAMES[179] = ATTR_LIGHTING_COLOR; + ATTRIBUTE_NAMES[180] = ATTR_MATHCOLOR; + ATTRIBUTE_NAMES[181] = ATTR_PATHLENGTH; + ATTRIBUTE_NAMES[182] = ATTR_ACTION; + ATTRIBUTE_NAMES[183] = ATTR_DOMINANT_BASELINE; + ATTRIBUTE_NAMES[184] = ATTR_MEDIA; + ATTRIBUTE_NAMES[185] = ATTR_RADIOGROUP; + ATTRIBUTE_NAMES[186] = ATTR_SCRIPTMINSIZE; + ATTRIBUTE_NAMES[187] = ATTR_BACKGROUND; + ATTRIBUTE_NAMES[188] = ATTR_MARKER_END; + ATTRIBUTE_NAMES[189] = ATTR_MASKUNITS; + ATTRIBUTE_NAMES[190] = ATTR_CELLSPACING; + ATTRIBUTE_NAMES[191] = ATTR_FILL; + ATTRIBUTE_NAMES[192] = ATTR_ONBLUR; + ATTRIBUTE_NAMES[193] = ATTR_STYLE; + ATTRIBUTE_NAMES[194] = ATTR_FORMAT; + ATTRIBUTE_NAMES[195] = ATTR_FROM; + ATTRIBUTE_NAMES[196] = ATTR_SYMMETRIC; + ATTRIBUTE_NAMES[197] = ATTR_ASYNC; + ATTRIBUTE_NAMES[198] = ATTR_KERNELMATRIX; + ATTRIBUTE_NAMES[199] = ATTR_OPEN; + ATTRIBUTE_NAMES[200] = ATTR_POINTER_EVENTS; + ATTRIBUTE_NAMES[201] = ATTR_POINTSATZ; + ATTRIBUTE_NAMES[202] = ATTR_TRANSFORM; + ATTRIBUTE_NAMES[203] = ATTR_XLINK_TITLE; + ATTRIBUTE_NAMES[204] = ATTR_XMLNS; + ATTRIBUTE_NAMES[205] = ATTR_AUTOPLAY; + ATTRIBUTE_NAMES[206] = ATTR_BGCOLOR; + ATTRIBUTE_NAMES[207] = ATTR_COLOR; + ATTRIBUTE_NAMES[208] = ATTR_FLOOD_COLOR; + ATTRIBUTE_NAMES[209] = ATTR_NOMODULE; + ATTRIBUTE_NAMES[210] = ATTR_ONMOUSEOVER; + ATTRIBUTE_NAMES[211] = ATTR_ONCOPY; + ATTRIBUTE_NAMES[212] = ATTR_ONFOCUS; + ATTRIBUTE_NAMES[213] = ATTR_TO; + ATTRIBUTE_NAMES[214] = ATTR_STROKE_DASHOFFSET; + ATTRIBUTE_NAMES[215] = ATTR_SCROLLING; + ATTRIBUTE_NAMES[216] = ATTR_CLIP; + ATTRIBUTE_NAMES[217] = ATTR_DISPLAY; + ATTRIBUTE_NAMES[218] = ATTR_GLYPHREF; + ATTRIBUTE_NAMES[219] = ATTR_PROPERTY; + ATTRIBUTE_NAMES[220] = ATTR_SCOPE; + ATTRIBUTE_NAMES[221] = ATTR_STOP_OPACITY; + ATTRIBUTE_NAMES[222] = ATTR_ATTRIBUTENAME; + ATTRIBUTE_NAMES[223] = ATTR_CHAROFF; + ATTRIBUTE_NAMES[224] = ATTR_ONDRAG; + ATTRIBUTE_NAMES[225] = ATTR_ONDROP; + ATTRIBUTE_NAMES[226] = ATTR_OVERFLOW; + ATTRIBUTE_NAMES[227] = ATTR_START; + ATTRIBUTE_NAMES[228] = ATTR_COLSPAN; + ATTRIBUTE_NAMES[229] = ATTR_CURSOR; + ATTRIBUTE_NAMES[230] = ATTR_IS; + ATTRIBUTE_NAMES[231] = ATTR_MAXSIZE; + ATTRIBUTE_NAMES[232] = ATTR_PRESERVEASPECTRATIO; + ATTRIBUTE_NAMES[233] = ATTR_SRCSET; + ATTRIBUTE_NAMES[234] = ATTR_CONTENTEDITABLE; + ATTRIBUTE_NAMES[235] = ATTR_DEPTH; + ATTRIBUTE_NAMES[236] = ATTR_FONTWEIGHT; + ATTRIBUTE_NAMES[237] = ATTR_FONTFAMILY; + ATTRIBUTE_NAMES[238] = ATTR_FILTERUNITS; + ATTRIBUTE_NAMES[239] = ATTR_LETTER_SPACING; + ATTRIBUTE_NAMES[240] = ATTR_ONSTOP; + ATTRIBUTE_NAMES[241] = ATTR_PATTERN; + ATTRIBUTE_NAMES[242] = ATTR_STITCHTILES; + ATTRIBUTE_NAMES[243] = ATTR_TEXT_ANCHOR; + ATTRIBUTE_NAMES[244] = ATTR_WIDTH; + ATTRIBUTE_NAMES[245] = ATTR_COLUMNALIGN; + ATTRIBUTE_NAMES[246] = ATTR_INPUTMODE; + ATTRIBUTE_NAMES[247] = ATTR_REQUIREDFEATURES; + ATTRIBUTE_NAMES[248] = ATTR_VALUETYPE; + ATTRIBUTE_NAMES[249] = ATTR_VIEWBOX; + ATTRIBUTE_NAMES[250] = ATTR_FX; ATTRIBUTE_NAMES[251] = ATTR_REFX; ATTRIBUTE_NAMES[252] = ATTR_CY; ATTRIBUTE_NAMES[253] = ATTR_FY; @@ -2501,200 +2491,198 @@ void nsHtml5AttributeName::initializeStatics() { ATTRIBUTE_NAMES[306] = ATTR_GRADIENTUNITS; ATTRIBUTE_NAMES[307] = ATTR_HEADERS; ATTRIBUTE_NAMES[308] = ATTR_READONLY; - ATTRIBUTE_NAMES[309] = ATTR_SHADOWROOTMODE; - ATTRIBUTE_NAMES[310] = ATTR_SRCDOC; - ATTRIBUTE_NAMES[311] = ATTR_SANDBOX; - ATTRIBUTE_NAMES[312] = ATTR_WORD_SPACING; - ATTRIBUTE_NAMES[313] = ATTR_ACCEPT_CHARSET; - ATTRIBUTE_NAMES[314] = ATTR_ACCENT; - ATTRIBUTE_NAMES[315] = ATTR_BEVELLED; - ATTRIBUTE_NAMES[316] = ATTR_BASELINE_SHIFT; - ATTRIBUTE_NAMES[317] = ATTR_BASELINE; - ATTRIBUTE_NAMES[318] = ATTR_CODE; - ATTRIBUTE_NAMES[319] = ATTR_CODEBASE; - ATTRIBUTE_NAMES[320] = ATTR_DEFER; - ATTRIBUTE_NAMES[321] = ATTR_DIRECTION; - ATTRIBUTE_NAMES[322] = ATTR_EDGE; - ATTRIBUTE_NAMES[323] = ATTR_FACE; - ATTRIBUTE_NAMES[324] = ATTR_INTERCEPT; - ATTRIBUTE_NAMES[325] = ATTR_LINEBREAK; - ATTRIBUTE_NAMES[326] = ATTR_LINETHICKNESS; - ATTRIBUTE_NAMES[327] = ATTR_NAME; - ATTRIBUTE_NAMES[328] = ATTR_ONBEFOREUNLOAD; - ATTRIBUTE_NAMES[329] = ATTR_OBJECT; - ATTRIBUTE_NAMES[330] = ATTR_ORDER; - ATTRIBUTE_NAMES[331] = ATTR_ONRESET; - ATTRIBUTE_NAMES[332] = ATTR_ONMESSAGE; - ATTRIBUTE_NAMES[333] = ATTR_ONBEFOREPRINT; - ATTRIBUTE_NAMES[334] = ATTR_ORIENTATION; - ATTRIBUTE_NAMES[335] = ATTR_ONSELECTSTART; - ATTRIBUTE_NAMES[336] = ATTR_ONKEYPRESS; - ATTRIBUTE_NAMES[337] = ATTR_ONBEFORECUT; - ATTRIBUTE_NAMES[338] = ATTR_ONRESIZE; - ATTRIBUTE_NAMES[339] = ATTR_REFERRERPOLICY; - ATTRIBUTE_NAMES[340] = ATTR_ROLE; - ATTRIBUTE_NAMES[341] = ATTR_REPEATDUR; - ATTRIBUTE_NAMES[342] = ATTR_SIZES; - ATTRIBUTE_NAMES[343] = ATTR_STRETCHY; - ATTRIBUTE_NAMES[344] = ATTR_SPREADMETHOD; - ATTRIBUTE_NAMES[345] = ATTR_SIZE; - ATTRIBUTE_NAMES[346] = ATTR_DIFFUSECONSTANT; - ATTRIBUTE_NAMES[347] = ATTR_HREFLANG; - ATTRIBUTE_NAMES[348] = ATTR_PROFILE; - ATTRIBUTE_NAMES[349] = ATTR_XREF; - ATTRIBUTE_NAMES[350] = ATTR_ALIGNMENT_BASELINE; - ATTRIBUTE_NAMES[351] = ATTR_DRAGGABLE; - ATTRIBUTE_NAMES[352] = ATTR_IMAGESIZES; - ATTRIBUTE_NAMES[353] = ATTR_IMAGE_RENDERING; - ATTRIBUTE_NAMES[354] = ATTR_LANG; - ATTRIBUTE_NAMES[355] = ATTR_LONGDESC; - ATTRIBUTE_NAMES[356] = ATTR_MARGINHEIGHT; - ATTRIBUTE_NAMES[357] = ATTR_ORIGIN; - ATTRIBUTE_NAMES[358] = ATTR_TARGET; - ATTRIBUTE_NAMES[359] = ATTR_TARGETY; - ATTRIBUTE_NAMES[360] = ATTR_HIGH; - ATTRIBUTE_NAMES[361] = ATTR_MATHBACKGROUND; - ATTRIBUTE_NAMES[362] = ATTR_MATHVARIANT; - ATTRIBUTE_NAMES[363] = ATTR_MATHSIZE; - ATTRIBUTE_NAMES[364] = ATTR_ONCHANGE; - ATTRIBUTE_NAMES[365] = ATTR_PATH; - ATTRIBUTE_NAMES[366] = ATTR_ACTIONTYPE; - ATTRIBUTE_NAMES[367] = ATTR_ACTIVE; - ATTRIBUTE_NAMES[368] = ATTR_BEGIN; - ATTRIBUTE_NAMES[369] = ATTR_DIVISOR; - ATTRIBUTE_NAMES[370] = ATTR_LIMITINGCONEANGLE; - ATTRIBUTE_NAMES[371] = ATTR_MANIFEST; - ATTRIBUTE_NAMES[372] = ATTR_OPTIMUM; - ATTRIBUTE_NAMES[373] = ATTR_RADIUS; - ATTRIBUTE_NAMES[374] = ATTR_SCRIPTSIZEMULTIPLIER; - ATTRIBUTE_NAMES[375] = ATTR_TABINDEX; - ATTRIBUTE_NAMES[376] = ATTR_VISIBILITY; - ATTRIBUTE_NAMES[377] = ATTR_LINK; - ATTRIBUTE_NAMES[378] = ATTR_MARKERHEIGHT; - ATTRIBUTE_NAMES[379] = ATTR_MASK; - ATTRIBUTE_NAMES[380] = ATTR_MARKERWIDTH; - ATTRIBUTE_NAMES[381] = ATTR_MARKERUNITS; - ATTRIBUTE_NAMES[382] = ATTR_AMPLITUDE; - ATTRIBUTE_NAMES[383] = ATTR_CELLPADDING; - ATTRIBUTE_NAMES[384] = ATTR_FILL_RULE; - ATTRIBUTE_NAMES[385] = ATTR_FILL_OPACITY; - ATTRIBUTE_NAMES[386] = ATTR_ONCLICK; - ATTRIBUTE_NAMES[387] = ATTR_REPLACE; - ATTRIBUTE_NAMES[388] = ATTR_SCALE; - ATTRIBUTE_NAMES[389] = ATTR_TABLEVALUES; - ATTRIBUTE_NAMES[390] = ATTR_AZIMUTH; - ATTRIBUTE_NAMES[391] = ATTR_FRAMEBORDER; - ATTRIBUTE_NAMES[392] = ATTR_FRAMESPACING; - ATTRIBUTE_NAMES[393] = ATTR_FORM; - ATTRIBUTE_NAMES[394] = ATTR_PRIMITIVEUNITS; - ATTRIBUTE_NAMES[395] = ATTR_SUMMARY; - ATTRIBUTE_NAMES[396] = ATTR_ZOOMANDPAN; - ATTRIBUTE_NAMES[397] = ATTR_ALINK; - ATTRIBUTE_NAMES[398] = ATTR_ICON; - ATTRIBUTE_NAMES[399] = ATTR_KERNING; - ATTRIBUTE_NAMES[400] = ATTR_ONUNLOAD; - ATTRIBUTE_NAMES[401] = ATTR_ONINVALID; - ATTRIBUTE_NAMES[402] = ATTR_ONINPUT; - ATTRIBUTE_NAMES[403] = ATTR_POINTS; - ATTRIBUTE_NAMES[404] = ATTR_POINTSATY; - ATTRIBUTE_NAMES[405] = ATTR_SPAN; - ATTRIBUTE_NAMES[406] = ATTR_TRANSFORM_ORIGIN; - ATTRIBUTE_NAMES[407] = ATTR_VLINK; - ATTRIBUTE_NAMES[408] = ATTR_XLINK_HREF; - ATTRIBUTE_NAMES[409] = ATTR_XLINK_ROLE; - ATTRIBUTE_NAMES[410] = ATTR_XMLNS_XLINK; - ATTRIBUTE_NAMES[411] = ATTR_XLINK_TYPE; - ATTRIBUTE_NAMES[412] = ATTR_XLINK_ACTUATE; - ATTRIBUTE_NAMES[413] = ATTR_AUTOCOMPLETE; - ATTRIBUTE_NAMES[414] = ATTR_AUTOCAPITALIZE; - ATTRIBUTE_NAMES[415] = ATTR_COLOR_PROFILE; - ATTRIBUTE_NAMES[416] = ATTR_COLOR_INTERPOLATION; - ATTRIBUTE_NAMES[417] = ATTR_COLOR_INTERPOLATION_FILTERS; - ATTRIBUTE_NAMES[418] = ATTR_EXPONENT; - ATTRIBUTE_NAMES[419] = ATTR_FLOOD_OPACITY; - ATTRIBUTE_NAMES[420] = ATTR_NUMOCTAVES; - ATTRIBUTE_NAMES[421] = ATTR_ONLOAD; - ATTRIBUTE_NAMES[422] = ATTR_ONMOUSEENTER; - ATTRIBUTE_NAMES[423] = ATTR_ONFOCUSIN; - ATTRIBUTE_NAMES[424] = ATTR_ONZOOM; - ATTRIBUTE_NAMES[425] = ATTR_ONMOUSELEAVE; - ATTRIBUTE_NAMES[426] = ATTR_ONMOUSEUP; - ATTRIBUTE_NAMES[427] = ATTR_ONMOUSEOUT; - ATTRIBUTE_NAMES[428] = ATTR_ONMOUSEDOWN; - ATTRIBUTE_NAMES[429] = ATTR_RQUOTE; - ATTRIBUTE_NAMES[430] = ATTR_STROKE_DASHARRAY; - ATTRIBUTE_NAMES[431] = ATTR_STROKE_LINEJOIN; - ATTRIBUTE_NAMES[432] = ATTR_STROKE; - ATTRIBUTE_NAMES[433] = ATTR_STROKE_WIDTH; - ATTRIBUTE_NAMES[434] = ATTR_COMPACT; - ATTRIBUTE_NAMES[435] = ATTR_CLIP_RULE; - ATTRIBUTE_NAMES[436] = ATTR_CLIPPATHUNITS; - ATTRIBUTE_NAMES[437] = ATTR_DISPLAYSTYLE; - ATTRIBUTE_NAMES[438] = ATTR_GLYPH_ORIENTATION_HORIZONTAL; - ATTRIBUTE_NAMES[439] = ATTR_HTTP_EQUIV; - ATTRIBUTE_NAMES[440] = ATTR_LOOP; - ATTRIBUTE_NAMES[441] = ATTR_SCOPED; - ATTRIBUTE_NAMES[442] = ATTR_SHAPE_RENDERING; - ATTRIBUTE_NAMES[443] = ATTR_SHAPE; - ATTRIBUTE_NAMES[444] = ATTR_STOP_COLOR; - ATTRIBUTE_NAMES[445] = ATTR_TEMPLATE; - ATTRIBUTE_NAMES[446] = ATTR_ABBR; - ATTRIBUTE_NAMES[447] = ATTR_ATTRIBUTETYPE; - ATTRIBUTE_NAMES[448] = ATTR_COORDS; - ATTRIBUTE_NAMES[449] = ATTR_CHARSET; - ATTRIBUTE_NAMES[450] = ATTR_NOHREF; - ATTRIBUTE_NAMES[451] = ATTR_ONDRAGENTER; - ATTRIBUTE_NAMES[452] = ATTR_ONDRAGEND; - ATTRIBUTE_NAMES[453] = ATTR_ONDRAGDROP; - ATTRIBUTE_NAMES[454] = ATTR_OPERATOR; - ATTRIBUTE_NAMES[455] = ATTR_ONDRAGSTART; - ATTRIBUTE_NAMES[456] = ATTR_STARTOFFSET; - ATTRIBUTE_NAMES[457] = ATTR_AS; - ATTRIBUTE_NAMES[458] = ATTR_BIAS; - ATTRIBUTE_NAMES[459] = ATTR_CLASSID; - ATTRIBUTE_NAMES[460] = ATTR_COLS; - ATTRIBUTE_NAMES[461] = ATTR_CLOSURE; - ATTRIBUTE_NAMES[462] = ATTR_CLASS; - ATTRIBUTE_NAMES[463] = ATTR_KEYSYSTEM; - ATTRIBUTE_NAMES[464] = ATTR_LOWSRC; - ATTRIBUTE_NAMES[465] = ATTR_MINSIZE; - ATTRIBUTE_NAMES[466] = ATTR_PRESERVEALPHA; - ATTRIBUTE_NAMES[467] = ATTR_ROWSPAN; - ATTRIBUTE_NAMES[468] = ATTR_ROWS; - ATTRIBUTE_NAMES[469] = ATTR_SUBSCRIPTSHIFT; - ATTRIBUTE_NAMES[470] = ATTR_ALTTEXT; - ATTRIBUTE_NAMES[471] = ATTR_CONTROLS; - ATTRIBUTE_NAMES[472] = ATTR_CONTEXTMENU; - ATTRIBUTE_NAMES[473] = ATTR_ENCTYPE; - ATTRIBUTE_NAMES[474] = ATTR_FILTER; - ATTRIBUTE_NAMES[475] = ATTR_FONT_WEIGHT; - ATTRIBUTE_NAMES[476] = ATTR_FONT_STYLE; - ATTRIBUTE_NAMES[477] = ATTR_FONT_FAMILY; - ATTRIBUTE_NAMES[478] = ATTR_FONT_SIZE_ADJUST; - ATTRIBUTE_NAMES[479] = ATTR_FONTSIZE; - ATTRIBUTE_NAMES[480] = ATTR_KEYTIMES; - ATTRIBUTE_NAMES[481] = ATTR_LIST; - ATTRIBUTE_NAMES[482] = ATTR_RT; - ATTRIBUTE_NAMES[483] = ATTR_ONSTART; - ATTRIBUTE_NAMES[484] = ATTR_PATTERNTRANSFORM; - ATTRIBUTE_NAMES[485] = ATTR_PATTERNUNITS; - ATTRIBUTE_NAMES[486] = ATTR_RESTART; - ATTRIBUTE_NAMES[487] = ATTR_SYSTEMLANGUAGE; - ATTRIBUTE_NAMES[488] = ATTR_TEXT_DECORATION; - ATTRIBUTE_NAMES[489] = ATTR_TEXTLENGTH; - ATTRIBUTE_NAMES[490] = ATTR_WRITING_MODE; - ATTRIBUTE_NAMES[491] = ATTR_ACCUMULATE; - ATTRIBUTE_NAMES[492] = ATTR_COLUMNLINES; - ATTRIBUTE_NAMES[493] = ATTR_COLUMNSPACING; - ATTRIBUTE_NAMES[494] = ATTR_GROUPALIGN; - ATTRIBUTE_NAMES[495] = ATTR_ONSUBMIT; - ATTRIBUTE_NAMES[496] = ATTR_REQUIRED; - ATTRIBUTE_NAMES[497] = ATTR_RESULT; - ATTRIBUTE_NAMES[498] = ATTR_VALUES; - ATTRIBUTE_NAMES[499] = ATTR_VALUE; - ATTRIBUTE_NAMES[500] = ATTR_VIEWTARGET; - ATTRIBUTE_NAMES[501] = ATTR_CX; - ATTRIBUTE_NAMES[502] = ATTR_FX; + ATTRIBUTE_NAMES[309] = ATTR_SEED; + ATTRIBUTE_NAMES[310] = ATTR_STDDEVIATION; + ATTRIBUTE_NAMES[311] = ATTR_WORD_SPACING; + ATTRIBUTE_NAMES[312] = ATTR_ACCEPT_CHARSET; + ATTRIBUTE_NAMES[313] = ATTR_ACCENT; + ATTRIBUTE_NAMES[314] = ATTR_BEVELLED; + ATTRIBUTE_NAMES[315] = ATTR_BASELINE_SHIFT; + ATTRIBUTE_NAMES[316] = ATTR_BASELINE; + ATTRIBUTE_NAMES[317] = ATTR_CODE; + ATTRIBUTE_NAMES[318] = ATTR_CODEBASE; + ATTRIBUTE_NAMES[319] = ATTR_DEFER; + ATTRIBUTE_NAMES[320] = ATTR_DIRECTION; + ATTRIBUTE_NAMES[321] = ATTR_EDGE; + ATTRIBUTE_NAMES[322] = ATTR_FACE; + ATTRIBUTE_NAMES[323] = ATTR_INTERCEPT; + ATTRIBUTE_NAMES[324] = ATTR_LINEBREAK; + ATTRIBUTE_NAMES[325] = ATTR_LINETHICKNESS; + ATTRIBUTE_NAMES[326] = ATTR_NAME; + ATTRIBUTE_NAMES[327] = ATTR_ONBEFOREUNLOAD; + ATTRIBUTE_NAMES[328] = ATTR_OBJECT; + ATTRIBUTE_NAMES[329] = ATTR_ORDER; + ATTRIBUTE_NAMES[330] = ATTR_ONRESET; + ATTRIBUTE_NAMES[331] = ATTR_ONMESSAGE; + ATTRIBUTE_NAMES[332] = ATTR_ONBEFOREPRINT; + ATTRIBUTE_NAMES[333] = ATTR_ORIENTATION; + ATTRIBUTE_NAMES[334] = ATTR_ONSELECTSTART; + ATTRIBUTE_NAMES[335] = ATTR_ONKEYPRESS; + ATTRIBUTE_NAMES[336] = ATTR_ONBEFORECUT; + ATTRIBUTE_NAMES[337] = ATTR_ONRESIZE; + ATTRIBUTE_NAMES[338] = ATTR_REFERRERPOLICY; + ATTRIBUTE_NAMES[339] = ATTR_ROLE; + ATTRIBUTE_NAMES[340] = ATTR_REPEATDUR; + ATTRIBUTE_NAMES[341] = ATTR_SIZES; + ATTRIBUTE_NAMES[342] = ATTR_STRETCHY; + ATTRIBUTE_NAMES[343] = ATTR_SPREADMETHOD; + ATTRIBUTE_NAMES[344] = ATTR_SIZE; + ATTRIBUTE_NAMES[345] = ATTR_DIFFUSECONSTANT; + ATTRIBUTE_NAMES[346] = ATTR_HREFLANG; + ATTRIBUTE_NAMES[347] = ATTR_PROFILE; + ATTRIBUTE_NAMES[348] = ATTR_XREF; + ATTRIBUTE_NAMES[349] = ATTR_ALIGNMENT_BASELINE; + ATTRIBUTE_NAMES[350] = ATTR_DRAGGABLE; + ATTRIBUTE_NAMES[351] = ATTR_IMAGESIZES; + ATTRIBUTE_NAMES[352] = ATTR_IMAGE_RENDERING; + ATTRIBUTE_NAMES[353] = ATTR_LANG; + ATTRIBUTE_NAMES[354] = ATTR_LONGDESC; + ATTRIBUTE_NAMES[355] = ATTR_MARGINHEIGHT; + ATTRIBUTE_NAMES[356] = ATTR_ORIGIN; + ATTRIBUTE_NAMES[357] = ATTR_TARGET; + ATTRIBUTE_NAMES[358] = ATTR_TARGETY; + ATTRIBUTE_NAMES[359] = ATTR_HIGH; + ATTRIBUTE_NAMES[360] = ATTR_MATHBACKGROUND; + ATTRIBUTE_NAMES[361] = ATTR_MATHVARIANT; + ATTRIBUTE_NAMES[362] = ATTR_MATHSIZE; + ATTRIBUTE_NAMES[363] = ATTR_ONCHANGE; + ATTRIBUTE_NAMES[364] = ATTR_PATH; + ATTRIBUTE_NAMES[365] = ATTR_ACTIONTYPE; + ATTRIBUTE_NAMES[366] = ATTR_ACTIVE; + ATTRIBUTE_NAMES[367] = ATTR_BEGIN; + ATTRIBUTE_NAMES[368] = ATTR_DIVISOR; + ATTRIBUTE_NAMES[369] = ATTR_LIMITINGCONEANGLE; + ATTRIBUTE_NAMES[370] = ATTR_MANIFEST; + ATTRIBUTE_NAMES[371] = ATTR_OPTIMUM; + ATTRIBUTE_NAMES[372] = ATTR_RADIUS; + ATTRIBUTE_NAMES[373] = ATTR_SCRIPTSIZEMULTIPLIER; + ATTRIBUTE_NAMES[374] = ATTR_TABINDEX; + ATTRIBUTE_NAMES[375] = ATTR_VISIBILITY; + ATTRIBUTE_NAMES[376] = ATTR_LINK; + ATTRIBUTE_NAMES[377] = ATTR_MARKERHEIGHT; + ATTRIBUTE_NAMES[378] = ATTR_MASK; + ATTRIBUTE_NAMES[379] = ATTR_MARKERWIDTH; + ATTRIBUTE_NAMES[380] = ATTR_MARKERUNITS; + ATTRIBUTE_NAMES[381] = ATTR_AMPLITUDE; + ATTRIBUTE_NAMES[382] = ATTR_CELLPADDING; + ATTRIBUTE_NAMES[383] = ATTR_FILL_RULE; + ATTRIBUTE_NAMES[384] = ATTR_FILL_OPACITY; + ATTRIBUTE_NAMES[385] = ATTR_ONCLICK; + ATTRIBUTE_NAMES[386] = ATTR_REPLACE; + ATTRIBUTE_NAMES[387] = ATTR_SCALE; + ATTRIBUTE_NAMES[388] = ATTR_TABLEVALUES; + ATTRIBUTE_NAMES[389] = ATTR_AZIMUTH; + ATTRIBUTE_NAMES[390] = ATTR_FRAMEBORDER; + ATTRIBUTE_NAMES[391] = ATTR_FRAMESPACING; + ATTRIBUTE_NAMES[392] = ATTR_FORM; + ATTRIBUTE_NAMES[393] = ATTR_PRIMITIVEUNITS; + ATTRIBUTE_NAMES[394] = ATTR_SUMMARY; + ATTRIBUTE_NAMES[395] = ATTR_ZOOMANDPAN; + ATTRIBUTE_NAMES[396] = ATTR_ALINK; + ATTRIBUTE_NAMES[397] = ATTR_ICON; + ATTRIBUTE_NAMES[398] = ATTR_KERNING; + ATTRIBUTE_NAMES[399] = ATTR_ONUNLOAD; + ATTRIBUTE_NAMES[400] = ATTR_ONINVALID; + ATTRIBUTE_NAMES[401] = ATTR_ONINPUT; + ATTRIBUTE_NAMES[402] = ATTR_POINTS; + ATTRIBUTE_NAMES[403] = ATTR_POINTSATY; + ATTRIBUTE_NAMES[404] = ATTR_SPAN; + ATTRIBUTE_NAMES[405] = ATTR_TRANSFORM_ORIGIN; + ATTRIBUTE_NAMES[406] = ATTR_VLINK; + ATTRIBUTE_NAMES[407] = ATTR_XLINK_HREF; + ATTRIBUTE_NAMES[408] = ATTR_XLINK_ROLE; + ATTRIBUTE_NAMES[409] = ATTR_XMLNS_XLINK; + ATTRIBUTE_NAMES[410] = ATTR_XLINK_TYPE; + ATTRIBUTE_NAMES[411] = ATTR_XLINK_ACTUATE; + ATTRIBUTE_NAMES[412] = ATTR_AUTOCOMPLETE; + ATTRIBUTE_NAMES[413] = ATTR_AUTOCAPITALIZE; + ATTRIBUTE_NAMES[414] = ATTR_COLOR_PROFILE; + ATTRIBUTE_NAMES[415] = ATTR_COLOR_INTERPOLATION; + ATTRIBUTE_NAMES[416] = ATTR_COLOR_INTERPOLATION_FILTERS; + ATTRIBUTE_NAMES[417] = ATTR_EXPONENT; + ATTRIBUTE_NAMES[418] = ATTR_FLOOD_OPACITY; + ATTRIBUTE_NAMES[419] = ATTR_NUMOCTAVES; + ATTRIBUTE_NAMES[420] = ATTR_ONLOAD; + ATTRIBUTE_NAMES[421] = ATTR_ONMOUSEENTER; + ATTRIBUTE_NAMES[422] = ATTR_ONFOCUSIN; + ATTRIBUTE_NAMES[423] = ATTR_ONZOOM; + ATTRIBUTE_NAMES[424] = ATTR_ONMOUSELEAVE; + ATTRIBUTE_NAMES[425] = ATTR_ONMOUSEUP; + ATTRIBUTE_NAMES[426] = ATTR_ONMOUSEOUT; + ATTRIBUTE_NAMES[427] = ATTR_ONMOUSEDOWN; + ATTRIBUTE_NAMES[428] = ATTR_RQUOTE; + ATTRIBUTE_NAMES[429] = ATTR_STROKE_DASHARRAY; + ATTRIBUTE_NAMES[430] = ATTR_STROKE_LINEJOIN; + ATTRIBUTE_NAMES[431] = ATTR_STROKE; + ATTRIBUTE_NAMES[432] = ATTR_STROKE_WIDTH; + ATTRIBUTE_NAMES[433] = ATTR_COMPACT; + ATTRIBUTE_NAMES[434] = ATTR_CLIP_RULE; + ATTRIBUTE_NAMES[435] = ATTR_CLIPPATHUNITS; + ATTRIBUTE_NAMES[436] = ATTR_DISPLAYSTYLE; + ATTRIBUTE_NAMES[437] = ATTR_GLYPH_ORIENTATION_HORIZONTAL; + ATTRIBUTE_NAMES[438] = ATTR_HTTP_EQUIV; + ATTRIBUTE_NAMES[439] = ATTR_LOOP; + ATTRIBUTE_NAMES[440] = ATTR_SCOPED; + ATTRIBUTE_NAMES[441] = ATTR_SHAPE_RENDERING; + ATTRIBUTE_NAMES[442] = ATTR_SHAPE; + ATTRIBUTE_NAMES[443] = ATTR_STOP_COLOR; + ATTRIBUTE_NAMES[444] = ATTR_TEMPLATE; + ATTRIBUTE_NAMES[445] = ATTR_ABBR; + ATTRIBUTE_NAMES[446] = ATTR_ATTRIBUTETYPE; + ATTRIBUTE_NAMES[447] = ATTR_COORDS; + ATTRIBUTE_NAMES[448] = ATTR_CHARSET; + ATTRIBUTE_NAMES[449] = ATTR_NOHREF; + ATTRIBUTE_NAMES[450] = ATTR_ONDRAGENTER; + ATTRIBUTE_NAMES[451] = ATTR_ONDRAGEND; + ATTRIBUTE_NAMES[452] = ATTR_ONDRAGDROP; + ATTRIBUTE_NAMES[453] = ATTR_OPERATOR; + ATTRIBUTE_NAMES[454] = ATTR_ONDRAGSTART; + ATTRIBUTE_NAMES[455] = ATTR_STARTOFFSET; + ATTRIBUTE_NAMES[456] = ATTR_AS; + ATTRIBUTE_NAMES[457] = ATTR_BIAS; + ATTRIBUTE_NAMES[458] = ATTR_CLASSID; + ATTRIBUTE_NAMES[459] = ATTR_COLS; + ATTRIBUTE_NAMES[460] = ATTR_CLOSURE; + ATTRIBUTE_NAMES[461] = ATTR_CLASS; + ATTRIBUTE_NAMES[462] = ATTR_KEYSYSTEM; + ATTRIBUTE_NAMES[463] = ATTR_LOWSRC; + ATTRIBUTE_NAMES[464] = ATTR_MINSIZE; + ATTRIBUTE_NAMES[465] = ATTR_PRESERVEALPHA; + ATTRIBUTE_NAMES[466] = ATTR_ROWSPAN; + ATTRIBUTE_NAMES[467] = ATTR_ROWS; + ATTRIBUTE_NAMES[468] = ATTR_SUBSCRIPTSHIFT; + ATTRIBUTE_NAMES[469] = ATTR_ALTTEXT; + ATTRIBUTE_NAMES[470] = ATTR_CONTROLS; + ATTRIBUTE_NAMES[471] = ATTR_CONTEXTMENU; + ATTRIBUTE_NAMES[472] = ATTR_ENCTYPE; + ATTRIBUTE_NAMES[473] = ATTR_FILTER; + ATTRIBUTE_NAMES[474] = ATTR_FONT_WEIGHT; + ATTRIBUTE_NAMES[475] = ATTR_FONT_STYLE; + ATTRIBUTE_NAMES[476] = ATTR_FONT_FAMILY; + ATTRIBUTE_NAMES[477] = ATTR_FONT_SIZE_ADJUST; + ATTRIBUTE_NAMES[478] = ATTR_FONTSIZE; + ATTRIBUTE_NAMES[479] = ATTR_KEYTIMES; + ATTRIBUTE_NAMES[480] = ATTR_LIST; + ATTRIBUTE_NAMES[481] = ATTR_RT; + ATTRIBUTE_NAMES[482] = ATTR_ONSTART; + ATTRIBUTE_NAMES[483] = ATTR_PATTERNTRANSFORM; + ATTRIBUTE_NAMES[484] = ATTR_PATTERNUNITS; + ATTRIBUTE_NAMES[485] = ATTR_RESTART; + ATTRIBUTE_NAMES[486] = ATTR_SYSTEMLANGUAGE; + ATTRIBUTE_NAMES[487] = ATTR_TEXT_DECORATION; + ATTRIBUTE_NAMES[488] = ATTR_TEXTLENGTH; + ATTRIBUTE_NAMES[489] = ATTR_WRITING_MODE; + ATTRIBUTE_NAMES[490] = ATTR_ACCUMULATE; + ATTRIBUTE_NAMES[491] = ATTR_COLUMNLINES; + ATTRIBUTE_NAMES[492] = ATTR_COLUMNSPACING; + ATTRIBUTE_NAMES[493] = ATTR_GROUPALIGN; + ATTRIBUTE_NAMES[494] = ATTR_ONSUBMIT; + ATTRIBUTE_NAMES[495] = ATTR_REQUIRED; + ATTRIBUTE_NAMES[496] = ATTR_RESULT; + ATTRIBUTE_NAMES[497] = ATTR_VALUES; + ATTRIBUTE_NAMES[498] = ATTR_VALUE; + ATTRIBUTE_NAMES[499] = ATTR_VIEWTARGET; + ATTRIBUTE_NAMES[500] = ATTR_CX; } void nsHtml5AttributeName::releaseStatics() { @@ -2814,12 +2802,10 @@ void nsHtml5AttributeName::releaseStatics() { delete ATTR_LOADING; delete ATTR_READONLY; delete ATTR_RENDERING_INTENT; - delete ATTR_SHADOWROOTMODE; delete ATTR_SEED; delete ATTR_SRCDOC; delete ATTR_STDDEVIATION; delete ATTR_SANDBOX; - delete ATTR_SHADOWROOTDELEGATESFOCUS; delete ATTR_WORD_SPACING; delete ATTR_ACCENTUNDER; delete ATTR_ACCEPT_CHARSET; diff --git a/parser/html/nsHtml5AttributeName.h b/parser/html/nsHtml5AttributeName.h index 91e367ecb1a1..84091b9e3a09 100644 --- a/parser/html/nsHtml5AttributeName.h +++ b/parser/html/nsHtml5AttributeName.h @@ -281,12 +281,10 @@ class nsHtml5AttributeName { static nsHtml5AttributeName* ATTR_LOADING; static nsHtml5AttributeName* ATTR_READONLY; static nsHtml5AttributeName* ATTR_RENDERING_INTENT; - static nsHtml5AttributeName* ATTR_SHADOWROOTMODE; static nsHtml5AttributeName* ATTR_SEED; static nsHtml5AttributeName* ATTR_SRCDOC; static nsHtml5AttributeName* ATTR_STDDEVIATION; static nsHtml5AttributeName* ATTR_SANDBOX; - static nsHtml5AttributeName* ATTR_SHADOWROOTDELEGATESFOCUS; static nsHtml5AttributeName* ATTR_WORD_SPACING; static nsHtml5AttributeName* ATTR_ACCENTUNDER; static nsHtml5AttributeName* ATTR_ACCEPT_CHARSET; diff --git a/parser/html/nsHtml5Parser.cpp b/parser/html/nsHtml5Parser.cpp index 04097e56d931..d234ece64e69 100644 --- a/parser/html/nsHtml5Parser.cpp +++ b/parser/html/nsHtml5Parser.cpp @@ -678,8 +678,6 @@ void nsHtml5Parser::StartTokenizer(bool aScriptingEnabled) { mTreeBuilder->SetPreventScriptExecution(!aScriptingEnabled); mTreeBuilder->setScriptingEnabled(aScriptingEnabled); - mTreeBuilder->setAllowDeclarativeShadowRoots( - mExecutor->GetDocument()->AllowsDeclarativeShadowRoots()); mTokenizer->start(); } diff --git a/parser/html/nsHtml5StreamParser.cpp b/parser/html/nsHtml5StreamParser.cpp index a6d9a0c73915..d0334fba4cef 100644 --- a/parser/html/nsHtml5StreamParser.cpp +++ b/parser/html/nsHtml5StreamParser.cpp @@ -1125,8 +1125,6 @@ nsresult nsHtml5StreamParser::OnStartRequest(nsIRequest* aRequest) { mTreeBuilder->setScriptingEnabled(scriptingEnabled); mTreeBuilder->SetPreventScriptExecution( !((mMode == NORMAL) && scriptingEnabled)); - mTreeBuilder->setAllowDeclarativeShadowRoots( - mExecutor->GetDocument()->AllowsDeclarativeShadowRoots()); mTokenizer->start(); mExecutor->Start(); mExecutor->StartReadingFromStage(); diff --git a/parser/html/nsHtml5StringParser.cpp b/parser/html/nsHtml5StringParser.cpp index 5fe2b2e323cb..98f643abb44a 100644 --- a/parser/html/nsHtml5StringParser.cpp +++ b/parser/html/nsHtml5StringParser.cpp @@ -24,10 +24,12 @@ nsHtml5StringParser::nsHtml5StringParser() nsHtml5StringParser::~nsHtml5StringParser() {} -nsresult nsHtml5StringParser::ParseFragment( - const nsAString& aSourceBuffer, nsIContent* aTargetNode, - nsAtom* aContextLocalName, int32_t aContextNamespace, bool aQuirks, - bool aPreventScriptExecution, bool aAllowDeclarativeShadowRoots) { +nsresult nsHtml5StringParser::ParseFragment(const nsAString& aSourceBuffer, + nsIContent* aTargetNode, + nsAtom* aContextLocalName, + int32_t aContextNamespace, + bool aQuirks, + bool aPreventScriptExecution) { NS_ENSURE_TRUE(aSourceBuffer.Length() <= INT32_MAX, NS_ERROR_OUT_OF_MEMORY); Document* doc = aTargetNode->OwnerDoc(); @@ -50,7 +52,7 @@ nsresult nsHtml5StringParser::ParseFragment( mTreeBuilder->SetPreventScriptExecution(aPreventScriptExecution); - return Tokenize(aSourceBuffer, doc, true, aAllowDeclarativeShadowRoots); + return Tokenize(aSourceBuffer, doc, true); } nsresult nsHtml5StringParser::ParseDocument( @@ -65,14 +67,12 @@ nsresult nsHtml5StringParser::ParseDocument( mTreeBuilder->SetPreventScriptExecution(true); return Tokenize(aSourceBuffer, aTargetDoc, - aScriptingEnabledForNoscriptParsing, - aTargetDoc->AllowsDeclarativeShadowRoots()); + aScriptingEnabledForNoscriptParsing); } -nsresult nsHtml5StringParser::Tokenize(const nsAString& aSourceBuffer, - Document* aDocument, - bool aScriptingEnabledForNoscriptParsing, - bool aDeclarativeShadowRootsAllowed) { +nsresult nsHtml5StringParser::Tokenize( + const nsAString& aSourceBuffer, Document* aDocument, + bool aScriptingEnabledForNoscriptParsing) { nsIURI* uri = aDocument->GetDocumentURI(); mBuilder->Init(aDocument, uri, nullptr, nullptr); @@ -85,7 +85,6 @@ nsresult nsHtml5StringParser::Tokenize(const nsAString& aSourceBuffer, mTreeBuilder->setScriptingEnabled(aScriptingEnabledForNoscriptParsing); mTreeBuilder->setIsSrcdocDocument(aDocument->IsSrcdocDocument()); - mTreeBuilder->setAllowDeclarativeShadowRoots(aDeclarativeShadowRootsAllowed); mBuilder->Start(); mTokenizer->start(); if (!aSourceBuffer.IsEmpty()) { diff --git a/parser/html/nsHtml5StringParser.h b/parser/html/nsHtml5StringParser.h index 1d4140484137..098a913748a1 100644 --- a/parser/html/nsHtml5StringParser.h +++ b/parser/html/nsHtml5StringParser.h @@ -41,14 +41,11 @@ class nsHtml5StringParser : public nsParserBase { * @param aPreventScriptExecution true to prevent scripts from executing; * don't set to false when parsing into a target node that has been bound * to tree. - * @param aAllowDeclarativeShadowRoots allow the creation of declarative - * shadow roots. */ nsresult ParseFragment(const nsAString& aSourceBuffer, nsIContent* aTargetNode, nsAtom* aContextLocalName, int32_t aContextNamespace, bool aQuirks, - bool aPreventScriptExecution, - bool aAllowDeclarativeShadowRoots); + bool aPreventScriptExecution); /** * Parse an entire HTML document from a source string. @@ -64,8 +61,7 @@ class nsHtml5StringParser : public nsParserBase { nsresult Tokenize(const nsAString& aSourceBuffer, mozilla::dom::Document* aDocument, - bool aScriptingEnabledForNoscriptParsing, - bool aDeclarativeShadowRootsAllowed); + bool aScriptingEnabledForNoscriptParsing); /** * The tree operation executor diff --git a/parser/html/nsHtml5TreeBuilder.cpp b/parser/html/nsHtml5TreeBuilder.cpp index af299105011a..6551612fd93d 100644 --- a/parser/html/nsHtml5TreeBuilder.cpp +++ b/parser/html/nsHtml5TreeBuilder.cpp @@ -2093,23 +2093,6 @@ bool nsHtml5TreeBuilder::isSpecialParentInForeign(nsHtml5StackNode* stackNode) { (stackNode->getGroup() == MI_MO_MN_MS_MTEXT)); } -nsIContentHandle* nsHtml5TreeBuilder::getDeclarativeShadowRoot( - nsIContentHandle* currentNode, nsIContentHandle* templateNode, - nsHtml5HtmlAttributes* attributes) { - if (!isAllowDeclarativeShadowRoots()) { - return nullptr; - } - nsHtml5String shadowRootMode = - attributes->getValue(nsHtml5AttributeName::ATTR_SHADOWROOTMODE); - if (!shadowRootMode) { - return nullptr; - } - bool shadowRootDelegatesFocus = - attributes->contains(nsHtml5AttributeName::ATTR_SHADOWROOTDELEGATESFOCUS); - return getShadowRootFromHost(currentNode, templateNode, shadowRootMode, - shadowRootDelegatesFocus); -} - nsHtml5String nsHtml5TreeBuilder::extractCharsetFromContent( nsHtml5String attributeValue, nsHtml5TreeBuilder* tb) { int32_t charsetState = CHARSET_INITIAL; @@ -4235,18 +4218,9 @@ void nsHtml5TreeBuilder::appendToCurrentNodeAndPushElement( nsIContentHandle* elt = createElement(kNameSpaceID_XHTML, elementName->getName(), attributes, currentNode, htmlCreator(elementName->getHtmlCreator())); + appendElement(elt, currentNode); if (nsHtml5ElementName::ELT_TEMPLATE == elementName) { - nsIContentHandle* root = - getDeclarativeShadowRoot(currentNode, elt, attributes); - if (root) { - setDocumentFragmentForTemplate(elt, root); - elt = root; - } else { - appendElement(elt, currentNode); - elt = getDocumentFragmentForTemplate(elt); - } - } else { - appendElement(elt, currentNode); + elt = getDocumentFragmentForTemplate(elt); } nsHtml5StackNode* node = createStackNode(elementName, elt); push(node); @@ -4508,14 +4482,6 @@ void nsHtml5TreeBuilder::setIsSrcdocDocument(bool isSrcdocDocument) { this->setForceNoQuirks(isSrcdocDocument); } -bool nsHtml5TreeBuilder::isAllowDeclarativeShadowRoots() { - return allowDeclarativeShadowRoots; -} - -void nsHtml5TreeBuilder::setAllowDeclarativeShadowRoots(bool allow) { - allowDeclarativeShadowRoots = allow; -} - void nsHtml5TreeBuilder::flushCharacters() { if (charBufferLen > 0) { if ((mode == IN_TABLE || mode == IN_TABLE_BODY || mode == IN_ROW) && diff --git a/parser/html/nsHtml5TreeBuilder.h b/parser/html/nsHtml5TreeBuilder.h index d6c4828e7cf9..fab83f309581 100644 --- a/parser/html/nsHtml5TreeBuilder.h +++ b/parser/html/nsHtml5TreeBuilder.h @@ -314,7 +314,6 @@ class nsHtml5TreeBuilder : public nsAHtml5TreeBuilderState { private: bool quirks; bool forceNoQuirks; - bool allowDeclarativeShadowRoots; inline nsHtml5ContentCreatorFunction htmlCreator( mozilla::dom::HTMLContentCreatorFunction htmlCreator) { nsHtml5ContentCreatorFunction creator; @@ -354,9 +353,6 @@ class nsHtml5TreeBuilder : public nsAHtml5TreeBuilderState { bool isTemplateContents(); bool isTemplateModeStackEmpty(); bool isSpecialParentInForeign(nsHtml5StackNode* stackNode); - nsIContentHandle* getDeclarativeShadowRoot(nsIContentHandle* currentNode, - nsIContentHandle* templateNode, - nsHtml5HtmlAttributes* attributes); public: static nsHtml5String extractCharsetFromContent(nsHtml5String attributeValue, @@ -560,8 +556,6 @@ class nsHtml5TreeBuilder : public nsAHtml5TreeBuilderState { void setScriptingEnabled(bool scriptingEnabled); void setForceNoQuirks(bool forceNoQuirks); void setIsSrcdocDocument(bool isSrcdocDocument); - bool isAllowDeclarativeShadowRoots(); - void setAllowDeclarativeShadowRoots(bool allow); void flushCharacters(); private: diff --git a/parser/html/nsHtml5TreeBuilderCppSupplement.h b/parser/html/nsHtml5TreeBuilderCppSupplement.h index 2f591112b443..d84adcd8a0d7 100644 --- a/parser/html/nsHtml5TreeBuilderCppSupplement.h +++ b/parser/html/nsHtml5TreeBuilderCppSupplement.h @@ -7,12 +7,9 @@ #include "ErrorList.h" #include "nsError.h" #include "nsHtml5AttributeName.h" -#include "nsHtml5HtmlAttributes.h" #include "nsHtml5String.h" #include "nsNetUtil.h" #include "mozilla/dom/FetchPriority.h" -#include "mozilla/dom/ShadowRoot.h" -#include "mozilla/dom/ShadowRootBinding.h" #include "mozilla/CheckedInt.h" #include "mozilla/Likely.h" #include "mozilla/StaticPrefs_dom.h" @@ -41,7 +38,6 @@ nsHtml5TreeBuilder::nsHtml5TreeBuilder(nsHtml5OplessBuilder* aBuilder) charBufferLen(0), quirks(false), forceNoQuirks(false), - allowDeclarativeShadowRoots(false), mBuilder(aBuilder), mViewSource(nullptr), mOpSink(nullptr), @@ -1640,53 +1636,6 @@ nsIContentHandle* nsHtml5TreeBuilder::getDocumentFragmentForTemplate( return fragHandle; } -void nsHtml5TreeBuilder::setDocumentFragmentForTemplate( - nsIContentHandle* aTemplate, nsIContentHandle* aFragment) { - if (mBuilder) { - nsHtml5TreeOperation::SetDocumentFragmentForTemplate( - static_cast(aTemplate), - static_cast(aFragment)); - return; - } - - nsHtml5TreeOperation* treeOp = mOpQueue.AppendElement(mozilla::fallible); - if (MOZ_UNLIKELY(!treeOp)) { - MarkAsBrokenAndRequestSuspensionWithoutBuilder(NS_ERROR_OUT_OF_MEMORY); - return; - } - opSetDocumentFragmentForTemplate operation(aTemplate, aFragment); - treeOp->Init(mozilla::AsVariant(operation)); -} - -nsIContentHandle* nsHtml5TreeBuilder::getShadowRootFromHost( - nsIContentHandle* aHost, nsIContentHandle* aTemplateNode, - nsHtml5String aShadowRootMode, bool aShadowRootDelegatesFocus) { - mozilla::dom::ShadowRootMode mode; - if (aShadowRootMode.LowerCaseEqualsASCII("open")) { - mode = mozilla::dom::ShadowRootMode::Open; - } else if (aShadowRootMode.LowerCaseEqualsASCII("closed")) { - mode = mozilla::dom::ShadowRootMode::Closed; - } else { - return nullptr; - } - - if (mBuilder) { - return nsContentUtils::AttachDeclarativeShadowRoot( - static_cast(aHost), mode, aShadowRootDelegatesFocus); - } - - nsHtml5TreeOperation* treeOp = mOpQueue.AppendElement(mozilla::fallible); - if (MOZ_UNLIKELY(!treeOp)) { - MarkAsBrokenAndRequestSuspensionWithoutBuilder(NS_ERROR_OUT_OF_MEMORY); - return nullptr; - } - nsIContentHandle* fragHandle = AllocateContentHandle(); - opGetShadowRootFromHost operation(aHost, fragHandle, aTemplateNode, mode, - aShadowRootDelegatesFocus); - treeOp->Init(mozilla::AsVariant(operation)); - return fragHandle; -} - nsIContentHandle* nsHtml5TreeBuilder::getFormPointerForContext( nsIContentHandle* aContext) { MOZ_ASSERT(mBuilder, "Must have builder."); diff --git a/parser/html/nsHtml5TreeBuilderHSupplement.h b/parser/html/nsHtml5TreeBuilderHSupplement.h index 813654cb24bb..3fc1609e5abc 100644 --- a/parser/html/nsHtml5TreeBuilderHSupplement.h +++ b/parser/html/nsHtml5TreeBuilderHSupplement.h @@ -58,13 +58,6 @@ bool mActive; void documentMode(nsHtml5DocumentMode m); nsIContentHandle* getDocumentFragmentForTemplate(nsIContentHandle* aTemplate); -void setDocumentFragmentForTemplate(nsIContentHandle* aTemplate, - nsIContentHandle* aFragment); - -nsIContentHandle* getShadowRootFromHost(nsIContentHandle* aHost, - nsIContentHandle* aTemplateNode, - nsHtml5String aShadowRootMode, - bool aShadowRootDelegatesFocus); nsIContentHandle* getFormPointerForContext(nsIContentHandle* aContext); diff --git a/parser/html/nsHtml5TreeOperation.cpp b/parser/html/nsHtml5TreeOperation.cpp index b80b67e33d23..fb28166e4684 100644 --- a/parser/html/nsHtml5TreeOperation.cpp +++ b/parser/html/nsHtml5TreeOperation.cpp @@ -11,7 +11,6 @@ #include "mozilla/dom/Comment.h" #include "mozilla/dom/CustomElementRegistry.h" #include "mozilla/dom/DocGroup.h" -#include "mozilla/dom/DocumentFragment.h" #include "mozilla/dom/DocumentType.h" #include "mozilla/dom/Element.h" #include "mozilla/dom/LinkStyle.h" @@ -19,14 +18,12 @@ #include "mozilla/dom/HTMLImageElement.h" #include "mozilla/dom/HTMLTemplateElement.h" #include "mozilla/dom/MutationObservers.h" -#include "mozilla/dom/ShadowRoot.h" #include "mozilla/dom/Text.h" #include "nsAttrName.h" #include "nsContentCreatorFunctions.h" #include "nsContentUtils.h" #include "nsDocElementCreatedNotificationRunner.h" #include "nsEscape.h" -#include "nsGenericHTMLElement.h" #include "nsHtml5AutoPauseUpdate.h" #include "nsHtml5DocumentMode.h" #include "nsHtml5HtmlAttributes.h" @@ -138,10 +135,6 @@ nsHtml5TreeOperation::~nsHtml5TreeOperation() { void operator()(const opGetDocumentFragmentForTemplate& aOperation) {} - void operator()(const opSetDocumentFragmentForTemplate& aOperation) {} - - void operator()(const opGetShadowRootFromHost& aOperation) {} - void operator()(const opGetFosterParent& aOperation) {} void operator()(const opMarkAsBroken& aOperation) {} @@ -701,12 +694,6 @@ nsIContent* nsHtml5TreeOperation::GetDocumentFragmentForTemplate( return tempElem->Content(); } -void nsHtml5TreeOperation::SetDocumentFragmentForTemplate( - nsIContent* aNode, nsIContent* aDocumentFragment) { - auto* tempElem = static_cast(aNode); - tempElem->SetContent(static_cast(aDocumentFragment)); -} - nsIContent* nsHtml5TreeOperation::GetFosterParent(nsIContent* aTable, nsIContent* aStackParent) { nsIContent* tableParent = aTable->GetParent(); @@ -907,31 +894,6 @@ nsresult nsHtml5TreeOperation::Perform(nsHtml5TreeOpExecutor* aBuilder, return NS_OK; } - nsresult operator()(const opSetDocumentFragmentForTemplate& aOperation) { - SetDocumentFragmentForTemplate(*aOperation.mTemplate, - *aOperation.mFragment); - return NS_OK; - } - - nsresult operator()(const opGetShadowRootFromHost& aOperation) { - nsIContent* root = nsContentUtils::AttachDeclarativeShadowRoot( - *aOperation.mHost, aOperation.mShadowRootMode, - aOperation.mShadowRootDelegatesFocus); - if (root) { - *aOperation.mFragHandle = root; - return NS_OK; - } - - // We failed to attach a new shadow root, so instead attach a template - // element and return its content. - nsHtml5TreeOperation::Append(*aOperation.mTemplateNode, *aOperation.mHost, - mBuilder); - *aOperation.mFragHandle = - static_cast(*aOperation.mTemplateNode) - ->Content(); - return NS_OK; - } - nsresult operator()(const opGetFosterParent& aOperation) { nsIContent* table = *(aOperation.mTable); nsIContent* stackParent = *(aOperation.mStackParent); diff --git a/parser/html/nsHtml5TreeOperation.h b/parser/html/nsHtml5TreeOperation.h index fa6cb0245200..6fa2165f0800 100644 --- a/parser/html/nsHtml5TreeOperation.h +++ b/parser/html/nsHtml5TreeOperation.h @@ -8,7 +8,6 @@ #include "nsHtml5DocumentMode.h" #include "nsHtml5HtmlAttributes.h" #include "mozilla/dom/FromParser.h" -#include "mozilla/dom/ShadowRootBinding.h" #include "mozilla/NotNull.h" #include "mozilla/Variant.h" #include "nsCharsetSource.h" @@ -265,37 +264,6 @@ struct opGetDocumentFragmentForTemplate { } }; -struct opSetDocumentFragmentForTemplate { - nsIContent** mTemplate; - nsIContent** mFragment; - - explicit opSetDocumentFragmentForTemplate(nsIContentHandle* aTemplate, - nsIContentHandle* aFragment) { - mTemplate = static_cast(aTemplate); - mFragment = static_cast(aFragment); - } -}; - -struct opGetShadowRootFromHost { - nsIContent** mHost; - nsIContent** mFragHandle; - nsIContent** mTemplateNode; - mozilla::dom::ShadowRootMode mShadowRootMode; - bool mShadowRootDelegatesFocus; - - explicit opGetShadowRootFromHost(nsIContentHandle* aHost, - nsIContentHandle* aFragHandle, - nsIContentHandle* aTemplateNode, - mozilla::dom::ShadowRootMode aShadowRootMode, - bool aShadowRootDelegatesFocus) { - mHost = static_cast(aHost); - mFragHandle = static_cast(aFragHandle); - mTemplateNode = static_cast(aTemplateNode); - mShadowRootMode = aShadowRootMode; - mShadowRootDelegatesFocus = aShadowRootDelegatesFocus; - } -}; - struct opGetFosterParent { nsIContent** mTable; nsIContent** mStackParent; @@ -524,8 +492,7 @@ typedef mozilla::Variant< opCreateHTMLElement, opCreateSVGElement, opCreateMathMLElement, opSetFormElement, opAppendText, opFosterParentText, opAppendComment, opAppendCommentToDocument, opAppendDoctypeToDocument, - opGetDocumentFragmentForTemplate, opSetDocumentFragmentForTemplate, - opGetShadowRootFromHost, opGetFosterParent, + opGetDocumentFragmentForTemplate, opGetFosterParent, // Gecko-specific on-pop ops opMarkAsBroken, opRunScriptThatMayDocumentWriteOrBlock, opRunScriptThatCannotDocumentWriteOrBlock, opPreventScriptExecution, @@ -620,8 +587,6 @@ class nsHtml5TreeOperation final { nsHtml5DocumentBuilder* aBuilder); static nsIContent* GetDocumentFragmentForTemplate(nsIContent* aNode); - static void SetDocumentFragmentForTemplate(nsIContent* aNode, - nsIContent* aDocumentFragment); static nsIContent* GetFosterParent(nsIContent* aTable, nsIContent* aStackParent); diff --git a/testing/web-platform/meta/css/selectors/invalidation/part-pseudo.html.ini b/testing/web-platform/meta/css/selectors/invalidation/part-pseudo.html.ini new file mode 100644 index 000000000000..10f1aa0b9185 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/part-pseudo.html.ini @@ -0,0 +1,2 @@ +[part-pseudo.html] + expected: FAIL diff --git a/testing/web-platform/meta/html/dom/idlharness.https.html.ini b/testing/web-platform/meta/html/dom/idlharness.https.html.ini index bd4c8453c234..c745554dbd13 100644 --- a/testing/web-platform/meta/html/dom/idlharness.https.html.ini +++ b/testing/web-platform/meta/html/dom/idlharness.https.html.ini @@ -579,6 +579,12 @@ prefs: [dom.security.featurePolicy.experimental.enabled:true, dom.security.featu [PopStateEvent interface: new PopStateEvent("popstate", { data: {} }) must inherit property "hasUAVisualTransition" with the proper type] expected: FAIL + [Element interface: document.createElement("noscript") must inherit property "setHTMLUnsafe(DOMString)" with the proper type] + expected: FAIL + + [Element interface: calling setHTMLUnsafe(DOMString) on document.createElement("noscript") with too few arguments must throw TypeError] + expected: FAIL + [CloseWatcher interface: existence and properties of interface object] expected: FAIL @@ -612,6 +618,12 @@ prefs: [dom.security.featurePolicy.experimental.enabled:true, dom.security.featu [CloseWatcher interface: attribute onclose] expected: FAIL + [ShadowRoot interface: operation setHTMLUnsafe(DOMString)] + expected: FAIL + + [Element interface: operation setHTMLUnsafe(DOMString)] + expected: FAIL + [idlharness.https.html?include=(Document|Window)] [Window interface: window must inherit property "originAgentCluster" with the proper type] @@ -683,9 +695,18 @@ prefs: [dom.security.featurePolicy.experimental.enabled:true, dom.security.featu [Window interface: attribute clientInformation] expected: FAIL + [Document interface: operation parseHTMLUnsafe(DOMString)] + expected: FAIL + [Document interface: calling parseHTMLUnsafe(DOMString) on iframe.contentDocument with too few arguments must throw TypeError] expected: FAIL + [Document interface: calling parseHTMLUnsafe(DOMString) on new Document() with too few arguments must throw TypeError] + expected: FAIL + + [Document interface: calling parseHTMLUnsafe(DOMString) on documentWithHandlers with too few arguments must throw TypeError] + expected: FAIL + [idlharness.https.html?include=HTML.*] [HTMLVideoElement interface: attribute playsInline] @@ -792,3 +813,15 @@ prefs: [dom.security.featurePolicy.experimental.enabled:true, dom.security.featu [HTMLDetailsElement interface: document.createElement("details") must inherit property "name" with the proper type] expected: FAIL + + [HTMLTemplateElement interface: attribute shadowRootMode] + expected: FAIL + + [HTMLTemplateElement interface: attribute shadowRootDelegatesFocus] + expected: FAIL + + [HTMLTemplateElement interface: document.createElement("template") must inherit property "shadowRootMode" with the proper type] + expected: FAIL + + [HTMLTemplateElement interface: document.createElement("template") must inherit property "shadowRootDelegatesFocus" with the proper type] + expected: FAIL diff --git a/testing/web-platform/meta/html/webappapis/dynamic-markup-insertion/html-unsafe-methods/Element-setHTMLUnsafe-04.html.ini b/testing/web-platform/meta/html/webappapis/dynamic-markup-insertion/html-unsafe-methods/Element-setHTMLUnsafe-04.html.ini index 3ad66a57166d..21cd15a9db1d 100644 --- a/testing/web-platform/meta/html/webappapis/dynamic-markup-insertion/html-unsafe-methods/Element-setHTMLUnsafe-04.html.ini +++ b/testing/web-platform/meta/html/webappapis/dynamic-markup-insertion/html-unsafe-methods/Element-setHTMLUnsafe-04.html.ini @@ -1,2 +1,3 @@ -[Element-setHTMLUnsafe-04.tentative.html] - prefs: [dom.webcomponents.shadowdom.declarative.enabled:true] +[Element-setHTMLUnsafe-04.html] + [setHTMLUnsafe should leave the removed children alone.] + expected: FAIL diff --git a/testing/web-platform/meta/html/webappapis/dynamic-markup-insertion/html-unsafe-methods/setHTMLUnsafe-xml.html.ini b/testing/web-platform/meta/html/webappapis/dynamic-markup-insertion/html-unsafe-methods/setHTMLUnsafe-xml.html.ini index 9c11f20cf555..8a4e2ea78e51 100644 --- a/testing/web-platform/meta/html/webappapis/dynamic-markup-insertion/html-unsafe-methods/setHTMLUnsafe-xml.html.ini +++ b/testing/web-platform/meta/html/webappapis/dynamic-markup-insertion/html-unsafe-methods/setHTMLUnsafe-xml.html.ini @@ -1,3 +1,6 @@ [setHTMLUnsafe-xml.html] + [setHTMLUnsafe should still parse HTML even in XML documents.] + expected: FAIL + [setHTMLUnsafe should still parse HTML even in SVG documents.] expected: FAIL diff --git a/testing/web-platform/meta/html/webappapis/dynamic-markup-insertion/html-unsafe-methods/setHTMLUnsafe.html.ini b/testing/web-platform/meta/html/webappapis/dynamic-markup-insertion/html-unsafe-methods/setHTMLUnsafe.html.ini index b7376a369162..0856c7132c2a 100644 --- a/testing/web-platform/meta/html/webappapis/dynamic-markup-insertion/html-unsafe-methods/setHTMLUnsafe.html.ini +++ b/testing/web-platform/meta/html/webappapis/dynamic-markup-insertion/html-unsafe-methods/setHTMLUnsafe.html.ini @@ -1,2 +1,15 @@ -[setHTMLUnsafe.tentative.html] - prefs: [dom.webcomponents.shadowdom.declarative.enabled:true] +[setHTMLUnsafe.html] + [Element: setHTMLUnsafe with no shadowdom.] + expected: FAIL + + [Element: setHTMLUnsafe with shadowdom.] + expected: FAIL + + [ShadowRoot: setHTMLUnsafe with no shadowdom.] + expected: FAIL + + [ShadowRoot: setHTMLUnsafe with shadowdom.] + expected: FAIL + + [template.setHTMLUnsafe() should modify template content fragment rather than actual children.] + expected: FAIL diff --git a/testing/web-platform/meta/shadow-dom/declarative/__dir__.ini b/testing/web-platform/meta/shadow-dom/declarative/__dir__.ini deleted file mode 100644 index 02be47dbffdf..000000000000 --- a/testing/web-platform/meta/shadow-dom/declarative/__dir__.ini +++ /dev/null @@ -1 +0,0 @@ -prefs: [dom.webcomponents.shadowdom.declarative.enabled:true] diff --git a/testing/web-platform/meta/shadow-dom/declarative/declarative-shadow-dom-attachment.html.ini b/testing/web-platform/meta/shadow-dom/declarative/declarative-shadow-dom-attachment.html.ini new file mode 100644 index 000000000000..4a35ff289d71 --- /dev/null +++ b/testing/web-platform/meta/shadow-dom/declarative/declarative-shadow-dom-attachment.html.ini @@ -0,0 +1,1944 @@ +[declarative-shadow-dom-attachment.html] + [Declarative Shadow DOM as a child of

, with mode=open, delegatesFocus=false. Should be safelisted.] + expected: FAIL + + [Declarative Shadow DOM as a child of