diff --git a/mozilla/calendar/lightning/content/messenger-overlay-sidebar.js b/mozilla/calendar/lightning/content/messenger-overlay-sidebar.js
index 006cc8ff01b..db5c43247f3 100644
--- a/mozilla/calendar/lightning/content/messenger-overlay-sidebar.js
+++ b/mozilla/calendar/lightning/content/messenger-overlay-sidebar.js
@@ -215,24 +215,7 @@ function ltnMinimonthPick(minimonth)
if (document.getElementById("displayDeck").selectedPanel !=
document.getElementById("calendar-view-box")) {
- var view = currentView();
-
- // If we've never shown the view before, we need to do some special
- // things here.
- if (!view.initialized) {
- showCalendarView('month');
- view = currentView();
- cdt = cdt.getInTimezone(view.timezone);
- cdt.isDate = true;
- view.goToDay(cdt);
- return;
- }
-
- // showCalendarView is going to use the value passed in to switch to
- // foo-view, so strip off the -view part of the current view.
- var viewID = view.getAttribute("id");
- viewID = viewID.substring(0, viewID.indexOf('-'));
- showCalendarView(viewID);
+ showCalendarView(gLastShownCalendarView);
}
cdt = cdt.getInTimezone(currentView().timezone);
@@ -363,6 +346,21 @@ function ltnOnLoad(event)
modeBoxAttrModified,
true);
+ // find last shown calendar view (persist="checked")
+ var availableViews = getViewDeck();
+ var numChilds = availableViews.childNodes.length;
+ for (var i = 0; i < numChilds; i++) {
+ var view = availableViews.childNodes[i];
+ var command = document.getElementById(view.id+"-command");
+ if (command && command.getAttribute("checked") == "true") {
+ gLastShownCalendarView = view.id.substring(0, view.id.indexOf('-'));
+ break;
+ }
+ }
+ if (!gLastShownCalendarView) {
+ gLastShownCalendarView = 'month';
+ }
+
gMiniMonthLoading = true;
var today = new Date();
diff --git a/mozilla/calendar/lightning/content/messenger-overlay-sidebar.xul b/mozilla/calendar/lightning/content/messenger-overlay-sidebar.xul
index e175e576a59..2c71d918f9f 100644
--- a/mozilla/calendar/lightning/content/messenger-overlay-sidebar.xul
+++ b/mozilla/calendar/lightning/content/messenger-overlay-sidebar.xul
@@ -193,10 +193,10 @@
-
-
-
-
+
+
+
+
diff --git a/mozilla/calendar/lightning/content/messenger-overlay-toolbar.js b/mozilla/calendar/lightning/content/messenger-overlay-toolbar.js
index ffdbf4e9a0f..a3010d82ee9 100644
--- a/mozilla/calendar/lightning/content/messenger-overlay-toolbar.js
+++ b/mozilla/calendar/lightning/content/messenger-overlay-toolbar.js
@@ -147,8 +147,6 @@ function ltnSwitch2Calendar() {
deck.selectedPanel = document.getElementById("calendar-view-box");
// show the last displayed type of calendar view
- if(gLastShownCalendarView == null)
- gLastShownCalendarView = 'week';
showCalendarView(gLastShownCalendarView);
document.commandDispatcher.updateCommands('mail-toolbar');