Backed out changeset f14b6d618dee (bug 1906140) for causing mochitest failures

This commit is contained in:
Noemi Erli
2024-08-03 00:48:34 +03:00
parent eb577f2b33
commit ea6ddac0d7
9 changed files with 33 additions and 178 deletions

View File

@@ -17,7 +17,7 @@ add_task(async function testFilterFeatures() {
id: "test-featureA",
preference: "test.featureA",
title: "Experimental Feature 1",
group: "experimental-features-group-customize-browsing",
group: "experimental-features-group-browsing",
description: "This is a fun experimental feature you can enable",
result: true,
},
@@ -25,7 +25,7 @@ add_task(async function testFilterFeatures() {
id: "test-featureB",
preference: "test.featureB",
title: "Experimental Thing 2",
group: "experimental-features-group-customize-browsing",
group: "experimental-features-group-browsing",
description: "This is a very boring experimental tool",
// Visible since it's grouped with other features that match the search.
result: true,
@@ -34,7 +34,7 @@ add_task(async function testFilterFeatures() {
id: "test-featureC",
preference: "test.featureC",
title: "Experimental Thing 3",
group: "experimental-features-group-customize-browsing",
group: "experimental-features-group-browsing",
description: "This is a fun experimental feature for you can enable",
result: true,
},

View File

@@ -203,7 +203,7 @@ class DefinitionServer {
id: "test-feature",
// These l10n IDs are just random so we have some text to display
title: "experimental-features-media-jxl",
group: "experimental-features-group-customize-browsing",
group: "experimental-features-group-browsing",
description: "pane-experimental-description3",
restartRequired: false,
type: "boolean",

View File

@@ -166,6 +166,7 @@ class TestSessionRestore(SessionStoreTestCase):
self.marionette.execute_script(
"""
const window = BrowserWindowTracker.getTopWindow();
window.SidebarController.toolbarButton.click();
return window.SidebarController.sidebarContainer.hidden;
"""
),

View File

@@ -21,8 +21,7 @@ var SidebarController = {
return document.getElementById(elementId);
},
get title() {
let element = document.getElementById(elementId);
return element?.getAttribute("label");
return document.getElementById(elementId).getAttribute("label");
},
...rest,
};
@@ -38,9 +37,8 @@ var SidebarController = {
const viewItem = document.getElementById(sidebar.menuId);
viewItem.hidden = !visible;
let menuItem = document.getElementById(config.elementId);
// Add/remove switcher menu item.
if (visible && !menuItem) {
if (visible) {
switcherMenuitem = this.createMenuItem(commandID, sidebar);
switcherMenuitem.setAttribute("id", config.elementId);
switcherMenuitem.removeAttribute("type");
@@ -69,10 +67,6 @@ var SidebarController = {
return this._sidebars;
}
return this.generateSidebarsMap();
},
generateSidebarsMap() {
this._sidebars = new Map([
[
"viewHistorySidebar",
@@ -204,9 +198,6 @@ var SidebarController = {
_switcherTarget: null,
_switcherArrow: null,
_inited: false,
_switcherListenersAdded: false,
_verticalNewTabListenerAdded: false,
_localesObserverAdded: false,
/**
* @type {MutationObserver | null}
@@ -255,6 +246,11 @@ var SidebarController = {
this._switcherPanel = document.getElementById("sidebarMenu-popup");
this._switcherTarget = document.getElementById("sidebar-switcher-target");
this._switcherArrow = document.getElementById("sidebar-switcher-arrow");
let newTabButton = document.getElementById("vertical-tabs-newtab-button");
newTabButton.addEventListener("command", event => {
BrowserCommands.openTab({ event });
});
if (
Services.prefs.getBoolPref(
"browser.tabs.allow_transparent_browser",
@@ -298,16 +294,8 @@ var SidebarController = {
if (this.sidebarVerticalTabsEnabled) {
this.toggleTabstrip();
}
let newTabButton = document.getElementById("vertical-tabs-newtab-button");
if (!this._verticalNewTabListenerAdded) {
newTabButton.addEventListener("command", event => {
BrowserCommands.openTab({ event });
});
this._verticalNewTabListenerAdded = true;
}
} else {
this._switcherCloseButton = document.getElementById("sidebar-close");
if (!this._switcherListenersAdded) {
this._switcherCloseButton.addEventListener("command", () => {
this.hide();
});
@@ -317,16 +305,11 @@ var SidebarController = {
this._switcherTarget.addEventListener("keydown", event => {
this.handleKeydown(event);
});
this._switcherListenersAdded = true;
}
}
this._inited = true;
if (!this._localesObserverAdded) {
Services.obs.addObserver(this, "intl:app-locales-changed");
this._localesObserverAdded = true;
}
this._initDeferred.resolve();
},
@@ -525,41 +508,6 @@ var SidebarController = {
}
},
/**
* Show/hide new sidebar based on sidebar.revamp pref
*/
async toggleRevampSidebar() {
if (this.isOpen) {
this.hide();
}
// Reset sidebars map but preserve any existing extensions
let extensionsArr = [];
for (const [commandID, sidebar] of this.sidebars.entries()) {
if (sidebar.hasOwnProperty("extensionId")) {
extensionsArr.push({ commandID, sidebar });
}
}
this.sidebars = this.generateSidebarsMap();
for (const extension of extensionsArr) {
this.sidebars.set(extension.commandID, extension.sidebar);
}
if (!this.sidebarRevampEnabled) {
this.sidebarMain.hidden = true;
document.getElementById("sidebar-header").hidden = false;
// Disable vertical tabs if revamped sidebar is turned off
if (this.sidebarVerticalTabsEnabled) {
Services.prefs.setBoolPref("sidebar.verticalTabs", false);
}
} else {
this.sidebarMain.hidden = false;
}
if (!this._sidebars.get(this.lastOpenedId)) {
this.lastOpenedId = this.DEFAULT_SIDEBAR_ID;
}
this.show(this.lastOpenedId);
this.init();
},
/**
* Try and adopt the status of the sidebar from another window.
*
@@ -1203,7 +1151,7 @@ var SidebarController = {
// until about:blank has loaded (which does not happen as long as the
// element is hidden).
this.browser.setAttribute("src", "about:blank");
this.browser.docShell?.createAboutBlankDocumentViewer(null, null);
this.browser.docShell.createAboutBlankDocumentViewer(null, null);
this._box.removeAttribute("checked");
this._box.hidden = this._splitter.hidden = true;
@@ -1258,11 +1206,6 @@ var SidebarController = {
arrowScrollbox.setAttribute("orient", "vertical");
tabStrip.setAttribute("orient", "vertical");
verticalTabs.append(tabStrip);
// Enable revamped sidebar if vertical tabs is enabled
if (!this.sidebarRevampEnabled) {
Services.prefs.setBoolPref("sidebar.revamp", true);
}
} else {
arrowScrollbox.setAttribute("orient", "horizontal");
tabStrip.setAttribute("orient", "horizontal");
@@ -1298,8 +1241,7 @@ XPCOMUtils.defineLazyPreferenceGetter(
SidebarController,
"sidebarRevampEnabled",
"sidebar.revamp",
false,
SidebarController.toggleRevampSidebar.bind(SidebarController)
false
);
XPCOMUtils.defineLazyPreferenceGetter(
SidebarController,

View File

@@ -36,4 +36,3 @@ run-if = ["os == 'mac'"] # Mac only feature
["browser_vertical_tabs.js"]
["browser_view_sidebar_menu.js"]
skip-if = ["os == 'linux' && debug"] # Bug 1896421

View File

@@ -142,53 +142,3 @@ add_task(async function test_conditional_tools() {
await BrowserTestUtils.closeWindow(win);
});
/**
* Check that the new sidebar is hidden/shown automatically (without a browser restart)
* when flipping the sidebar.revamp pref
*/
add_task(async function test_flip_revamp_pref() {
const win = await BrowserTestUtils.openNewBrowserWindow();
const sidebar = win.document.querySelector("sidebar-main");
await sidebar.updateComplete;
let verticalTabs = win.document.querySelector("#vertical-tabs");
ok(
!BrowserTestUtils.isVisible(verticalTabs),
"Vertical tabs slot is not visible initially"
);
// Open history sidebar
await toggleSidebarPanel(win, "viewHistorySidebar");
await SpecialPowers.pushPrefEnv({ set: [["sidebar.verticalTabs", true]] });
ok(BrowserTestUtils.isVisible(verticalTabs), "Vertical tabs slot is visible");
ok(sidebar, "Revamped sidebar is shown initially.");
await SpecialPowers.pushPrefEnv({ set: [["sidebar.revamp", false]] });
await TestUtils.waitForCondition(() => {
let isSidebarMainShown = !win.document.querySelector("sidebar-main").hidden;
let isSwitcherPanelShown =
!win.document.getElementById("sidebar-header").hidden;
// Vertical tabs pref should be turned off when revamp pref is turned off
let isVerticalTabsShown = BrowserTestUtils.isVisible(verticalTabs);
return !isSidebarMainShown && isSwitcherPanelShown && !isVerticalTabsShown;
}, "The new sidebar is hidden and the old sidebar is shown.");
ok(true, "The new sidebar is hidden and the old sidebar is shown.");
await SpecialPowers.pushPrefEnv({
set: [["sidebar.revamp", true]],
});
await sidebar.updateComplete;
await TestUtils.waitForCondition(() => {
let isSidebarMainShown = !document.querySelector("sidebar-main").hidden;
let isSwitcherPanelShown =
!win.document.getElementById("sidebar-header").hidden;
return isSidebarMainShown && !isSwitcherPanelShown;
}, "The old sidebar is hidden and the new sidebar is shown.");
ok(true, "The old sidebar is hidden and the new sidebar is shown.");
await BrowserTestUtils.closeWindow(win);
});

View File

@@ -134,12 +134,7 @@ add_task(async function test_expanded_state_for_always_show() {
await SpecialPowers.popPrefEnv();
});
/*
This test is failing after changes in bug 1906140 where we're hot swapping the sidebar.revamp pref.
We should investigate as part of bug 1896421 - Tidy up tests with extra windows after sidebar revamp
pref is made the default sidebar.
add_task(async function test_states_for_hide_sidebar() {
add_task(async function test_states_for_hide_sidebar() {
await SpecialPowers.pushPrefEnv({
set: [[SIDEBAR_VISIBILITY_PREF, "hide-sidebar"]],
});
@@ -206,4 +201,4 @@ pref is made the default sidebar.
await BrowserTestUtils.closeWindow(win);
await BrowserTestUtils.closeWindow(newWin);
await SpecialPowers.popPrefEnv();
}); */
});

View File

@@ -14,32 +14,8 @@
# based on the order of appearance in this file. Settings within
# a group will also be determined by their order in this file.
[sidebar]
group = "experimental-features-group-customize-browsing"
title = "sidebar-title"
description = "sidebar-description"
description-links = {connect= "https://connect.mozilla.org/t5/discussions/firefox-sidebar-and-vertical-tabs-try-them-out-in-nightly/m-p/63231#M22243"}
restart-required = false
preference = "sidebar.revamp"
type = "boolean"
bug-numbers = [1906140]
is-public-jexl = "nightly_build"
default-value-jexl = "false"
[vertical-tabs]
group = "experimental-features-group-customize-browsing"
title = "vertical-tabs-title"
description = "vertical-tabs-description"
description-links = {connect= "https://connect.mozilla.org/t5/discussions/firefox-sidebar-and-vertical-tabs-try-them-out-in-nightly/m-p/63231#M22243"}
restart-required = false
preference = "sidebar.verticalTabs"
type = "boolean"
bug-numbers = [1906140]
is-public-jexl = "nightly_build"
default-value-jexl = "false"
[genai-chat]
group = "experimental-features-group-customize-browsing"
group = "experimental-features-group-browsing"
title = "genai-settings-chat-title"
description = "genai-settings-chat-description"
description-links = {connect= "https://connect.mozilla.org/t5/discussions/share-your-feedback-on-the-ai-services-experiment-in-nightly/m-p/60519#M21202"}
@@ -51,7 +27,7 @@ is-public-jexl = "nightly_build"
default-value-jexl = "false"
[url-bar-ime-search]
group = "experimental-features-group-customize-browsing"
group = "experimental-features-group-browsing"
title = "experimental-features-ime-search"
description = "experimental-features-ime-search-description"
restart-required = false
@@ -62,7 +38,7 @@ is-public-jexl = "true"
default-value-jexl = "false"
[auto-pip]
group = "experimental-features-group-customize-browsing"
group = "experimental-features-group-browsing"
title = "experimental-features-auto-pip"
description = "experimental-features-auto-pip-description"
restart-required = false
@@ -73,7 +49,7 @@ is-public-jexl = "true"
default-value-jexl = "false"
[webrtc-global-mute-toggles]
group = "experimental-features-group-customize-browsing"
group = "experimental-features-group-browsing"
title = "experimental-features-webrtc-global-mute-toggles"
description = "experimental-features-webrtc-global-mute-toggles-description"
restart-required = false
@@ -84,7 +60,7 @@ is-public-jexl = "nightly_build"
default-value-jexl = "false"
[cookie-samesite-none-requires-secure]
group = "experimental-features-group-customize-browsing"
group = "experimental-features-group-browsing"
title = "experimental-features-cookie-samesite-none-requires-secure2"
description = "experimental-features-cookie-samesite-none-requires-secure2-description"
restart-required = false

View File

@@ -51,18 +51,10 @@ experimental-features-auto-pip =
.label = Picture-in-Picture: auto-open on tab switch
experimental-features-auto-pip-description = Enable Picture-in-Picture on active videos when switching tabs.
# Updated sidebar settings
sidebar-title =
.label = Sidebar
sidebar-description = Easily access your history, tabs from other devices, sidebar extensions, and more as you browse. <a data-l10n-name="connect">Share feedback</a>
vertical-tabs-title =
.label = Vertical tabs
vertical-tabs-description = Move your tabs from the top of the browser to the side. Requires you also try the sidebar. <a data-l10n-name="connect">Share feedback</a>
experimental-features-group-browsing =
.label = Browsing
experimental-features-group-developer-tools =
.label = Developer Tools
experimental-features-group-webpage-display =
.label = Webpage Display
experimental-features-group-customize-browsing =
.label = Customize your browsing
experimental-features-group-customize-browsing-description = If you try these features, <a data-l10n-name="connect">share your thoughts on Connect</a>