Bug 1478041 - Remove some old UI migration steps. r?gijs
MozReview-Commit-ID: KnCUnzZusjf
--- a/browser/components/moz.build
+++ b/browser/components/moz.build
@@ -14,19 +14,16 @@ with Files("tests/**"):
BUG_COMPONENT = ("Firefox", "General")
with Files("tests/browser/browser_bug538331.js"):
BUG_COMPONENT = ("Toolkit", "Application Update")
with Files("tests/browser/browser_contentpermissionprompt.js"):
BUG_COMPONENT = ("Firefox", "Site Identity and Permission Panels")
-with Files("tests/unit/test_browserGlue_migration_loop_cleanup.js"):
- BUG_COMPONENT = ("Firefox", "General")
-
with Files("tests/unit/test_distribution.js"):
BUG_COMPONENT = ("Firefox", "Distributions")
with Files("safebrowsing/**"):
BUG_COMPONENT = ("Toolkit", "Safe Browsing")
with Files('controlcenter/**'):
BUG_COMPONENT = ('Firefox', 'General')
--- a/browser/components/nsBrowserGlue.js
+++ b/browser/components/nsBrowserGlue.js
@@ -1836,73 +1836,16 @@ BrowserGlue.prototype = {
return;
}
if (currentUIVersion >= UI_VERSION)
return;
let xulStore = Services.xulStore;
- if (currentUIVersion < 36) {
- xulStore.removeValue("chrome://passwordmgr/content/passwordManager.xul",
- "passwordCol",
- "hidden");
- }
-
- if (currentUIVersion < 37) {
- Services.prefs.clearUserPref("browser.sessionstore.restore_on_demand");
- }
-
- if (currentUIVersion < 38) {
- LoginHelper.removeLegacySignonFiles();
- }
-
- if (currentUIVersion < 39) {
- // Remove the 'defaultset' value for all the toolbars
- let toolbars = ["nav-bar", "PersonalToolbar",
- "TabsToolbar", "toolbar-menubar"];
- for (let toolbarId of toolbars) {
- xulStore.removeValue(BROWSER_DOCURL, toolbarId, "defaultset");
- }
- }
-
- if (currentUIVersion < 40) {
- const kOldSafeBrowsingPref = "browser.safebrowsing.enabled";
- // Default value is set to true, a user pref means that the pref was
- // set to false.
- if (Services.prefs.prefHasUserValue(kOldSafeBrowsingPref) &&
- !Services.prefs.getBoolPref(kOldSafeBrowsingPref)) {
- Services.prefs.setBoolPref("browser.safebrowsing.phishing.enabled",
- false);
- // Should just remove support for the pref entirely, even if it's
- // only in about:config
- Services.prefs.clearUserPref(kOldSafeBrowsingPref);
- }
- }
-
- if (currentUIVersion < 41) {
- const Preferences = ChromeUtils.import("resource://gre/modules/Preferences.jsm", {}).Preferences;
- Preferences.resetBranch("loop.");
- }
-
- if (currentUIVersion < 42) {
- let backupFile = Services.dirsvc.get("ProfD", Ci.nsIFile);
- backupFile.append("tabgroups-session-backup.json");
- OS.File.remove(backupFile.path, {ignoreAbsent: true}).catch(ex => Cu.reportError(ex));
- }
-
- if (currentUIVersion < 43) {
- let currentTheme = Services.prefs.getCharPref("lightweightThemes.selectedThemeID", "");
- if (currentTheme == "firefox-devedition@mozilla.org") {
- let newTheme = Services.prefs.getCharPref("devtools.theme") == "dark" ?
- "firefox-compact-dark@mozilla.org" : "firefox-compact-light@mozilla.org";
- Services.prefs.setCharPref("lightweightThemes.selectedThemeID", newTheme);
- }
- }
-
if (currentUIVersion < 44) {
// Merge the various cosmetic animation prefs into one. If any were set to
// disable animations, we'll disabled cosmetic animations entirely.
let animate = Services.prefs.getBoolPref("browser.tabs.animate", true) &&
Services.prefs.getBoolPref("browser.fullscreen.animate", true) &&
!Services.prefs.getBoolPref("alerts.disableSlidingEffect", false);
Services.prefs.setBoolPref("toolkit.cosmeticAnimations.enabled", animate);
@@ -2100,20 +2043,16 @@ BrowserGlue.prototype = {
} catch (e) { /* Don't panic if the value is not a valid locale code. */ }
}
}
Services.prefs.clearUserPref(SELECTED_LOCALE_PREF);
Services.prefs.clearUserPref(MATCHOS_LOCALE_PREF);
}
}
- if (currentUIVersion < 60) {
- // This version is superseded by version 66. See bug 1444965.
- }
-
if (currentUIVersion < 61) {
// Remove persisted toolbarset from navigator toolbox
xulStore.removeValue(BROWSER_DOCURL, "navigator-toolbox", "toolbarset");
}
if (currentUIVersion < 62) {
// Remove iconsize and mode from all the toolbars
let toolbars = ["navigator-toolbox", "nav-bar", "PersonalToolbar",
deleted file mode 100644
--- a/browser/components/tests/unit/test_browserGlue_migration_loop_cleanup.js
+++ /dev/null
@@ -1,32 +0,0 @@
-const UI_VERSION = 41;
-const TOPIC_BROWSERGLUE_TEST = "browser-glue-test";
-const TOPICDATA_BROWSERGLUE_TEST = "force-ui-migration";
-
-var gBrowserGlue = Cc["@mozilla.org/browser/browserglue;1"]
- .getService(Ci.nsIObserver);
-
-Services.prefs.setIntPref("browser.migration.version", UI_VERSION - 1);
-
-add_task(async function test_check_cleanup_loop_prefs() {
- Services.prefs.setBoolPref("loop.createdRoom", true);
- Services.prefs.setBoolPref("loop1.createdRoom", true);
- Services.prefs.setBoolPref("loo.createdRoom", true);
-
- // Simulate a migration.
- gBrowserGlue.observe(null, TOPIC_BROWSERGLUE_TEST, TOPICDATA_BROWSERGLUE_TEST);
-
- Assert.throws(() => Services.prefs.getBoolPref("loop.createdRoom"),
- /NS_ERROR_UNEXPECTED/,
- "should have cleared old loop preference 'loop.createdRoom'");
- Assert.ok(Services.prefs.getBoolPref("loop1.createdRoom"),
- "should have left non-loop pref 'loop1.createdRoom' untouched");
- Assert.ok(Services.prefs.getBoolPref("loo.createdRoom"),
- "should have left non-loop pref 'loo.createdRoom' untouched");
-});
-
-registerCleanupFunction(() => {
- Services.prefs.clearUserPref("browser.migration.version");
- Services.prefs.clearUserPref("loop.createdRoom");
- Services.prefs.clearUserPref("loop1.createdRoom");
- Services.prefs.clearUserPref("loo.createdRoom");
-});
--- a/browser/components/tests/unit/xpcshell.ini
+++ b/browser/components/tests/unit/xpcshell.ini
@@ -1,13 +1,12 @@
[DEFAULT]
head = head.js
firefox-appdir = browser
skip-if = toolkit == 'android'
support-files =
distribution.ini
data/engine-de-DE.xml
-[test_browserGlue_migration_loop_cleanup.js]
[test_distribution.js]
[test_distribution_cachedexistence.js]
[test_browserGlue_migration_social_cleanup.js]
[test_browserGlue_pingcentre.js]
--- a/toolkit/components/passwordmgr/LoginHelper.jsm
+++ b/toolkit/components/passwordmgr/LoginHelper.jsm
@@ -736,43 +736,16 @@ var LoginHelper = {
/**
* As above, but for an array of objects.
*/
vanillaObjectsToLogins(logins) {
return logins.map(this.vanillaObjectToLogin);
},
- removeLegacySignonFiles() {
- const {Constants, Path, File} = ChromeUtils.import("resource://gre/modules/osfile.jsm").OS;
-
- const profileDir = Constants.Path.profileDir;
- const defaultSignonFilePrefs = new Map([
- ["signon.SignonFileName", "signons.txt"],
- ["signon.SignonFileName2", "signons2.txt"],
- ["signon.SignonFileName3", "signons3.txt"]
- ]);
- const toDeletes = new Set();
-
- for (let [pref, val] of defaultSignonFilePrefs.entries()) {
- toDeletes.add(Path.join(profileDir, val));
-
- try {
- let signonFile = Services.prefs.getCharPref(pref);
-
- toDeletes.add(Path.join(profileDir, signonFile));
- Services.prefs.clearUserPref(pref);
- } catch (e) {}
- }
-
- for (let file of toDeletes) {
- File.remove(file);
- }
- },
-
/**
* Returns true if the user has a master password set and false otherwise.
*/
isMasterPasswordSet() {
let tokenDB = Cc["@mozilla.org/security/pk11tokendb;1"]
.getService(Ci.nsIPK11TokenDB);
let token = tokenDB.getInternalKeyToken();
return token.hasPassword;
deleted file mode 100644
--- a/toolkit/components/passwordmgr/test/unit/test_removeLegacySignonFiles.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * Tests the LoginHelper object.
- */
-
-"use strict";
-
-
-
-ChromeUtils.defineModuleGetter(this, "LoginHelper",
- "resource://gre/modules/LoginHelper.jsm");
-
-
-async function createSignonFile(singon) {
- let {file, pref} = singon;
-
- if (pref) {
- Services.prefs.setCharPref(pref, file);
- }
-
- await OS.File.writeAtomic(
- OS.Path.join(OS.Constants.Path.profileDir, file), new Uint8Array(1));
-}
-
-async function isSignonClear(singon) {
- const {file, pref} = singon;
- const fileExists = await OS.File.exists(
- OS.Path.join(OS.Constants.Path.profileDir, file));
-
- if (pref) {
- try {
- Services.prefs.getCharPref(pref);
- return false;
- } catch (e) {}
- }
-
- return !fileExists;
-}
-
-add_task(async function test_remove_lagecy_signonfile() {
- // In the last test case, signons3.txt being deleted even when
- // it doesn't exist.
- const signonsSettings = [[
- { file: "signons.txt" },
- { file: "signons2.txt" },
- { file: "signons3.txt" }
- ], [
- { file: "signons.txt", pref: "signon.SignonFileName" },
- { file: "signons2.txt", pref: "signon.SignonFileName2" },
- { file: "signons3.txt", pref: "signon.SignonFileName3" }
- ], [
- { file: "signons2.txt" },
- { file: "singons.txt", pref: "signon.SignonFileName" },
- { file: "customized2.txt", pref: "signon.SignonFileName2" },
- { file: "customized3.txt", pref: "signon.SignonFileName3" }
- ]];
-
- for (let setting of signonsSettings) {
- for (let singon of setting) {
- await createSignonFile(singon);
- }
-
- LoginHelper.removeLegacySignonFiles();
-
- for (let singon of setting) {
- equal(await isSignonClear(singon), true);
- }
- }
-});
--- a/toolkit/components/passwordmgr/test/unit/xpcshell.ini
+++ b/toolkit/components/passwordmgr/test/unit/xpcshell.ini
@@ -2,18 +2,16 @@
head = head.js
support-files = data/**
# Test JSON file access and import from SQLite, not applicable to Android.
[test_module_LoginImport.js]
skip-if = os == "android"
[test_module_LoginStore.js]
skip-if = os == "android"
-[test_removeLegacySignonFiles.js]
-skip-if = os == "android"
# Test SQLite database backup and migration, applicable to Android only.
[test_storage_mozStorage.js]
skip-if = true || os != "android" # Bug 1171687: Needs fixing on Android
# The following tests apply to any storage back-end.
[test_context_menu.js]
skip-if = os == "android" # The context menu isn't used on Android.