diff --git a/calendar/base/Makefile.in b/calendar/base/Makefile.in index 6caef4f58b..a5aa8a2bf2 100644 --- a/calendar/base/Makefile.in +++ b/calendar/base/Makefile.in @@ -50,14 +50,19 @@ MODULE_NAME = calBaseModule DIRS = public src modules build # Select a theme from which to pull our skin goodness +# Linux: gnomesripe # OS X: pinstripe -# Others: winstripe +# Windows: winstripe +ifneq (,$(filter gtk2 qt,$(MOZ_WIDGET_TOOLKIT))) +THEME = gnomestripe +else ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT)) THEME = pinstripe else THEME = winstripe endif +endif WINDOW_ICONS = calendar-alarm-dialog \ diff --git a/calendar/base/jar.mn b/calendar/base/jar.mn index 1b37837269..11c821910f 100644 --- a/calendar/base/jar.mn +++ b/calendar/base/jar.mn @@ -150,39 +150,20 @@ calendar.jar: skin/calendar/ok-cancel.png (themes/@THEME@/images/ok-cancel.png) skin/calendar/today-pane.css (themes/@THEME@/today-pane.css) skin/calendar/widgets/calendar-widgets.css (themes/@THEME@/widgets/calendar-widgets.css) + skin/calendar/calendar-event-dialog-toolbar.png (themes/@THEME@/dialogs/images/calendar-event-dialog-toolbar.png) + skin/calendar/calendar-event-dialog-toolbar-small.png (themes/@THEME@/dialogs/images/calendar-event-dialog-toolbar-small.png) + skin/calendar/calendar-occurrence-prompt.png (themes/@THEME@/images/calendar-occurrence-prompt.png) + skin/calendar/tasks-actions.png (themes/@THEME@/images/tasks-actions.png) + skin/calendar/toolbar-large.png (themes/@THEME@/images/toolbar-large.png) + skin/calendar/toolbar-small.png (themes/@THEME@/images/toolbar-small.png) # Following files only add for OSX. #ifdef XP_MACOSX - skin/calendar/calendar-event-dialog-toolbar.png (themes/@THEME@/dialogs/images/calendar-event-dialog-toolbar.png) - skin/calendar/calendar-event-dialog-toolbar-small.png (themes/@THEME@/dialogs/images/calendar-event-dialog-toolbar-small.png) - skin/calendar/calendar-occurrence-prompt.png (themes/@THEME@/images/calendar-occurrence-prompt.png) - skin/calendar/tasks-actions.png (themes/@THEME@/images/tasks-actions.png) - skin/calendar/toolbar-large.png (themes/@THEME@/images/toolbar-large.png) - skin/calendar/toolbar-small.png (themes/@THEME@/images/toolbar-small.png) skin/calendar/sidebar-item.png (themes/@THEME@/images/sidebar-item.png) #endif -# Following files only add for Linux. -#ifdef XP_UNIX -#ifndef XP_MACOSX - skin/calendar/calendar-event-dialog-toolbar.png (themes/@THEME@/dialogs/images/calendar-event-dialog-toolbar-linux.png) - skin/calendar/calendar-event-dialog-toolbar-small.png (themes/@THEME@/dialogs/images/calendar-event-dialog-toolbar-small-linux.png) - skin/calendar/calendar-occurrence-prompt.png (themes/@THEME@/images/calendar-occurrence-prompt.png) - skin/calendar/tasks-actions.png (themes/@THEME@/images/tasks-actions-linux.png) - skin/calendar/toolbar-large.png (themes/@THEME@/images/toolbar-large-linux.png) - skin/calendar/toolbar-small.png (themes/@THEME@/images/toolbar-small-linux.png) -#endif -#endif - -# The following files only add for Windows. -#ifdef XP_WIN - skin/calendar/calendar-event-dialog-toolbar.png (themes/@THEME@/dialogs/images/calendar-event-dialog-toolbar.png) - skin/calendar/calendar-event-dialog-toolbar-small.png (themes/@THEME@/dialogs/images/calendar-event-dialog-toolbar-small.png) - skin/calendar/calendar-occurrence-prompt.png (themes/@THEME@/images/calendar-occurrence-prompt.png) - skin/calendar/tasks-actions.png (themes/@THEME@/images/tasks-actions.png) - skin/calendar/toolbar-large.png (themes/@THEME@/images/toolbar-large.png) - skin/calendar/toolbar-small.png (themes/@THEME@/images/toolbar-small.png) # The following files are added for aero support on windows. +#ifdef XP_WIN % style chrome://calendar/content/calendar-common-sets.xul chrome://calendar/skin/calendar-aero.css os=WINNT osversion>=6 % style chrome://calendar/content/calendar-event-dialog.xul chrome://calendar/skin/calendar-aero.css os=WINNT osversion>=6 % style chrome://calendar/content/calendar-occurrence-prompt.xul chrome://calendar/skin/calendar-aero.css os=WINNT osversion>=6 diff --git a/calendar/base/themes/gnomestripe/calendar-daypicker.css b/calendar/base/themes/gnomestripe/calendar-daypicker.css new file mode 100644 index 0000000000..96876afa16 --- /dev/null +++ b/calendar/base/themes/gnomestripe/calendar-daypicker.css @@ -0,0 +1,88 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Sun Microsystems code. + * + * The Initial Developer of the Original Code is Sun Microsystems + * Portions created by the Initial Developer are Copyright (C) 2001 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * Michael Buettner + * Berend Cornelius + * + * 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 + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + + +daypicker { + -moz-binding: url(chrome://calendar/content/calendar-daypicker.xml#daypicker); + list-style-image: url("chrome://calendar/skin/daypicker-background.png"); + -moz-image-region: rect(0px 31px 30px 0px); + border-top: 1px solid ThreeDShadow; + border-left: 1px solid ThreeDShadow; + background-color: -moz-Field; + text-align: center; +} + +daypicker[mode="monthly-days"] { + width: 21px; + height: 15px; +} + +daypicker:hover { + -moz-image-region: rect(0px 62px 30px 31px); + cursor: pointer; +} + +daypicker:hover:active, +daypicker[open="true"] { + -moz-image-region: rect(0px 93px 30px 62px); + cursor: pointer; +} + +daypicker[disabled="true"], +daypicker[disabled="true"][checked="true"], +daypicker[disabled="true"]:hover, +daypicker[disabled="true"]:hover:active, +daypicker[disabled="true"][open="true"] { + -moz-image-region: rect(0px 31px 30px 0px); + color: GrayText; + cursor: default; + background-color: -moz-Dialog; +} + +daypicker[checked="true"] { + -moz-image-region: rect(0px 124px 30px 93px); + background-color: Highlight; + color: HighlightText; +} + +daypicker [bottom="true"] { + border-bottom: 1px solid ThreeDShadow; +} + +daypicker[right="true"] { + border-right: 1px solid ThreeDShadow; +} diff --git a/calendar/base/themes/gnomestripe/calendar-management.css b/calendar/base/themes/gnomestripe/calendar-management.css new file mode 100644 index 0000000000..5d3733e40d --- /dev/null +++ b/calendar/base/themes/gnomestripe/calendar-management.css @@ -0,0 +1,94 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Calendar Management code. + * + * The Initial Developer of the Original Code is + * Philipp Kewisch + * Portions created by the Initial Developer are Copyright (C) 2007 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * + * 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 + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +calendar-list-tree > tree > treechildren::-moz-tree-image(checkbox-treecol) { + list-style-image: url(chrome://calendar/skin/checkbox-images.png); + -moz-image-region: rect(0 13px 13px 0); +} + +calendar-list-tree > tree > treechildren::-moz-tree-image(checkbox-treecol, checked) { + -moz-image-region: rect(0 26px 13px 13px); +} + +calendar-list-tree > tree > treechildren::-moz-tree-image(checkbox-treecol, disabled) { + -moz-image-region: rect(0 39px 13px 26px); +} + +calendar-list-tree > tree > treechildren::-moz-tree-cell(color-treecol, color-default) { + background-color: #a8c2e1; +} + +calendar-list-tree > tree > treechildren::-moz-tree-cell(color-treecol) { + margin: 1px; +} + +calendar-list-tree > tree > treechildren::-moz-tree-cell(calendarname-treecol) { + -moz-margin-start: 1px; +} + +calendar-list-tree > tree > treechildren::-moz-tree-image(status-treecol, readonly) { + list-style-image: url(chrome://calendar/skin/calendar-status.png); + -moz-image-region: rect(0px, 14px, 14px, 0px); +} + +calendar-list-tree > tree > treechildren::-moz-tree-image(status-treecol, readfailed) { + list-style-image: url(chrome://calendar/skin/calendar-status.png); + -moz-image-region: rect(0px, 28px, 14px, 14px); +} + +calendar-list-tree > tree > treechildren::-moz-tree-cell-text(disabled) { + color: GrayText; +} + +calendar-list-tree > tree { + border: none; + padding: 0; + margin: 4px; + -moz-border-top-colors: none; + -moz-border-right-colors: none; + -moz-border-bottom-colors: none; + -moz-border-left-colors: none; + -moz-appearance: none; +} + +calendar-list-tree > tree > treecols > treecol[hideheader="true"], +calendar-list-tree > tree > treecols > treecol[hideheader="true"] { + font-size: 0px; + border: none; + padding: 0; + max-height: 0px; + height: 0px; +} diff --git a/calendar/base/themes/gnomestripe/calendar-task-tree.css b/calendar/base/themes/gnomestripe/calendar-task-tree.css new file mode 100644 index 0000000000..a2587edcb1 --- /dev/null +++ b/calendar/base/themes/gnomestripe/calendar-task-tree.css @@ -0,0 +1,59 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Sun Microsystems code. + * + * The Initial Developer of the Original Code is Sun Microsystems. + * Portions created by the Initial Developer are Copyright (C) 2006 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * Michael Buettner + * Lars Wohlfahrt + * Philipp Kewisch + * Simon Paquet + * + * 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 + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +@import url(chrome://calendar/skin/common/calendar-task-tree.css); + +.calendar-task-tree > treechildren::-moz-tree-image(calendar-task-tree-col-completed, completed), +.calendar-task-tree-col-completed { + list-style-image: url(chrome://calendar/skin/checkbox-images.png); + -moz-image-region: rect(0 26px 13px 13px); +} + +.calendar-task-tree > treechildren::-moz-tree-image(calendar-task-tree-col-completed, duetoday), +.calendar-task-tree > treechildren::-moz-tree-image(calendar-task-tree-col-completed, overdue), +.calendar-task-tree > treechildren::-moz-tree-image(calendar-task-tree-col-completed, future), +.calendar-task-tree > treechildren::-moz-tree-image(calendar-task-tree-col-completed, inprogress) { + list-style-image: url(chrome://calendar/skin/checkbox-images.png); + -moz-image-region: rect(0 13px 13px 0); +} + +.calendar-task-tree > treechildren::-moz-tree-image(calendar-task-tree-col-completed, repeating) { + list-style-image: url(chrome://calendar/skin/checkbox-images.png); + -moz-image-region: rect(0 39px 13px 26px); +} diff --git a/calendar/base/themes/gnomestripe/calendar-task-view.css b/calendar/base/themes/gnomestripe/calendar-task-view.css new file mode 100644 index 0000000000..1ad3af8c32 --- /dev/null +++ b/calendar/base/themes/gnomestripe/calendar-task-view.css @@ -0,0 +1,228 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Sun Microsystems code. + * + * The Initial Developer of the Original Code is Sun Microsystems. + * Portions created by the Initial Developer are Copyright (C) 2006 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * Michael Buettner + * Philipp Kewisch + * Berend Cornelius + * + * 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 + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +#calendar-task-view-splitter { + border: none; + min-height: 5px; +} + +#calendar-task-details-container { + border-top: 1px solid ThreeDShadow; + border-left: 1px solid ThreeDShadow; + border-right: 0px; + border-bottom: 0px; + overflow: hidden; +} + +#calendar-header-name-column, +#calendar-task-details-attachment-row > hbox { + -moz-padding-start: 0.1em; +} + +#calendar-task-details-grid, +#other-actions-box { + padding: 0.1em; + -moz-padding-start: 0; + -moz-padding-end: 0; + padding-bottom: 0.2em; +} + +#calendar-task-details { + min-height: 6ex; +} + +#task-addition-box { + border-left: 1px solid ThreeDShadow; + border-right: 0px; + border-bottom: 1px solid ThreeDShadow; +} + +#calendar-task-details-description { + -moz-appearance: textfield; + border: 1px solid; + margin: 0; + font-family: serif; + font-size: 16px; +} + +.task-details-name { + text-align: right; + color: #888a85; /* lower contrast */ + background-color: transparent; + border: none; +} + +#calendar-task-details-grid > rows > .item-date-row > .headline { + font-weight: normal; + color: #888a85; /* lower contrast */ +} + +#calendar-task-details-attachment-row { + margin-top: 3px; +} + +#calendar-task-details-attachment-rows { + max-height: 60px; +} + +.task-details-value { + text-align: left; + background-color: transparent; + border: none; + color: black; +} + +#calendar-task-tree { + min-height: 98px; + border-left: 1px solid ThreeDShadow; + border-bottom: 1px solid ThreeDHighlight; + border-right: 1px solid ThreeDHighlight; +} + +#calendar-task-tree > .calendar-task-tree > treechildren::-moz-tree-row { + border-bottom: 1px dotted #AAA; +} + +#calendar-task-tree > .calendar-task-tree > treechildren::-moz-tree-cell { + border-right: 1px dotted #AAA; +} + +#calendar-task-tree-detail { + border: 1px solid ThreeDShadow; + margin: 3px; +} + +#view-task-edit-field { + margin: 5px; +} + +.task-edit-field[readonly="true"] { + color: GrayText; +} + +#calendar-task-details-title { + font-weight: bold; +} + +#unifinder-task-edit-field { + margin: 3px; +} + +#unifinder-todo-tree > .calendar-task-tree { + margin-bottom: 3px; +} + +/* ::::: task actions toolbar ::::: */ + +#task-actions-toolbox { + -moz-appearance: none; + border: none; +} + +#task-actions-toolbar { + -moz-appearance: none; + -moz-box-pack: end; + min-height: 0; + padding: 0; + border: none; +} + +#task-actions-toolbar toolbarpaletteitem toolbarseparator, +#task-actions-toolbar toolbarseparator { + height: 26px; +} + +#task-actions-toolbar toolbarspacer { + height: 20px; +} + +window[toolboxId="task-actions-toolbox"] #wrapper-spring { + display: none; +} + +window[toolboxId="task-actions-toolbox"] #smallicons, +window[toolboxId="task-actions-toolbox"] button[icon="add"] { + display: none; +} + +window[toolboxId="task-actions-toolbox"] #modelist menuitem:first-child { + display: none; +} + +#task-actions-toolbox[doCustomization] { + background: grey; +} + +#task-actions-toolbox[doCustomization] #task-actions-toolbar { + min-width: 100px; + min-height: 10px; +} + +#task-actions-category { + list-style-image: url(chrome://calendar/skin/tasks-actions.png); + -moz-image-region: rect(0px, 16px, 16px, 0px); +} + +#task-actions-markcompleted { + list-style-image: url(chrome://calendar/skin/tasks-actions.png); + -moz-image-region: rect(0px, 32px, 16px, 16px); +} + +#task-actions-priority { + list-style-image: url(chrome://calendar/skin/tasks-actions.png); + -moz-image-region: rect(0px, 48px, 16px, 32px); +} + +#calendar-delete-task-button { + list-style-image: url(chrome://calendar/skin/toolbar-small.png); + -moz-image-region: rect(0px, 48px, 16px, 32px); +} + +#calendar-add-task-button { + list-style-image: url(chrome://calendar/skin/toolbar-small.png); + -moz-image-region: rect(0px 256px 16px 240px); + -moz-margin-start: 5px; +} + +#calendar-add-task-button[disabled="true"] { + -moz-image-region: rect(32px 256px 48px 240px); +} + +#calendar-add-task-button > .toolbarbutton-text { + -moz-padding-start: 5px; +} diff --git a/calendar/base/themes/gnomestripe/calendar-unifinder.css b/calendar/base/themes/gnomestripe/calendar-unifinder.css new file mode 100644 index 0000000000..2ee937471b --- /dev/null +++ b/calendar/base/themes/gnomestripe/calendar-unifinder.css @@ -0,0 +1,111 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is OEone Calendar Code, released October 31st, 2001. + * + * The Initial Developer of the Original Code is + * OEone Corporation. + * Portions created by the Initial Developer are Copyright (C) 2001 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * Garth Smedley + * Mike Potter + * Karl Guertin + * Colin Phillips + * ArentJan Banck + * Eric Belhaire + * Mark Swaffer + * Christopher Cook + * Kevin Gerich + * Matthew Willis + * Michael Buettner + * Philipp Kewisch + * Simon Paquet + * + * 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 + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK **** */ + +/* only format Unifinder lists */ +#unifinder-search-results-tree > treechildren::-moz-tree-row { + border-bottom: 1px dotted #AAA; +} + +#unifinder-search-results-tree > treechildren::-moz-tree-cell-text(highpriority) { + font-weight: bold; +} + +#unifinder-search-results-tree > treechildren::-moz-tree-cell-text(lowpriority) { + font-style: italic; + color: GrayText !important; + background-color: -moz-field; +} + +/* workaround to avoid Window Flick */ +#unifinder-search-results-tree { + -moz-appearance: none; + background-color: -moz-Field; + color: -moz-FieldText; + min-height: 92px; + border: 0; + -moz-border-bottom-colors: ThreeDHighlight ThreeDLightShadow; + -moz-border-top-colors: ThreeDShadow ThreeDDarkShadow; + border-bottom: 1px solid; + border-top: 1px solid; + margin: 0; +} + +/* restyle splitter-border to match Thunderbird's layout */ +#calendar-view-splitter { + border: none; + min-height: 5px; +} + +/* added for new id ..... search box ..... */ +#unifinder-searchBox { + border-top: 1px solid ThreeDHighlight; + height: 30px; + background-color: transparent; +} + +#bottom-events-box { + border-left: 1px solid ThreeDShadow; +} + +.unifinder-closebutton { + list-style-image: url("chrome://global/skin/icons/close.png"); + -moz-image-region: rect(0 16px 16px 0); + -moz-appearance: none; + border: none; + padding: 2px; + background: transparent; +} + +.unifinder-closebutton:hover { + -moz-image-region: rect(0 32px 16px 16px); +} + +.unifinder-closebutton:hover:active { + -moz-image-region: rect(0 48px 16px 32px); +} diff --git a/calendar/base/themes/gnomestripe/calendar-views.css b/calendar/base/themes/gnomestripe/calendar-views.css new file mode 100644 index 0000000000..8cf74daa4b --- /dev/null +++ b/calendar/base/themes/gnomestripe/calendar-views.css @@ -0,0 +1,796 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Calendar view code. + * + * The Initial Developer of the Original Code is + * Oracle Corporation + * Portions created by the Initial Developer are Copyright (C) 2005 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * Vladimir Vukicevic + * Joey Minta + * Michiel van Leeuwen + * Philipp Kewisch + * Markus Adrario + * Simon Paquet + * Berend Cornelius + * Christian Jansen + * Gianfranco Balza + * + * 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 + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +/* Core */ +calendar-category-box:not([categories]) { + display: none; +} + +.calendar-item-image { + list-style-image: url(chrome://calendar/skin/day-box-item-image.png); + padding-top: 2px; + padding-bottom: 2px; + -moz-margin-end: 4px; + display: none; +} + +.calendar-item-image[itemType="todo"] { + -moz-image-region: rect(0px 11px 11px 0px); + display: -moz-box; +} + +.calendar-item-image[itemType="todo"][progress="completed"] { + -moz-image-region: rect(0px 22px 11px 11px); +} + +/* Multiday view */ +box[anonid="daybox"] { + border-bottom: 1px solid #D2D2D2; +} + +/* Margin that allows event creation by click and drag when the time slot is + full of events. On the right side in normal view ... */ +stack[anonid="boxstack"] > box[anonid="topbox"][orient="horizontal"] { + -moz-margin-end: 5px; +} +/* ... and on bottom in rotate view. */ +stack[anonid="boxstack"] > box[anonid="topbox"][orient="vertical"] { + margin-bottom: 5px; +} + +calendar-event-column { + background-color: #FFFFFF; +} + +calendar-event-column[orient="horizontal"] { + border-top: 1px solid #D2D2D2; +} + +calendar-event-column[orient="vertical"] { + border-left: 1px solid #D2D2D2; +} + +calendar-event-column[orient="horizontal"][relation="today"] { + border-top: 1px solid #67ACD8; + border-bottom: 1px solid #67ACD8; + margin-bottom: -1px; + position: relative; +} + +calendar-event-column[orient="vertical"][relation="today"] { + border-left: 1px solid #67ACD8; + border-right: 1px solid #67ACD8; + -moz-margin-end: -1px; + position: relative; +} + +calendar-header-container { + background-color: #FFFFFF; + border-left: 1px solid #D2D2D2; +} + +calendar-header-container[weekend="true"], +.calendar-event-column-linebox[weekend="true"], +.calendar-event-column-linebox[off-time="true"] { + background-color: #F0F0F0; +} + +calendar-header-container[relation="today"], +.calendar-event-column-linebox[relation="today"], +calendar-day-label[orient][relation="today"] { + background-color: #dfeaf4; +} + +calendar-header-container[relation="today"] { + border-left: 1px solid #67ACD8; + border-right: 1px solid #67ACD8; + -moz-margin-end: -1px; + position: relative; +} + +calendar-header-container[relation="today"][rotated="true"] { + border-top: 1px solid #67ACD8; + border-bottom: 1px solid #67ACD8 !important; + border-right: 1px solid #D2D2D2; + margin-top: -1px; + position: relative; +} + +calendar-header-container[selected="true"], +.calendar-event-column-linebox[selected="true"] { + background-color: #FFFABC; +} + +calendar-header-container[weekend="true"][relation="today"], +.calendar-event-column-linebox[weekend="true"][relation="today"], +.calendar-event-column-linebox[off-time="true"][relation="today"] { + background-color: #D4DEE8; +} + +.calendar-header-day-box[orient="vertical"] .calendar-event-column-header { + border-bottom: 1px solid #D2D2D2; + min-width: 100px; +} + +calendar-header-container[weekend="true"][selected="true"], +.calendar-event-column-linebox[weekend="true"][selected="true"], +.calendar-event-column-linebox[off-time="true"][selected="true"] { + background-color: #F2EDB2; +} + +.calendar-event-column-linebox[orient="horizontal"] { + border-right: 1px solid #D2D2D2; +} + +.calendar-event-column-linebox[orient="vertical"] { + border-bottom: 1px solid #D2D2D2; +} + +.calendar-event-column-linebox[orient="horizontal"][relation="today"]:last-child { + border-right: 1px solid #67ACD8; +} + +.calendar-event-column-linebox[orient="vertical"][relation="today"]:last-child { + border-bottom: 1px solid #67ACD8; +} + +/* Make sure we extend the bold line separating scrollable and non-scrollable + areas over the timebar. */ +.calendar-header-time-spacer[orient="horizontal"] { + border-bottom: 2px solid #D2D2D2; +} + +.calendar-header-time-spacer[orient="vertical"] { + border-right: 2px solid #D2D2D2; +} + +.calendar-header-day-box[orient="horizontal"] { + border-right: 1px solid #D2D2D2; + border-bottom: 2px solid #D2D2D2; + overflow-x: hidden; + overflow-y: auto; + max-height: 120px; +} + +.calendar-header-day-box[orient="horizontal"][todaylastinview="true"] { + border-right: 1px solid #67ACD8; +} + +/* Make sure the box for day-labels appears to end before the scrollbar. */ +.calendar-label-day-box[orient="horizontal"] { + border-top: 1px solid #D2D2D2; + border-right: 1px solid #D2D2D2; +} + +.calendar-label-day-box[orient="vertical"] { + border-top: 1px solid #D2D2D2; +} + +.calendar-header-day-box[orient="vertical"] { + border-top: 1px solid #D2D2D2; + border-right: 2px solid #D2D2D2; +} + +/* Make sure to have a border between the edge of the views and the scrollbar. */ +.calendar-day-box { + border-right: 1px solid #D2D2D2; +} + +.fgdragbox { + -moz-box-orient: inherit; + display: none; +} + +.fgdragbox[dragging="true"] { + display: -moz-box; + background-color: blue; + border: 5px #ffffff; + opacity: 0.5; +} + +.fgdragcontainer { + -moz-box-orient: inherit; + display: none; +} + +.fgdragcontainer[dragging="true"] { + display: -moz-box; + /* This is a workaround for a stack bug and display: hidden in underlying + * elements -- the display: hidden bits get misrendered as being on top. + * Setting an opacity here forces a view to be created for this element, too. + */ + opacity: 0.9999; +} + +.fgdragbox-label { + font-weight: bold; + text-align: center; + overflow: hidden; +} + +.calendar-event-box-container { + padding: 0; + overflow: hidden; + margin: 1px; +} + +.calendar-event-box-container[categories] { + -moz-margin-end: 0px; +} + +.calendar-event-details { + -moz-padding-start: 2px; + overflow: hidden; +} + +.calendar-event-details-core { + width: 0px; + margin: 0px; + overflow: hidden; +} + +.calendar-event-name-textbox { + background: transparent !important; + color: inherit; +} + +calendar-event-box { + border-left: 1px solid transparent; + border-top: 1px solid transparent; + border-right: 1px solid transparent; + border-bottom: 1px solid #D0D0D0; +} + +calendar-event-box[selected="true"] { + border-left: 1px solid transparent; + border-top: 1px solid white; + border-right: 1px solid transparent; + border-bottom: 1px solid #727272; +} + +calendar-event-box[selected="true"] .calendar-color-box { + color: #000000 !important; + background-color: #ffdb67 !important; +} + +/* RTL styles for the mainbox and children */ +box[anonid="mainbox"] { + direction: ltr; +} + +.calendar-label-day-box[chromedir="rtl"] { + direction: rtl; +} + +/* headers horizontal, times vertical */ +box[anonid="labelbox"][orient="horizontal"] { + height: 10px; +} + +box[anonid="headerbox"][orient="horizontal"] { + min-height: 50px; +} + +box[anonid="labelbox"][orient="horizontal"] > box[anonid="labeltimespacer"], +box[anonid="headertimespacer"][orient="horizontal"], +calendar-time-bar[orient="vertical"] { + width: 10ex; /* space for "11:00 AM" */ +} + +/* headers vertical, times horizonal */ +box[anonid="labelbox"][orient="vertical"] { + width: 30px; +} + +box[anonid="headerbox"][orient="vertical"] { + width: 40px; +} + +box[anonid="labelbox"][orient="vertical"] > box[anonid="labeltimespacer"], +box[anonid="headertimespacer"][orient="vertical"], +calendar-time-bar[orient="horizontal"] { + height: 40px; +} + +.calendar-time-bar-label { + font-size: 1em; +} + +.calendar-time-bar-box-odd, +.calendar-time-bar-box-even { + color: #6A6969; + background-color: #FFFFFF; + text-align: right; + overflow: hidden; +} + +.calendar-time-bar-box-odd[off-time="true"] , +.calendar-time-bar-box-even[off-time="true"] { + background-color: #F0F0F0; + border-right: 3px double #D2D2D2; +} + + +.calendar-time-bar-box-odd[orient="horizontal"], +.calendar-time-bar-box-even[orient="horizontal"] { + border-right: 1px solid #D2D2D2; + border-top: 1px solid #D2D2D2; + +} + +.calendar-time-bar-box-odd[orient="vertical"], +.calendar-time-bar-box-even[orient="vertical"] { + border-bottom: 1px transparent !important; + border-right: 3px double #D2D2D2; +} + +calendar-multiday-view { + background-color: #FFFFFF; + padding: 0px; +} + +calendar-multiday-view[hidden="true"] { + display: none; +} + +calendar-day-label { + color: #000000; + background-color: white; + background-image: url("chrome://calendar/skin/calendar-day-label-back.png"); + border-left: 1px solid #D2D2D2; + border-bottom: 1px solid #D2D2D2; +} + +calendar-day-label[selected="true"] { + background-color: #FFFABC !important; +} + +calendar-day-label[orient="vertical"] { + background-image: url("chrome://calendar/skin/calendar-day-label-back-vertical.png"); + min-width: 110px; +} + +calendar-day-label[relation="today"], +calendar-day-label[relation="today1day"] { + border: 1px solid #67ACD8; + -moz-margin-end: -1px; + margin-top: -1px; + position: relative; +} + +.calendar-day-label-name { + text-align: center; +} + +.calendar-day-label-name[relation="today"], +.calendar-day-label-name[relation="today1day"] { + font-weight: bold; +} + +/* Month View */ +calendar-month-view, +calendar-multiweek-view { + padding: 0px 2px 2px; +} + +.calendar-month-view-grid-column { + min-width: 1px; + width: 1px; +} + +.calendar-month-view-grid-row { + min-height: 1px; + height: 1px; + border-right: 1px solid #D2D2D2; +} + +calendar-month-day-box { + border:none !important; + border-left: 1px solid #D2D2D2 !important; + border-bottom: 1px solid #D2D2D2 !important; +} + +.calendar-month-day-box-items-box { + overflow-y: auto; + overflow-x: hidden; +} + +.calendar-month-day-box-current-month { + background-color: #FFFFFF; +} +.calendar-month-day-box-current-month .calendar-month-day-box-date-label { + background-color: #F7F7F7; +} +.calendar-month-day-box-day-off { + background-color: #EFEFEF; +} +.calendar-month-day-box-day-off .calendar-month-day-box-date-label { + background-color: #E7E7E7; +} +.calendar-month-day-box-other-month { + background-color: #DFDFDF; +} +.calendar-month-day-box-other-month .calendar-month-day-box-date-label { + background-color: #D7D7D7; +} + +.calendar-month-day-box-current-month[relation="today"], +.calendar-month-day-box-day-off[relation="today"], +.calendar-month-day-box-other-month[relation="today"] { + background-color: #dfeaf4; + border: 1px solid #67ACD8 !important; + -moz-margin-end: -1px !important; + margin-top: -1px !important; + position: relative; +} + +.calendar-month-day-box-date-label[relation="today"] { + background-color: #d7e2ec; + font-weight: bold; +} + +.calendar-month-day-box-current-month[selected="true"], +.calendar-month-day-box-day-off[selected="true"], +.calendar-month-day-box-other-month[selected="true"] { + background-color: #FFFABC; +} + +.calendar-month-day-box-date-label[selected="true"] { + background-color: #F2EDB2; +} + +.calendar-month-day-box-date-label[relation="today"][selected="true"] { + background-color: #F2EDB2; +} + +.calendar-month-day-box-date-label { + color: #616163; + font-size: 0.9em; + text-align: right; + margin: 0px; + padding-top: 1px; + -moz-padding-end: 2px; + padding-bottom: 1px; +} + +calendar-month-day-box-item { + margin: 1px; + padding: 0px 1px; +} + +calendar-month-day-box-item[selected="true"] .calendar-color-box { + color: #000000 !important; + background-color: #ffdb67 !important; +} + +.calendar-color-box { + /* This rule should be adopted if the alarm image size is changed */ + min-height: 13px; +} + +.calendar-month-day-box-item-label { + padding: 0px; + margin: 0px; +} + +.calendar-month-day-box-item-label[time="true"] { + -moz-margin-end: 4px; +} + +.labeldaybox-container { + border-right: 1px solid #D2D2D2; + border-top: 1px solid #D2D2D2; +} + +calendar-editable-item[selected="true"] .calendar-event-selection { + color: #000000 !important; + background-color: #ffdb67 !important; +} + +.dropshadow { + background-color: blue !important; + height: 1.2em; + margin: 1px; + padding: 0px 1px; + opacity: 0.5; +} + +.calendar-event-box-gradient { + list-style-image: url("chrome://calendar/skin/gradient-overlay.png"); +} + +.calendar-category-box-gradient { + list-style-image: url("chrome://calendar/skin/category-overlay.png"); +} + +calendar-event-gripbar { + -moz-box-align: center; + -moz-box-pack: center; + min-height: 4px; + min-width: 4px; + overflow: hidden; +} + +calendar-event-gripbar[parentorient="vertical"][whichside="start"] { + cursor: n-resize; +} + +calendar-event-gripbar[parentorient="vertical"][whichside="end"] { + cursor: s-resize; +} + +calendar-event-gripbar[parentorient="horizontal"][whichside="start"] { + cursor: w-resize; +} + +calendar-event-gripbar[parentorient="horizontal"][whichside="end"] { + cursor: e-resize; +} + +calendar-event-box[orient="vertical"] .calendar-event-box-grippy-top { + list-style-image: url("chrome://calendar/skin/event-grippy-top.png"); + visibility: hidden; +} + +calendar-event-box[orient="vertical"] .calendar-event-box-grippy-bottom { + list-style-image: url("chrome://calendar/skin/event-grippy-bottom.png"); + visibility: hidden; +} + +calendar-event-box[orient="horizontal"]:hover .calendar-event-box-grippy-top, +calendar-event-box[orient="horizontal"]:hover .calendar-event-box-grippy-bottom { + visibility: visible; +} + +calendar-event-box[orient="vertical"]:hover .calendar-event-box-grippy-top, +calendar-event-box[orient="vertical"]:hover .calendar-event-box-grippy-bottom { + visibility: visible; +} + +calendar-event-box[orient="horizontal"] .calendar-event-box-grippy-top { + list-style-image: url("chrome://calendar/skin/event-grippy-left.png"); + visibility: hidden; +} + +calendar-event-box[orient="horizontal"] .calendar-event-box-grippy-bottom { + list-style-image: url("chrome://calendar/skin/event-grippy-right.png"); + visibility: hidden; +} + +calendar-event-box[readonly="true"]:hover .calendar-event-box-grippy-top, +calendar-event-box[readonly="true"]:hover .calendar-event-box-grippy-bottom { + visibility: hidden; + cursor: auto; +} + +/* tooltips */ +vbox.tooltipBox { + max-width: 40em; +} + +column.tooltipValueColumn { + max-width: 35em; /* tooltipBox max-width minus space for label */ +} + +label.tooltipHeaderLabel { + font-weight: bold; + text-align: right; + margin-top: 0; + margin-bottom: 0; + -moz-margin-start: 0; + -moz-margin-end: 1em; /* 1em space before value */ +} + +description.tooltipHeaderDescription { + font-weight: normal; + text-align: left; + margin: 0pt; +} + +separator.tooltipBodySeparator { + height: 1ex; /* 1ex space above body text, below last header. */ +} + +description.tooltipBody { + font-weight: normal; + white-space: 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; +} + +.attendance-menu[itemType="single"] > menupopup > *[scope="all-occurrences"] { + display: none; +} + +.calendar-context-heading-label { + font-weight: bold; +} + +calendar-event-box, +calendar-editable-item, +calendar-month-day-box-item { + opacity: 0.99; + /* Do not change next line, since it would break item selection */ + -moz-user-focus: normal; +} + +calendar-event-box[invitation-status="NEEDS-ACTION"], +calendar-editable-item[invitation-status="NEEDS-ACTION"], +calendar-month-day-box-item[invitation-status="NEEDS-ACTION"] { + border: 2px dotted black; + opacity: 0.6; +} + +calendar-event-box[invitation-status="TENTATIVE"], +calendar-editable-item[invitation-status="TENTATIVE"], +calendar-month-day-box-item[invitation-status="TENTATIVE"], +calendar-event-box[status="TENTATIVE"], +calendar-editable-item[status="TENTATIVE"], +calendar-month-day-box-item[status="TENTATIVE"] { + opacity: 0.6; +} + +calendar-event-box[invitation-status="DECLINED"], +calendar-editable-item[invitation-status="DECLINED"], +calendar-month-day-box-item[invitation-status="DECLINED"], +calendar-event-box[status="CANCELLED"], +calendar-editable-item[status="CANCELLED"], +calendar-month-day-box-item[status="CANCELLED"] { + opacity: 0.5; +} + +calendar-month-day-box-item[status="CANCELLED"] .calendar-color-box, +calendar-event-box[status="CANCELLED"] .calendar-color-box { + text-decoration: line-through; +} + +/* Navigation controls for the views */ +#calendar-nav-control { + background-color: #E8E8E8; + border: solid ThreeDShadow; + border-width: 1px 0 0 1px; + padding-top: 1px; +} + +#view-deck { + background-color: white; + border: solid ThreeDShadow; + border-width: 0 0 0 1px; +} + +tab[calview] { + -moz-appearance: none; + background-image: url("chrome://calendar/skin/calendar-day-label-back-vertical.png"); + background-color: #CCCCCC; + color: #2E4E73; + border: 1px solid #BDBDBD; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0px; + font-size: 14px; + margin-top: 0px; + -moz-user-focus: normal; +} + +tab[calview][selected="true"], +tab[calview][selected="true"]:hover { + background-color: #FFFFFF; + margin-bottom: 0px; + border-bottom: none; +} + +tab[calview]:hover { + background-color: #F6F6F6; +} + +tab[calview] > .tab-middle { + text-align: center; +} + +.view-header { + font-weight: normal; + font-size: 14px; + color: #2E4E73; +} + +.view-header[type="end"] { + text-align: right; + -moz-margin-end: 6px; +} + +.navigation-inner-box { + -moz-padding-start: 6px; + -moz-padding-end: 6px; + border-bottom: 1px solid #D2D2D2; + padding-bottom: 1px; +} + +.navigation-bottombox { + min-height: 4px; + max-height: 4px; + background-color: white; +} + +.navigation-spacer-box { + min-width: 4px; + border-bottom: 1px solid #D2D2D2; +} + +.view-navigation-button { + -moz-user-focus: normal; + -moz-appearance: toolbarbutton; + min-width: 22px; + -moz-margin-start: 2px; + -moz-margin-end: 2px; +} + +.today-navigation-button { + -moz-user-focus: normal; + -moz-appearance: toolbarbutton; + -moz-margin-start: 2px; + -moz-margin-end: 2px; + padding-top: 0px !important; /* a workaround to center the label vertically on Windows */ + color: #2E4E73; + font-size: 14px; +} + +.view-navigation-button > .toolbarbutton-text { + display: none; +} + +.today-navigation-button > .toolbarbutton-icon { + display: none; +} diff --git a/calendar/base/themes/gnomestripe/dialogs/calendar-alarm-dialog.css b/calendar/base/themes/gnomestripe/dialogs/calendar-alarm-dialog.css new file mode 100644 index 0000000000..9185488937 --- /dev/null +++ b/calendar/base/themes/gnomestripe/dialogs/calendar-alarm-dialog.css @@ -0,0 +1,153 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Mozilla Calendar code. + * + * The Initial Developer of the Original Code is + * Philipp Kewisch + * Portions created by the Initial Developer are Copyright (C) 2007 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * + * 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 + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +/* Bindings */ +calendar-alarm-widget { + -moz-binding: url(chrome://calendar/content/widgets/calendar-alarm-widget.xml#calendar-alarm-widget); +} + +menupopup[type="snooze-menupopup"] > arrowscrollbox { + -moz-binding: url(chrome://calendar/content/widgets/calendar-alarm-widget.xml#calendar-snooze-popup); +} + +/* Alarm dialog styles */ +#alarm-richlist { + margin: 10px; +} + +#alarm-actionbar { + min-width: 1px; + margin: 0 5px; +} + +/* Alarm widget specific styles */ +calendar-alarm-widget { + border-bottom: 1px dotted #C0C0C0; + padding: 6px 7px; +} + +calendar-alarm-widget[selected="true"] { + background-image: url(chrome://mozapps/skin/extensions/itemEnabledFader.png); + background-color: #a2bdd8; + padding: 0 5px; +} + +calendar-alarm-widget[selected="true"] .alarm-title-label { + font-weight: bold; +} + +calendar-alarm-widget[selected="true"] .alarm-action-buttons { + display: -moz-box; +} + +calendar-alarm-widget[selected="true"] > hbox { + margin: 5px; +} + +calendar-alarm-widget[selected="true"] .alarm-relative-date-label, +.additional-information-box, +.alarm-action-buttons { + display: none; +} + +calendar-alarm-widget[selected="true"] .additional-information-box, +calendar-alarm-widget[selected="true"] .action-buttons-box { + display: -moz-box; +} + +.alarm-details-label { + text-decoration: underline; +} + +calendar-alarm-widget[selected="true"] .alarm-calendar-image { + list-style-image: url(chrome://calendar/skin/cal-icon32.png); +} + +.resizer-box { + min-height: 15px; +} + +.snooze-popup-ok-button { + -moz-image-region: rect(0px, 14px, 14px, 0px); +} + +.snooze-popup-ok-button:hover { + -moz-image-region: rect(14px, 14px, 28px, 0px); + background-color: -moz-menuhover; +} + +.snooze-popup-ok-button:active { + -moz-image-region: rect(28px, 14px, 42px, 0px); +} + +.snooze-popup-ok-button[disabled="true"] { + -moz-image-region: rect(42px, 14px, 56px, 0px); +} + +.snooze-popup-cancel-button { + -moz-image-region: rect(0px, 28px, 14px, 14px); +} + +.snooze-popup-cancel-button:hover { + -moz-image-region: rect(14px, 28px, 28px, 14px); + background-color: -moz-menuhover; +} + +.snooze-popup-cancel-button:active { + -moz-image-region: rect(28px, 28px, 42px, 14px); +} + +.snooze-popup-button { + list-style-image: url(chrome://calendar/skin/ok-cancel.png); + min-width: 0; + -moz-appearance: toolbarbutton; +} + +.snooze-popup-button > .button-box > .button-icon { + margin: 0; +} + +.snooze-popup-button > .button-box { + border: 0; + padding: 0; + -moz-box-pack: center; + -moz-box-align: center; +} + +.snooze-popup-button:focus > .button-box { + border: 1px dotted ThreeDDarkShadow; + padding: 0; +} diff --git a/calendar/base/themes/gnomestripe/dialogs/calendar-event-dialog.css b/calendar/base/themes/gnomestripe/dialogs/calendar-event-dialog.css new file mode 100644 index 0000000000..3b7526f5b8 --- /dev/null +++ b/calendar/base/themes/gnomestripe/dialogs/calendar-event-dialog.css @@ -0,0 +1,816 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Sun Microsystems code. + * + * The Initial Developer of the Original Code is Sun Microsystems. + * Portions created by the Initial Developer are Copyright (C) 2006 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * Michael Buettner + * Markus Adrario + * Gianfranco Balza + * + * 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 + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +#calendar-event-dialog, +#calendar-task-dialog { + padding: 0px; +} + +#yearly-period-of-label, +label.label { + text-align: right; +} + +#item-calendar, +#item-categories, +#item-repeat, +#item-alarm, +.datepicker-text-class { + min-width: 12em; +} + +/*-------------------------------------------------------------------- + * Event dialog keep duration button + *-------------------------------------------------------------------*/ + +#keepduration-button { + list-style-image: url(chrome://calendar/skin/event-dialog-keepduration-button.png); + -moz-image-region: rect(0px 14px 24px 7px); + padding-top: 3px; + padding-bottom: 3px; + -moz-margin-start: -3px; + margin-bottom: -15px; + position: relative; + -moz-user-focus: normal; + min-width: 21px; +} + +#keepduration-button[keep="true"] { + -moz-image-region: rect(0px 7px 24px 0px); +} + +#keepduration-button[disabled="true"] { + -moz-image-region: rect(24px 14px 48px 7px); +} + +#keepduration-button[keep="true"][disabled="true"] { + -moz-image-region: rect(24px 7px 48px 0px); +} + +#keepduration-button > label { + display: none; +} + +.keepduration-link-image { + list-style-image: url(chrome://calendar/skin/event-dialog-keepduration-button.png); + -moz-margin-start: -1px; +} + +#link-image-top { + -moz-image-region: rect(7px 23px 14px 14px); + margin-top: 0.6em; +} + +#link-image-top[keep="true"]{ + -moz-image-region: rect(0px 23px 7px 14px); +} + +#link-image-bottom { + -moz-image-region: rect(21px 23px 28px 14px); + margin-bottom: 0.6em; +} + +#timezone-endtime { + -moz-margin-start: 16px; +} + +/*-------------------------------------------------------------------- + * Event dialog toolbar buttons + *-------------------------------------------------------------------*/ + +.cal-event-toolbarbutton { + list-style-image: url("chrome://calendar/skin/calendar-event-dialog-toolbar.png"); +} + +/*-------------------------------------------------------------------- + * Event dialog toolbar buttons - small + *-------------------------------------------------------------------*/ + +toolbar[iconsize="small"] .cal-event-toolbarbutton { + list-style-image: url("chrome://calendar/skin/calendar-event-dialog-toolbar-small.png"); +} + +/*-------------------------------------------------------------------- + * invite attendees button + *-------------------------------------------------------------------*/ + +#button-attendees { + -moz-image-region: rect(0px 48px 24px 24px); +} +#button-attendees[disabled="true"], +#button-attendees[disabled="true"]:hover, +#button-attendees[disabled="true"]:hover:active { + -moz-image-region: rect(48px 48px 72px 24px); +} +#button-attendees:hover { + -moz-image-region: rect(24px 48px 48px 24px); +} +#button-attendees:hover:active { +} + +toolbar[iconsize="small"] #button-attendees { + -moz-image-region: rect(0px 32px 16px 16px); +} +toolbar[iconsize="small"] #button-attendees[disabled="true"], +toolbar[iconsize="small"] #button-attendees[disabled="true"]:hover, +toolbar[iconsize="small"] #button-attendees[disabled="true"]:hover:active { + -moz-image-region: rect(32px 32px 48px 16px); +} +toolbar[iconsize="small"] #button-attendees:hover { + -moz-image-region: rect(16px 32px 32px 16px); +} +toolbar[iconsize="small"] #button-attendees:hover:active { +} + +/*-------------------------------------------------------------------- + * spellcheck button + *-------------------------------------------------------------------*/ + +#button-spellcheck { + -moz-image-region: rect(0px 72px 24px 48px); +} +#button-spellcheck[disabled="true"], +#button-spellcheck[disabled="true"]:hover, +#button-spellcheck[disabled="true"]:hover:active { + -moz-image-region: rect(48px 72px 72px 48px); +} +#button-spellcheck:hover { + -moz-image-region: rect(24px 72px 48px 48px); +} +#button-spellcheck:hover:active { +} + +toolbar[iconsize="small"] #button-spellcheck { + -moz-image-region: rect(0px 48px 16px 32px); +} +toolbar[iconsize="small"] #button-spellcheck[disabled="true"], +toolbar[iconsize="small"] #button-spellcheck[disabled="true"]:hover, +toolbar[iconsize="small"] #button-spellcheck[disabled="true"]:hover:active { + -moz-image-region: rect(32px 48px 48px 32px); +} +toolbar[iconsize="small"] #button-spellcheck:hover { + -moz-image-region: rect(16px 48px 32px 32px); +} +toolbar[iconsize="small"] #button-spellcheck:hover:active { +} + +/*-------------------------------------------------------------------- + * documents button + *-------------------------------------------------------------------*/ + +#button-url { + -moz-image-region: rect(0px 96px 24px 72px); +} +#button-url[disabled="true"], +#button-url[disabled="true"]:hover, +#button-url[disabled="true"]:hover:active { + -moz-image-region: rect(48px 96px 72px 72px); +} +#button-url:hover { + -moz-image-region: rect(24px 96px 48px 72px); +} +#button-url:hover:active { +} + +toolbar[iconsize="small"] #button-url { + -moz-image-region: rect(0px 64px 16px 48px); +} +toolbar[iconsize="small"] #button-url[disabled="true"], +toolbar[iconsize="small"] #button-url[disabled="true"]:hover, +toolbar[iconsize="small"] #button-url[disabled="true"]:hover:active { + -moz-image-region: rect(32px 64px 48px 48px); +} +toolbar[iconsize="small"] #button-url:hover { + -moz-image-region: rect(16px 64px 32px 48px); +} +toolbar[iconsize="small"] #button-url:hover:active { +} + +/*-------------------------------------------------------------------- + * privacy button + *-------------------------------------------------------------------*/ + +#button-privacy { + -moz-image-region: rect(0px 120px 24px 96px); +} +#button-privacy[disabled="true"], +#button-privacy[disabled="true"]:hover, +#button-privacy[disabled="true"]:hover:active { + -moz-image-region: rect(48px 120px 72px 96px); +} +#button-privacy:hover { + -moz-image-region: rect(24px 120px 48px 96px); +} +#button-privacy:hover:active { +} + +toolbar[iconsize="small"] #button-privacy { + -moz-image-region: rect(0px 80px 16px 64px); +} +toolbar[iconsize="small"] #button-privacy[disabled="true"], +toolbar[iconsize="small"] #button-privacy[disabled="true"]:hover, +toolbar[iconsize="small"] #button-privacy[disabled="true"]:hover:active { + -moz-image-region: rect(32px 80px 48px 64px); +} +toolbar[iconsize="small"] #button-privacy:hover { + -moz-image-region: rect(16px 80px 32px 64px); +} +toolbar[iconsize="small"] #button-privacy:hover:active { +} + +/*-------------------------------------------------------------------- + * save button + *-------------------------------------------------------------------*/ + +#button-save { + -moz-image-region: rect(0px 144px 24px 120px); +} +#button-save[disabled="true"], +#button-save[disabled="true"]:hover, +#button-save[disabled="true"]:hover:active { + -moz-image-region: rect(48px 144px 72px 120px); +} +#button-save:hover { + -moz-image-region: rect(24px 144px 48px 120px); +} +#button-save:hover:active { +} + +toolbar[iconsize="small"] #button-save { + -moz-image-region: rect(0px 96px 16px 80px); +} +toolbar[iconsize="small"] #button-save[disabled="true"], +toolbar[iconsize="small"] #button-save[disabled="true"]:hover, +toolbar[iconsize="small"] #button-save[disabled="true"]:hover:active { + -moz-image-region: rect(32px 96px 48px 80px); +} +toolbar[iconsize="small"] #button-save:hover { + -moz-image-region: rect(16px 96px 32px 80px); +} +toolbar[iconsize="small"] #button-save:hover:active { +} + +/*-------------------------------------------------------------------- + * delete button + *-------------------------------------------------------------------*/ + +#button-delete { + -moz-image-region: rect(0px 408px 24px 384px); +} +#button-delete[disabled="true"], +#button-delete[disabled="true"]:hover, +#button-delete[disabled="true"]:hover:active { + -moz-image-region: rect(48px 408px 72px 384px); +} +#button-delete:hover { + -moz-image-region: rect(24px 408px 48px 384px); +} +#button-delete:hover:active { +} + +toolbar[iconsize="small"] #button-delete { + -moz-image-region: rect(0px 272px 16px 256px); +} +toolbar[iconsize="small"] #button-delete[disabled="true"], +toolbar[iconsize="small"] #button-delete[disabled="true"]:hover, +toolbar[iconsize="small"] #button-delete[disabled="true"]:hover:active { + -moz-image-region: rect(32px 272px 48px 256px); +} +toolbar[iconsize="small"] #button-delete:hover { + -moz-image-region: rect(16px 272px 32px 256px); +} +toolbar[iconsize="small"] #button-delete:hover:active { +} + +/*-------------------------------------------------------------------- + * print button + *-------------------------------------------------------------------*/ + +#button-print { + -moz-image-region: rect(0px 456px 24px 432px); +} +#button-print[disabled="true"], +#button-print[disabled="true"]:hover, +#button-print[disabled="true"]:hover:active { + -moz-image-region: rect(48px 456px 72px 432px); +} +#button-print:hover { + -moz-image-region: rect(24px 456px 48px 432px); +} +#button-print:hover:active { +} + +toolbar[iconsize="small"] #button-print { + -moz-image-region: rect(0px 304px 16px 288px); +} +toolbar[iconsize="small"] #button-print[disabled="true"], +toolbar[iconsize="small"] #button-print[disabled="true"]:hover, +toolbar[iconsize="small"] #button-print[disabled="true"]:hover:active { + -moz-image-region: rect(32px 304px 48px 288px); +} +toolbar[iconsize="small"] #button-print:hover { + -moz-image-region: rect(16px 304px 32px 288px); +} +toolbar[iconsize="small"] #button-print:hover:active { +} + +/*-------------------------------------------------------------------- + * help button + *-------------------------------------------------------------------*/ + +#button-question { + -moz-image-region: rect(0px 576px 24px 552px); +} +#button-question[disabled="true"], +#button-question[disabled="true"]:hover, +#button-question[disabled="true"]:hover:active { + -moz-image-region: rect(48px 576px 72px 552px); +} +#button-question:hover { + -moz-image-region: rect(24px 576px 48px 552px); +} +#button-question:hover:active { +} + +toolbar[iconsize="small"] #button-question { + -moz-image-region: rect(0px 384px 16px 368px); +} +toolbar[iconsize="small"] #button-question[disabled="true"], +toolbar[iconsize="small"] #button-question[disabled="true"]:hover, +toolbar[iconsize="small"] #button-question[disabled="true"]:hover:active { + -moz-image-region: rect(32px 384px 48px 368px); +} +toolbar[iconsize="small"] #button-question:hover { + -moz-image-region: rect(16px 384px 32px 368px); +} +toolbar[iconsize="small"] #button-question:hover:active { +} + +/*-------------------------------------------------------------------- + * Event dialog statusbar images + *-------------------------------------------------------------------*/ + +.cal-statusbar-1 { + -moz-box-orient: vertical; + min-width: 0px; + list-style-image: url("chrome://calendar/skin/calendar-event-dialog.png"); +} + +/*-------------------------------------------------------------------- + * privacy "public" image + *-------------------------------------------------------------------*/ + +#button-privacy-public { + -moz-image-region: rect(0px 28px 16px 0px); +} +#button-privacy-public:hover:active { +} +#button-privacy-public[disabled="true"] { +} + +/*-------------------------------------------------------------------- + * privacy "private" image + *-------------------------------------------------------------------*/ + +#button-privacy-private { + -moz-image-region: rect(0px 56px 16px 28px); +} +#button-privacy-private:hover:active { +} +#button-privacy-private[disabled="true"] { +} + +/*-------------------------------------------------------------------- + * privacy "confidential" image + *-------------------------------------------------------------------*/ + +#button-privacy-confidential { + -moz-image-region: rect(0px 84px 16px 56px); +} +#button-privacy-confidential:hover:active { +} +#button-privacy-confidential[disabled="true"] { +} + +/*-------------------------------------------------------------------- + * importance "low" image + *-------------------------------------------------------------------*/ + +#button-importance-low { + -moz-image-region: rect(0px 100px 16px 84px); +} +#button-importance-low:hover:active { +} +#button-importance-low[disabled="true"] { +} + +/*-------------------------------------------------------------------- + * importance "medium" image + *-------------------------------------------------------------------*/ + +#button-importance-medium { + -moz-image-region: rect(0px 116px 16px 100px); +} +#button-importance-medium:hover:active { +} +#button-importance-medium[disabled="true"] { +} + +/*-------------------------------------------------------------------- + * importance "high" image + *-------------------------------------------------------------------*/ + +#button-importance-high { + -moz-image-region: rect(0px 132px 16px 116px); +} +#button-importance-high:hover:active { +} +#button-importance-high[disabled="true"] { +} + +/*-------------------------------------------------------------------- + * Recurrence dialog preview border + *-------------------------------------------------------------------*/ +#preview-border { + border: none; + padding: 0px; +} + +/*-------------------------------------------------------------------- + * freebusy + *-------------------------------------------------------------------*/ +#freebusy-container { + overflow: hidden; + min-width: 100px; +} + +#freebusy-grid { + min-width: 1px; +} + +#calendar-summary-dialog { + min-width: 35em; +} + +listbox[disabled="true"] { + color: -moz-FieldText; +} + +daypicker-weekday { + margin-top: 2px; +} + +daypicker-monthday { + margin-top: 2px; +} + +.headline { + font-weight: bold; +} + +.headline[align=end], +.headline[align=right]{ + text-align: right; +} + +.default-spacer { + width: 1em; + height: 1em; +} + +.default-indent { + -moz-margin-start: 1.5em; +} + +/*-------------------------------------------------------------------- + * Attendees Dialog + *-------------------------------------------------------------------*/ + +.listbox-noborder { + margin: 0px 0px; + border-style: none; +} + +.selection-bar { + background-color: #008080; + opacity: 0.2; + border-top-left-radius: 10px; + border-top-right-radius: 10px; +} + +.freebusy-container { + overflow: hidden; + clip: rect(0px 0px 0px 0px); +} + +.freebusy-content { + overflow: hidden; + clip: rect(0px 0px 0px 0px); +} + +/* -moz-margin-end 1px is needed to take border-right from the grid elements into account */ +.freebusy-timebar-title { + -moz-margin-end: 1px; +} + +.freebusy-timebar-hour { + -moz-margin-end: 1px; + margin-bottom: 5px; +} + +.freebusy-timebar-hour[scheduled="true"] { + /* the 'sechuled'-attribute is used in the timebar to indicate + which hours are affected of the currently schedued event. + since we added the selection-bar this is no longer necessary + but we keep the possibity to decorate those hours if it should + become beneficial. + text-decoration: underline; + */ +} + +.freebusy-grid { + border-right: 1px solid #BDBEC0; + background-color: #E09EBD; + color: #E09EBD; +} + +.freebusy-grid[state="busy"] { + background-color: #153E7E; + color: #153E7E; +} + +.freebusy-grid[state="busy_tentative"] { + background-color: #1589FF; + color: #1589FF; +} + +.freebusy-grid[state="busy_unavailable"] { + background-color: #4E387E; + color: #4E387E; +} + +.freebusy-grid[state="free"] { + background-color: #EBEBE4; + color: #EBEBE4; +} + +#dialog-box { + padding-top: 8px; + padding-bottom: 10px; + -moz-padding-start: 8px; + -moz-padding-end: 10px; +} + +#addressingWidget { + -moz-user-focus: none; +} + +#typecol-addressingWidget { + min-width: 9em; + border-right: 1px solid #CACAFF; +} + +/* This applies to rows of the attendee-list and the freebusy-grid */ +.addressingWidgetItem, +.dummy-row { + border: none !important; + background-color: inherit !important; + color: inherit !important; + + /* we set the minimal height to the height of the + largest icon [the person-icon in this case] to + ensure that the rows of the freebusy-grid and + the attendee-list always have the same height, + regardless of the font size. */ + min-height: 16px; +} + +.addressingWidgetCell { + border-bottom: 1px solid #CACAFF; + padding: 0px; +} + +.addressingWidgetCell:first-child { + border-top: none; +} + +.dummy-row-cell:first-child { + border-top: none; + border-bottom: 1px solid #CACAFF; +} + +.person-icon { + margin: 0 3px; + list-style-image: url(chrome://calendar/skin/abcard.png); +} + +.status-icon { + margin: 0 3px; + list-style-image: url("chrome://calendar/skin/calendar-event-dialog-attendees.png"); + -moz-image-region: rect(0px 48px 14px 36px); +} + +.status-icon[disabled="true"] { + -moz-image-region: rect(14px 48px 28px 36px); +} + +.status-icon[status="ACCEPTED"] { + -moz-image-region: rect(0px 12px 14px 0px); +} +.status-icon[status="ACCEPTED"][disabled="true"] { + -moz-image-region: rect(14px 12px 28px 0px); +} + +.status-icon[status="DECLINED"] { + -moz-image-region: rect(0px 24px 14px 12px); +} +.status-icon[status="DECLINED"][disabled="true"] { + -moz-image-region: rect(14px 24px 28px 12px); +} + +.status-icon[status="NEEDS-ACTION"] { + -moz-image-region: rect(0px 36px 14px 24px); +} +.status-icon[status="NEEDS-ACTION"][disabled="true"] { + -moz-image-region: rect(14px 36px 28px 24px); +} + +.status-icon[status="TENTATIVE"] { + -moz-image-region: rect(0px 48px 14px 36px); +} +.status-icon[status="TENTATIVE"][disabled="true"] { + -moz-image-region: rect(14px 48px 28px 36px); +} + +.role-icon { + margin: 0 3px; + list-style-image: url(chrome://calendar/skin/calendar-event-dialog-attendees.png); + -moz-image-region: rect(0px 159px 16px 138px); +} + +.role-icon[disabled="true"] { + -moz-image-region: rect(0px 159px 16px 138px); +} + +.role-icon[role="REQ-PARTICIPANT"] { + -moz-image-region: rect(0px 159px 16px 138px); +} +.role-icon[role="REQ-PARTICIPANT"][disabled="true"] { + -moz-image-region: rect(0px 159px 16px 138px); +} + +.role-icon[role="OPT-PARTICIPANT"] { + -moz-image-region: rect(0px 180px 16px 159px); +} +.role-icon[role="OPT-PARTICIPANT"][disabled="true"] { + -moz-image-region: rect(0px 180px 16px 159px); +} + +.role-icon[role="CHAIR"] { + -moz-image-region: rect(0px 201px 16px 180px); +} +.role-icon[role="CHAIR"][disabled="true"] { + -moz-image-region: rect(0px 201px 16px 180px); +} + +.role-icon[role="NON-PARTICIPANT"] { + -moz-image-region: rect(0px 222px 16px 201px); +} +.role-icon[role="NON-PARTICIPANT"][disabled="true"] { + -moz-image-region: rect(0px 222px 16px 201px); +} + +.zoom-in-icon { + margin: 3px 3px; + list-style-image: url(chrome://calendar/skin/calendar-event-dialog-attendees.png); + -moz-image-region: rect(0px 97px 14px 84px); +} +.zoom-in-icon[disabled="true"] { + -moz-image-region: rect(14px 97px 28px 84px); +} + +.zoom-out-icon { + margin: 3px 3px; + list-style-image: url(chrome://calendar/skin/calendar-event-dialog-attendees.png); + -moz-image-region: rect(0px 110px 14px 97px); +} +.zoom-out-icon[disabled="true"] { + -moz-image-region: rect(14px 110px 28px 97px); +} + +.left-icon { + margin: 3px 3px; + list-style-image: url(chrome://calendar/skin/calendar-event-dialog-attendees.png); + -moz-image-region: rect(0px 124px 14px 110px); +} +.left-icon[disabled="true"] { + -moz-image-region: rect(14px 124px 28px 110px); +} + +.right-icon { + margin: 3px 3px; + list-style-image: url(chrome://calendar/skin/calendar-event-dialog-attendees.png); + -moz-image-region: rect(0px 138px 14px 124px); +} +.right-icon[disabled="true"] { + -moz-image-region: rect(14px 138px 28px 124px); +} + +.legend { + width: 3em; + height: 1em; + border-top: 1px solid #A1A1A1; + border-right: 1px solid #C3C3C3; + border-bottom: 1px solid #DDDDDD; + border-left: 1px solid #C3C3C3; +} + +.legend[status="FREE"] { + background-color: #EBEBE4; + color: #EBEBE4; +} + +.legend[status="BUSY"] { + background-color: #153E7E; + color: #153E7E; +} + +.legend[status="BUSY_TENTATIVE"] { + background-color: #1589FF; + color: #1589FF; +} + +.legend[status="BUSY_UNAVAILABLE"] { + background-color: #4E387E; + color: #4E387E; +} + +.legend[status="UNKNOWN"] { + background-color: #E09EBD; + color: #E09EBD; +} + +#content-frame { + border-left: 1px solid ThreeDDarkShadow; + border-right: 1px solid ThreeDLightShadow; + min-width: 10px; + min-height: 10px; + height: 400px; +} + +.attendees-list-listbox > listboxbody { + overflow-y: hidden !important; +} + +.selection-bar-left { + width: 3px; + cursor: w-resize; +} + +.selection-bar-right { + width: 3px; + cursor: e-resize; +} + +.selection-bar-spacer { + cursor: -moz-grab; +} + +.checkbox-no-label > .checkbox-label-box { + display: none; +} diff --git a/calendar/base/themes/gnomestripe/dialogs/images/calendar-event-dialog-attendees.png b/calendar/base/themes/gnomestripe/dialogs/images/calendar-event-dialog-attendees.png new file mode 100644 index 0000000000..ea52cbc19d Binary files /dev/null and b/calendar/base/themes/gnomestripe/dialogs/images/calendar-event-dialog-attendees.png differ diff --git a/calendar/base/themes/winstripe/dialogs/images/calendar-event-dialog-toolbar-small-linux.png b/calendar/base/themes/gnomestripe/dialogs/images/calendar-event-dialog-toolbar-small.png similarity index 100% rename from calendar/base/themes/winstripe/dialogs/images/calendar-event-dialog-toolbar-small-linux.png rename to calendar/base/themes/gnomestripe/dialogs/images/calendar-event-dialog-toolbar-small.png diff --git a/calendar/base/themes/winstripe/dialogs/images/calendar-event-dialog-toolbar-linux.png b/calendar/base/themes/gnomestripe/dialogs/images/calendar-event-dialog-toolbar.png similarity index 100% rename from calendar/base/themes/winstripe/dialogs/images/calendar-event-dialog-toolbar-linux.png rename to calendar/base/themes/gnomestripe/dialogs/images/calendar-event-dialog-toolbar.png diff --git a/calendar/base/themes/gnomestripe/dialogs/images/calendar-event-dialog.png b/calendar/base/themes/gnomestripe/dialogs/images/calendar-event-dialog.png new file mode 100644 index 0000000000..0db4b3a07f Binary files /dev/null and b/calendar/base/themes/gnomestripe/dialogs/images/calendar-event-dialog.png differ diff --git a/calendar/base/themes/gnomestripe/dialogs/images/calendar-invitations-dialog-button-images.png b/calendar/base/themes/gnomestripe/dialogs/images/calendar-invitations-dialog-button-images.png new file mode 100644 index 0000000000..b641ed2765 Binary files /dev/null and b/calendar/base/themes/gnomestripe/dialogs/images/calendar-invitations-dialog-button-images.png differ diff --git a/calendar/base/themes/gnomestripe/dialogs/images/calendar-invitations-dialog-list-images.png b/calendar/base/themes/gnomestripe/dialogs/images/calendar-invitations-dialog-list-images.png new file mode 100644 index 0000000000..db33ad817c Binary files /dev/null and b/calendar/base/themes/gnomestripe/dialogs/images/calendar-invitations-dialog-list-images.png differ diff --git a/calendar/base/themes/gnomestripe/icons/calendar-alarm-dialog.png b/calendar/base/themes/gnomestripe/icons/calendar-alarm-dialog.png new file mode 100644 index 0000000000..daec5e331f Binary files /dev/null and b/calendar/base/themes/gnomestripe/icons/calendar-alarm-dialog.png differ diff --git a/calendar/base/themes/gnomestripe/icons/calendar-event-dialog.png b/calendar/base/themes/gnomestripe/icons/calendar-event-dialog.png new file mode 100644 index 0000000000..7619817b19 Binary files /dev/null and b/calendar/base/themes/gnomestripe/icons/calendar-event-dialog.png differ diff --git a/calendar/base/themes/gnomestripe/icons/calendar-event-summary-dialog.png b/calendar/base/themes/gnomestripe/icons/calendar-event-summary-dialog.png new file mode 100644 index 0000000000..7619817b19 Binary files /dev/null and b/calendar/base/themes/gnomestripe/icons/calendar-event-summary-dialog.png differ diff --git a/calendar/base/themes/gnomestripe/icons/calendar-task-dialog.png b/calendar/base/themes/gnomestripe/icons/calendar-task-dialog.png new file mode 100644 index 0000000000..8593ad27f7 Binary files /dev/null and b/calendar/base/themes/gnomestripe/icons/calendar-task-dialog.png differ diff --git a/calendar/base/themes/gnomestripe/icons/calendar-task-summary-dialog.png b/calendar/base/themes/gnomestripe/icons/calendar-task-summary-dialog.png new file mode 100644 index 0000000000..8593ad27f7 Binary files /dev/null and b/calendar/base/themes/gnomestripe/icons/calendar-task-summary-dialog.png differ diff --git a/calendar/base/themes/gnomestripe/images/cal-icon32.png b/calendar/base/themes/gnomestripe/images/cal-icon32.png new file mode 100644 index 0000000000..3ddd72aa88 Binary files /dev/null and b/calendar/base/themes/gnomestripe/images/cal-icon32.png differ diff --git a/calendar/base/themes/gnomestripe/images/calendar-occurrence-prompt.png b/calendar/base/themes/gnomestripe/images/calendar-occurrence-prompt.png new file mode 100644 index 0000000000..09ece5a131 Binary files /dev/null and b/calendar/base/themes/gnomestripe/images/calendar-occurrence-prompt.png differ diff --git a/calendar/base/themes/gnomestripe/images/checkbox-images.png b/calendar/base/themes/gnomestripe/images/checkbox-images.png new file mode 100644 index 0000000000..630db33c12 Binary files /dev/null and b/calendar/base/themes/gnomestripe/images/checkbox-images.png differ diff --git a/calendar/base/themes/gnomestripe/images/ok-cancel.png b/calendar/base/themes/gnomestripe/images/ok-cancel.png new file mode 100644 index 0000000000..18380954d4 Binary files /dev/null and b/calendar/base/themes/gnomestripe/images/ok-cancel.png differ diff --git a/calendar/base/themes/winstripe/images/tasks-actions-linux.png b/calendar/base/themes/gnomestripe/images/tasks-actions.png similarity index 100% rename from calendar/base/themes/winstripe/images/tasks-actions-linux.png rename to calendar/base/themes/gnomestripe/images/tasks-actions.png diff --git a/calendar/base/themes/winstripe/images/toolbar-large-linux.png b/calendar/base/themes/gnomestripe/images/toolbar-large.png similarity index 100% rename from calendar/base/themes/winstripe/images/toolbar-large-linux.png rename to calendar/base/themes/gnomestripe/images/toolbar-large.png diff --git a/calendar/base/themes/winstripe/images/toolbar-small-linux.png b/calendar/base/themes/gnomestripe/images/toolbar-small.png similarity index 100% rename from calendar/base/themes/winstripe/images/toolbar-small-linux.png rename to calendar/base/themes/gnomestripe/images/toolbar-small.png diff --git a/calendar/base/themes/gnomestripe/preferences/Options.png b/calendar/base/themes/gnomestripe/preferences/Options.png new file mode 100644 index 0000000000..a62e74429f Binary files /dev/null and b/calendar/base/themes/gnomestripe/preferences/Options.png differ diff --git a/calendar/base/themes/gnomestripe/preferences/preferences.css b/calendar/base/themes/gnomestripe/preferences/preferences.css new file mode 100644 index 0000000000..bc5f70674e --- /dev/null +++ b/calendar/base/themes/gnomestripe/preferences/preferences.css @@ -0,0 +1,129 @@ +/* +# -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- +# ***** BEGIN LICENSE BLOCK ***** +# Version: MPL 1.1/GPL 2.0/LGPL 2.1 +# +# The contents of this file are subject to the Mozilla Public License Version +# 1.1 (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# http://www.mozilla.org/MPL/ +# +# Software distributed under the License is distributed on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License +# for the specific language governing rights and limitations under the +# License. +# +# The Original Code is Mozilla.org Code. +# +# The Initial Developer of the Original Code is +# Doron Rosenberg. +# Portions created by the Initial Developer are Copyright (C) 2001 +# the Initial Developer. All Rights Reserved. +# +# Contributor(s): Ben Goodger (Original Author) +# Kevin Gerich +# Matthew Willis +# Philipp Kewisch +# +# 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 +# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), +# in which case the provisions of the GPL or the LGPL are applicable instead +# of those above. If you wish to allow use of your version of this file only +# under the terms of either the GPL or the LGPL, and not to allow others to +# use your version of this file under the terms of the MPL, indicate your +# decision by deleting the provisions above and replace them with the notice +# and other provisions required by the GPL or the LGPL. If you do not delete +# the provisions above, a recipient may use your version of this file under +# the terms of any one of the MPL, the GPL or the LGPL. +# +# ***** END LICENSE BLOCK ***** +*/ + +/* Global Styles */ +#CalendarPreferences radio[pane] { + list-style-image: url("chrome://calendar/skin/preferences/Options.png"); +} + +radio[pane=paneGeneral] { + -moz-image-region: rect(0px, 32px, 32px, 0px) +} +radio[pane=paneGeneral]:hover, radio[pane=paneGeneral][selected="true"] { + -moz-image-region: rect(32px, 32px, 64px, 0px) +} + +radio[pane=paneAlarms] { + -moz-image-region: rect(0px, 64px, 32px, 32px) +} +radio[pane=paneAlarms]:hover, radio[pane=paneAlarms][selected="true"] { + -moz-image-region: rect(32px, 64px, 64px, 32px) +} + +radio[pane=paneCategories] { + -moz-image-region: rect(0px, 128px, 32px, 96px) +} +radio[pane=paneCategories]:hover, radio[pane=paneCategories][selected="true"] { + -moz-image-region: rect(32px, 128px, 64px, 96px) +} + +radio[pane=paneViews] { + -moz-image-region: rect(0px, 192px, 32px, 160px) +} +radio[pane=paneViews]:hover, radio[pane=paneViews][selected="true"] { + -moz-image-region: rect(32px, 192px, 64px, 160px) +} + +radio[pane=paneTimezones] { + -moz-image-region: rect(0px, 224px, 32px, 192px) +} +radio[pane=paneTimezones]:hover, radio[pane=paneTimezones][selected="true"] { + -moz-image-region: rect(32px, 224px, 64px, 192px) +} + +radio[pane=paneAdvanced] { + -moz-image-region: rect(0px, 160px, 32px, 128px) +} +radio[pane=paneAdvanced]:hover, radio[pane=paneAdvanced][selected="true"] { + -moz-image-region: rect(32px, 160px, 64px, 128px) +} + +/* File Field Widget */ +filefield { + margin: 2px 4px; + -moz-appearance: textfield; +} + +.fileFieldContentBox { + background-color: -moz-Dialog; + color: -moz-DialogText; + margin: 1px; +} + +filefield[disabled="true"] .fileFieldContentBox { + opacity: 0.5; +} + +filefield[disabled="true"] .fileFieldIcon { + opacity: 0.2; +} + +.fileFieldIcon { + width: 16px; + height: 16px; + margin-top: 2px; + margin-bottom: 2px; + -moz-margin-start: 2px; + -moz-margin-end: 4px; +} + +.fileFieldLabel { + -moz-appearance: none; + background-color: transparent; + border: none; + padding: 1px 0px 0px; + margin: 0px; +} + +tabpanels caption { + background-color: -moz-Dialog; +} diff --git a/calendar/base/themes/gnomestripe/today-pane.css b/calendar/base/themes/gnomestripe/today-pane.css new file mode 100644 index 0000000000..c5b96aeecd --- /dev/null +++ b/calendar/base/themes/gnomestripe/today-pane.css @@ -0,0 +1,333 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Sun Microsystems code. + * + * The Initial Developer of the Original Code is Oracle Corporation + * Portions created by the Initial Developer are Copyright (C) 2005 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * Berend Cornelius + * Lars Wohlfahrt + * + * 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 + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +.today-subpane { + border-color: ThreeDShadow; + border-style: solid; + border-width: 1px 0; + margin-bottom: 3px; + padding: 0px; +} + +#buttonspacer { + width: 5px; +} + +#today-pane-panel { + background-color: -moz-Dialog; + color: -moz-DialogText; + border-left: 1px solid ThreeDShadow; +} + +#today-pane-panel:-moz-lwtheme { + background-color: transparent; + border-top: 1px solid ThreeDShadow; +} + +#agenda-panel:-moz-lwtheme > vbox, +#today-pane-splitter:-moz-lwtheme, +#todo-tab-panel:-moz-lwtheme { + background-color: -moz-Dialog; +} + +#today-pane-panel:-moz-lwtheme > vbox { + text-shadow: none; +} + +#mini-day-image { + list-style-image: url("chrome://calendar/skin/mini-day-background.png"); +} + +#mini-day-box, +#today-minimonth-box { + background-color: white; +} + +#weekdayNameContainer { + font-family: Trebuchet MS, Lucida Grande, Arial, Helvetica; + padding-top: 4px; + font-weight: bold; + font-size: 18px; +} + +.monthlabel { + -moz-margin-end: 0px; +} + +.dateValue { + font-family: Arial, Helvetica, Trebuchet MS, Lucida Grande, sans-serif; + margin-top: 0px; + padding-top: 0px; + font-size: 36px; + font-weight: bold; +} + +.miniday-nav-buttons { + margin-top: 2px; + list-style-image: url("chrome://calendar/skin/widgets/nav-buttons.png"); + min-width: 19px; +} + +#previous-day-button, +#next-day-button[chromedir="rtl"] { + -moz-image-region: rect(0px 5px 13px 0px); + -moz-user-focus: normal; +} + +#previous-day-button:hover, +#previous-day-button:hover:active, +#next-day-button[chromedir="rtl"]:hover, +#next-day-button[chromedir="rtl"]:hover:active { + -moz-image-region: rect(13px 5px 26px 0px); +} + +#previous-day-button[disabled], +#next-day-button[disabled][chromedir="rtl"] { + -moz-image-region: rect(26px 5px 39px 0px); +} + +#today-button { + -moz-image-region: rect(0px 16px 13px 5px); + -moz-user-focus: normal; +} + +#today-button:hover, +#today-button:hover:active { + -moz-image-region: rect(13px 16px 26px 5px); +} + +#today-button[disabled] { + -moz-image-region: rect(26px 16px 39px 5px); + -moz-user-focus: normal; +} + +#next-day-button, +#previous-day-button[chromedir="rtl"] { + -moz-image-region: rect(0px 21px 13px 16px); + -moz-user-focus: normal; +} +#next-day-button:hover, +#next-day-button:hover:active, +#previous-day-button[chromedir="rtl"]:hover, +#previous-day-button[chromedir="rtl"]:hover:active { + -moz-image-region: rect(13px 21px 26px 16px); +} + +#next-day-button[disabled], +#previous-day-button[disabled][chromedir="rtl"] { + -moz-image-region: rect(26px 21px 39px 16px); +} + +.miniday-nav-buttons > .toolbarbutton-icon { + margin: 1px; +} + +#miniday-dropdown-button { + margin: 2px; + max-width: 18px; + -moz-user-focus: normal; +} + +#miniday-dropdown-button > .toolbarbutton-icon, +#miniday-dropdown-button > .toolbarbutton-text, + .miniday-nav-buttons > .toolbarbutton-text { + display: none; +} + +#miniday-dropdown-button > .toolbarbutton-menu-dropmarker { + -moz-padding-start: 0; +} + +.today-closebutton { + list-style-image: url("chrome://global/skin/icons/close.png"); + -moz-image-region: rect(0 16px 16px 0); + -moz-appearance: none; + border: none !important; + padding: 2px; +} + +.today-closebutton:hover { + -moz-image-region: rect(0 32px 16px 16px); +} + +.today-closebutton:hover:active { + -moz-image-region: rect(0 48px 16px 32px); +} + +.today-closebutton > .toolbarbutton-icon { + -moz-margin-end: 0px; /* override toolkit's default value */ +} + +#agenda-toolbar { + border: none; + padding: 1px; +} + +#todaypane-new-event-button { + -moz-user-focus: normal; +} + +#todaypane-new-event-button > .toolbarbutton-text { + -moz-padding-start: 5px; +} + +#todaypane-new-event-button { + list-style-image: url("chrome://calendar/skin/toolbar-small.png"); + -moz-image-region: rect(0px 16px 16px 0px); +} +#todaypane-new-event-button[disabled="true"], +#todaypane-new-event-button[disabled="true"]:hover, +#todaypane-new-event-button[disabled="true"]:hover:active { + -moz-image-region: rect(32px 16px 48px 0px); +} +#todaypane-new-event-button:hover { + -moz-image-region: rect(16px 16px 32px 0px); +} + +#agenda-listbox { + -moz-user-focus: normal; + margin: 3px; +} + +agenda-checkbox-richlist-item { + -moz-binding: url("chrome://calendar/content/agenda-listbox.xml#agenda-checkbox-richlist-item"); + -moz-user-focus: normal; +} + +agenda-richlist-item { + -moz-binding: url("chrome://calendar/content/agenda-listbox.xml#agenda-richlist-item"); + -moz-user-focus: normal; + overflow: hidden; +} + +agenda-allday-richlist-item { + -moz-binding: url("chrome://calendar/content/agenda-listbox.xml#agenda-allday-richlist-item"); + -moz-user-focus: normal; + overflow: hidden; +} + +.agenda-container-box { + border-bottom: 1px dotted #C0C0C0; + -moz-margin-start: 4px; + -moz-margin-end: 4px; + padding-top: 2px; + padding-bottom: 2px; +} + +.agenda-allday-container-box { + border-bottom: 1px dotted #C0C0C0; + -moz-margin-start: 4px; + -moz-margin-end: 4px; + padding-top: 4px; + padding-bottom: 4px; +} + +.agenda-container-box[selected="true"], +.agenda-allday-container-box[selected="true"], +.agenda-checkbox[selected="true"], +.agenda-container-box[selected="true"][current="true"], +.agenda-allday-container-box[selected="true"][current="true"], +.agenda-checkbox[selected="true"][current="true"] { + background-image: url("chrome://mozapps/skin/extensions/itemEnabledFader.png"); + background-color: Highlight; + color: HighlightText; +} + +.agenda-container-box[current="true"], +.agenda-alldaycontainer-box[current="true"], +.agenda-checkbox[current="true"], +.agenda-container-box[selected="true"][current="true"][disabled="true"], +.agenda-allday-container-box[selected="true"][current="true"][disabled="true"], +.agenda-checkbox[selected="true"][current="true"][disabled="true"] { + background-image: url("chrome://mozapps/skin/extensions/itemEnabledFader.png"); + background-color: #DFEAF4; +} + +.agenda-container-box[selected="true"][disabled="true"], +.agenda-allday-container-box[selected="true"][disabled="true"], +.agenda-checkbox[selected="true"][disabled="true"] { + background-image: none; + color: -moz-dialogText; + background-color: -moz-dialog; +} + +.agenda-event-title { + margin-top: 0px; +} + +.agenda-event-start { + margin-bottom: 0px; +} + +.agenda-new-date { + width: 15px; + height: 15px; + border: 1px solid grey; + cursor: pointer; +} + +.agenda-calendar-image { + list-style-image: url("chrome://calendar/skin/calendar-overlay.png"); + -moz-image-region: rect(0px 10px 10px 0px); + margin-top: 3px; + -moz-margin-start: 4px; + width: 10px; + height: 10px; +} + +.agenda-multiDayEvent-image { + list-style-image: url("chrome://calendar/skin/calendar-overlay.png"); + -moz-margin-start: 3px; + width: 10px; + height: 10px; + display: none; +} + +.agenda-multiDayEvent-image[type="start"] { + -moz-image-region: rect(0px 20px 10px 10px); + display: -moz-box; +} + +.agenda-multiDayEvent-image[type="continue"] { + -moz-image-region: rect(0px 30px 10px 20px); + display: -moz-box; +} + +.agenda-multiDayEvent-image[type="end"] { + -moz-image-region: rect(0px 40px 10px 30px); + display: -moz-box; +} diff --git a/calendar/base/themes/gnomestripe/widgets/calendar-widgets.css b/calendar/base/themes/gnomestripe/widgets/calendar-widgets.css new file mode 100644 index 0000000000..a97d031115 --- /dev/null +++ b/calendar/base/themes/gnomestripe/widgets/calendar-widgets.css @@ -0,0 +1,148 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Sun Microsystems code. + * + * The Initial Developer of the Original Code is Oracle Corporation + * Portions created by the Initial Developer are Copyright (C) 2008 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * Berend Cornelius + * + * 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 + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + + +treenode-checkbox { + -moz-box-align: center; + padding-top: 4px; + padding-bottom: 4px; + -moz-padding-start: 4px; + -moz-padding-end: 4px; + font-weight: bold; + border-bottom: 1px dotted #c0c0c0; +} + +.checkbox-label-box { + -moz-margin-start: 4px; +} + +.checkbox-icon { + -moz-margin-end: 2px; +} + +.checkbox-label { + margin: 0 !important; +} + +treenode-checkbox > .checkbox-label-center-box > .checkbox-label-box > .checkbox-label { + font-weight: bold; + border-bottom: 1px solid -moz-Dialog; +} + +treenode-checkbox[checked="true"] > .checkbox-check { + background-image: url(chrome://global/skin/tree/twisty-open.png); +} + +treenode-checkbox > .checkbox-check { + -moz-appearance: none; + -moz-box-align: center; + border: none; + width: 9px; /* The image's width is 9 pixels */ + height: 9px; + background-image: url(chrome://global/skin/tree/twisty-clsd.png); +} + +.treenode-checkbox { + -moz-margin-start: 4px; + -moz-margin-end: 4px; +} + +.view-navigation-button { + list-style-image: url(chrome://calendar/skin/widgets/view-navigation.png); + -moz-user-focus: normal; +} + +.view-navigation-button[type="prev"], +.view-navigation-button[type="next"][chromedir="rtl"] { + -moz-image-region: rect(0px 10px 11px 0px); +} +.view-navigation-button[type="prev"]:hover, +.view-navigation-button[type="next"][chromedir="rtl"]:hover { + -moz-image-region: rect(11px 10px 22px 0px); +} +.view-navigation-button[type="prev"][disabled="true"], +.view-navigation-button[type="next"][disabled="true"][chromedir="rtl"] { + -moz-image-region: rect(22px 10px 33px 0px); +} + + +.view-navigation-button[type="today"] { + -moz-image-region: rect(0px 22px 11px 10px); +} +.view-navigation-button[type="today"]:hover { + -moz-image-region: rect(11px 22px 22px 10px); +} +.view-navigation-button[type="today"][disabled="true"] { + -moz-image-region: rect(22px 22px 33px 10px); +} + +.view-navigation-button[type="next"], +.view-navigation-button[type="prev"][chromedir="rtl"] { + -moz-image-region: rect(0px 32px 11px 22px); +} +.view-navigation-button[type="next"]:hover, +.view-navigation-button[type="prev"][chromedir="rtl"]:hover { + -moz-image-region: rect(11px 32px 22px 22px); +} +.view-navigation-button[type="next"][disabled="true"], +.view-navigation-button[type="prev"][disabled="true"][chromedir="rtl"] { + -moz-image-region: rect(22px 32px 33px 22px); +} + +.view-navigation-button > .toolbarbutton-icon { + margin: 0px !important; +} + +.view-navigation-button > .toolbarbutton-text { + display: none; +} + +.toolbarbutton-icon-begin { + -moz-margin-end: 5px; +} + +.toolbarbutton-icon-end { + -moz-margin-start: 5px; +} + +.selected-text { + font-weight: bold; +} + +.selected-text:not([selected="true"]), +.unselected-text[selected="true"] { + visibility: hidden; +} diff --git a/calendar/lightning/Makefile.in b/calendar/lightning/Makefile.in index 01474aacfc..03d2dc5911 100644 --- a/calendar/lightning/Makefile.in +++ b/calendar/lightning/Makefile.in @@ -117,13 +117,19 @@ DIRS = ../libical \ $(NULL) # Select a theme from which to pull our skin goodness +# Linux: gnomesripe # OS X: pinstripe -# Others: winstripe +# Windows: winstripe + +ifneq (,$(filter gtk2 qt,$(MOZ_WIDGET_TOOLKIT))) +THEME=gnomestripe +else ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT)) THEME=pinstripe else THEME=winstripe endif +endif DEFINES += -DTHUNDERBIRD_VERSION=$(THUNDERBIRD_VERSION) \ -DAB_CD=$(AB_CD) \ diff --git a/calendar/lightning/themes/gnomestripe/accountCentral.css b/calendar/lightning/themes/gnomestripe/accountCentral.css new file mode 100644 index 0000000000..2787413f5d --- /dev/null +++ b/calendar/lightning/themes/gnomestripe/accountCentral.css @@ -0,0 +1,46 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Sun Microsystems code. + * + * The Initial Developer of the Original Code is + * Philipp Kewisch + * Portions created by the Initial Developer are Copyright (C) 2008 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * + * 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 + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +#lightning-newCalendar-row > hbox > label[chromedir="rtl"] { + background: url(chrome://calendar/skin/cal-icon32.png) right no-repeat !important; +} + +#lightning-newCalendar-row > hbox > label { + background: url(chrome://calendar/skin/cal-icon32.png) no-repeat !important; + padding-top: .55em; + padding-bottom: .55em; + -moz-padding-start: 45px; +} diff --git a/calendar/lightning/themes/gnomestripe/imip.css b/calendar/lightning/themes/gnomestripe/imip.css new file mode 100644 index 0000000000..df7dd41015 --- /dev/null +++ b/calendar/lightning/themes/gnomestripe/imip.css @@ -0,0 +1,70 @@ +/* -*- Mode: Java; tab-width: 4; indent-tabs-mode: 20; c-basic-offset: 4 -*- */ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Lightning code. + * + * The Initial Developer of the Original Code is the Mozilla Foundation. + * Portions created by the Initial Developer are Copyright (C) 2006 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * Clint Talbert + * + * 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 + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +table { + background-color: #f0ece4; + border: 3px solid black; + border-collapse: collapse; + width: 40em; + -moz-margin-start: auto; + -moz-margin-end: auto; +} +td { + padding: 3px; + vertical-align: top; + width: 2em; + text-align: left; +} +td.header { + background-color: #0a6cd0; +} +td.description { + width: 9em; + text-align: right; +} +td.content { + width: 29em; + background-color: white; +} +td.content p { + white-space: pre-wrap; +} +p.header { + color: white; + font-size: 1em; + font-weight: bold; +} diff --git a/calendar/lightning/themes/gnomestripe/lightning-widgets.css b/calendar/lightning/themes/gnomestripe/lightning-widgets.css new file mode 100644 index 0000000000..deb9409a0f --- /dev/null +++ b/calendar/lightning/themes/gnomestripe/lightning-widgets.css @@ -0,0 +1,42 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Sun Microsystems code. + * + * The Initial Developer of the Original Code is + * Philipp Kewisch + * Portions created by the Initial Developer are Copyright (C) 2008 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * + * 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 + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +lightning-notification-bar { + background-color: #baeeff; + color: -moz-dialogtext; + border-bottom: 1px solid ThreeDDarkShadow; + padding: 3px; +} diff --git a/calendar/lightning/themes/gnomestripe/lightning.css b/calendar/lightning/themes/gnomestripe/lightning.css new file mode 100644 index 0000000000..5bc456b262 --- /dev/null +++ b/calendar/lightning/themes/gnomestripe/lightning.css @@ -0,0 +1,188 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Lightning code. + * + * The Initial Developer of the Original Code is Oracle Corporation + * Portions created by the Initial Developer are Copyright (C) 2005 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * Mike Shaver + * Vladimir Vukicevic + * Joey Minta + * Simon Paquet + * Philipp Kewisch + * Lars Wohlfahrt + * + * 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 + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +#calsidebar_splitter { + border-right: none; +} + +#today-splitter { + border-right: none; +} + +/* Calendar list rules */ +#calendar-panel { + padding: 0px 5px 5px; +} + +/* Lightning preferences icon */ +radio[pane=paneLightning] { + list-style-image: url("chrome://calendar/skin/cal-icon32.png"); +} + +/* iMIP notification bar */ +#imip-bar > image { + list-style-image: url("chrome://calendar/skin/cal-icon32.png"); + -moz-image-region: rect(0px, 32px, 32px, 0px); +} + +/* ::::: tabs ::::: */ + +/* ::: new tab buttons ::: */ +#calendar-tab-button { + list-style-image: url(chrome://lightning/skin/mode-switch-icons.png); + -moz-image-region: rect(0px 64px 16px 48px); +} + +#calendar-tab-button:hover { + -moz-image-region: rect(16px 64px 32px 48px); +} + +#calendar-tab-button[disabled] { + -moz-image-region: rect(32px 64px 48px 48px); +} + +#task-tab-button { + list-style-image: url(chrome://lightning/skin/mode-switch-icons.png); + -moz-image-region: rect(0px 80px 16px 64px); +} + +#task-tab-button:hover { + -moz-image-region: rect(16px 80px 32px 64px); +} + +#task-tab-button[disabled] { + -moz-image-region: rect(32px 80px 48px 64px); +} + +/* ::: tab icons ::: */ +.tabmail-tab[type="calendar"] { + list-style-image: url(chrome://lightning/skin/mode-switch-icons.png); + -moz-image-region: rect(0px 64px 16px 48px); +} + +.tabmail-tab[type="calendar"][selected="true"] { + -moz-image-region: rect(16px 64px 32px 48px); +} + +.tabmail-tab[type="tasks"] { + list-style-image: url(chrome://lightning/skin/mode-switch-icons.png); + -moz-image-region: rect(0px 80px 16px 64px); +} + +.tabmail-tab[type="tasks"][selected="true"] { + -moz-image-region: rect(16px 80px 32px 64px); +} + + +/* Lightning sidebar background in calendar and task mode */ +#ltnSidebar { + background-color: -moz-field; +} + +/* Write button */ +#newMsgButton-mail-menuitem { + list-style-image: url(chrome://messenger/skin/icons/mail-toolbar.png); + -moz-image-region: rect(0px 48px 24px 24px); +} + +#newMsgButton-calendar-menuitem { + list-style-image: url(chrome://calendar/skin/toolbar-small.png); + -moz-image-region: rect(0px 16px 16px 0px); +} + +#newMsgButton-task-menuitem { + list-style-image: url(chrome://calendar/skin/toolbar-small.png); + -moz-image-region: rect(0px 256px 16px 240px); +} + +/* Today pane button in status bar */ +#calendar-status-todaypane-button, +#calendar-status-todaypane-button[checked="true"] { + min-width: 0; + min-height: 0; + margin: 1px 0 0; + -moz-appearance: none; + border-radius: 3px; + padding: 1px 2px 0 !important; + border: 1px solid transparent; +} + +#calendar-status-todaypane-button:hover { + border: 1px solid ThreeDShadow; + background-color: transparent !important; + background-image: none; + -moz-appearance: none; +} + +#calendar-status-todaypane-button > stack > .toolbarbutton-icon-begin { + list-style-image: url(chrome://calendar/skin/toolbar-small.png); + -moz-image-region: rect(0px 336px 16px 320px); +} + +#calendar-status-todaypane-button > stack > .toolbarbutton-day-text { + text-align: center; + margin-left: 0px; + margin-top: 4px; + margin-bottom: -4px; + font-size: 7pt; + font-family: Arial, Helvetica, sans-serif; + font-weight: bold; + text-shadow: none; + color: DarkBlue; + background-color: transparent; +} + +/* shift the today pane button label up by one pixel to center it */ +#calendar-status-todaypane-button > .toolbarbutton-text { + margin: 0 0 1px !important; +} + +#calendar-status-todaypane-button > .toolbarbutton-icon-end { + list-style-image: url(chrome://global/skin/icons/collapse.png); +} + +#calendar-status-todaypane-button[checked="true"] > .toolbarbutton-icon-end { + list-style-image: url(chrome://global/skin/icons/expand.png); +} + +#calMinimonthBox { + margin-top: 3px; +}