Fix bug 430430 - Consolidate context menus. r=berend, ui-r=christian

git-svn-id: svn://10.0.0.236/branches/MOZILLA_1_8_BRANCH@250955 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
mozilla%kewis.ch
2008-04-29 21:04:34 +00:00
parent e6dac5ec93
commit e6c2265e3e
17 changed files with 319 additions and 218 deletions

View File

@@ -550,6 +550,18 @@ function moveSelection() {
}
}
agendaListbox.getSelectedItems =
function getSelectedItems() {
var selindex = this.agendaListboxControl.selectedIndex;
var items = [];
if (this.isEventListItem(this.agendaListboxControl.selectedItem)) {
// If at some point we support selecting multiple items, this array can
// be expanded.
items = [this.agendaListboxControl.selectedItem.getItem()];
}
return items;
}
agendaListbox.isEventListItem =
function isEventListItem(aListItem) {
var isEventListItem = (aListItem != null);

View File

@@ -495,3 +495,17 @@ function injectCalendarCommandController() {
function removeCalendarCommandController() {
top.controllers.removeController(calendarController);
}
function setupContextItemType(event, items) {
if (items.some(isEvent) && items.some(isToDo)) {
event.target.setAttribute("type", "mixed");
} else if (items.length && isEvent(items[0])) {
event.target.setAttribute("type", "event");
} else if (items.length && isToDo(items[0])) {
event.target.setAttribute("type", "todo");
} else {
event.target.removeAttribute("type");
}
return true;
}

View File

@@ -37,10 +37,9 @@
- ***** END LICENSE BLOCK ***** -->
<!DOCTYPE overlay [
<!ENTITY % calendarDTD SYSTEM "chrome://calendar/locale/calendar.dtd" >
<!ENTITY % eventDialogDTD SYSTEM "chrome://calendar/locale/calendar-event-dialog.dtd">
%calendarDTD;
%eventDialogDTD;
<!ENTITY % calendarDTD SYSTEM "chrome://calendar/locale/calendar.dtd" > %calendarDTD;
<!ENTITY % eventDialogDTD SYSTEM "chrome://calendar/locale/calendar-event-dialog.dtd"> %eventDialogDTD;
<!ENTITY % menuOverlayDTD SYSTEM "chrome://calendar/locale/menuOverlay.dtd" > %menuOverlayDTD;
]>
<overlay id="calendar-common-sets-overlay"
@@ -111,119 +110,234 @@
<command id="calendar_go_to_today_command" oncommand="goToDate(now())"/>
</commandset>
<keyset id="calendar-keys">
<key id="calendar-day-view-key" key="&calendar.dayView.key;" observes="calendar_day-view_command" modifiers="accel"/>
<key id="calendar-week-view-key" key="&calendar.weekView.key;" observes="calendar_week-view_command" modifiers="accel"/>
<key id="calendar-multiweek-view-key" key="&calendar.multiweekView.key;" observes="calendar_multiweek-view_command" modifiers="accel"/>
<key id="calendar-month-view-key" key="&calendar.monthView.key;" observes="calendar_month-view_command" modifiers="accel"/>
<key id="calendar-go-to-today-key" keycode="VK_DOWN" observes="calendar_go_to_today_command" modifiers="accel"/>
</keyset>
<popupset id="calendar-popupset">
<!-- CALENDAR ITEM CONTEXT MENU -->
<popup id="calendar-item-context-menu" onpopupshowing="return setupContextItemType(event, currentView().getSelectedItems({}));">
<menuitem id="calendar-item-context-menu-newevent-menutitem"
label="&calendar.context.newevent.label;"
accesskey="&calendar.context.newevent.accesskey;"
key="calendar-new-event-key"
observes="calendar_new_event_command"/>
<menuitem id="calendar-item-context-menu-newtodo-menuitem"
label="&calendar.context.newtodo.label;"
accesskey="&calendar.context.newtodo.accesskey;"
key="calendar-new-todo-key"
observes="calendar_new_todo_command"/>
<menuitem id="calendar-item-context-menu-modify-menuitem"
label="&calendar.context.modifyitem.label;"
accesskey="&calendar.context.modifyitem.accesskey;"
observes="calendar_modify_event_command"/>
<menuitem id="calendar-item-context-menu-delete-menuitem"
label="&calendar.context.deleteitem.label;"
accesskey="&calendar.context.deleteitem.accesskey;"
observes="calendar_delete_event_command"/>
<menuseparator id="calendar-item-context-menuseparator-adddeletemodify"/>
<menuitem id="calendar-item-context-menu-cut-menuitem"
label="&calendar.context.cutevent.label;"
accesskey="&calendar.context.cutevent.accesskey;"
key="key_cut"
observes="cmd_cut"/>
<menuitem id="calendar-item-context-menu-copy-menuitem"
label="&calendar.context.copyevent.label;"
accesskey="&calendar.context.copyevent.accesskey;"
key="key_copy"
observes="cmd_copy"/>
<menuitem id="calendar-item-context-menu-paste-menuitem"
label="&calendar.context.pasteevent.label;"
accesskey="&calendar.context.pasteevent.accesskey;"
key="key_paste"
observes="cmd_paste"/>
<menuseparator id="calendar-item-context-separator-cutcopypaste"/>
<menu id="calendar-item-context-menu-convert-menu"
label="&calendar.context.convertmenu.label;"
accesskey="&calendar.context.convertmenu.accesskey.calendar;">
<menupopup id="calendar-item-context-menu-convert-menupopup">
<menuitem id="calendar-view-context-menu-convert-message-menuitem"
label="&calendar.context.convertmenu.message.label;"
accesskey="&calendar.context.convertmenu.message.accesskey;"
oncommand="calendarMailButtonDNDObserver.onDropItems(currentView().getSelectedItems({}))"/>
<menuitem id="calendar-item-context-menu-convert-event-menuitem"
class="todo-only"
label="&calendar.context.convertmenu.event.label;"
accesskey="&calendar.context.convertmenu.event.accesskey;"
oncommand="calendarCalendarButtonDNDObserver.onDropItems(currentView().getSelectedItems({}))"/>
<menuitem id="calendar-item-context-menu-convert-task-menuitem"
class="event-only"
label="&calendar.context.convertmenu.task.label;"
accesskey="&calendar.context.convertmenu.task.accesskey;"
oncommand="calendarTaskButtonDNDObserver.onDropItems(currentView().getSelectedItems({}))"/>
</menupopup>
</menu>
</popup>
<!-- CALENDAR VIEW CONTEXT MENU -->
<popup id="calendar-view-context-menu">
<menuitem id="calendar-view-context-menu-newevent"
label="&calendar.context.newevent.label;"
observes="calendar_new_event_command"
accesskey="&calendar.context.newevent.accesskey;"
key="calendar-new-event-key"/>
<menuitem id="calendar-view-context-menu-newtodo"
label="&calendar.context.newtodo.label;"
observes="calendar_new_todo_command"
accesskey="&calendar.context.newtodo.accesskey;"
key="calendar-new-todo-key"/>
<!-- These labels are set dynamically, based on the current view -->
<menuitem id="calendar-view-context-menu-previous"
label=""
observes="calendar_view_prev_command"
label-day="&calendar.prevday.button.tooltip;"
label-week="&calendar.prevweek.button.tooltip;"
label-multiweek="&calendar.prevweek.button.tooltip;"
label-month="&calendar.prevmonth.button.tooltip;"
accesskey="&goPreviousCmd.accesskey;"/>
<menuitem id="calendar-view-context-menu-next"
label=""
observes="calendar_view_next_command"
label-day="&calendar.nextday.button.tooltip;"
label-week="&calendar.nextweek.button.tooltip;"
label-multiweek="&calendar.nextweek.button.tooltip;"
label-month="&calendar.nextmonth.button.tooltip;"
accesskey="&goNextCmd.all.accesskey;"/>
<menuseparator id="calendar-item-context-separator-cutcopypaste"/>
<!-- Cut and copy doesn't make sense in the views, but only showing paste
makes it look like something is missing. Disable by default. -->
<menuitem id="calendar-view-context-menu-cut-menuitem"
label="&calendar.context.cutevent.label;"
accesskey="&calendar.context.cutevent.accesskey;"
key="key_cut"
disabled="true"/>
<menuitem id="calendar-view-context-menu-copy-menuitem"
label="&calendar.context.copyevent.label;"
accesskey="&calendar.context.copyevent.accesskey;"
key="key_copy"
disabled="true"/>
<menuitem id="calendar-view-context-menu-paste-menuitem"
label="&calendar.context.pasteevent.label;"
accesskey="&calendar.context.pasteevent.accesskey;"
key="key_paste"
observes="cmd_paste"/>
</popup>
<!-- TASK ITEM CONTEXT MENU -->
<menupopup id="taskitem-context-menu" onpopupshowing="changeContextMenuForTask(event);">
<menuitem label="&calendar.context.newtodo.label;"
<menuitem id="task-context-menu-new"
label="&calendar.context.newtodo.label;"
accesskey="&calendar.context.newtodo.accesskey;"
id="task-context-menu-new"
key="calendar-new-todo-key"
command="calendar_new_todo_command"
observes="calendar_new_todo_command"/>
<menuitem id="task-context-menu-modify"
label="&calendar.context.modifytask.label;"
accesskey="&calendar.context.modifytask.accesskey;"
command="calendar_modify_todo_command"/>
<menuitem label="&calendar.context.deletetask.label;"
<menuitem id="task-context-menu-delete"
label="&calendar.context.deletetask.label;"
accesskey="&calendar.context.deletetask.accesskey;"
id="task-context-menu-delete"
command="calendar_delete_todo_command"
observes="calendar_delete_todo_command"/>
<menuseparator/>
<menuitem type="checkbox"
<menuitem id="calendar-context-markcompleted"
type="checkbox"
label="&calendar.context.markcompleted.label;"
accesskey="&calendar.context.markcompleted.accesskey;"
id="calendar-context-markcompleted"
oncommand="toggleCompleted(event)"/>
<menu label="&calendar.context.progress.label;"
accesskey="&calendar.context.progress.accesskey;"
id="task-context-menu-progress">
<menu id="task-context-menu-progress"
label="&calendar.context.progress.label;"
accesskey="&calendar.context.progress.accesskey;">
<menupopup id="calendar.context.progress-menu" onpopupshowing="changeTaskProgressMenu(event);">
<menuitem type="checkbox"
id="percent-0-menuitem"
<menuitem id="percent-0-menuitem"
type="checkbox"
label="&progress.level.0;"
accesskey="&progress.level.0.accesskey;"
observes="calendar_percentComplete-0_command"
command="calendar_percentComplete-0_command"/>
<menuitem type="checkbox"
id="percent-25-menuitem"
<menuitem id="percent-25-menuitem"
type="checkbox"
label="&progress.level.25;"
accesskey="&progress.level.25.accesskey;"
observes="calendar_percentComplete-25_command"
command="calendar_percentComplete-25_command"/>
<menuitem type="checkbox"
id="percent-50-menuitem"
<menuitem id="percent-50-menuitem"
type="checkbox"
label="&progress.level.50;"
accesskey="&progress.level.50.accesskey;"
observes="calendar_percentComplete-50_command"
command="calendar_percentComplete-50_command"/>
<menuitem type="checkbox"
id="percent-75-menuitem"
<menuitem id="percent-75-menuitem"
type="checkbox"
label="&progress.level.75;"
accesskey="&progress.level.75.accesskey;"
observes="calendar_percentComplete-75_command"
command="calendar_percentComplete-75_command"/>
<menuitem type="checkbox"
id="percent-100-menuitem"
<menuitem id="percent-100-menuitem"
type="checkbox"
label="&progress.level.100;"
accesskey="&progress.level.100.accesskey;"
observes="calendar_percentComplete-100_command"
command="calendar_percentComplete-100_command"/>
</menupopup>
</menu>
<menu label="&calendar.context.priority.label;"
accesskey="&calendar.context.priority.accesskey;"
id="task-context-menu-priority">
<menu id="task-context-menu-priority"
label="&calendar.context.priority.label;"
accesskey="&calendar.context.priority.accesskey;">
<menupopup id="calendar.context.priority-menu" onpopupshowing="changeTaskPriorityMenu(event)">
<menuitem type="checkbox"
id="priority-0-menuitem"
<menuitem id="priority-0-menuitem"
type="checkbox"
label="&priority.level.none;"
accesskey="&priority.level.none.accesskey;"
command="calendar_priority-0_command"
observes="calendar_priority-0_command"/>
<menuitem type="checkbox"
id="priority-9-menuitem"
<menuitem id="priority-9-menuitem"
type="checkbox"
label="&priority.level.low;"
accesskey="&priority.level.low.accesskey;"
command="calendar_priority-9_command"
observes="calendar_priority-9_command"/>
<menuitem type="checkbox"
id="priority-5-menuitem"
<menuitem id="priority-5-menuitem"
type="checkbox"
label="&priority.level.normal;"
accesskey="&priority.level.normal.accesskey;"
command="calendar_priority-5_command"
observes="calendar_priority-5_command"/>
<menuitem type="checkbox"
id="priority-1-menuitem"
<menuitem id="priority-1-menuitem"
type="checkbox"
label="&priority.level.high;"
accesskey="&priority.level.high.accesskey;"
command="calendar_priority-1_command"
observes="calendar_priority-1_command"/>
</menupopup>
</menu>
<menu label="&calendar.calendar.label;"
accesskey="&calendar.calendar.accesskey;"
id="calendar-context-calendar-menu">
<menupopup onpopupshowing="addCalendarNames(event);">
</menupopup>
<menu id="calendar-context-calendar-menu"
label="&calendar.calendar.label;"
accesskey="&calendar.calendar.accesskey;">
<menupopup id="calendar-context-calendar-menupopup"
onpopupshowing="addCalendarNames(event);"/>
</menu>
<menuseparator/>
<menu label="&calendar.context.convert.label;"
accesskey="&calendar.context.convert.accesskey;"
id="task-context-menu-convert">
<menupopup>
<menuitem label="&calendar.context.converttoevent.label;"
accesskey="&calendar.context.converttoevent.accesskey;"
id="calendar-context-converttoevent"
oncommand="tasksToEvents()"/>
<menuitem label="&calendar.context.converttomessage.label;"
accesskey="&calendar.context.converttomessage.accesskey;"
id="calendar-context-converttomessage"
<menuseparator id="task-context-menu-separator-conversion"/>
<menu id="task-context-menu-convert"
label="&calendar.context.convertmenu.label;"
accesskey="&calendar.context.convertmenu.accesskey.calendar;">
<menupopup id="task-context-convert-menupopup">
<menuitem id="calendar-context-converttomessage"
label="&calendar.context.convertmenu.message.label;"
accesskey="&calendar.context.convertmenu.message.accesskey;"
oncommand="tasksToMail()"/>
<menuitem id="calendar-context-converttoevent"
label="&calendar.context.convertmenu.event.label;"
accesskey="&calendar.context.convertmenu.event.accesskey;"
oncommand="tasksToEvents()"/>
</menupopup>
</menu>
</menupopup>
</popupset>
</overlay>

View File

@@ -144,6 +144,7 @@
<!-- on mousedown here happens before onclick above -->
<treechildren tooltip="eventTreeTooltip"
context="calendar-item-context-menu"
onkeypress="if (event.keyCode == 13) unifinderEditCommand();"
ondragover="return( false );"
ondblclick="unifinderDoubleClick(event)"

View File

@@ -296,6 +296,12 @@ function switchToView(aViewType) {
}
}
// Set the labels for the context-menu
var nextCommand = document.getElementById("calendar-view-context-menu-next");
nextCommand.setAttribute("label", nextCommand.getAttribute("label-"+aViewType));
var previousCommand = document.getElementById("calendar-view-context-menu-previous")
previousCommand.setAttribute("label", previousCommand.getAttribute("label-"+aViewType));
// Disable the menuitem when not in day or week view.
var rotated = document.getElementById("calendar_toggle_orientation_command");
if (aViewType == "day" || aViewType == "week") {

View File

@@ -21,6 +21,7 @@
-
- Contributor(s):
- Berend Cornelius <berend.cornelius@sun.com>
- Philipp Kewisch <mozilla@kewis.ch>
-
- Alternatively, the contents of this file may be used under the terms of
- either the GNU General Public License Version 2 or later (the "GPL"), or
@@ -145,7 +146,7 @@
tooltiptext="&calendar.newevent.button.tooltip;"
oncommand="agendaListbox.createNewEvent(event)"/>
</toolbar>
<popup id="agenda-menu" onpopupshowing="agendaListbox.buildAgendaPopupMenu(this);"/>
<popup id="agenda-menu" onpopupshowing="if (event.target == event.currentTarget) { agendaListbox.buildAgendaPopupMenu(this) }"/>
<vbox id="agenda-menu-box" hidden="true">
<menuitem label="&calendar.context.modifyitem.label;"
accesskey="&calendar.context.modifyitem.accesskey;"
@@ -153,6 +154,21 @@
<menuitem label="&calendar.context.deleteitem.label;"
accesskey="&calendar.context.deleteitem.accesskey;"
observes="agenda_delete_event_command"/>
<menu id="agenda-context-menu-convert-menu"
label="&calendar.context.convertmenu.label;"
accesskey="&calendar.context.convertmenu.accesskey.calendar;">
<menupopup id="agenda-context-menu-convert-menupopup">
<menuitem id="agenda-context-menu-convert-message-menuitem"
label="&calendar.context.convertmenu.message.label;"
accesskey="&calendar.context.convertmenu.message.accesskey;"
oncommand="calendarMailButtonDNDObserver.onDropItems(agendaListbox.getSelectedItems())"/>
<menuitem id="agenda-context-menu-convert-task-menuitem"
class="event-only"
label="&calendar.context.convertmenu.task.label;"
accesskey="&calendar.context.convertmenu.task.accesskey;"
oncommand="calendarTaskButtonDNDObserver.onDropItems(agendaListbox.getSelectedItems())"/>
</menupopup>
</menu>
</vbox>
<vbox id="richlistitem-container" hidden="true">
<agenda-allday-richlist-item/>

View File

@@ -567,3 +567,14 @@ description.tooltipBody {
white-space: -moz-pre-wrap;
margin: 0pt;
}
#calendar-view-context-menu[type="event"] .todo-only,
#calendar-view-context-menu[type="todo"] .event-only,
#calendar-view-context-menu[type="mixed"] .event-only,
#calendar-view-context-menu[type="mixed"] .todo-only,
#calendar-item-context-menu[type="event"] .todo-only,
#calendar-item-context-menu[type="todo"] .event-only,
#calendar-item-context-menu[type="mixed"] .event-only,
#calendar-item-context-menu[type="mixed"] .todo-only {
display: none;
}

View File

@@ -567,3 +567,14 @@ description.tooltipBody {
white-space: -moz-pre-wrap;
margin: 0pt;
}
#calendar-view-context-menu[type="event"] .todo-only,
#calendar-view-context-menu[type="todo"] .event-only,
#calendar-view-context-menu[type="mixed"] .event-only,
#calendar-view-context-menu[type="mixed"] .todo-only,
#calendar-item-context-menu[type="event"] .todo-only,
#calendar-item-context-menu[type="todo"] .event-only,
#calendar-item-context-menu[type="mixed"] .event-only,
#calendar-item-context-menu[type="mixed"] .todo-only {
display: none;
}

View File

@@ -324,12 +324,6 @@ function ltnSelectCalendarView(type) {
// Sunbird/Lightning Common view switching code
switchToView(type);
// Set the labels for the context-menu
var nextCommand = document.getElementById("context_next");
nextCommand.setAttribute("label", nextCommand.getAttribute("label-"+type));
var previousCommand = document.getElementById("context_previous")
previousCommand.setAttribute("label", previousCommand.getAttribute("label-"+type));
}
function toggleControlDisplay(aCommandId, aControlId) {

View File

@@ -125,13 +125,13 @@
<menupopup id="menu_NewPopup">
<menuitem id="ltnNewEvent" label="&lightning.menupopup.new.event.label;"
accesskey="&event.new.event.accesskey;"
key="newEventKey"
key="calendar-new-event-key"
command="calendar_new_event_command"
observes="calendar_new_event_command"
position="2"/>
<menuitem id="ltnNewTask" label="&lightning.menupopup.new.task.label;"
accesskey="&event.new.todo.accesskey;"
key="newTaskKey"
key="calendar-new-todo-key"
command="calendar_new_todo_command"
observes="calendar_new_todo_command"
position="3"/>
@@ -242,7 +242,7 @@
type="radio"
name="calendarMenuViews"
mode="calendar"
key="day-view-key"
key="calendar-day-view-key"
observes="calendar_day-view_command"/>
<menuitem id="ltnChangeViewWeek"
label="&lightning.toolbar.week.label;"
@@ -250,7 +250,7 @@
type="radio"
name="calendarMenuViews"
mode="calendar"
key="week-view-key"
key="calendar-week-view-key"
observes="calendar_week-view_command"/>
<menuitem id="ltnChangeViewMultiweek"
label="&lightning.toolbar.multiweek.label;"
@@ -258,7 +258,7 @@
type="radio"
name="calendarMenuViews"
mode="calendar"
key="multiweek-view-key"
key="calendar-multiweek-view-key"
observes="calendar_multiweek-view_command"/>
<menuitem id="ltnChangeViewMonth"
label="&lightning.toolbar.month.label;"
@@ -266,7 +266,7 @@
type="radio"
name="calendarMenuViews"
mode="calendar"
key="month-view-key"
key="calendar-month-view-key"
observes="calendar_month-view_command"/>
<menuseparator id="before-task-View-Section" mode="calendar,task"/>
<menuitem id="tasks-view-minimonth"
@@ -326,10 +326,9 @@
<window id="messengerWindow">
<broadcasterset id="calendar_broadcasters">
<broadcaster id="is_editable" hidden="false"/>
<broadcaster id="modeBroadcaster"/>
<broadcaster id="filterBroadcaster" value="all"/>
</broadcasterset>
</broadcasterset>
<!-- Be sure to keep these sets, since they will be overlayed by
calendar/base/content/calendar-common-sets.xul -->
@@ -352,57 +351,22 @@
<command id="lightning_modify_item_command" oncommand="goDoCommand('lightning_modify_item_command');"/>
</commandset>
<keyset id="ltnKeys">
<keyset id="calendar-keys">
<key id="openLightningKey" modifiers="accel" key="3" observes="switch2calendar"/>
<key id="openTasksKey" modifiers="accel" key="4" command="switch2task"/>
<key id="todaypanekey" command="calendar_toggle_todaypane_command" keycode="VK_F11"/>
<key id="newEventKey" key="I" modifiers="accel" command="calendar_new_event_command"/>
<key id="newTaskKey" key="D" modifiers="accel" command="calendar_new_todo_command"/>
<key id="day-view-key" key="1" modifiers="alt" command="calendar_day-view_command"/>
<key id="week-view-key" key="2" modifiers="alt" command="calendar_week-view_command"/>
<key id="multiweek-view-key" key="3" modifiers="alt" command="calendar_multiweek-view_command"/>
<key id="month-view-key" key="4" modifiers="alt" command="calendar_month-view_command"/>
<key id="gotoToday-key" keycode="VK_DOWN" modifiers="accel" command="calendar_go_to_today_command"/>
<key id="calendar-new-event-key" key="&lightning.keys.event.new;" modifiers="accel" command="calendar_new_event_command"/>
<key id="calendar-new-todo-key" key="&lightning.keys.todo.new;" modifiers="accel" command="calendar_new_todo_command"/>
</keyset>
<popupset id="calendar-popupset">
<popup id="calendar-view-context-menu" onpopupshowing="return true;">
<!-- These labels are set dynamically, based on the current view -->
<menuitem id="context_previous"
label=""
observes="calendar_view_prev_command"
label-day="&calendar.prevday.button.tooltip;"
label-week="&calendar.prevweek.button.tooltip;"
label-multiweek="&calendar.prevweek.button.tooltip;"
label-month="&calendar.prevmonth.button.tooltip;"
accesskey="&goPreviousCmd.accesskey;"/>
<menuitem id="context_next"
label=""
observes="calendar_view_next_command"
label-day="&calendar.nextday.button.tooltip;"
label-week="&calendar.nextweek.button.tooltip;"
label-multiweek="&calendar.nextweek.button.tooltip;"
label-month="&calendar.nextmonth.button.tooltip;"
accesskey="&goNextCmd.accesskey;"/>
<menuitem label="&calendar.context.newevent.label;"
observes="calendar_new_event_command"
accesskey="&lightning.context.newevent.accesskey;"/>
</popup>
<popup id="calendar-item-context-menu" onpopupshowing="return true;">
<menuitem label="&calendar.context.modifyitem.label;"
accesskey="&calendar.context.modifyitem.accesskey;"
observes="lightning_modify_item_command"/>
<menuitem label="&calendar.context.deleteitem.label;"
accesskey="&calendar.context.deleteitem.accesskey;"
observes="lightning_delete_item_command"/>
</popup>
<menupopup id="calendar-GoPopupMenu">
<menuitem id="ltnGoToToday"
label="&goTodayCmd.label;"
accesskey="&goTodayCmd.accesskey;"
mode="calendar"
observes="calendar_go_to_today_command"
key="gotoToday-key"/>
key="calendar-go-to-today-key"/>
<menuseparator id="before-ModeMenuItems"/>
<menuitem id="ltnMenu_mail"
type="radio"
@@ -434,13 +398,13 @@
<menupopup id="calendarCalendarPopupMenu">
<menuitem id="ltnNewEvent2" label="&event.new.event;"
accesskey="&event.new.event.accesskey;"
key="newEventKey"
key="calendar-new-event-key"
observes="calendar_new_event_command"
command="calendar_new_event_command"
position="2"/>
<menuitem id="ltnNewTask2" label="&event.new.todo;"
accesskey="&event.new.todo.accesskey;"
key="newTaskKey"
key="calendar-new-todo-key"
observes="calendar_new_todo_command"
command="calendar_new_todo_command"
position="3"/>

View File

@@ -63,6 +63,41 @@
oncommand="CustomizeApplicationToolbar('mail-toolbox');"/>
</popup>
<popup id="messagePaneContext">
<menu id="messagePaneContext-calendar-convert-menu"
insertafter="messagePaneContext-moveMenu"
label="&calendar.context.convertmenu.label;"
accesskey="&calendar.context.convertmenu.accesskey.mail;">
<menupopup id="messagePaneContext-calendar-convert-menupopup">
<menuitem id="messagePaneContext-calendar-convert-event-menuitem"
label="&calendar.context.convertmenu.event.label;"
accesskey="&calendar.context.convertmenu.event.accesskey;"
oncommand="calendarCalendarButtonDNDObserver.onDropMessage(messenger.msgHdrFromURI(GetFirstSelectedMessage()))"/>
<menuitem id="messagePaneContext-calendar-convert-task-menuitem"
label="&calendar.context.convertmenu.task.label;"
accesskey="&calendar.context.convertmenu.task.accesskey;"
oncommand="calendarTaskButtonDNDObserver.onDropMessage(messenger.msgHdrFromURI(GetFirstSelectedMessage()))"/>
</menupopup>
</menu>
</popup>
<popup id="threadPaneContext">
<menu id="threadPaneContext-calendar-convert-menu"
insertafter="threadPaneContext-moveToFolderAgain"
label="&calendar.context.convertmenu.label;"
accesskey="&calendar.context.convertmenu.accesskey.mail;">
<menupopup id="threadPaneContext-calendar-convert-menupopup">
<menuitem id="threadPaneContext-calendar-convert-event-menuitem"
label="&calendar.context.convertmenu.event.label;"
accesskey="&calendar.context.convertmenu.event.accesskey;"
oncommand="calendarCalendarButtonDNDObserver.onDropMessage(messenger.msgHdrFromURI(GetFirstSelectedMessage()))"/>
<menuitem id="threadPaneContext-calendar-convert-task-menuitem"
label="&calendar.context.convertmenu.task.label;"
accesskey="&calendar.context.convertmenu.task.accesskey;"
oncommand="calendarTaskButtonDNDObserver.onDropMessage(messenger.msgHdrFromURI(GetFirstSelectedMessage()))"/>
</menupopup>
</menu>
</popup>
<menuitem id="menu_customizeToolbar"
label="&customizeToolbar.label;"
accesskey="&customizeToolbar.accesskey;"

View File

@@ -304,12 +304,15 @@
<!ENTITY calendar.context.properties.label "Properties">
<!ENTITY calendar.context.properties.accesskey "P">
<!ENTITY calendar.context.convert.label "Convert to">
<!ENTITY calendar.context.convert.accesskey "v">
<!ENTITY calendar.context.converttoevent.label "Event">
<!ENTITY calendar.context.converttoevent.accesskey "E">
<!ENTITY calendar.context.converttomessage.label "Message">
<!ENTITY calendar.context.converttomessage.accesskey "M">
<!ENTITY calendar.context.convertmenu.label "Convert To">
<!ENTITY calendar.context.convertmenu.accesskey.mail "n">
<!ENTITY calendar.context.convertmenu.accesskey.calendar "v">
<!ENTITY calendar.context.convertmenu.event.label "Event…">
<!ENTITY calendar.context.convertmenu.event.accesskey "E">
<!ENTITY calendar.context.convertmenu.message.label "Message…">
<!ENTITY calendar.context.convertmenu.message.accesskey "M">
<!ENTITY calendar.context.convertmenu.task.label "Task…">
<!ENTITY calendar.context.convertmenu.task.accesskey "T">
<!ENTITY calendar.context.showeventsof.label "Show Events of">
<!ENTITY calendar.context.showeventsof.accesskey "S">

View File

@@ -209,7 +209,7 @@
<!ENTITY goNextCmd.day.label "Next Day">
<!ENTITY goNextCmd.week.label "Next Week">
<!ENTITY goNextCmd.month.label "Next Month">
<!ENTITY goNextCmd.accesskey "N">
<!ENTITY goNextCmd.all.accesskey "e">
<!ENTITY taskMenu.label "Tasks">
<!ENTITY taskMenu.accesskey "k">

View File

@@ -114,9 +114,9 @@
<!ENTITY lightning.calendarproperties.showevents.inagenda.label "Show Events in Today Pane">
<!ENTITY lightning.calendarproperties.showtasks.label "Show Tasks in Today Pane and Task Mode">
<!--Views' context menu-->
<!-- This access key is in the same menu as 'Go to Next' which gets the 'N'-->
<!ENTITY lightning.context.newevent.accesskey "E">
<!-- iMIP Bar (meeting support) -->
<!ENTITY lightning.imipbar.description "This message contains an invitation to an event.">
<!-- Lightning specific keybindings -->
<!ENTITY lightning.keys.event.new "I">
<!ENTITY lightning.keys.todo.new "D">

View File

@@ -243,28 +243,28 @@
<menuitem id="calendar-view-menu-day"
type="radio"
name="calendarMenuViews"
key="view_day_key"
key="calendar-day-view-key"
label="&calendar.flat.topbar.dayview;"
accesskey="&calendar.dayview.accesskey;"
observes="calendar_day-view_command"/>
<menuitem id="calendar-view-menu-week"
type="radio"
name="calendarMenuViews"
key="view_week_key"
key="calendar-week-view-key"
label="&calendar.flat.topbar.weekview;"
accesskey="&calendar.weekview.accesskey;"
observes="calendar_week-view_command"/>
<menuitem id="calendar-view-menu-multiweek"
type="radio"
name="calendarMenuViews"
key="view_multiweek_key"
key="calendar-multiweek-view-key"
label="&calendar.flat.topbar.multiweekview;"
accesskey="&calendar.multiweekview.accesskey;"
observes="calendar_multiweek-view_command"/>
<menuitem id="calendar-view-menu-month"
type="radio"
name="calendarMenuViews"
key="view_month_key"
key="calendar-month-view-key"
label="&calendar.flat.topbar.monthview;"
accesskey="&calendar.monthview.accesskey;"
observes="calendar_month-view_command"/>
@@ -331,7 +331,7 @@
accesskey="&goMenu.accesskey;">
<menupopup id="mppView">
<menuitem id="calendar-go-menu-today"
key="go_to_today_key"
key="calendar-go-to-today-key"
label="&goTodayCmd.label;"
accesskey="&goTodayCmd.accesskey;"
observes="calendar_go_to_today_command"/>
@@ -344,7 +344,6 @@
<!-- Label is set appropriate to the variable newView in
switchToView(newView) of calendarWindow.js -->
<menuitem id="calendar-go-menu-previous"
key="go_backward_key"
label=""
label-day-view="&goPreviousCmd.day.label;"
label-week-view="&goPreviousCmd.week.label;"
@@ -353,13 +352,12 @@
accesskey="&goPreviousCmd.accesskey;"
observes="calendar_view_prev_command"/>
<menuitem id="calendar-go-menu-next"
key="go_forward_key"
label=""
label-day-view="&goNextCmd.day.label;"
label-week-view="&goNextCmd.week.label;"
label-multiweek-view="&goNextCmd.week.label;"
label-month-view="&goNextCmd.month.label;"
accesskey="&goNextCmd.accesskey;"
accesskey="&goNextCmd.all.accesskey;"
observes="calendar_view_next_command"/>
</menupopup>
</menu>

View File

@@ -45,9 +45,7 @@
#
# ***** END LICENSE BLOCK *****
<broadcasterset id="calendar_broadcasters">
<broadcaster id="is_editable" hidden="false"/>
</broadcasterset>
<broadcasterset id="calendar_broadcasters"/>
<commandset id="calendar_commands">
<!-- These commands already exist in thunderbird -->
@@ -80,9 +78,9 @@
#endif
</commandset>
<keyset>
<key id="new_event_key" key="&event.new.event.key;" observes="calendar_new_event_command" modifiers="accel"/>
<key id="new_todo_key" key="&event.new.todo.key;" observes="calendar_new_todo_command" modifiers="accel"/>
<keyset id="calendar-keys">
<key id="calendar-new-event-key" key="&event.new.event.key;" observes="calendar_new_event_command" modifiers="accel"/>
<key id="calendar-new-todo-key" key="&event.new.todo.key;" observes="calendar_new_todo_command" modifiers="accel"/>
<key id="modify_event_key" key="&event.edit.event.key;" observes="calendar_modify_event_command" modifiers="accel"/>
<key id="new_calendar_key" key="&calendar.new.server.key;" observes="calendar_new_calendar_command" modifiers="accel"/>
<key id="open_calendar_key" key="&calendar.open.file.key;" observes="open_local_calendar_command" modifiers="accel"/>
@@ -101,12 +99,6 @@
<key id="key_paste" key="&calendar.paste.key;" observes="cmd_paste" modifiers="accel"/>
<key id="key_selectAll" key="&calendar.selectall.key;" observes="cmd_selectAll" modifiers="accel"/>
<key id="view_day_key" key="&calendar.dayView.key;" observes="calendar_day-view_command" modifiers="accel"/>
<key id="view_week_key" key="&calendar.weekView.key;" observes="calendar_week-view_command" modifiers="accel"/>
<key id="view_multiweek_key" key="&calendar.multiweekView.key;" observes="calendar_multiweek-view_command" modifiers="accel"/>
<key id="view_month_key" key="&calendar.monthView.key;" observes="calendar_month-view_command" modifiers="accel"/>
<key id="go_to_today_key" keycode="VK_DOWN" observes="calendar_go_to_today_command" modifiers="accel"/>
<key id="go_to_date_key" keycode="VK_UP" observes="go_date_command" modifiers="accel"/>
<key id="import_key" key="&calendar.import.key;" observes="calendar_import_command" modifiers="accel"/>

View File

@@ -99,79 +99,6 @@
<!-- GENERAL CONTEXT MENU -->
<popupset id="calendar-popupset">
<popup id="context-menu"
onpopupshowing="document.getElementById('is_editable').hidden = (document.popupNode.getAttribute('id') == 'lefthandcalendar')">
<menuitem label="&calendar.context.newevent.label;"
accesskey="&calendar.context.newevent.accesskey;"
id="general-context-menu-newevent"
observes="calendar_new_event_command"/>
<menuitem label="&calendar.context.newtodo.label;"
accesskey="&calendar.context.newtodo.accesskey;"
id="general-context-menu-newtodo"
observes="calendar_new_todo_command"/>
<menuitem label="&calendar.context.modifyevent.label;"
accesskey="&calendar.context.modifyevent.accesskey;"
id="general-context-menu-modify"
observes="calendar_modify_event_command" />
<menuitem label="&calendar.context.deleteevent.label;"
accesskey="&calendar.context.deleteevent.accesskey;"
id="general-context-menu-delete"
observes="calendar_delete_event_command"/>
<menuseparator/>
<menuitem label="&calendar.context.cutevent.label;"
accesskey="&calendar.context.cutevent.accesskey;"
id="general-context-menu-cut"
observes="cmd_cut">
<observes element="is_editable" attribute="hidden"/>
</menuitem>
<menuitem label="&calendar.context.copyevent.label;"
accesskey="&calendar.context.copyevent.accesskey;"
id="general-context-menu-copy"
observes="cmd_copy">
<observes element="is_editable" attribute="hidden"/>
</menuitem>
<menuitem label="&calendar.context.pasteevent.label;"
accesskey="&calendar.context.pasteevent.accesskey;"
id="general-context-menu-paste"
observes="cmd_paste">
<observes element="is_editable" attribute="hidden"/>
</menuitem>
<menuseparator>
<observes element="is_editable" attribute="hidden"/>
</menuseparator>
<menuitem label="&calendar.context.selectall.label;"
accesskey="&calendar.context.selectall.accesskey;"
id="general-context-menu-selectall"
observes="cmd_selectAll">
<observes element="is_editable" attribute="hidden"/>
</menuitem>
<menuseparator>
<observes element="is_editable" attribute="hidden"/>
</menuseparator>
<menuitem label="&calendar.context.gototoday.label;"
accesskey="&calendar.context.gototoday.accesskey;"
id="general-context-menu-gototoday"
observes="calendar_go_to_today_command"/>
<menuseparator/>
<menuitem id="only-workday-checkbox-2"
type="checkbox"
label="&calendar.onlyworkday.checkbox.label;"
accesskey="&calendar.onlyworkday.checkbox.accesskey;"
observes="calendar_toggle_workdays_only_command"/>
<menuitem id="display-todo-inview-checkbox-2"
type="checkbox"
label="&calendar.displaytodos.checkbox.label;"
accesskey="&calendar.displaytodos.checkbox.accesskey;"
observes="calendar_toggle_tasks_in_view_command"/>
<menuitem id="completed-tasks-inview-checkbox-2"
type="checkbox"
label="&calendar.completedtasks.checkbox.label;"
accesskey="&calendar.completedtasks.checkbox.accesskey;"
observes="calendar_toggle_show_completed_in_view_command"/>
</popup>
<popup id="toolbar-context-menu">
<menuitem command="cmd_CustomizeToolbars"
id="toolbar-context-menu-customize"
@@ -232,7 +159,6 @@
<vbox id="calendar-top-box"
flex="1"
context="context-menu"
ondraggesture="nsDragAndDrop.startDrag(event,calendarViewDNDObserver);"
ondragover="nsDragAndDrop.dragOver(event,calendarViewDNDObserver);"
ondragdrop="nsDragAndDrop.drop(event,calendarViewDNDObserver);">
@@ -277,13 +203,17 @@
<vbox id="calendar-view-box" flex="1">
<deck id="view-deck" flex="1" persist="selectedIndex">
<calendar-decorated-day-view id="day-view" flex="1"
context="context-menu"/>
context="calendar-view-context-menu"
item-context="calendar-item-context-menu"/>
<calendar-decorated-week-view id="week-view" flex="1"
context="context-menu"/>
context="calendar-view-context-menu"
item-context="calendar-item-context-menu"/>
<calendar-decorated-multiweek-view id="multiweek-view" flex="1"
context="context-menu"/>
context="calendar-view-context-menu"
item-context="calendar-item-context-menu"/>
<calendar-decorated-month-view id="month-view" flex="1"
context="context-menu"/>
context="calendar-view-context-menu"
item-context="calendar-item-context-menu"/>
</deck>
</vbox>
</hbox> <!-- End: box with unifinder on left, calendar on right -->