Bug 1297758 - Fetch target and fronts from inspector getter rather than toolbox. r=bgrins
MozReview-Commit-ID: HchlqORtfH5
--- a/devtools/client/animationinspector/animation-controller.js
+++ b/devtools/client/animationinspector/animation-controller.js
@@ -137,17 +137,17 @@ var AnimationsController = {
return;
}
this.initialized = promise.defer();
this.onPanelVisibilityChange = this.onPanelVisibilityChange.bind(this);
this.onNewNodeFront = this.onNewNodeFront.bind(this);
this.onAnimationMutations = this.onAnimationMutations.bind(this);
- let target = gToolbox.target;
+ let target = gInspector.target;
this.animationsFront = new AnimationsFront(target.client, target.form);
// Expose actor capabilities.
this.traits = yield getServerTraits(target);
if (this.destroyed) {
console.warn("Could not fully initialize the AnimationsController");
return;
--- a/devtools/client/inspector/components/box-model.js
+++ b/devtools/client/inspector/components/box-model.js
@@ -336,20 +336,20 @@ BoxModelView.prototype = {
}
},
/**
* Start listening to reflows in the current tab.
*/
trackReflows: function () {
if (!this.reflowFront) {
- let toolbox = this.inspector.toolbox;
- if (toolbox.target.form.reflowActor) {
- this.reflowFront = ReflowFront(toolbox.target.client,
- toolbox.target.form);
+ let { target } = this.inspector;
+ if (target.form.reflowActor) {
+ this.reflowFront = ReflowFront(target.client,
+ target.form);
} else {
return;
}
}
this.reflowFront.on("reflows", this.update);
this.reflowFront.start();
},
@@ -463,17 +463,17 @@ BoxModelView.prototype = {
if (this.inspector.markup) {
this.inspector.markup.off("leave", this.onMarkupViewLeave);
this.inspector.markup.off("node-hover", this.onMarkupViewNodeHover);
}
this.inspector.sidebar.off("computedview-selected", this.onNewNode);
this.inspector.selection.off("new-node-front", this.onNewSelection);
this.inspector.sidebar.off("select", this.onSidebarSelect);
- this.inspector._target.off("will-navigate", this.onWillNavigate);
+ this.inspector.target.off("will-navigate", this.onWillNavigate);
this.inspector.off("computed-view-filtered", this.onFilterComputedView);
this.inspector = null;
this.doc = null;
this.wrapper = null;
this.container = null;
this.expander = null;
this.sizeLabel = null;
@@ -787,17 +787,17 @@ BoxModelView.prototype = {
// Hide completely the geometry editor if the picker is clicked
toolbox.on("picker-started", this.onPickerStarted);
// Temporary hide the geometry editor
this.inspector.markup.on("leave", this.onMarkupViewLeave);
this.inspector.markup.on("node-hover", this.onMarkupViewNodeHover);
// Release the actor on will-navigate event
- this.inspector._target.once("will-navigate", this.onWillNavigate);
+ this.inspector.target.once("will-navigate", this.onWillNavigate);
});
},
/**
* Hide the geometry editor highlighter on the currently selected element
* @param {Boolean} [updateButton=true]
* Indicates if the Geometry Editor's button needs to be unchecked too
*/
--- a/devtools/client/inspector/inspector.js
+++ b/devtools/client/inspector/inspector.js
@@ -603,17 +603,17 @@ Inspector.prototype = {
// Setup the add-node button.
this.addNode = this.addNode.bind(this);
this.addNodeButton = this.panelDoc.getElementById("inspector-element-add-button");
this.addNodeButton.addEventListener("click", this.addNode);
// Setup the eye-dropper icon if we're in an HTML document and we have actor support.
if (this.selection.nodeFront && this.selection.nodeFront.isInHTMLDocument) {
- this.toolbox.target.actorHasMethod("inspector", "pickColorFromPage").then(value => {
+ this.target.actorHasMethod("inspector", "pickColorFromPage").then(value => {
if (!value) {
return;
}
this.onEyeDropperDone = this.onEyeDropperDone.bind(this);
this.onEyeDropperButtonClicked = this.onEyeDropperButtonClicked.bind(this);
this.eyeDropperButton = this.panelDoc
.getElementById("inspector-eyedropper-toggle");
--- a/devtools/client/inspector/markup/test/browser_markup_update-on-navigtion.js
+++ b/devtools/client/inspector/markup/test/browser_markup_update-on-navigtion.js
@@ -10,17 +10,17 @@ const URL_1 = SCHEMA + "<div id='one' st
const URL_2 = SCHEMA + "<div id='two' style='color:green;'>TWO</div>";
add_task(function* () {
let {inspector, testActor} = yield openInspectorForURL(URL_1);
assertMarkupViewIsLoaded();
yield selectNode("#one", inspector);
- let willNavigate = inspector.toolbox.target.once("will-navigate");
+ let willNavigate = inspector.target.once("will-navigate");
yield testActor.eval(`content.location = "${URL_2}"`);
info("Waiting for will-navigate");
yield willNavigate;
info("Navigation to page 2 has started, the inspector should be empty");
assertMarkupViewIsEmpty();
--- a/devtools/client/inspector/rules/rules.js
+++ b/devtools/client/inspector/rules/rules.js
@@ -465,17 +465,17 @@ CssRuleView.prototype = {
},
/**
* Add a new rule to the current element.
*/
_onAddRule: function () {
let elementStyle = this._elementStyle;
let element = elementStyle.element;
- let client = this.inspector.toolbox.target.client;
+ let client = this.inspector.target.client;
let pseudoClasses = element.pseudoClassLocks;
if (!client.traits.addNewRule) {
return;
}
if (!this.pageStyle.supportsAuthoredStyles) {
// We're talking to an old server.
--- a/devtools/client/inspector/rules/views/rule-editor.js
+++ b/devtools/client/inspector/rules/views/rule-editor.js
@@ -82,17 +82,17 @@ RuleEditor.prototype = {
destroy: function () {
this.rule.domRule.off("location-changed");
this.toolbox.off("tool-registered", this.updateSourceLink);
this.toolbox.off("tool-unregistered", this.updateSourceLink);
},
get isSelectorEditable() {
let trait = this.isEditable &&
- this.toolbox.target.client.traits.selectorEditable &&
+ this.ruleView.inspector.target.client.traits.selectorEditable &&
this.rule.domRule.type !== ELEMENT_STYLE &&
this.rule.domRule.type !== CSSRule.KEYFRAME_RULE;
// Do not allow editing anonymousselectors until we can
// detect mutations on pseudo elements in Bug 1034110.
return trait && !this.rule.elementStyle.element.isAnonymous;
},
--- a/devtools/client/inspector/test/browser_inspector_highlighter-03.js
+++ b/devtools/client/inspector/test/browser_inspector_highlighter-03.js
@@ -29,17 +29,17 @@ const DOCUMENT_SRC = "<style>" +
const TEST_URI = "data:text/html;charset=utf-8," + DOCUMENT_SRC;
add_task(function* () {
let { inspector, toolbox, testActor } = yield openInspectorForURL(TEST_URI);
info("Waiting for box mode to show.");
let body = yield getNodeFront("body", inspector);
- yield toolbox.highlighter.showBoxModel(body);
+ yield inspector.highlighter.showBoxModel(body);
info("Waiting for element picker to become active.");
yield startPicker(toolbox);
info("Moving mouse over iframe padding.");
yield moveMouseOver("iframe", 1, 1);
info("Performing checks");
--- a/devtools/client/inspector/test/browser_inspector_highlighter-04.js
+++ b/devtools/client/inspector/test/browser_inspector_highlighter-04.js
@@ -22,22 +22,22 @@ const ELEMENTS = ["box-model-root",
"box-model-infobar-container",
"box-model-infobar-tagname",
"box-model-infobar-id",
"box-model-infobar-classes",
"box-model-infobar-pseudo-classes",
"box-model-infobar-dimensions"];
add_task(function* () {
- let {inspector, toolbox, testActor} = yield openInspectorForURL(TEST_URL);
+ let {inspector, testActor} = yield openInspectorForURL(TEST_URL);
info("Show the box-model highlighter");
let divFront = yield getNodeFront("div", inspector);
- yield toolbox.highlighter.showBoxModel(divFront);
+ yield inspector.highlighter.showBoxModel(divFront);
for (let id of ELEMENTS) {
let foundId = yield testActor.getHighlighterNodeAttribute(id, "id");
is(foundId, id, "Element " + id + " found");
}
info("Hide the box-model highlighter");
- yield toolbox.highlighter.hideBoxModel();
+ yield inspector.highlighter.hideBoxModel();
});
--- a/devtools/client/inspector/test/browser_inspector_highlighter-hover_02.js
+++ b/devtools/client/inspector/test/browser_inspector_highlighter-hover_02.js
@@ -6,30 +6,30 @@
// Test that when after an element is selected and highlighted on hover, if the
// mouse leaves the markup-view and comes back again on the same element, that
// the highlighter is shown again on the node
const TEST_URL = "data:text/html;charset=utf-8,<p>Select me!</p>";
add_task(function* () {
- let {toolbox, inspector, testActor} = yield openInspectorForURL(TEST_URL);
+ let {inspector, testActor} = yield openInspectorForURL(TEST_URL);
info("hover over the <p> line in the markup-view so that it's the " +
"currently hovered node");
yield hoverContainer("p", inspector);
info("select the <p> markup-container line by clicking");
yield clickContainer("p", inspector);
let isVisible = yield testActor.isHighlighting();
ok(isVisible, "the highlighter is shown");
info("listen to the highlighter's hidden event");
let onHidden = testActor.waitForHighlighterEvent("hidden",
- toolbox.highlighter);
+ inspector.highlighter);
info("mouse-leave the markup-view");
yield mouseLeaveMarkupView(inspector);
yield onHidden;
isVisible = yield testActor.isHighlighting();
ok(!isVisible, "the highlighter is hidden after mouseleave");
info("hover over the <p> line again, which is still selected");
yield hoverContainer("p", inspector);
--- a/devtools/client/inspector/test/browser_inspector_highlighter-keybinding_03.js
+++ b/devtools/client/inspector/test/browser_inspector_highlighter-keybinding_03.js
@@ -41,17 +41,17 @@ add_task(function* () {
yield doKeyStop(shortcutOpts);
is(inspector.selection.nodeFront.id, "another",
"The #another DIV is still selected. Passed.");
function doKeyPick(args) {
info("Key pressed. Waiting for element to be picked");
testActor.synthesizeKey(args);
return promise.all([
- toolbox.selection.once("new-node-front"),
+ inspector.selection.once("new-node-front"),
inspector.once("inspector-updated")
]);
}
function doKeyStop(args) {
info("Key pressed. Waiting for picker to be canceled");
testActor.synthesizeKey(args);
return inspector.toolbox.once("picker-stopped");
--- a/devtools/client/inspector/test/browser_inspector_highlighter-options.js
+++ b/devtools/client/inspector/test/browser_inspector_highlighter-options.js
@@ -180,25 +180,25 @@ const TEST_DATA = [
is(faded, "true", "Region " + region + " is faded");
}
}
}
}
];
add_task(function* () {
- let {inspector, toolbox, testActor} = yield openInspectorForURL(
+ let {inspector, testActor} = yield openInspectorForURL(
"data:text/html;charset=utf-8," + encodeURI(TEST_URL));
let divFront = yield getNodeFront("div", inspector);
for (let {desc, options, checkHighlighter} of TEST_DATA) {
info("Running test: " + desc);
info("Show the box-model highlighter with options " + options);
- yield toolbox.highlighter.showBoxModel(divFront, options);
+ yield inspector.highlighter.showBoxModel(divFront, options);
yield checkHighlighter(testActor);
info("Hide the box-model highlighter");
- yield toolbox.highlighter.hideBoxModel();
+ yield inspector.highlighter.hideBoxModel();
}
});
--- a/devtools/client/inspector/test/browser_inspector_highlighter-xbl.js
+++ b/devtools/client/inspector/test/browser_inspector_highlighter-xbl.js
@@ -17,17 +17,17 @@ add_task(function* () {
yield doKeyPick({key: "VK_RETURN", options: {}});
is(inspector.selection.nodeFront.className, "scale-slider",
"The .scale-slider inside the scale was selected");
function doKeyPick(msg) {
info("Key pressed. Waiting for element to be picked");
testActor.synthesizeKey(msg);
return promise.all([
- toolbox.selection.once("new-node-front"),
+ inspector.selection.once("new-node-front"),
inspector.once("inspector-updated")
]);
}
function moveMouseOver(selector) {
info("Waiting for element " + selector + " to be highlighted");
testActor.synthesizeMouse({
options: {type: "mousemove"},
--- a/devtools/client/inspector/test/browser_inspector_invalidate.js
+++ b/devtools/client/inspector/test/browser_inspector_invalidate.js
@@ -10,26 +10,26 @@ const TEST_URI = "data:text/html;charset
"browser_inspector_invalidate.js\n" +
"<div style=\"width: 100px; height: 100px; background:yellow;\"></div>";
add_task(function* () {
let {inspector, testActor} = yield openInspectorForURL(TEST_URI);
let divFront = yield getNodeFront("div", inspector);
info("Waiting for highlighter to activate");
- yield inspector.toolbox.highlighter.showBoxModel(divFront);
+ yield inspector.highlighter.showBoxModel(divFront);
let rect = yield testActor.getSimpleBorderRect();
is(rect.width, 100, "The highlighter has the right width.");
info("Changing the test element's size and waiting for the highlighter " +
"to update");
yield testActor.changeHighlightedNodeWaitForUpdate(
"style",
"width: 200px; height: 100px; background:yellow;"
);
rect = yield testActor.getSimpleBorderRect();
is(rect.width, 200, "The highlighter has the right width after update");
info("Waiting for highlighter to hide");
- yield inspector.toolbox.highlighter.hideBoxModel();
+ yield inspector.highlighter.hideBoxModel();
});
--- a/devtools/client/inspector/test/browser_inspector_pseudoclass-lock.js
+++ b/devtools/client/inspector/test/browser_inspector_pseudoclass-lock.js
@@ -84,19 +84,18 @@ function* testNavigate(inspector, testAc
ok(!(yield testActor.hasPseudoClassLock("#div-1", PSEUDO)),
"pseudo-class lock is removed after inspecting sibling node");
yield selectNode("#div-1", inspector);
yield togglePseudoClass(inspector);
}
function* showPickerOn(selector, inspector) {
- let highlighter = inspector.toolbox.highlighter;
let nodeFront = yield getNodeFront(selector, inspector);
- yield highlighter.showBoxModel(nodeFront);
+ yield inspector.highlighter.showBoxModel(nodeFront);
}
function* assertPseudoAddedToNode(inspector, testActor, ruleview) {
info("Make sure the pseudoclass lock is applied to #div-1 and its ancestors");
let hasLock = yield testActor.hasPseudoClassLock("#div-1", PSEUDO);
ok(hasLock, "pseudo-class lock has been applied");
hasLock = yield testActor.hasPseudoClassLock("#parent-div", PSEUDO);
@@ -114,17 +113,17 @@ function* assertPseudoAddedToNode(inspec
info("Show the highlighter on #div-1");
yield showPickerOn("#div-1", inspector);
info("Check that the infobar selector contains the pseudo-class");
let value = yield testActor.getHighlighterNodeTextContent(
"box-model-infobar-pseudo-classes");
is(value, PSEUDO, "pseudo-class in infobar selector");
- yield inspector.toolbox.highlighter.hideBoxModel();
+ yield inspector.highlighter.hideBoxModel();
}
function* assertPseudoRemovedFromNode(testActor) {
info("Make sure the pseudoclass lock is removed from #div-1 and its " +
"ancestors");
let hasLock = yield testActor.hasPseudoClassLock("#div-1", PSEUDO);
ok(!hasLock, "pseudo-class lock has been removed");
@@ -140,10 +139,10 @@ function* assertPseudoRemovedFromView(in
".ruleview-rule.theme-separator");
is(rules.length, 2, "rule view is showing 2 rules after removing lock");
yield showPickerOn("#div-1", inspector);
let value = yield testActor.getHighlighterNodeTextContent(
"box-model-infobar-pseudo-classes");
is(value, "", "pseudo-class removed from infobar selector");
- yield inspector.toolbox.highlighter.hideBoxModel();
+ yield inspector.highlighter.hideBoxModel();
}
--- a/devtools/client/shared/widgets/Tooltip.js
+++ b/devtools/client/shared/widgets/Tooltip.js
@@ -736,17 +736,17 @@ Heritage.extend(SwatchBasedEditorTooltip
this._originalColor = this.currentSwatchColor.textContent;
let color = this.activeSwatch.style.backgroundColor;
this.spectrum.off("changed", this._onSpectrumColorChange);
this.spectrum.rgb = this._colorToRgba(color);
this.spectrum.on("changed", this._onSpectrumColorChange);
this.spectrum.updateUI();
}
- let {target} = this.inspector.toolbox;
+ let {target} = this.inspector;
target.actorHasMethod("inspector", "pickColorFromPage").then(value => {
let tooltipDoc = this.tooltip.doc;
let eyeButton = tooltipDoc.querySelector("#eyedropper-button");
if (value && this.inspector.selection.nodeFront.isInHTMLDocument) {
eyeButton.addEventListener("click", this._openEyeDropper);
} else {
eyeButton.style.display = "none";
}