Bug 1363485 - Add migration to new navbar layout
MozReview-Commit-ID: HIPq5rKgtlA
--- a/browser/components/customizableui/CustomizableUI.jsm
+++ b/browser/components/customizableui/CustomizableUI.jsm
@@ -59,17 +59,17 @@ const kSubviewEvents = [
"ViewShowing",
"ViewHiding"
];
/**
* The current version. We can use this to auto-add new default widgets as necessary.
* (would be const but isn't because of testing purposes)
*/
-var kVersion = 6;
+var kVersion = 7;
/**
* Buttons removed from built-ins by version they were removed. kVersion must be
* bumped any time a new id is added to this. Use the button id as key, and
* version the button is removed in as the value. e.g. "pocket-button": 5
*/
var ObsoleteBuiltinButtons = {
"pocket-button": 6
@@ -420,16 +420,34 @@ var CustomizableUIInternal = {
if (currentVersion < 2) {
// Nuke the old 'loop-call-button' out of orbit.
CustomizableUI.removeWidgetFromArea("loop-call-button");
}
if (currentVersion < 4) {
CustomizableUI.removeWidgetFromArea("loop-button-throttled");
}
+
+ if (currentVersion < 7 && gSavedState && gSavedState.placements &&
+ gSavedState.placements[CustomizableUI.AREA_NAVBAR]) {
+ let placements = gSavedState.placements[CustomizableUI.AREA_NAVBAR];
+ let newPlacements = ["back-button", "forward-button", "stop-reload-button", "home-button"];
+ for (let button of placements) {
+ if (!newPlacements.includes(button)) {
+ newPlacements.push(button);
+ }
+ }
+
+ if (!newPlacements.includes("sidebar-button")) {
+ newPlacements.push("sidebar-button");
+ }
+
+ gSavedState.placements[CustomizableUI.AREA_NAVBAR] = newPlacements;
+ }
+
},
/**
* _markObsoleteBuiltinButtonsSeen
* when upgrading, ensure obsoleted buttons are in seen state.
*/
_markObsoleteBuiltinButtonsSeen() {
if (!gSavedState)