Bug 1414053 - Adds the boundary crossing callback to DevTools.jsm. r?mconley
Also, once this lands, it should clean up some of the failing tests on Bugs #1403686 and #1412357.
MozReview-Commit-ID: 5rCjjlzuavq
--- a/browser/tools/mozscreenshots/mozscreenshots/extension/configurations/DevTools.jsm
+++ b/browser/tools/mozscreenshots/mozscreenshots/extension/configurations/DevTools.jsm
@@ -16,48 +16,52 @@ let { devtools } = Cu.import("resource:/
let TargetFactory = devtools.TargetFactory;
function getTargetForSelectedTab() {
let browserWindow = Services.wm.getMostRecentWindow("navigator:browser");
let target = TargetFactory.forTab(browserWindow.gBrowser.selectedTab);
return target;
}
+function selectToolbox() {
+ return gDevTools.getToolbox(getTargetForSelectedTab()).win.document.querySelector("#toolbox-container");
+}
+
this.DevTools = {
init(libDir) {
let panels = ["options", "webconsole", "jsdebugger", "styleeditor",
"performance", "netmonitor"];
panels.forEach(panel => {
this.configurations[panel] = {};
- this.configurations[panel].selectors = ["#toolbox-container"];
+ this.configurations[panel].selectors = [selectToolbox];
this.configurations[panel].applyConfig = async function() {
await gDevTools.showToolbox(getTargetForSelectedTab(), panel, "bottom");
await new Promise(resolve => setTimeout(resolve, 500));
};
});
},
configurations: {
bottomToolbox: {
- selectors: ["#toolbox-container"],
+ selectors: [selectToolbox],
async applyConfig() {
await gDevTools.showToolbox(getTargetForSelectedTab(), "inspector", "bottom");
await new Promise(resolve => setTimeout(resolve, 1000));
},
},
sideToolbox: {
- selectors: ["#toolbox-container"],
+ selectors: [selectToolbox],
async applyConfig() {
await gDevTools.showToolbox(getTargetForSelectedTab(), "inspector", "side");
await new Promise(resolve => setTimeout(resolve, 500));
},
},
undockedToolbox: {
- selectors: ["#toolbox-container"],
+ selectors: [selectToolbox],
windowType: "devtools:toolbox",
async applyConfig() {
await gDevTools.showToolbox(getTargetForSelectedTab(), "inspector", "window");
await new Promise(resolve => setTimeout(resolve, 500));
},
}
},
};