tenfourfox/devtools/client/debugger/views/workers-view.js
Cameron Kaiser c9b2922b70 hello FPR
2017-04-19 00:56:45 -07:00

51 lines
1.5 KiB
JavaScript

/* 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/. */
/* import-globals-from ../debugger-controller.js */
/* import-globals-from ../debugger-view.js */
/* import-globals-from ../utils.js */
/* globals document */
"use strict";
function WorkersView() {
this._onWorkerSelect = this._onWorkerSelect.bind(this);
}
WorkersView.prototype = Heritage.extend(WidgetMethods, {
initialize: function () {
if (!Prefs.workersEnabled) {
return;
}
document.getElementById("workers-pane").removeAttribute("hidden");
this.widget = new SideMenuWidget(document.getElementById("workers"), {
showArrows: true,
});
this.emptyText = L10N.getStr("noWorkersText");
this.widget.addEventListener("select", this._onWorkerSelect, false);
},
addWorker: function (actor, name) {
let element = document.createElement("label");
element.className = "plain dbg-worker-item";
element.setAttribute("value", name);
element.setAttribute("flex", "1");
this.push([element, actor], {});
},
removeWorker: function (actor) {
this.remove(this.getItemByValue(actor));
},
_onWorkerSelect: function () {
if (this.selectedItem !== null) {
DebuggerController.Workers._onWorkerSelect(this.selectedItem.value);
this.selectedItem = null;
}
}
});
DebuggerView.Workers = new WorkersView();