fune/browser/base/content/test/tabs/browser_tab_manager_visibility.js
Emilio Cobos Álvarez 325bc7b486 Bug 1859538 - Allow chrome stylesheets to be parsed in parallel. r=layout-reviewers,desktop-theme-reviewers,dao,Gijs,tlouw
This changes -moz-bool-pref from @supports to @media, bringing various
improvements:

 * @media (-moz-bool-pref) properly reacts to dynamic changes.
 * We no longer need to parse chrome:// stylesheets in the main thread
   (-moz-bool-pref was the only thing that forced us to do that).

This makes privileged and non-privileged stylesheets more similar.

Differential Revision: https://phabricator.services.mozilla.com/D191196
2023-10-19 10:50:27 +00:00

53 lines
1.7 KiB
JavaScript

/**
* Test the Tab Manager visibility respects browser.tabs.tabmanager.enabled preference
* */
"use strict";
// The hostname for the test URIs.
const TEST_HOSTNAME = "https://example.com";
const DUMMY_PAGE_PATH = "/browser/base/content/test/tabs/dummy_page.html";
add_task(async function tab_manager_visibility_preference_on() {
Services.prefs.setBoolPref("browser.tabs.tabmanager.enabled", true);
let newWindow = await BrowserTestUtils.openNewBrowserWindow();
await BrowserTestUtils.withNewTab(
{
gBrowser: newWindow.gBrowser,
url: TEST_HOSTNAME + DUMMY_PAGE_PATH,
},
async function (browser) {
await Assert.ok(
BrowserTestUtils.is_visible(
newWindow.document.getElementById("alltabs-button")
),
"tab manage menu is visible when browser.tabs.tabmanager.enabled preference is set to true"
);
}
);
Services.prefs.clearUserPref("browser.tabs.tabmanager.enabled");
BrowserTestUtils.closeWindow(newWindow);
});
add_task(async function tab_manager_visibility_preference_off() {
Services.prefs.setBoolPref("browser.tabs.tabmanager.enabled", false);
let newWindow = await BrowserTestUtils.openNewBrowserWindow();
await BrowserTestUtils.withNewTab(
{
gBrowser: newWindow.gBrowser,
url: TEST_HOSTNAME + DUMMY_PAGE_PATH,
},
async function (browser) {
await Assert.ok(
BrowserTestUtils.is_hidden(
newWindow.document.getElementById("alltabs-button")
),
"tab manage menu is hidden when browser.tabs.tabmanager.enabled preference is set to true"
);
}
);
Services.prefs.clearUserPref("browser.tabs.tabmanager.enabled");
BrowserTestUtils.closeWindow(newWindow);
});