|
1 /* This Source Code Form is subject to the terms of the Mozilla Public |
|
2 * License, v. 2.0. If a copy of the MPL was not distributed with this |
|
3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
|
4 |
|
5 @namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); |
|
6 @namespace html url("http://www.w3.org/1999/xhtml"); |
|
7 |
|
8 .scrubber, |
|
9 .volumeControl { |
|
10 -moz-binding: url("chrome://global/content/bindings/videocontrols.xml#suppressChangeEvent"); |
|
11 } |
|
12 |
|
13 .scrubber .scale-thumb { |
|
14 -moz-binding: url("chrome://global/content/bindings/videocontrols.xml#timeThumb"); |
|
15 } |
|
16 |
|
17 .playButton, |
|
18 .muteButton, |
|
19 .scrubber .scale-slider, |
|
20 .volumeControl .scale-slider { |
|
21 -moz-user-focus: none; |
|
22 } |
|
23 |
|
24 .mediaControlsFrame { |
|
25 direction: ltr; |
|
26 /* Prevent unwanted style inheritance. See bug 554717. */ |
|
27 text-align: left; |
|
28 list-style-image: none !important; |
|
29 font: normal normal normal 100%/normal sans-serif !important; |
|
30 text-decoration: none !important; |
|
31 } |
|
32 |
|
33 .controlsSpacer[hideCursor] { |
|
34 cursor: none; |
|
35 } |
|
36 |
|
37 /* CSS Transitions |
|
38 * |
|
39 * These are overriden by the default theme; the rules here just |
|
40 * provide a fallback to drive the required transitionend event |
|
41 * (in case a 3rd party theme does not provide transitions). |
|
42 */ |
|
43 .controlBar:not([immediate]) { |
|
44 transition-property: opacity; |
|
45 transition-duration: 1ms; |
|
46 } |
|
47 .controlBar[fadeout] { |
|
48 opacity: 0; |
|
49 } |
|
50 .volumeStack:not([immediate]) { |
|
51 transition-property: opacity, margin-top; |
|
52 transition-duration: 1ms, 1ms; |
|
53 } |
|
54 .volumeStack[fadeout] { |
|
55 opacity: 0; |
|
56 margin-top: 0; |
|
57 } |
|
58 .statusOverlay:not([immediate]) { |
|
59 transition-property: opacity; |
|
60 transition-duration: 1ms; |
|
61 transition-delay: 750ms; |
|
62 } |
|
63 .statusOverlay[fadeout] { |
|
64 opacity: 0; |
|
65 } |
|
66 |
|
67 /* Statistics formatting */ |
|
68 html|td.statLabel { |
|
69 font-weight: bold; |
|
70 max-width: 20%; |
|
71 white-space: nowrap; |
|
72 } |
|
73 html|td.statValue { |
|
74 max-width: 30%; |
|
75 } |
|
76 html|td.filename { |
|
77 max-width: 80%; |
|
78 white-space: nowrap; |
|
79 overflow: hidden; |
|
80 text-overflow: ellipsis; |
|
81 } |
|
82 html|span.statActivity > html|span { |
|
83 display: none; |
|
84 } |
|
85 html|span.statActivity[activity="paused"] > html|span.statActivityPaused, |
|
86 html|span.statActivity[activity="playing"] > html|span.statActivityPlaying, |
|
87 html|span.statActivity[activity="ended"] > html|span.statActivityEnded, |
|
88 html|span.statActivity[seeking] > html|span.statActivitySeeking { |
|
89 display: inline; |
|
90 } |
|
91 |
|
92 .controlBar[size="hidden"], |
|
93 .controlBar[size="small"] .durationBox, |
|
94 .controlBar[size="small"] .durationLabel, |
|
95 .controlBar[size="small"] .positionLabel, |
|
96 .controlBar[size="small"] .volumeStack { |
|
97 visibility: collapse; |
|
98 } |
|
99 |
|
100 .controlBar[size="small"] .scrubberStack, |
|
101 .controlBar[size="small"] .backgroundBar, |
|
102 .controlBar[size="small"] .bufferBar, |
|
103 .controlBar[size="small"] .progressBar, |
|
104 .controlBar[size="small"] .scrubber { |
|
105 visibility: hidden; |
|
106 } |
|
107 |
|
108 /* Error description formatting */ |
|
109 .errorLabel { |
|
110 display: none; |
|
111 } |
|
112 |
|
113 [error="errorAborted"] > [anonid="errorAborted"], |
|
114 [error="errorNetwork"] > [anonid="errorNetwork"], |
|
115 [error="errorDecode"] > [anonid="errorDecode"], |
|
116 [error="errorSrcNotSupported"] > [anonid="errorSrcNotSupported"], |
|
117 [error="errorNoSource"] > [anonid="errorNoSource"], |
|
118 [error="errorGeneric"] > [anonid="errorGeneric"] { |
|
119 display: inline; |
|
120 } |