summaryrefslogtreecommitdiffstats
path: root/addon-sdk/source/examples/actor-repl/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'addon-sdk/source/examples/actor-repl/index.js')
-rw-r--r--addon-sdk/source/examples/actor-repl/index.js37
1 files changed, 37 insertions, 0 deletions
diff --git a/addon-sdk/source/examples/actor-repl/index.js b/addon-sdk/source/examples/actor-repl/index.js
new file mode 100644
index 000000000..b99aaf8a2
--- /dev/null
+++ b/addon-sdk/source/examples/actor-repl/index.js
@@ -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/. */
+"use strict";
+
+const { Panel } = require("dev/panel");
+const { Tool } = require("dev/toolbox");
+const { Class } = require("sdk/core/heritage");
+
+
+const REPLPanel = Class({
+ extends: Panel,
+ label: "Actor REPL",
+ tooltip: "Firefox debugging protocol REPL",
+ icon: "./robot.png",
+ url: "./index.html",
+ setup: function({debuggee}) {
+ this.debuggee = debuggee;
+ },
+ dispose: function() {
+ this.debuggee = null;
+ },
+ onReady: function() {
+ console.log("repl panel document is interactive");
+ this.debuggee.start();
+ this.postMessage("RDP", [this.debuggee]);
+ },
+ onLoad: function() {
+ console.log("repl panel document is fully loaded");
+ }
+});
+exports.REPLPanel = REPLPanel;
+
+
+const replTool = new Tool({
+ panels: { repl: REPLPanel }
+});