Bug 458572 - add icons to the imip-bar buttons. r+ui-r=Phlipp
authorRichard Marti <richard.marti@gmail.com>
Sun, 17 Nov 2013 12:43:58 +0100
changeset 16906 f12559416caf6fa83da53d22d4439e55f231944b
parent 16905 ff1d24951bccdb266600927b0c5c44b561527105
child 16907 65aa591b610e8dd94975f9e5434e20cfd6c41661
push id1074
push userbugzilla@standard8.plus.com
push dateMon, 03 Feb 2014 22:47:23 +0000
treeherdercomm-beta@6b791b5369ed [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
bugs458572
Bug 458572 - add icons to the imip-bar buttons. r+ui-r=Phlipp
calendar/base/themes/windows/win-aero/lightning.css
calendar/base/themes/windows/win-classic/lightning.css
calendar/lightning/content/imip-bar-overlay.xul
calendar/lightning/content/imip-bar.js
calendar/lightning/jar.mn
calendar/lightning/themes/linux/imip.png
calendar/lightning/themes/linux/lightning.css
calendar/lightning/themes/osx/imip.png
calendar/lightning/themes/osx/lightning.css
calendar/lightning/themes/windows/images/imip-aero.png
calendar/lightning/themes/windows/imip.png
--- a/calendar/base/themes/windows/win-aero/lightning.css
+++ b/calendar/base/themes/windows/win-aero/lightning.css
@@ -41,8 +41,23 @@
     list-style-image: url(chrome://lightning/skin/mode-switch-icons-inverted.png);
   }
 }
 
 #tabbar-toolbar:-moz-lwtheme-brighttext #calendar-tab-button,
 #tabbar-toolbar:-moz-lwtheme-brighttext #task-tab-button {
   list-style-image: url(chrome://lightning/skin/mode-switch-icons-inverted.png);
 }
+
+.imip-button[action="ACCEPTED"] {
+  list-style-image: url(chrome://lightning/skin/imip-aero.png);
+  -moz-image-region: rect(0px 16px 16px 0px);
+}
+
+.imip-button[action="DECLINED"] {
+  list-style-image: url(chrome://lightning/skin/imip-aero.png);
+  -moz-image-region: rect(0px 32px 16px 16px);
+}
+
+.imip-button[action="TENTATIVE"] {
+  list-style-image: url(chrome://lightning/skin/imip-aero.png);
+  -moz-image-region: rect(0px 48px 16px 32px);
+}
--- a/calendar/base/themes/windows/win-classic/lightning.css
+++ b/calendar/base/themes/windows/win-classic/lightning.css
@@ -30,8 +30,28 @@
   -moz-image-region: rect(0px 64px 16px 48px);
 }
 
 .icon-holder[type="tasks"],
 .tabmail-tab[type="tasks"] {
   list-style-image: url(chrome://lightning/skin/mode-switch-icons.png);
   -moz-image-region: rect(0px 80px 16px 64px);
 }
+
+/* ::: imip button icons ::: */
+.imip-button[action="ACCEPTED"] {
+  list-style-image: url(chrome://lightning/skin/imip.png);
+  -moz-image-region: rect(0px 16px 16px 0px);
+}
+
+.imip-button[action="DECLINED"] {
+  list-style-image: url(chrome://lightning/skin/imip.png);
+  -moz-image-region: rect(0px 32px 16px 16px);
+}
+
+.imip-button[action="TENTATIVE"] {
+  list-style-image: url(chrome://lightning/skin/imip.png);
+  -moz-image-region: rect(0px 48px 16px 32px);
+}
+
+.imip-button > .button-box > .button-icon {
+  -moz-margin-end: 2px;
+}
--- a/calendar/lightning/content/imip-bar-overlay.xul
+++ b/calendar/lightning/content/imip-bar-overlay.xul
@@ -29,15 +29,21 @@
             src="chrome://calendar/content/calendar-ui-utils.js"/>
 
     <vbox id="messagepanebox">
       <vbox id="singlemessage" insertbefore="msgHeaderView">
         <lightning-notification-bar id="imip-bar"
                                     collapsed="true"
                                     insertbefore="msgHeaderView"
                                     label="&lightning.imipbar.description;">
-          <button id="imip-button1" hidden="true"/>
-          <button id="imip-button2" hidden="true"/>
-          <button id="imip-button3" hidden="true"/>
+          <button id="imip-button1"
+                  class="imip-button"
+                  hidden="true"/>
+          <button id="imip-button2"
+                  class="imip-button"
+                  hidden="true"/>
+          <button id="imip-button3"
+                  class="imip-button"
+                  hidden="true"/>
         </lightning-notification-bar>
       </vbox>
     </vbox>
 </overlay>
--- a/calendar/lightning/content/imip-bar.js
+++ b/calendar/lightning/content/imip-bar.js
@@ -128,16 +128,17 @@ var ltnImipBar = {
 
         imipBar.setAttribute("label", data.label);
         for each (let button in ["button1", "button2", "button3"]) {
             let buttonElement = document.getElementById("imip-" + button);
             if (data[button].label) {
                 buttonElement.setAttribute("label", data[button].label);
                 buttonElement.setAttribute("oncommand",
                                            "ltnImipBar.executeAction('" + data[button].actionMethod + "')");
+                buttonElement.setAttribute("action", data[button].actionMethod);
 
                 showElement(buttonElement);
             }
         }
     },
 
     executeAction: function ltnExecAction(partStat) {
         if (partStat == "X-SHOWDETAILS") {
--- a/calendar/lightning/jar.mn
+++ b/calendar/lightning/jar.mn
@@ -52,24 +52,26 @@ lightning.jar:
     content/lightning/suite-overlay-preferences.xul        (content/suite-overlay-preferences.xul)
     content/lightning/suite-overlay-sidebar.js             (content/suite-overlay-sidebar.js)
     content/lightning/suite-overlay-sidebar.xul            (content/suite-overlay-sidebar.xul)
 % skin lightning classic/1.0 %skin/lightning/
 % style chrome://global/content/customizeToolbar.xul chrome://lightning/skin/lightning-toolbar.css
 % style chrome://calendar/content/calendar-event-dialog.xul chrome://communicator/skin/communicator.css application={92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}
     skin/lightning/accountCentral.css                      (themes/@THEME@/accountCentral.css)
     skin/lightning/imip.css                                (themes/@THEME@/imip.css)
+    skin/lightning/imip.png                                (themes/@THEME@/imip.png)
     skin/lightning/lightning.css                           (themes/@THEME@/lightning.css)
     skin/lightning/lightning-toolbar.css                   (themes/@THEME@/lightning-toolbar.css)
     skin/lightning/lightning-widgets.css                   (themes/@THEME@/lightning-widgets.css)
     skin/lightning/common/imip.css                         (themes/common/imip.css)
     skin/lightning/suite-accountCentral.css                (themes/common/suite-accountCentral.css)
     skin/lightning/common/lightning-toolbar.css            (themes/common/lightning-toolbar.css)
     skin/lightning/mode-switch-icons.png                   (themes/common/images/mode-switch-icons.png)
 #ifdef XP_WIN
+    skin/lightning/imip-aero.png                           (themes/windows/images/imip-aero.png)
     skin/lightning/mode-switch-icons-aero.png              (themes/windows/images/mode-switch-icons-aero.png)
     skin/lightning/mode-switch-icons-inverted.png          (themes/windows/images/mode-switch-icons-inverted.png)
 #endif
 
 
 calendar.jar:
     content/calendar/calendarCreation.xul                  (/calendar/resources/content/calendarCreation.xul)
     content/calendar/calendarCreation.js                   (/calendar/resources/content/calendarCreation.js)
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0690f87375604db483092973db6ec8b8a8a50ed4
GIT binary patch
literal 1842
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
--- a/calendar/lightning/themes/linux/lightning.css
+++ b/calendar/lightning/themes/linux/lightning.css
@@ -191,8 +191,23 @@ radio[pane=paneLightning] {
 
 #calendar-status-todaypane-button[checked="true"] > .toolbarbutton-icon-end {
   list-style-image: url(chrome://global/skin/icons/expand.png);
 }
 
 #calMinimonthBox {
     margin-top: 3px;
 }
+
+.imip-button[action="ACCEPTED"] {
+  list-style-image: url(chrome://lightning/skin/imip.png);
+  -moz-image-region: rect(0px 16px 16px 0px);
+}
+
+.imip-button[action="DECLINED"] {
+  list-style-image: url(chrome://lightning/skin/imip.png);
+  -moz-image-region: rect(0px 32px 16px 16px);
+}
+
+.imip-button[action="TENTATIVE"] {
+  list-style-image: url(chrome://lightning/skin/imip.png);
+  -moz-image-region: rect(0px 48px 16px 32px);
+}
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..67935f15a76892c61fecbd87e9e3a45f7599e767
GIT binary patch
literal 1232
zc$@*y1TXuEP)<h;3K|Lk000e1NJLTq001xm001Be1^@s6RMh(%000D+Nkl<Zc-rk)
zYe-Z<6xIqV=||a``!b)arf8{4m=6rr63HMmOi8fViZHCrwzii`k%E+^R9I1AWmp*&
zMX4dBS!&|Vu<-sC1s~{7#h><_WiH&db)CCXP&n|hclXZB`OcX$Gv`|`uf_K7G;f_w
z*QC*CgrK0H;=f=|?}UXle}DgzDwRrziHUhNIXP*Zot<6oqMHV|38>~EMDNz{kSBZi
zY><J*FZGDLTCFzv`ug?+1_t()mzVDWdG#D!4>M!WoSe`BFM)bsA4lYA4!aW?JX#4v
zVg(}K5)cp|q^GA>gM5^m?tZ{oX6z|*LJPcL<SDAF=P~IgkscWtISqT;rSJXy{i%u_
zK;B=~>-9ohTwEJXfC*P|5U?=^o&b$N9dLq!JhjzCoPcMa$jC@?+8!DjYE|q&NJz*|
zihO*0yiih7as=c9Ift$TtiWU70bt?G{a+km`#>K3-vf|>77-EAjQs9~mv!Oc;RgCW
zIy!nKPMbEP(I{kQW<Ce`jleSAg#+$0;}?Oub8KvPEnr^q)Ie%UWo2ce$z<vvvIc|U
zV^~;N1T9@`Y%JxyP*zrU0R2=7jz8MOcWK$RTJ0%3KV)g-r^Epo&z(9pn=LadE2}px
zElr4uifV=fpE5EsgzW6>mYJEEO>n@QGisFkHCV~xIBw5SE@K~+;J16gBbHwCHrUh9
zcmh3hxokF@D{^vjgw)hjAvrl&pl7??ZsnZ7o2ANiq~uW;K8tZFz&3IM2f;DCyA4!x
zt^n<sP6odHW3gCNd3kvqxw*Lx^7;As9YaGyi3)OGkF+}|k(Wht``Fl+4SQ-oyX+M0
z0rt$-ii(O3kpl#))mpCL<Z-m=>1ltANpz7CTc@U`xc30{m5x&-<0NAnfCPpWi)EmP
z4Z-svEJosgX$d&bKSK|QI8849i+Z3MRjCL)(2irWz|~1Z<rAwsbuQi+*gG{R`C6by
zh6U+?0_cGssFwzy2c#0$RlCBBeROgn4CrQ;(gjZP^-k#VR1a)H<hxLnil~d~L4LQJ
z?pkL2i_D2o8TmWFT8?tuL0YB<9N#_F19d0^MCgHDOkkGZux^~7y5}>{#y&fMTbvcC
zD?Lz;)vxhH4_GMj&;ug$Kn2L};2f%Dbq}q=2jGSW<+P*+<k5Gj2h1qGI^p4Wl&)`4
zMebsHAPJ{UFG_3?dY~2L^MK8q#%aU0FymC6zEMyE$!j6^<k@X!gdQk_9_S;o&;wtg
z2ePqr)hNs;??vc=OXz1(K)xLykyL{yQr@=$@7T(4J3!;PQwMsW7<ym;dO(C8=!65`
zpa(?gfiCEQe5#8$$-f6)2L}gV9~~XF4-O8N;uNF5Q<~VS=>DW0s6`nqLJx@010p>`
z4^&}-3{E{j0=^M@=i2!AxE<q?Ne`eTKaUHriX3C=j8_jxcL28@FhLLWp_F!zhaTvI
z@j?Z;zaA@RpO}~^#h4_y9vB`TK92+8oI*Vy-2sa9Kp8nefF8K7;N+3Ws%T%i_&p6+
u%R3Kg07^lECwd?U*vqhGu?+l!df+Fn)MO{dSpIDQ0000<MNUMnLSTZOZadBZ
--- a/calendar/lightning/themes/osx/lightning.css
+++ b/calendar/lightning/themes/osx/lightning.css
@@ -184,8 +184,35 @@ radio[pane=paneLightning] {
   -moz-margin-end: -2px;
   position: relative;
 }
 
 #ltnSidebar {
   -moz-border-end: 1px solid #8B8B8B;
   -moz-margin-end: -3px !important;
 }
+
+.imip-button[action="ACCEPTED"] {
+  list-style-image: url(chrome://lightning/skin/imip.png);
+  -moz-image-region: rect(0px 16px 16px 0px);
+}
+
+.imip-button[action="ACCEPTED"]:active {
+  -moz-image-region: rect(16px 16px 32px 0px);
+}
+
+.imip-button[action="DECLINED"] {
+  list-style-image: url(chrome://lightning/skin/imip.png);
+  -moz-image-region: rect(0px 32px 16px 16px);
+}
+
+.imip-button[action="DECLINED"]:active {
+  -moz-image-region: rect(16px 32px 32px 16px);
+}
+
+.imip-button[action="TENTATIVE"] {
+  list-style-image: url(chrome://lightning/skin/imip.png);
+  -moz-image-region: rect(0px 48px 16px 32px);
+}
+
+.imip-button[action="TENTATIVE"]:active {
+  -moz-image-region: rect(16px 48px 32px 32px);
+}
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..f5c303aa165615e60b6e15be5d7697b134c71bc5
GIT binary patch
literal 1277
zc$@+K1OoesP)<h;3K|Lk000e1NJLTq001xm000mO1^@s6P_F#3000EUNkl<Zc-qxg
zdrX^E6lZhFfF<)4(QZCQ6sEGJqoKS;TgpmXT2{-~@(F!V%A;$683wwIC1W!FaI&~$
zQ8SmI8@foAiNndttI+XK2u5Jam`;O#FvDhoDQ(x6eAj!LHnIw|-G4jDFW>2R@9p{h
z?mg$+FCrogLkO+Icm(4yjP(%@ivd}TD2yi?8ygu32?>Yob~kg`cr-?W!{LYnKXC2B
z!op^k%k?_;;{(T6v;J$t?LOT0<3WhSjz2m(JNqn~&2FI4Xj74qk@sGBDQ<jfYC6X^
zXVc{5bsd+-w`jEGe~gWd>F~S9mkE#U>@=R(&EnXl@`As{$HyyRO)&C1lG9Ki;C;B{
zH#Rpnr^Lp_{zTid^$ue<&wBjihi75;@z@5KgLigECTEX>&dl%z*_E8?nV6WUgVVCx
z?KGpY`}8ZXCQ{7IY?R1IMVvi+JDf%^@;MUnKFHJ+;fa8hAxW|*Iy(AqW;$z*omWU*
zHk$f;<k$Oaz-qN7N@S!hlP5;v0yRqI@K73?>zSUOZs_YDIGdQnq&NbJcPxd?LuLCa
z=bcVxd@%Arn4e$d1^59XZm*asK6w46rl$0$s3?n2`sRF2ffjvozU?=s(<5F^9?WL5
zJ=5~p=iks%GARf`;2>GK`G~{MTT0HzqH+m^H!xRBprmvTb>(W;2mTZbv>ubW3;&Oo
zG^tR!M@GkfH1_lj!4uvU8x9~CzwZ=$gf@vpBDqi~B(NVdGc!ZOX>)_c<^L&B8_@An
zACK5<Zbl$^|9YGf37@uJ=ugWMP;V4zy@A99DlDcP6<5}xJW`D^xI)U<V`{<kx2)B{
z{KX5z;kRFa{}i&tvi}K)k;!C+$jFV>n3$NmU0q#F7K?T2#cgqS<>fU<^H%-R;-Z7S
z68UBSu>p&C?TfarhPfgF6;<p<hIfu4!@&kbY7G#S>N5{r!1JCDr~R7DLtjJ6z^<=I
z9*iJ}97q+uwD1m{!JLbaj~~ZEtb2<}J<6)XsC!^!K3L!PiQ78*!{oVKxr!pSm0t3d
zhmIkcW*?Fl>z01G_4_d>>`=-3>j6%4Rq|jChbO!0?IWFBsR{|m5(=k|W#=x&f(nzb
zX=q-u*<7hUg6q~G|J>krqaTUnYD%gs^QH})f*J?cU|)jM3XAaExcO_{YWW{%-M#%L
z$on<P|5u1^dfn0YY{J5FBvF()^VRx))YbK9aBQL#k0k}!{mtg#?@z+c=gO2wR;)w$
zstP0^l!%W}P@)I&NQjFWL|p&*raqL*400cc`w_H#f(W9dnu4O0m(?JJ;UKbFU4_AN
z7II&I;LxG~6NFYNlB+OTB?SR5b#$5q`3fqJ)Og4Ec+Qc=6LYwYz8vmt9CR`WICJjH
zd67bgq?&3}_wM_yV7u=Vuv4wu?}XzP00;%uW4hLg*KNbt-gc>@8$@7HcwB)Dwe=Rf
zW_u_n;J*Xl8PWxY36m1Fp4zL{qw^Op-wH*5#bSA?<7#h<qO97bt*X7(J1}_0-)*2f
z!KHPv{o5-tRfVUpw9?((XFeTD9XzN2I*9N+>0x~6Jq`2WvjY21EEf$vTy}1^I|+jh
nohZ~+>idXm59=G~VY7b$PRGsEqh@o&00000NkvXXu0mjf>q>-4
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0690f87375604db483092973db6ec8b8a8a50ed4
GIT binary patch
literal 1842
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