Fix bug 568770 - Visible privacy status of events in calendar view. r=philipp

--HG--
extra : rebase_source : bc460bd08880dd1923fd73ffe94667e12c659092
This commit is contained in:
Laurent Jouanneau 2012-06-21 21:00:18 +02:00
Родитель 136c1541aa
Коммит 934995fd38
9 изменённых файлов: 51 добавлений и 43 удалений

Просмотреть файл

@ -51,12 +51,17 @@
<xul:spacer flex="1"/>
</xul:vbox>
<xul:stack>
<xul:hbox align="right">
<xul:hbox anonid="alarm-icons-box"
class="alarm-icons-box"
pack="end"
align="top"
xbl:inherits="flashing"/>
<xul:image anonid="item-classification-box"
class="item-classification-box"
pack="end"/>
</xul:hbox>
<xul:calendar-category-box anonid="category-box" xbl:inherits="categories" pack="end"/>
<xul:hbox anonid="alarm-icons-box"
class="alarm-icons-box"
align="center"
pack="end"
xbl:inherits="flashing"/>
</xul:stack>
</xul:hbox>
</xul:stack>

Просмотреть файл

@ -2182,12 +2182,17 @@
wrap="true"/>
</xul:hbox>
<xul:stack mousethrough="always">
<xul:hbox align="right">
<xul:hbox anonid="alarm-icons-box"
class="alarm-icons-box"
pack="end"
align="top"
xbl:inherits="flashing"/>
<xul:image anonid="item-classification-box"
class="item-classification-box"
pack="end"/>
</xul:hbox>
<xul:calendar-category-box anonid="category-box" xbl:inherits="categories" pack="end" />
<xul:hbox anonid="alarm-icons-box"
class="alarm-icons-box"
pack="end"
align="top"
xbl:inherits="flashing"/>
</xul:stack>
<xul:box xbl:inherits="orient">
<xul:calendar-event-gripbar anonid="gripbar1"

Просмотреть файл

@ -173,6 +173,12 @@
"suppressed");
}
// Item classification / privacy
let classificationBox = document.getAnonymousElementByAttribute(this, "anonid", "item-classification-box");
if (classificationBox) {
classificationBox.setAttribute("classification", item.privacy || "PUBLIC");
}
// Set up event box attributes for use in css selectors. Note if
// something is added here, it should also be xbl:inherited correctly
// in the <content> section of this binding, and all that inherit it.

Просмотреть файл

@ -485,21 +485,21 @@
accesskey="&event.menu.options.privacy.public.accesskey;"
type="radio"
privacy="PUBLIC"
oncommand="editPrivacy(this)"
oncommand="editPrivacy(this, event)"
disable-on-readonly="true"/>
<menuitem id="options-privacy-confidential-menuitem"
label="&event.menu.options.privacy.confidential.label;"
accesskey="&event.menu.options.privacy.confidential.accesskey;"
type="radio"
privacy="CONFIDENTIAL"
oncommand="editPrivacy(this)"
oncommand="editPrivacy(this, event)"
disable-on-readonly="true"/>
<menuitem id="options-privacy-private-menuitem"
label="&event.menu.options.privacy.private.label;"
accesskey="&event.menu.options.privacy.private.accesskey;"
type="radio"
privacy="PRIVATE"
oncommand="editPrivacy(this)"
oncommand="editPrivacy(this, event)"
disable-on-readonly="true"/>
</menupopup>
</menu>
@ -1089,15 +1089,12 @@
collapsed="true"
pack="start">
<hbox id="status-privacy-public-box" privacy="PUBLIC">
<image id="button-privacy-public" class="cal-statusbar-1"/>
<label value="&event.menu.options.privacy.public.label;"/>
</hbox>
<hbox id="status-privacy-confidential-box" privacy="CONFIDENTIAL">
<image id="button-privacy-confidential" class="cal-statusbar-1"/>
<label value="&event.menu.options.privacy.confidential.label;"/>
</hbox>
<hbox id="status-privacy-private-box" privacy="PRIVATE">
<image id="button-privacy-private" class="cal-statusbar-1"/>
<label value="&event.menu.options.privacy.private.label;"/>
</hbox>
</statusbarpanel>

Просмотреть файл

@ -126,6 +126,7 @@ calendar.jar:
skin/calendar/calendar-overlay.png (themes/common/images/calendar-overlay.png)
skin/calendar/calendar-printing.css (themes/common/calendar-printing.css)
skin/calendar/calendar-status.png (themes/common/images/calendar-status.png)
skin/calendar/classification.png (themes/common/images/classification.png)
skin/calendar/common/calendar-task-tree.css (themes/common/calendar-task-tree.css)
skin/calendar/daypicker-background.png (themes/common/images/daypicker-background.png)
skin/calendar/day-box-item-image.png (themes/common/images/day-box-item-image.png)

Просмотреть файл

@ -1089,3 +1089,21 @@ tab[calview] > .tab-middle {
.today-navigation-button > .toolbarbutton-icon {
display: none;
}
.item-classification-box {
list-style-image: url("chrome://calendar/skin/classification.png");
width: 11px;
height: 11px;
}
.item-classification-box[classification="PUBLIC"] {
display: none;
}
.item-classification-box[classification="PRIVATE"] {
-moz-image-region: rect(0 22px 11px 11px)
}
.item-classification-box[classification="CONFIDENTIAL"] {
-moz-image-region: rect(0 11px 11px 0)
}

Просмотреть файл

@ -80,30 +80,6 @@ label.label {
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);
}
/*--------------------------------------------------------------------
* privacy "private" image
*-------------------------------------------------------------------*/
#button-privacy-private {
-moz-image-region: rect(0px 56px 16px 28px);
}
/*--------------------------------------------------------------------
* privacy "confidential" image
*-------------------------------------------------------------------*/
#button-privacy-confidential {
-moz-image-region: rect(0px 84px 16px 56px);
}
/*--------------------------------------------------------------------
* importance "low" image
*-------------------------------------------------------------------*/

Двоичные данные
calendar/base/themes/common/images/classification.png Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 325 B

Просмотреть файл

@ -113,11 +113,11 @@ var testEventDialog = function () {
event.assertValue(new elementslib.ID(event.window.document, "attendee-list"),
attendee);
// make it private and verify icon visible
// make it private and verify label visible
event.click(new elementslib.ID(event.window.document, "button-privacy"));
event.click(new elementslib.ID(event.window.document, "event-privacy-private-menuitem"));
let icon = (new elementslib.ID(event.window.document, "button-privacy-private"));
event.assertJS(event.window.getComputedStyle(icon.getNode(), null).getPropertyValue("visibility") == "visible");
let label = (new elementslib.ID(event.window.document, "status-privacy-private-box"));
event.assertJS(event.window.getComputedStyle(label.getNode(), null).getPropertyValue("visibility") == "visible");
// add attachment and verify added
calUtils.handleAddingAttachment(event, url);