summaryrefslogtreecommitdiffstats
path: root/addon-sdk/source/examples/actor-repl/index.js
blob: b99aaf8a217850898f1944b5dd0d7f618aa7b2e4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
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 }
});