From 93313b0ce3aada87f76948e6c65d455ee4998acf Mon Sep 17 00:00:00 2001 From: Gaming4JC Date: Sun, 19 Jan 2020 23:33:52 -0500 Subject: Bug 1406325 - Part 5: Implement try to upgrade. Tag UXP Issue #1344 --- dom/base/CustomElementRegistry.h | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) (limited to 'dom/base/CustomElementRegistry.h') diff --git a/dom/base/CustomElementRegistry.h b/dom/base/CustomElementRegistry.h index 81d1c003c..eb4285fd2 100644 --- a/dom/base/CustomElementRegistry.h +++ b/dom/base/CustomElementRegistry.h @@ -383,15 +383,6 @@ public: */ static void Upgrade(Element* aElement, CustomElementDefinition* aDefinition, ErrorResult& aRv); -private: - ~CustomElementRegistry(); - - static UniquePtr CreateCustomElementCallback( - nsIDocument::ElementCallbackType aType, Element* aCustomElement, - LifecycleCallbackArgs* aArgs, - LifecycleAdoptedCallbackArgs* aAdoptedCallbackArgs, - CustomElementDefinition* aDefinition); - /** * Registers an unresolved custom element that is a candidate for * upgrade when the definition is registered via registerElement. @@ -403,6 +394,21 @@ private: void RegisterUnresolvedElement(Element* aElement, nsIAtom* aTypeName = nullptr); + /** + * Unregister an unresolved custom element that is a candidate for + * upgrade when a custom element is removed from tree. + */ + void UnregisterUnresolvedElement(Element* aElement, + nsIAtom* aTypeName = nullptr); +private: + ~CustomElementRegistry(); + + static UniquePtr CreateCustomElementCallback( + nsIDocument::ElementCallbackType aType, Element* aCustomElement, + LifecycleCallbackArgs* aArgs, + LifecycleAdoptedCallbackArgs* aAdoptedCallbackArgs, + CustomElementDefinition* aDefinition); + void UpgradeCandidates(nsIAtom* aKey, CustomElementDefinition* aDefinition, ErrorResult& aRv); -- cgit v1.2.3