feat: enable default theme migration from G4 to G5

(cherry picked from commit 819442ae1650039fcdbdd72c11b41a15c9d1ebeb)
This commit is contained in:
adamp01
2022-07-28 16:32:13 +01:00
committed by Alex Kontos
parent d3a5353c47
commit 35e2001b19

View File

@@ -29,6 +29,8 @@ XPCOMUtils.defineLazyGlobalGetters(this, ["fetch"]);
const WaterfoxGlue = {
async init() {
this._migrateUI();
AddonManager.maybeInstallBuiltinAddon(
"addonstores@waterfox.net",
"1.0.0",
@@ -45,6 +47,37 @@ const WaterfoxGlue = {
Services.obs.addObserver(this, "main-pane-loaded");
},
async _migrateUI() {
let currentUIVersion = Services.prefs.getIntPref(
"browser.migration.version"
);
async function enableTheme(id) {
AddonManager.getAddonByID(id).then(addon => addon.enable());
}
if (currentUIVersion < 128) {
// Ensure the theme id is set correctly for G5
const DEFAULT_THEME = "default-theme@mozilla.org";
AddonManager.getAddonsByTypes(["theme"]).then(themes => {
let activeTheme = themes.find(addon => addon.isActive);
if (activeTheme) {
let themeId = activeTheme.id;
if (themeId == "lepton@waterfox.net") {
enableTheme("default-theme@mozilla.org");
} else if (themeId == "australis-light@waterfox.net") {
enableTheme("firefox-compact-light@mozilla.org");
} else if (themeId == "australis-dark@waterfox.net") {
enableTheme("firefox-compact-dark@mozilla.org");
}
} else {
// If no activeTheme detected, set default.
enableTheme(DEFAULT_THEME);
}
});
}
},
async getChromeManifest(manifest) {
let uri;
let privateWindow = false;