diff --git a/mozilla/calendar/base/content/calendar-event-dialog.js b/mozilla/calendar/base/content/calendar-event-dialog.js index 0d91bef138e..33d4f625f70 100644 --- a/mozilla/calendar/base/content/calendar-event-dialog.js +++ b/mozilla/calendar/base/content/calendar-event-dialog.js @@ -161,6 +161,10 @@ function loadDialog(item) if (item.calendar.uri.equals(calendars[i].uri)) calendarList.selectedIndex = i; } + } else { + // no calendar attached to item + // select first entry in calendar list as default + document.getElementById("item-calendar").selectedIndex = 0; } /* recurrence */ diff --git a/mozilla/calendar/base/content/calendar-item-editing.js b/mozilla/calendar/base/content/calendar-item-editing.js index 3f4f3541f1e..50771fc1074 100644 --- a/mozilla/calendar/base/content/calendar-item-editing.js +++ b/mozilla/calendar/base/content/calendar-item-editing.js @@ -77,6 +77,10 @@ function createEventWithDialog(calendar, startDate, endDate, summary) } event.endDate = endDate.clone(); + if (calendar) { + event.calendar = calendar; + } + if (summary) event.title = summary; @@ -92,6 +96,10 @@ function createTodoWithDialog(calendar, dueDate, summary) const kDefaultTimezone = calendarDefaultTimezone(); var todo = createToDo(); + if (calendar) { + todo.calendar = calendar; + } + if (summary) todo.title = summary; diff --git a/mozilla/calendar/lightning/content/calendar-management.js b/mozilla/calendar/lightning/content/calendar-management.js index 2a5d82c550d..65f0b915a67 100644 --- a/mozilla/calendar/lightning/content/calendar-management.js +++ b/mozilla/calendar/lightning/content/calendar-management.js @@ -140,6 +140,10 @@ var ltnCalendarViewController = { // XXX If we're adding an item from the view, let's make sure that // XXX the calendar in question is visible! + if (!aCalendar) { + aCalendar = ltnSelectedCalendar(); + } + // if we're given both times, skip the dialog if (aStartTime && aEndTime && !aStartTime.isDate && !aEndTime.isDate) { var event = createEvent(); @@ -364,6 +368,11 @@ var ltnCalendarTreeView = { function ltnSetTreeView() { document.getElementById("calendarTree").view = ltnCalendarTreeView; + + // Ensure that a calendar is selected in calendar tree after startup. + if (document.getElementById("calendarTree").currentIndex == -1) { + document.getElementById("calendarTree").view.selection.select(0); + } } window.addEventListener("load", ltnSetTreeView, false); diff --git a/mozilla/calendar/lightning/content/messenger-overlay-toolbar.xul b/mozilla/calendar/lightning/content/messenger-overlay-toolbar.xul index c0e62ca2600..e556541c66c 100644 --- a/mozilla/calendar/lightning/content/messenger-overlay-toolbar.xul +++ b/mozilla/calendar/lightning/content/messenger-overlay-toolbar.xul @@ -49,29 +49,59 @@ -