summaryrefslogtreecommitdiffstats
path: root/devtools/client/inspector/extensions/actions
diff options
context:
space:
mode:
Diffstat (limited to 'devtools/client/inspector/extensions/actions')
-rw-r--r--devtools/client/inspector/extensions/actions/index.js24
-rw-r--r--devtools/client/inspector/extensions/actions/moz.build10
-rw-r--r--devtools/client/inspector/extensions/actions/sidebar.js58
3 files changed, 92 insertions, 0 deletions
diff --git a/devtools/client/inspector/extensions/actions/index.js b/devtools/client/inspector/extensions/actions/index.js
new file mode 100644
index 0000000000..384dfb0da7
--- /dev/null
+++ b/devtools/client/inspector/extensions/actions/index.js
@@ -0,0 +1,24 @@
+/* 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";
+
+const { createEnum } = require("resource://devtools/client/shared/enum.js");
+
+createEnum(
+ [
+ // Update the extension sidebar with an object TreeView.
+ "EXTENSION_SIDEBAR_OBJECT_TREEVIEW_UPDATE",
+
+ // Update the extension sidebar with an expression result.
+ "EXTENSION_SIDEBAR_EXPRESSION_RESULT_VIEW_UPDATE",
+
+ // Switch the extension sidebar into an extension page container.
+ "EXTENSION_SIDEBAR_PAGE_UPDATE",
+
+ // Remove an extension sidebar from the inspector store.
+ "EXTENSION_SIDEBAR_REMOVE",
+ ],
+ module.exports
+);
diff --git a/devtools/client/inspector/extensions/actions/moz.build b/devtools/client/inspector/extensions/actions/moz.build
new file mode 100644
index 0000000000..d101bc2fea
--- /dev/null
+++ b/devtools/client/inspector/extensions/actions/moz.build
@@ -0,0 +1,10 @@
+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
+# vim: set filetype=python:
+# 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/.
+
+DevToolsModules(
+ "index.js",
+ "sidebar.js",
+)
diff --git a/devtools/client/inspector/extensions/actions/sidebar.js b/devtools/client/inspector/extensions/actions/sidebar.js
new file mode 100644
index 0000000000..34c7276c27
--- /dev/null
+++ b/devtools/client/inspector/extensions/actions/sidebar.js
@@ -0,0 +1,58 @@
+/* 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";
+
+const {
+ EXTENSION_SIDEBAR_OBJECT_TREEVIEW_UPDATE,
+ EXTENSION_SIDEBAR_EXPRESSION_RESULT_VIEW_UPDATE,
+ EXTENSION_SIDEBAR_PAGE_UPDATE,
+ EXTENSION_SIDEBAR_REMOVE,
+} = require("resource://devtools/client/inspector/extensions/actions/index.js");
+
+module.exports = {
+ /**
+ * Update the sidebar with an object treeview.
+ */
+ updateObjectTreeView(sidebarId, object) {
+ return {
+ type: EXTENSION_SIDEBAR_OBJECT_TREEVIEW_UPDATE,
+ sidebarId,
+ object,
+ };
+ },
+
+ /**
+ * Update the sidebar with an expression result.
+ */
+ updateExpressionResultView(sidebarId, expressionResult, rootTitle) {
+ return {
+ type: EXTENSION_SIDEBAR_EXPRESSION_RESULT_VIEW_UPDATE,
+ sidebarId,
+ expressionResult,
+ rootTitle,
+ };
+ },
+
+ /**
+ * Switch the sidebar into the extension page mode.
+ */
+ updateExtensionPage(sidebarId, iframeURL) {
+ return {
+ type: EXTENSION_SIDEBAR_PAGE_UPDATE,
+ sidebarId,
+ iframeURL,
+ };
+ },
+
+ /**
+ * Remove the extension sidebar from the inspector store.
+ */
+ removeExtensionSidebar(sidebarId) {
+ return {
+ type: EXTENSION_SIDEBAR_REMOVE,
+ sidebarId,
+ };
+ },
+};