DevTools - style editor - StyleSheetsActor should use the parent tabActor to retrieve the list of windows and react to new/removed windows

https://github.com/MoonchildProductions/moebius/pull/124
This commit is contained in:
janekptacijarabaci 2018-03-01 13:13:33 +01:00 committed by Roy Tam
commit 7177b5926a
6 changed files with 212 additions and 65 deletions

View file

@ -60,6 +60,7 @@ support-files =
!/devtools/client/shared/test/test-actor-registry.js
!/devtools/client/shared/test/test-actor.js
[browser_styleeditor_add_stylesheet.js]
[browser_styleeditor_autocomplete.js]
[browser_styleeditor_autocomplete-disabled.js]
[browser_styleeditor_bom.js]

View file

@ -0,0 +1,37 @@
/* vim: set ts=2 et sw=2 tw=80: */
/* Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/ */
"use strict";
// Test that a newly-added style sheet shows up in the style editor.
const TESTCASE_URI = TEST_BASE_HTTPS + "simple.html";
add_task(function* () {
let { ui } = yield openStyleEditorForURL(TESTCASE_URI);
is(ui.editors.length, 2, "Two sheets present after load.");
// We have to wait for the length to change, because we might still
// be seeing events from the initial open.
let added = new Promise(resolve => {
let handler = () => {
if (ui.editors.length === 3) {
ui.off("editor-added", handler);
resolve();
}
};
ui.on("editor-added", handler);
});
info("Adding a style sheet");
yield ContentTask.spawn(gBrowser.selectedBrowser, null, () => {
let document = content.document;
const style = document.createElement("style");
style.appendChild(document.createTextNode("div { background: #f06; }"));
document.head.appendChild(style);
});
yield added;
is(ui.editors.length, 3, "Three sheets present after new style sheet");
});

View file

@ -18,7 +18,7 @@ const SOURCE = "body{background:red;}";
add_task(function* () {
let { panel, ui } = yield openStyleEditorForURL(TESTCASE_URI);
let added = ui.once("editor-added");
let added = ui.once("test:editor-updated");
importSheet(ui, panel.panelWindow);
info("Waiting for editor to be added for the imported sheet.");