003f6afe1e449cfdf35296b6dbc32eb1b85146b2
[themes.git] / LCARStrek / global / media / videocontrols.css
1 @namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
2
3 .controlBar {
4   height: 28px;
5   background-color: rgba(156,156,255,0.75);
6 }
7
8 .playButton, .muteButton {
9   /* Remove the usual button appearance and styling */
10   margin: 0px;
11   padding: 0px;
12   border: none;
13   min-height: 28px;
14   background-color: transparent;
15   background-repeat: no-repeat;
16   background-position: center center;
17 }
18 .playButton {
19   min-width: 28px;
20   margin-right: -22px; /* 1/2 of scrubber thumb width, for overhang. */
21   position: relative; /* Trick to work around negative margin interfering with clicking on the button. */
22 }
23 .muteButton {
24   min-width: 33px;
25 }
26 .playButton:hover, .muteButton:hover {
27   background-color: rgba(255,207,0,0.75);
28 }
29 .playButton:-moz-focusring > .button-box,
30 .muteButton:-moz-focusring > .button-box {
31   border: 1px dotted rgba(0,0,0,0.75);
32 }
33
34 .playButton {
35   background-image: url("chrome://global/skin/media/pauseButton.png");
36 }
37 .playButton:hover {
38   background-image: url("chrome://global/skin/media/pauseButton-hover.png");
39 }
40 .playButton[paused="true"] {
41   background-image: url("chrome://global/skin/media/playButton.png");
42 }
43 .playButton[paused="true"]:hover {
44   background-image: url("chrome://global/skin/media/playButton-hover.png");
45 }
46
47 .muteButton {
48   background-image: url("chrome://global/skin/media/muteButton.png");
49 }
50 .muteButton:hover {
51   background-image: url("chrome://global/skin/media/muteButton-hover.png");
52 }
53 .muteButton[muted="true"] {
54   background-image: url("chrome://global/skin/media/unmuteButton.png");
55 }
56 .muteButton[muted="true"]:hover {
57   background-image: url("chrome://global/skin/media/unmuteButton-hover.png");
58 }
59
60 .volumeStack {
61   width: 28px;
62   height: 70px;
63   background-color: rgba(156,156,255,0.74);
64   /* use negative margin to place stack over the mute button to its left. */
65   margin: -70px 3px 28px -31px;
66   overflow: hidden; /* crop it when sliding down, don't grow the control bar */
67   position: relative; /* Trick to work around negative margin interfering with dragging the thumb. */
68   padding-top: 6px;
69 }
70
71 .volumeControl {
72   min-height: 64px;
73 }
74
75 /* .scale-thumb is an element inside the <scale> implementation. */
76 .volumeControl .scale-thumb {
77   /* Override the default thumb appearance with a custom image. */
78   -moz-appearance: none;
79   background: url("chrome://global/skin/media/volumeThumb.png") no-repeat center;
80   border: none !important;
81   min-width: 16px;
82   min-height: 11px;
83 }
84 .volumeControl .scale-thumb:hover, .volumeControl .scale-thumb:active {
85   background-image: url("chrome://global/skin/media/volumeThumb-hover.png");
86 }
87
88 .volumeBackgroundBar {
89   /* margin left/right: make bar 8px wide (control width = 28, minus 2 * 10 margin) */
90   margin: 0px 10px;
91   background-color: rgba(0,0,0,0.5);
92   border-radius: 4px 4px;
93 }
94
95 .durationBox {
96   -moz-box-pack: center;
97 }
98
99 .durationLabel {
100   margin-left: -22px; /* 1/2 of scrubber thumb width, for overhang. */
101   padding-left: 8px; /* don't bump into the scrubber bar */
102   padding-top: 0px; /* center vertically with scrubber bar */
103   color: rgba(0,0,0,0.75);
104   font-size: 11px;
105   font-family: "Liberation Sans",Arial,Tahoma,Helvetica,sans-serif;
106 }
107
108 .positionLabel {
109   display: none;
110 }
111
112 .backgroundBar {
113   /* margin top/bottom: make bar 8px tall (control height = 28, minus 2 * 10 margin) */
114   /* margin left/right: 1/2 of scrubber thumb width, for overhang. */
115   margin: 10px 22px;
116   background-color: rgba(0,0,0,0.75);
117   border-radius: 4px 4px;
118 }
119
120 .bufferBar, .progressBar {
121   /* margin top/bottom: make bar 8px tall (control height = 28, minus 2 * 10 margin) */
122   /* margin left/right: 1/2 of scrubber thumb width, for overhang. */
123   margin: 10px 22px;
124   border: none;
125   background-color: transparent;
126   min-width: 0px;
127   min-height: 0px;
128 }
129
130 /* .progress-bar is an element inside the <progressmeter> implementation. */
131 .bufferBar .progress-bar {
132   /*
133    * Note that this is drawn on top of the .backgroundBar. So although this
134    * has the same background-color specified, the semitransparent
135    * compositing gives it a different visual appearance.
136    */
137   background-color: rgba(255,159,0,0.75);
138   border-radius: 4px 4px;
139   -moz-appearance: none;
140 }
141
142 .progressBar .progress-bar {
143   background-color: #008484;
144   border-radius: 4px 0px 0px 4px;
145   -moz-appearance: none;
146 }
147
148 /* .scale-slider is an element inside the <scale> implementation. */
149 .scrubber .scale-slider, .volumeControl .scale-slider {
150   /* Hide the default horizontal bar. */
151   background: none;
152   margin: 0;
153 }
154
155 .scrubber .scale-slider {
156   /* abs(margin-top) + margin-bottom + bar height == timeThumb height */
157   margin-top: -10px;
158   margin-bottom: 10px;
159 }
160
161 /* .scale-thumb is an element inside the <scale> implementation. */
162 .scrubber .scale-thumb {
163   /* Override the default thumb appearance with a custom image. */
164   background: transparent;
165   border: none !important;
166 }
167
168 .timeThumb {
169   background: url("chrome://global/skin/media/scrubberThumb.png") no-repeat center;
170   min-width: 45px;
171   min-height: 28px;
172   -moz-box-pack: center;
173 }
174
175 .timeThumb[showhours="true"] {
176   background: url("chrome://global/skin/media/scrubberThumbWide.png") no-repeat center;
177 }
178
179 /*
180 .timeThumb:hover, .timeThumb:active {
181   background-image: url("chrome://global/skin/media/scrubberThumb-hover.png");
182 }
183 */
184
185 .timeLabel {
186   color: rgba(0,0,0,0.75);
187   font-size: 10px;
188   font-family: "Liberation Sans",Arial,Tahoma,Helvetica,sans-serif;
189   text-shadow: rgba(255,259,0, 0.3) 0 1px;
190   padding-top: 2px;
191 }
192
193 .statusOverlay {
194   -moz-box-align: center;
195   -moz-box-pack: center;
196   background-color: rgba(0,0,0,0.55);
197 }
198
199 .statusIcon {
200   margin-bottom: 28px; /* same height as .controlBar, to keep icon centered above it */
201   width: 36px;
202   height: 36px;
203 }
204
205 .statusIcon[type="throbber"] {
206   background: url("chrome://communicator/skin/brand/throbber-anim.gif") no-repeat center;
207 }
208
209 .statusIcon[type="error"] {
210   background: url("chrome://global/skin/icons/alert-error.gif") no-repeat center;
211 }
212
213 /* CSS Transitions */
214 .controlBar:not([immediate]) {
215   -moz-transition-property: opacity;
216   -moz-transition-duration: 200ms;
217 }
218 .controlBar[fadeout] {
219   opacity: 0;
220 }
221 .volumeStack:not([immediate]) {
222   -moz-transition-property: opacity, margin-top;
223   -moz-transition-duration: 200ms, 200ms;
224 }
225 .volumeStack[fadeout] {
226   opacity: 0;
227   margin-top: 0;
228 }
229 .statusOverlay:not([immediate]) {
230   -moz-transition-property: opacity;
231   -moz-transition-duration: 300ms;
232   -moz-transition-delay: 750ms;
233 }
234 .statusOverlay[fadeout] {
235   opacity: 0;
236 }