summaryrefslogtreecommitdiffstats
path: root/browser/actors/BrowserProcessChild.sys.mjs
diff options
context:
space:
mode:
Diffstat (limited to 'browser/actors/BrowserProcessChild.sys.mjs')
-rw-r--r--browser/actors/BrowserProcessChild.sys.mjs36
1 files changed, 36 insertions, 0 deletions
diff --git a/browser/actors/BrowserProcessChild.sys.mjs b/browser/actors/BrowserProcessChild.sys.mjs
new file mode 100644
index 0000000000..c16b0c6e92
--- /dev/null
+++ b/browser/actors/BrowserProcessChild.sys.mjs
@@ -0,0 +1,36 @@
+/* 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/. */
+
+const lazy = {};
+
+ChromeUtils.defineESModuleGetters(lazy, {
+ AboutHomeStartupCacheChild: "resource:///modules/AboutNewTabService.sys.mjs",
+ WebRTCChild: "resource:///actors/WebRTCChild.sys.mjs",
+});
+
+export class BrowserProcessChild extends JSProcessActorChild {
+ receiveMessage(message) {
+ switch (message.name) {
+ case "AboutHomeStartupCache:InputStreams":
+ let { pageInputStream, scriptInputStream } = message.data;
+ lazy.AboutHomeStartupCacheChild.init(
+ pageInputStream,
+ scriptInputStream
+ );
+ break;
+ }
+ }
+
+ observe(subject, topic, data) {
+ switch (topic) {
+ case "getUserMedia:request":
+ case "recording-device-stopped":
+ case "PeerConnection:request":
+ case "recording-device-events":
+ case "recording-window-ended":
+ lazy.WebRTCChild.observe(subject, topic, data);
+ break;
+ }
+ }
+}