Bug 1407937 - Move mDefinition from CustomElementReacion to CustomElementUpgradeReaction;

Tag UXP Issue #1344
This commit is contained in:
Gaming4JC 2020-01-05 18:47:29 -05:00 committed by Roy Tam
commit eb9d4bb8df
2 changed files with 7 additions and 19 deletions

View file

@ -442,8 +442,7 @@ CustomElementRegistry::EnqueueLifecycleCallback(nsIDocument::ElementCallbackType
CustomElementReactionsStack* reactionsStack =
docGroup->CustomElementReactionsStack();
reactionsStack->EnqueueCallbackReaction(aCustomElement, definition,
Move(callback));
reactionsStack->EnqueueCallbackReaction(aCustomElement, Move(callback));
}
void
@ -1025,11 +1024,9 @@ CustomElementReactionsStack::EnqueueUpgradeReaction(Element* aElement,
void
CustomElementReactionsStack::EnqueueCallbackReaction(Element* aElement,
CustomElementDefinition* aDefinition,
UniquePtr<CustomElementCallback> aCustomElementCallback)
{
Enqueue(aElement, new CustomElementCallbackReaction(aDefinition,
Move(aCustomElementCallback)));
Enqueue(aElement, new CustomElementCallbackReaction(Move(aCustomElementCallback)));
}
void

View file

@ -212,40 +212,32 @@ private:
class CustomElementReaction
{
public:
explicit CustomElementReaction(CustomElementDefinition* aDefinition)
: mDefinition(aDefinition)
{
}
virtual ~CustomElementReaction() = default;
virtual void Invoke(Element* aElement, ErrorResult& aRv) = 0;
virtual void Traverse(nsCycleCollectionTraversalCallback& aCb) const
{
}
protected:
CustomElementDefinition* mDefinition;
};
class CustomElementUpgradeReaction final : public CustomElementReaction
{
public:
explicit CustomElementUpgradeReaction(CustomElementDefinition* aDefinition)
: CustomElementReaction(aDefinition)
: mDefinition(aDefinition)
{
}
private:
virtual void Invoke(Element* aElement, ErrorResult& aRv) override;
CustomElementDefinition* mDefinition;
};
class CustomElementCallbackReaction final : public CustomElementReaction
{
public:
CustomElementCallbackReaction(CustomElementDefinition* aDefinition,
UniquePtr<CustomElementCallback> aCustomElementCallback)
: CustomElementReaction(aDefinition)
, mCustomElementCallback(Move(aCustomElementCallback))
explicit CustomElementCallbackReaction(UniquePtr<CustomElementCallback> aCustomElementCallback)
: mCustomElementCallback(Move(aCustomElementCallback))
{
}
@ -289,7 +281,6 @@ public:
* https://html.spec.whatwg.org/multipage/scripting.html#enqueue-a-custom-element-callback-reaction
*/
void EnqueueCallbackReaction(Element* aElement,
CustomElementDefinition* aDefinition,
UniquePtr<CustomElementCallback> aCustomElementCallback);
// [CEReactions] Before executing the algorithm's steps