mirror of
https://codeberg.org/librewolf/source.git
synced 2024-12-22 21:53:31 -05:00
backport D169570, D167444 and D167563
This commit is contained in:
parent
8035755185
commit
29158b63d4
2 changed files with 95 additions and 0 deletions
|
@ -10,6 +10,7 @@ patches/librewolf-pref-pane.patch
|
||||||
patches/librewolf-prefs.patch
|
patches/librewolf-prefs.patch
|
||||||
patches/mozilla_dirs.patch
|
patches/mozilla_dirs.patch
|
||||||
patches/remove_addons.patch
|
patches/remove_addons.patch
|
||||||
|
patches/rfp-performance-api.patch
|
||||||
patches/sed-patches/allow-searchengines-non-esr.patch
|
patches/sed-patches/allow-searchengines-non-esr.patch
|
||||||
patches/sed-patches/disable-pocket.patch
|
patches/sed-patches/disable-pocket.patch
|
||||||
patches/sed-patches/stop-undesired-requests.patch
|
patches/sed-patches/stop-undesired-requests.patch
|
||||||
|
@ -25,4 +26,5 @@ patches/ui-patches/remove-cfrprefs.patch
|
||||||
patches/ui-patches/remove-organization-policy-banner.patch
|
patches/ui-patches/remove-organization-policy-banner.patch
|
||||||
patches/ui-patches/remove-snippets-from-home.patch
|
patches/ui-patches/remove-snippets-from-home.patch
|
||||||
patches/ui-patches/website-appearance-ui-rfp.patch
|
patches/ui-patches/website-appearance-ui-rfp.patch
|
||||||
|
patches/unified-extensions-dont-show-recommendations.patch
|
||||||
patches/urlbarprovider-interventions.patch
|
patches/urlbarprovider-interventions.patch
|
||||||
|
|
93
patches/unified-extensions-dont-show-recommendations.patch
Normal file
93
patches/unified-extensions-dont-show-recommendations.patch
Normal file
|
@ -0,0 +1,93 @@
|
||||||
|
# Backport of https://phabricator.services.mozilla.com/D169570
|
||||||
|
# Should land in 112.0
|
||||||
|
--- a/browser/base/content/browser-addons.js
|
||||||
|
+++ b/browser/base/content/browser-addons.js
|
||||||
|
@@ -1472,11 +1472,19 @@
|
||||||
|
}
|
||||||
|
|
||||||
|
// The button should directly open `about:addons` when the user does not
|
||||||
|
// have any active extensions listed in the unified extensions panel.
|
||||||
|
if (!this.hasExtensionsInPanel()) {
|
||||||
|
- await BrowserOpenAddonsMgr("addons://discover/");
|
||||||
|
+ let viewID;
|
||||||
|
+ if (
|
||||||
|
+ Services.prefs.getBoolPref("extensions.getAddons.showPane", true)
|
||||||
|
+ ) {
|
||||||
|
+ viewID = "addons://discover/";
|
||||||
|
+ } else {
|
||||||
|
+ viewID = "addons://list/extension";
|
||||||
|
+ }
|
||||||
|
+ await BrowserOpenAddonsMgr(viewID);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
let panel = this.panel;
|
||||||
|
--- a/browser/components/extensions/test/browser/browser_unified_extensions.js
|
||||||
|
+++ b/browser/components/extensions/test/browser/browser_unified_extensions.js
|
||||||
|
@@ -485,10 +485,64 @@
|
||||||
|
|
||||||
|
gUnifiedExtensions.getActivePolicies = origGetActivePolicies;
|
||||||
|
});
|
||||||
|
|
||||||
|
add_task(
|
||||||
|
+ async function test_button_opens_extlist_when_no_extension_and_pane_disabled() {
|
||||||
|
+ // If extensions.getAddons.showPane is set to false, there is no "Recommended" tab,
|
||||||
|
+ // so we need to make sure we don't navigate to it.
|
||||||
|
+
|
||||||
|
+ // The test harness registers regular extensions so we need to mock the
|
||||||
|
+ // `getActivePolicies` extension to simulate zero extensions installed.
|
||||||
|
+ const origGetActivePolicies = gUnifiedExtensions.getActivePolicies;
|
||||||
|
+ gUnifiedExtensions.getActivePolicies = () => [];
|
||||||
|
+
|
||||||
|
+ await SpecialPowers.pushPrefEnv({
|
||||||
|
+ set: [
|
||||||
|
+ // Set this to another value to make sure not to "accidentally" land on the right page
|
||||||
|
+ ["extensions.ui.lastCategory", "addons://list/theme"],
|
||||||
|
+ ["extensions.getAddons.showPane", false],
|
||||||
|
+ ],
|
||||||
|
+ });
|
||||||
|
+
|
||||||
|
+ await BrowserTestUtils.withNewTab(
|
||||||
|
+ { gBrowser, url: "about:robots" },
|
||||||
|
+ async () => {
|
||||||
|
+ const { button } = gUnifiedExtensions;
|
||||||
|
+ ok(button, "expected button");
|
||||||
|
+
|
||||||
|
+ // Primary click should open about:addons.
|
||||||
|
+ const tabPromise = BrowserTestUtils.waitForNewTab(
|
||||||
|
+ gBrowser,
|
||||||
|
+ "about:addons",
|
||||||
|
+ true
|
||||||
|
+ );
|
||||||
|
+
|
||||||
|
+ button.click();
|
||||||
|
+
|
||||||
|
+ const tab = await tabPromise;
|
||||||
|
+ is(
|
||||||
|
+ gBrowser.currentURI.spec,
|
||||||
|
+ "about:addons",
|
||||||
|
+ "expected about:addons to be open"
|
||||||
|
+ );
|
||||||
|
+ is(
|
||||||
|
+ gBrowser.selectedBrowser.contentWindow.gViewController.currentViewId,
|
||||||
|
+ "addons://list/extension",
|
||||||
|
+ "expected about:addons to show the extension list"
|
||||||
|
+ );
|
||||||
|
+ BrowserTestUtils.removeTab(tab);
|
||||||
|
+ }
|
||||||
|
+ );
|
||||||
|
+
|
||||||
|
+ await SpecialPowers.popPrefEnv();
|
||||||
|
+
|
||||||
|
+ gUnifiedExtensions.getActivePolicies = origGetActivePolicies;
|
||||||
|
+ }
|
||||||
|
+);
|
||||||
|
+
|
||||||
|
+add_task(
|
||||||
|
async function test_unified_extensions_panel_not_open_in_customization_mode() {
|
||||||
|
const listView = getListView();
|
||||||
|
ok(listView, "expected list view");
|
||||||
|
const throwIfExecuted = () => {
|
||||||
|
throw new Error("panel should not have been shown");
|
||||||
|
|
Loading…
Reference in a new issue