Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Delta Between Two Patch Sets: lib/inspectorObserver.js

Issue 29322778: Issue 2816 - Partial fix for EHH button in inspector tool, preview functionality still broken (Closed)
Left Patch Set: Created July 28, 2015, 9:51 a.m.
Right Patch Set: Preemptively fixed some nits and compatibility info Created July 29, 2015, 12:41 p.m.
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
Left: Side by side diff | Download
Right: Side by side diff | Download
« no previous file with change/comment | « lib/aardvark.js ('k') | lib/main.js » ('j') | no next file with change/comment »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
LEFTRIGHT
1 /* 1 /*
2 * This Source Code is subject to the terms of the Mozilla Public License 2 * This Source Code is subject to the terms of the Mozilla Public License
3 * version 2.0 (the "License"). You can obtain a copy of the License at 3 * version 2.0 (the "License"). You can obtain a copy of the License at
4 * http://mozilla.org/MPL/2.0/. 4 * http://mozilla.org/MPL/2.0/.
5 */ 5 */
6 6
7 let InspectorObserver = 7 let InspectorObserver =
8 { 8 {
9 init: function() 9 init: function()
10 { 10 {
(...skipping 11 matching lines...) Expand all
22 gDevTools.on("inspector-ready", this.inspectorReady); 22 gDevTools.on("inspector-ready", this.inspectorReady);
23 onShutdown.add(function() 23 onShutdown.add(function()
24 { 24 {
25 gDevTools.off("inspector-ready", this.inspectorReady); 25 gDevTools.off("inspector-ready", this.inspectorReady);
26 }.bind(this)); 26 }.bind(this));
27 }, 27 },
28 28
29 get inspectorButtonTooltip() 29 get inspectorButtonTooltip()
30 { 30 {
31 // Randomize URI to work around bug 719376 31 // Randomize URI to work around bug 719376
32 let stringBundle = Services.strings.createBundle("chrome://elemhidehelper/lo cale/global.properties?" + Math.random()); 32 let stringBundle = Services.strings.createBundle("chrome://elemhidehelper/lo cale/global.properties?" + Math.random());
Thomas Greiner 2015/07/28 13:52:18 Here you're using "Services" without importing it
33 let result = stringBundle.GetStringFromName("inspector.button.tooltiptext"); 33 let result = stringBundle.GetStringFromName("inspector.button.tooltiptext");
34 34
35 Object.defineProperty(this, "inspectorButtonTooltip", {value: result, enumer able: true}); 35 Object.defineProperty(this, "inspectorButtonTooltip", {value: result, enumer able: true});
36 return this.inspectorButtonTooltip; 36 return this.inspectorButtonTooltip;
37 }, 37 },
38 38
39 inspectorReady: function(eventName, toolbox, panel) 39 inspectorReady: function(eventName, toolbox, panel)
40 { 40 {
41 let panelWindow = panel.panelWin; 41 let panelWindow = panel.panelWin;
42 let inspectBtn = panelWindow.document.getElementById("inspector-breadcrumbs" ); 42 let inspectBtn = panelWindow.document.getElementById("inspector-breadcrumbs" );
43 if (!inspectBtn) 43 if (!inspectBtn)
44 return; 44 return;
45 45
46 let tooltiptext = InspectorObserver.inspectorButtonTooltip; 46 let tooltiptext = InspectorObserver.inspectorButtonTooltip;
47 button = panelWindow.document.createElement("toolbarbutton"); 47 button = panelWindow.document.createElement("toolbarbutton");
48 button.setAttribute("id", "ehh-inspector-toolbarbutton"); 48 button.setAttribute("id", "ehh-inspector-toolbarbutton");
49 button.setAttribute("class", "devtools-toolbarbutton"); 49 button.setAttribute("class", "devtools-toolbarbutton");
50 button.setAttribute("tooltiptext", tooltiptext); 50 button.setAttribute("tooltiptext", tooltiptext);
51 button.setAttribute("tabindex", "0"); 51 button.setAttribute("tabindex", "0");
52 button.addEventListener("command", () => 52 button.addEventListener("command", () =>
53 { 53 {
54 let node = panel.selection.node; 54 let node = panel.selection.nodeFront;
55 let doc = null; 55 let target = panel.target;
56 let domain = null; 56 if (node && target.form.elemhidehelper)
Thomas Greiner 2015/07/28 13:52:18 This variable should be named "host" from looking
57 if (!node)
58 { 57 {
59 // No local node available, but maybe a wrapper around a remote one 58 target.client.request({
60 let {Services} = Cu.import("resource://gre/modules/Services.jsm"); 59 to: target.form.elemhidehelper,
61 node = panel.selection.nodeFront; 60 type: "nodeinfo",
62 doc = panel.selection.documentFront; 61 nodeActor: node.actorID
63 host = Services.io.newURI(panel.target.url, null, null).host; 62 }, function(response)
64 } 63 {
65 if (node.nodeType == Ci.nsIDOMNode.ELEMENT_NODE) 64 if (!response.nodeData)
66 { 65 return;
67 panelWindow.openDialog("chrome://elemhidehelper/content/composer.xul", " _blank", 66
Thomas Greiner 2015/07/28 13:52:18 Detail: Please break these lines accordingly to fi
68 "chrome,centerscreen,resizable,dialog=no", node, doc, host); 67 panelWindow.openDialog("chrome://elemhidehelper/content/composer.xul",
68 "_blank", "chrome,centerscreen,resizable,dialog=no",
69 response.nodeData, response.host);
70 });
69 } 71 }
70 }, false); 72 }, false);
71 73
72 //Override button style for light DevTools theme 74 //Override button style for light DevTools theme
73 let style = panelWindow.document.createProcessingInstruction("xml-stylesheet ", 'href="chrome://elemhidehelper/skin/devToolsOverlay.css" type="text/css"'); 75 let style = panelWindow.document.createProcessingInstruction("xml-stylesheet ", 'href="chrome://elemhidehelper/skin/devToolsOverlay.css" type="text/css"');
74 panelWindow.document.insertBefore(style, panelWindow.document.firstChild); 76 panelWindow.document.insertBefore(style, panelWindow.document.firstChild);
75 77
76 inspectBtn.parentNode.insertBefore(button, inspectBtn); 78 inspectBtn.parentNode.insertBefore(button, inspectBtn);
77 } 79 }
78 }; 80 };
79 81
80 InspectorObserver.init(); 82 InspectorObserver.init();
LEFTRIGHT

Powered by Google App Engine
This is Rietveld