Bug 913234 - Close toolboxes on disconnect. r=ochameau
--- a/browser/devtools/app-manager/content/device.js
+++ b/browser/devtools/app-manager/content/device.js
@@ -162,17 +162,23 @@ let UI = {
});
}
});
return deferred.promise;
},
openToolbox: function(manifest) {
this._getTargetForApp(manifest).then((target) => {
- gDevTools.showToolbox(target, "webconsole", devtools.Toolbox.HostType.WINDOW);
+ gDevTools.showToolbox(target,
+ null,
+ devtools.Toolbox.HostType.WINDOW).then(toolbox => {
+ this.connection.once(Connection.Events.DISCONNECTED, () => {
+ toolbox.destroy();
+ });
+ });
}, console.error);
},
startApp: function(manifest) {
let deferred = promise.defer();
if (!this.listTabsResponse) {
deferred.reject();
--- a/browser/devtools/app-manager/content/projects.js
+++ b/browser/devtools/app-manager/content/projects.js
@@ -218,18 +218,21 @@ let UI = {
},
openToolbox: function(location) {
let project = AppProjects.get(location);
let manifest = this._getProjectManifestURL(project);
this._getTargetForApp(manifest).then((target) => {
gDevTools.showToolbox(target,
null,
- devtools.Toolbox.HostType.WINDOW,
- this.connection.uid);
+ devtools.Toolbox.HostType.WINDOW).then(toolbox => {
+ this.connection.once(Connection.Events.DISCONNECTED, () => {
+ toolbox.destroy();
+ });
+ });
}, console.error);
},
reveal: function(location) {
let project = AppProjects.get(location);
if (project.type == "packaged") {
let projectFolder = FileUtils.File(project.location);