finish up sync with Mozilla 12 toolkit winstripe
[themes.git] / LCARStrek / global / media / videocontrols.css
CommitLineData
29465e59 1@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
1e29db46 2@namespace html url("http://www.w3.org/1999/xhtml");
29465e59 3
6f25e2c5 4.controlBar {
b310ca09 5 height: 28px;
6f25e2c5 6 background-color: rgba(156,156,255,0.75);
29465e59
RK
7}
8
6f25e2c5
RK
9.playButton, .muteButton {
10 /* Remove the usual button appearance and styling */
11 margin: 0px;
12 padding: 0px;
13 border: none;
b310ca09 14 min-height: 28px;
1880ed93
RK
15 background-color: transparent;
16 background-repeat: no-repeat;
17 background-position: center center;
18}
b310ca09
RK
19.playButton {
20 min-width: 28px;
ca710c53
RK
21 margin-right: -22px; /* 1/2 of scrubber thumb width, for overhang. */
22 position: relative; /* Trick to work around negative margin interfering with clicking on the button. */
b310ca09
RK
23}
24.muteButton {
25 min-width: 33px;
26}
1880ed93
RK
27.playButton:hover, .muteButton:hover {
28 background-color: rgba(255,207,0,0.75);
29}
024ec655
RK
30.playButton:-moz-focusring > .button-box,
31.muteButton:-moz-focusring > .button-box {
1880ed93 32 border: 1px dotted rgba(0,0,0,0.75);
29465e59
RK
33}
34
6f25e2c5 35.playButton {
1880ed93 36 background-image: url("chrome://global/skin/media/pauseButton.png");
6f25e2c5
RK
37}
38.playButton:hover {
1880ed93 39 background-image: url("chrome://global/skin/media/pauseButton-hover.png");
29465e59 40}
f128e38f 41.playButton[paused] {
1880ed93 42 background-image: url("chrome://global/skin/media/playButton.png");
6f25e2c5 43}
f128e38f 44.playButton[paused]:hover {
1880ed93 45 background-image: url("chrome://global/skin/media/playButton-hover.png");
29465e59
RK
46}
47
6f25e2c5 48.muteButton {
1880ed93 49 background-image: url("chrome://global/skin/media/muteButton.png");
6f25e2c5
RK
50}
51.muteButton:hover {
1880ed93 52 background-image: url("chrome://global/skin/media/muteButton-hover.png");
6f25e2c5 53}
f128e38f 54.muteButton[muted] {
1880ed93 55 background-image: url("chrome://global/skin/media/unmuteButton.png");
6f25e2c5 56}
f128e38f 57.muteButton[muted]:hover {
1880ed93 58 background-image: url("chrome://global/skin/media/unmuteButton-hover.png");
6f25e2c5 59}
b310ca09 60
f128e38f
RK
61.fullscreenButton {
62 background-color: transparent;
63 list-style-image: url("chrome://global/skin/media/fullscreenButton.png");
64 -moz-image-region: rect(0px, 16px, 16px, 0px);
65 -moz-appearance: none;
66 margin: 0;
67 padding: 0;
68 min-height: 28px;
69 min-width: 28px;
70 border: none;
71}
72
73.fullscreenButton:hover {
74 background-color: rgba(255,207,0,0.75);
75 -moz-image-region: rect(16px, 16px, 32px, 0px);
76}
77
78.fullscreenButton[fullscreened] {
79 -moz-image-region: rect(0px, 32px, 16px, 16px);
80}
81
82.fullscreenButton[fullscreened]:hover {
83 background-color: rgba(255,207,0,0.75);
84 -moz-image-region: rect(16px, 32px, 32px, 16px);
85}
86
ca710c53
RK
87.volumeStack {
88 width: 28px;
89 height: 70px;
90 background-color: rgba(156,156,255,0.74);
91 /* use negative margin to place stack over the mute button to its left. */
92 margin: -70px 3px 28px -31px;
93 overflow: hidden; /* crop it when sliding down, don't grow the control bar */
94 position: relative; /* Trick to work around negative margin interfering with dragging the thumb. */
95 padding-top: 6px;
e51a824f 96 border-radius: 3px 3px 0 0;
ca710c53
RK
97}
98
99.volumeControl {
100 min-height: 64px;
101}
102
103/* .scale-thumb is an element inside the <scale> implementation. */
104.volumeControl .scale-thumb {
105 /* Override the default thumb appearance with a custom image. */
106 -moz-appearance: none;
107 background: url("chrome://global/skin/media/volumeThumb.png") no-repeat center;
108 border: none !important;
109 min-width: 16px;
110 min-height: 11px;
111}
112.volumeControl .scale-thumb:hover, .volumeControl .scale-thumb:active {
113 background-image: url("chrome://global/skin/media/volumeThumb-hover.png");
114}
115
116.volumeBackgroundBar {
117 /* margin left/right: make bar 8px wide (control width = 28, minus 2 * 10 margin) */
118 margin: 0px 10px;
119 background-color: rgba(0,0,0,0.5);
569543b3 120 border-radius: 4px 4px;
ca710c53
RK
121}
122
ca710c53
RK
123.durationBox {
124 -moz-box-pack: center;
125}
126
127.durationLabel {
128 margin-left: -22px; /* 1/2 of scrubber thumb width, for overhang. */
129 padding-left: 8px; /* don't bump into the scrubber bar */
130 padding-top: 0px; /* center vertically with scrubber bar */
131 color: rgba(0,0,0,0.75);
1e140ad9 132 font-size: 11px;
3327253e 133 font-family: "Liberation Sans",Arial,Tahoma,Helvetica,sans-serif;
ca710c53
RK
134}
135
9162a092
RK
136.positionLabel {
137 display: none;
138}
139
b310ca09 140.backgroundBar {
ca710c53
RK
141 /* margin top/bottom: make bar 8px tall (control height = 28, minus 2 * 10 margin) */
142 /* margin left/right: 1/2 of scrubber thumb width, for overhang. */
143 margin: 10px 22px;
b310ca09 144 background-color: rgba(0,0,0,0.75);
569543b3 145 border-radius: 4px 4px;
b310ca09
RK
146}
147
148.bufferBar, .progressBar {
ca710c53
RK
149 /* margin top/bottom: make bar 8px tall (control height = 28, minus 2 * 10 margin) */
150 /* margin left/right: 1/2 of scrubber thumb width, for overhang. */
151 margin: 10px 22px;
b310ca09
RK
152 border: none;
153 background-color: transparent;
154 min-width: 0px;
155 min-height: 0px;
156}
157
158/* .progress-bar is an element inside the <progressmeter> implementation. */
159.bufferBar .progress-bar {
160 /*
161 * Note that this is drawn on top of the .backgroundBar. So although this
162 * has the same background-color specified, the semitransparent
163 * compositing gives it a different visual appearance.
164 */
165 background-color: rgba(255,159,0,0.75);
569543b3 166 border-radius: 4px 4px;
b310ca09
RK
167 -moz-appearance: none;
168}
169
170.progressBar .progress-bar {
171 background-color: #008484;
569543b3 172 border-radius: 4px 0px 0px 4px;
b310ca09
RK
173 -moz-appearance: none;
174}
175
176/* .scale-slider is an element inside the <scale> implementation. */
ca710c53 177.scrubber .scale-slider, .volumeControl .scale-slider {
b310ca09
RK
178 /* Hide the default horizontal bar. */
179 background: none;
ca710c53
RK
180 margin: 0;
181}
182
183.scrubber .scale-slider {
3327253e
RK
184 /* abs(margin-top) + margin-bottom + bar height == timeThumb height */
185 margin-top: -10px;
186 margin-bottom: 10px;
b310ca09
RK
187}
188
189/* .scale-thumb is an element inside the <scale> implementation. */
ca710c53 190.scrubber .scale-thumb {
b310ca09 191 /* Override the default thumb appearance with a custom image. */
ca710c53 192 background: transparent;
b310ca09 193 border: none !important;
b310ca09
RK
194}
195
ca710c53
RK
196.timeThumb {
197 background: url("chrome://global/skin/media/scrubberThumb.png") no-repeat center;
198 min-width: 45px;
1e140ad9 199 min-height: 28px;
ca710c53
RK
200 -moz-box-pack: center;
201}
202
203.timeThumb[showhours="true"] {
204 background: url("chrome://global/skin/media/scrubberThumbWide.png") no-repeat center;
205}
206
207/*
208.timeThumb:hover, .timeThumb:active {
b310ca09
RK
209 background-image: url("chrome://global/skin/media/scrubberThumb-hover.png");
210}
ca710c53
RK
211*/
212
213.timeLabel {
3327253e
RK
214 color: rgba(0,0,0,0.75);
215 font-size: 10px;
216 font-family: "Liberation Sans",Arial,Tahoma,Helvetica,sans-serif;
217 text-shadow: rgba(255,259,0, 0.3) 0 1px;
218 padding-top: 2px;
ca710c53
RK
219}
220
ca710c53 221.statusOverlay {
3327253e
RK
222 -moz-box-align: center;
223 -moz-box-pack: center;
224 background-color: rgba(0,0,0,0.55);
ca710c53
RK
225}
226
227.statusIcon {
3327253e
RK
228 margin-bottom: 28px; /* same height as .controlBar, to keep icon centered above it */
229 width: 36px;
230 height: 36px;
ca710c53
RK
231}
232
233.statusIcon[type="throbber"] {
3327253e 234 background: url("chrome://communicator/skin/brand/throbber-anim.gif") no-repeat center;
ca710c53 235}
154ee8b3
RK
236/*
237.statusIcon[type="throbber"][stalled] {
238 background: url("chrome://global/skin/media/stalled.png") no-repeat center;
239}
240*/
ca710c53 241.statusIcon[type="error"] {
3327253e 242 background: url("chrome://global/skin/icons/alert-error.gif") no-repeat center;
ca710c53 243}
4b1ccdb4 244
044b5d49
RK
245/* Overlay Play button */
246.clickToPlay {
247 width: 64px;
248 height: 64px;
249 -moz-box-pack: center;
250 -moz-box-align: center;
251 opacity: 0.7;
252 background-image: url("chrome://global/skin/media/clicktoplay-bgtexture.png"),
253 url("chrome://global/skin/media/videoClickToPlayButton.svg");
254 background-repeat: repeat, no-repeat;
255 background-position: center, center;
256 background-size: auto, 64px 64px;
257 background-color: hsla(0,0%,10%,.5);
258}
259.clickToPlay:hover {
260 opacity: 1;
261}
262
1e29db46
RK
263/* Statistics formatting */
264html|*.statsDiv {
265 position: relative;
266}
267html|td {
268 height: 1em;
269 max-height: 1em;
270 padding: 0 2px;
271}
272html|table {
273 font-family: "Liberation Sans",Arial,Tahoma,Helvetica,sans-serif;
274 font-size: 11px;
275 color: white;
276 text-shadow:
277 -1px -1px 0 #000,
278 1px -1px 0 #000,
279 -1px 1px 0 #000,
280 1px 1px 0 #000;
281 min-width: 100%;
282 background: rgba(68,68,111,.7);
283 table-layout: fixed;
284 border-collapse: collapse;
285 position: absolute;
286}
287
4b1ccdb4 288/* CSS Transitions */
044b5d49
RK
289.clickToPlay {
290 -moz-transition-property: opacity, background-size;
291 -moz-transition-duration: 400ms, 400ms;
292}
293.clickToPlay[fadeout] {
294 background-size: auto, 192px 192px;
295 opacity: 0;
296}
297.clickToPlay[fadeout][immediate] {
298 -moz-transition-property: opacity, background-size;
299 -moz-transition-duration: 0s, 0s;
300}
4b1ccdb4
RK
301.controlBar:not([immediate]) {
302 -moz-transition-property: opacity;
303 -moz-transition-duration: 200ms;
304}
305.controlBar[fadeout] {
306 opacity: 0;
307}
308.volumeStack:not([immediate]) {
309 -moz-transition-property: opacity, margin-top;
310 -moz-transition-duration: 200ms, 200ms;
311}
312.volumeStack[fadeout] {
313 opacity: 0;
314 margin-top: 0;
315}
316.statusOverlay:not([immediate]) {
317 -moz-transition-property: opacity;
318 -moz-transition-duration: 300ms;
319 -moz-transition-delay: 750ms;
320}
321.statusOverlay[fadeout] {
322 opacity: 0;
323}
f128e38f
RK
324
325/* Error description formatting */
326.errorLabel {
327 font-family: "Liberation Sans",Arial,Tahoma,Helvetica,sans-serif;
328 font-size: 11px;
329 color: #E7ADE7;
330 text-shadow:
331 -1px -1px 0 #000,
332 1px -1px 0 #000,
333 -1px 1px 0 #000,
334 1px 1px 0 #000;
335 padding: 0 10px;
336 text-align: center;
337}