summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGaming4JC <g4jc@hyperbola.info>2020-01-04 10:32:21 -0500
committerGaming4JC <g4jc@hyperbola.info>2020-01-26 15:50:14 -0500
commite0557470385b6f7c1ab8e277b2b72a5146856fe6 (patch)
treee75f989b98ba708aba0d6011b4cb9d93bd0d0004
parentdf23f78ad16b40c244f518dba28a8555d61bdd0c (diff)
downloadUXP-e0557470385b6f7c1ab8e277b2b72a5146856fe6.tar
UXP-e0557470385b6f7c1ab8e277b2b72a5146856fe6.tar.gz
UXP-e0557470385b6f7c1ab8e277b2b72a5146856fe6.tar.lz
UXP-e0557470385b6f7c1ab8e277b2b72a5146856fe6.tar.xz
UXP-e0557470385b6f7c1ab8e277b2b72a5146856fe6.zip
Bug 1309147 - Part 4: Add CEReactions for CustomElementRegistry.
Tag UXP Issue #1344
-rw-r--r--dom/base/CustomElementRegistry.cpp9
-rw-r--r--dom/base/nsDocument.cpp1
-rw-r--r--dom/webidl/CustomElementRegistry.webidl2
3 files changed, 2 insertions, 10 deletions
diff --git a/dom/base/CustomElementRegistry.cpp b/dom/base/CustomElementRegistry.cpp
index d8ca7ade2..b50a1345e 100644
--- a/dom/base/CustomElementRegistry.cpp
+++ b/dom/base/CustomElementRegistry.cpp
@@ -547,15 +547,6 @@ CustomElementRegistry::Define(const nsAString& aName,
const ElementDefinitionOptions& aOptions,
ErrorResult& aRv)
{
- // We do this for [CEReaction] temporarily and it will be removed
- // after webidl supports [CEReaction] annotation in bug 1309147.
- DocGroup* docGroup = mWindow->GetDocGroup();
- if (!docGroup) {
- aRv.Throw(NS_ERROR_UNEXPECTED);
- return;
- }
-
- AutoCEReaction ceReaction(docGroup->CustomElementReactionsStack());
aRv.MightThrowJSException();
AutoJSAPI jsapi;
diff --git a/dom/base/nsDocument.cpp b/dom/base/nsDocument.cpp
index 3faa39ab3..dc12d8fb1 100644
--- a/dom/base/nsDocument.cpp
+++ b/dom/base/nsDocument.cpp
@@ -5770,6 +5770,7 @@ nsDocument::RegisterElement(JSContext* aCx, const nsAString& aType,
return;
}
+ AutoCEReaction ceReaction(this->GetDocGroup()->CustomElementReactionsStack());
// Unconditionally convert TYPE to lowercase.
nsAutoString lcType;
nsContentUtils::ASCIIToLower(aType, lcType);
diff --git a/dom/webidl/CustomElementRegistry.webidl b/dom/webidl/CustomElementRegistry.webidl
index dff612174..788b6a4ed 100644
--- a/dom/webidl/CustomElementRegistry.webidl
+++ b/dom/webidl/CustomElementRegistry.webidl
@@ -5,7 +5,7 @@
// https://html.spec.whatwg.org/#dom-window-customelements
[Func="CustomElementRegistry::IsCustomElementEnabled"]
interface CustomElementRegistry {
- [Throws]
+ [CEReactions, Throws]
void define(DOMString name, Function functionConstructor,
optional ElementDefinitionOptions options);
any get(DOMString name);