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