commit 10fea5acc2b35d0a7b82c54f3d48c1420c21f5ce
parent e0fbb9ac145e37754510f98494572a972b43b23e
Author: Nicolas Chevobbe <nchevobbe@mozilla.com>
Date: Tue, 16 Dec 2025 08:02:02 +0000
Bug 2005233 - Expose CSSPositionTryDescriptors in DevTools sandbox. r=devtools-reviewers,ochameau
This will be used to compute the list of supported CSS properties for @position-try rules.
Differential Revision: https://phabricator.services.mozilla.com/D275933
Diffstat:
3 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/devtools/shared/loader/base-loader.sys.mjs b/devtools/shared/loader/base-loader.sys.mjs
@@ -125,6 +125,7 @@ function Sandbox(options) {
"crypto",
"ChromeUtils",
"CSS",
+ "CSSPositionTryDescriptors",
"CSSRule",
"CustomStateSet",
"DOMParser",
diff --git a/js/xpconnect/src/Sandbox.cpp b/js/xpconnect/src/Sandbox.cpp
@@ -43,6 +43,7 @@
#include "mozilla/dom/BlobBinding.h"
#include "mozilla/dom/cache/CacheStorage.h"
#include "mozilla/dom/CSSBinding.h"
+#include "mozilla/dom/CSSPositionTryDescriptorsBinding.h"
#include "mozilla/dom/CSSRuleBinding.h"
#include "mozilla/dom/DirectoryBinding.h"
#include "mozilla/dom/DocumentBinding.h"
@@ -921,6 +922,9 @@ bool xpc::GlobalProperties::Parse(JSContext* cx, JS::HandleObject obj) {
ChromeUtils = true;
} else if (JS_LinearStringEqualsLiteral(nameStr, "CSS")) {
CSS = true;
+ } else if (JS_LinearStringEqualsLiteral(nameStr,
+ "CSSPositionTryDescriptors")) {
+ CSSPositionTryDescriptors = true;
} else if (JS_LinearStringEqualsLiteral(nameStr, "CSSRule")) {
CSSRule = true;
} else if (JS_LinearStringEqualsLiteral(nameStr, "CustomStateSet")) {
@@ -1052,6 +1056,7 @@ bool xpc::GlobalProperties::Define(JSContext* cx, JS::HandleObject obj) {
DEFINE_WEBIDL_INTERFACE_OR_NAMESPACE(ChromeUtils)
DEFINE_WEBIDL_INTERFACE_OR_NAMESPACE(Blob)
DEFINE_WEBIDL_INTERFACE_OR_NAMESPACE(CSS)
+ DEFINE_WEBIDL_INTERFACE_OR_NAMESPACE(CSSPositionTryDescriptors)
DEFINE_WEBIDL_INTERFACE_OR_NAMESPACE(CSSRule)
DEFINE_WEBIDL_INTERFACE_OR_NAMESPACE(CustomStateSet)
DEFINE_WEBIDL_INTERFACE_OR_NAMESPACE(Directory)
diff --git a/js/xpconnect/src/xpcprivate.h b/js/xpconnect/src/xpcprivate.h
@@ -2182,6 +2182,7 @@ struct GlobalProperties {
bool Blob : 1;
bool ChromeUtils : 1;
bool CSS : 1;
+ bool CSSPositionTryDescriptors : 1;
bool CSSRule : 1;
bool CustomStateSet : 1;
bool Directory : 1;