summaryrefslogtreecommitdiffstats
path: root/remote/webdriver-bidi/modules/windowglobal-in-root/log.sys.mjs
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
commit26a029d407be480d791972afb5975cf62c9360a6 (patch)
treef435a8308119effd964b339f76abb83a57c29483 /remote/webdriver-bidi/modules/windowglobal-in-root/log.sys.mjs
parentInitial commit. (diff)
downloadfirefox-26a029d407be480d791972afb5975cf62c9360a6.tar.xz
firefox-26a029d407be480d791972afb5975cf62c9360a6.zip
Adding upstream version 124.0.1.upstream/124.0.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'remote/webdriver-bidi/modules/windowglobal-in-root/log.sys.mjs')
-rw-r--r--remote/webdriver-bidi/modules/windowglobal-in-root/log.sys.mjs37
1 files changed, 37 insertions, 0 deletions
diff --git a/remote/webdriver-bidi/modules/windowglobal-in-root/log.sys.mjs b/remote/webdriver-bidi/modules/windowglobal-in-root/log.sys.mjs
new file mode 100644
index 0000000000..4cfbc61e63
--- /dev/null
+++ b/remote/webdriver-bidi/modules/windowglobal-in-root/log.sys.mjs
@@ -0,0 +1,37 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+import { Module } from "chrome://remote/content/shared/messagehandler/Module.sys.mjs";
+
+const lazy = {};
+
+ChromeUtils.defineESModuleGetters(lazy, {
+ processExtraData:
+ "chrome://remote/content/webdriver-bidi/modules/Intercept.sys.mjs",
+ TabManager: "chrome://remote/content/shared/TabManager.sys.mjs",
+});
+
+class LogModule extends Module {
+ destroy() {}
+
+ interceptEvent(name, payload) {
+ if (name == "log.entryAdded") {
+ const browsingContext = payload.source.context;
+ if (!lazy.TabManager.isValidCanonicalBrowsingContext(browsingContext)) {
+ // Discard events for invalid browsing contexts.
+ return null;
+ }
+
+ // Resolve browsing context to a Navigable id.
+ payload.source.context =
+ lazy.TabManager.getIdForBrowsingContext(browsingContext);
+
+ payload = lazy.processExtraData(this.messageHandler.sessionId, payload);
+ }
+
+ return payload;
+ }
+}
+
+export const log = LogModule;