summaryrefslogtreecommitdiffstats
path: root/browser/components/extensions/child/ext-tabs.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/components/extensions/child/ext-tabs.js')
-rw-r--r--browser/components/extensions/child/ext-tabs.js22
1 files changed, 22 insertions, 0 deletions
diff --git a/browser/components/extensions/child/ext-tabs.js b/browser/components/extensions/child/ext-tabs.js
new file mode 100644
index 0000000000..ae3ef1cb75
--- /dev/null
+++ b/browser/components/extensions/child/ext-tabs.js
@@ -0,0 +1,22 @@
+/* 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/. */
+"use strict";
+
+this.tabs = class extends ExtensionAPI {
+ getAPI(context) {
+ return {
+ tabs: {
+ connect(tabId, options) {
+ let { frameId = null, name = "" } = options || {};
+ return context.messenger.connect({ name, tabId, frameId });
+ },
+
+ sendMessage(tabId, message, options, callback) {
+ let arg = { tabId, frameId: options?.frameId, message, callback };
+ return context.messenger.sendRuntimeMessage(arg);
+ },
+ },
+ };
+ }
+};