diff options
Diffstat (limited to 'arc-firefox-theme/chrome/global/media')
30 files changed, 543 insertions, 268 deletions
diff --git a/arc-firefox-theme/chrome/global/media/TopLevelVideoDocument.css b/arc-firefox-theme/chrome/global/media/TopLevelVideoDocument.css index 760cdcd..2d857ce 100644 --- a/arc-firefox-theme/chrome/global/media/TopLevelVideoDocument.css +++ b/arc-firefox-theme/chrome/global/media/TopLevelVideoDocument.css @@ -8,5 +8,5 @@ body { } video { - box-shadow: 0 0 15px #000; + box-shadow: 0 0 5px rgba(0,0,0,0.6); } diff --git a/arc-firefox-theme/chrome/global/media/closeCaptionButton.png b/arc-firefox-theme/chrome/global/media/closeCaptionButton.png Binary files differdeleted file mode 100644 index 469310f..0000000 --- a/arc-firefox-theme/chrome/global/media/closeCaptionButton.png +++ /dev/null diff --git a/arc-firefox-theme/chrome/global/media/closeCaptionButton@2x.png b/arc-firefox-theme/chrome/global/media/closeCaptionButton@2x.png Binary files differdeleted file mode 100644 index 0335078..0000000 --- a/arc-firefox-theme/chrome/global/media/closeCaptionButton@2x.png +++ /dev/null diff --git a/arc-firefox-theme/chrome/global/media/closedCaptionButton.svg b/arc-firefox-theme/chrome/global/media/closedCaptionButton.svg new file mode 100644 index 0000000..0c55071 --- /dev/null +++ b/arc-firefox-theme/chrome/global/media/closedCaptionButton.svg @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="utf-8"?> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="18px" height="18px" viewBox="0 0 18 18"> + <style> + use:not(:target) { + display: none; + } + use { + fill: #ffffff; + } + use[id$="-hover"] { + fill: #48a0f7; + } + use[id$="-active"] { + fill: #2d89e6; + } + use[id$="-focus"] { + fill: #48a0f7; + } + use[id$="-disabled"] { + fill: #ffffff; + } + </style> + <symbol id="cc-off-shape"> + <path fill-rule="evenodd" clip-rule="evenodd" d="M16.531,16.107H5.267l1.982-2H15c0.6,0,1-0.4,1-1V5.274 + l1.946-1.964C17.963,3.399,18,3.483,18,3.576v11.031C18,15.407,17.331,16.107,16.531,16.107z M14.016,8.506h-1.218l1.005-1.014 + C13.913,7.789,13.984,8.128,14.016,8.506z M11.786,12.361c-0.828,0-1.476-0.326-1.913-0.902l1.09-1.101 + c0.136,0.323,0.374,0.541,0.796,0.541c0.514,0,0.695-0.44,0.756-1.014h1.535C13.908,11.43,13.071,12.361,11.786,12.361z + M1.496,16.106C0.697,16.104,0,15.406,0,14.607V3.576c0-0.8,0.7-1.5,1.5-1.5h12.846L16.299,0l1.316,1.283L2.615,17.13L1.496,16.106 + z M3,4.107c-0.6,0-1,0.4-1,1v8c0,0.6,0.4,1,1,1h0.029l2.031-2.16c-0.757-0.503-1.191-1.457-1.191-2.744 + c0-1.936,1.069-3.14,2.428-3.14c1.357,0,2.136,0.76,2.361,2.059l3.777-4.016H3z M8.298,8.506H7.355 + c-0.047-0.623-0.49-1.23-0.99-1.23c-0.561,0-1.337,0.84-1.337,1.995c0,0.674,0.381,1.427,0.95,1.702L8.298,8.506z"/> + </symbol> + + <symbol id="cc-shape"> + <path d="M16.531,1.984H1.5c-0.8,0-1.5,0.7-1.5,1.5v11.031c0,0.8,0.7,1.5,1.5,1.5h15.031 + c0.8,0,1.469-0.7,1.469-1.5V3.484C18,2.684,17.331,1.984,16.531,1.984z M16,13.016c0,0.6-0.4,1-1,1H3c-0.6,0-1-0.4-1-1v-8 + c0-0.6,0.4-1,1-1h12c0.6,0,1,0.4,1,1V13.016z M6.426,10.807c-0.811,0-0.96-0.789-0.96-1.628c0-1.155,0.338-1.745,0.899-1.745 + c0.5,0,0.818,0.357,0.866,0.98h1.484C8.585,6.877,7.785,5.972,6.297,5.972c-1.359,0-2.428,1.205-2.428,3.14 + c0,1.944,0.974,3.157,2.583,3.157c1.285,0,2.153-0.93,2.295-2.476H7.244C7.183,10.367,6.94,10.807,6.426,10.807z M11.759,10.807 + c-0.811,0-0.96-0.789-0.96-1.628c0-1.155,0.338-1.745,0.899-1.745c0.5,0,0.756,0.357,0.803,0.98h1.515 + c-0.129-1.537-0.898-2.443-2.385-2.443c-1.359,0-2.396,1.205-2.396,3.14c0,1.944,0.943,3.157,2.552,3.157 + c1.285,0,2.122-0.93,2.264-2.476h-1.535C12.454,10.367,12.273,10.807,11.759,10.807z"/> + </symbol> + <use id="cc" xlink:href="#cc-shape"/> + <use id="cc-hover" xlink:href="#cc-shape"/> + <use id="cc-active" xlink:href="#cc-shape"/> + <use id="cc-focus" xlink:href="#cc-shape"/> + <use id="cc-disabled" xlink:href="#cc-shape"/> + + <use id="cc-off" xlink:href="#cc-off-shape"/> + <use id="cc-off-hover" xlink:href="#cc-off-shape"/> + <use id="cc-off-active" xlink:href="#cc-off-shape"/> + <use id="cc-off-focus" xlink:href="#cc-off-shape"/> + <use id="cc-off-disabled" xlink:href="#cc-off-shape"/> +</svg> diff --git a/arc-firefox-theme/chrome/global/media/error.png b/arc-firefox-theme/chrome/global/media/error.png Binary files differindex 58e3728..362a293 100644 --- a/arc-firefox-theme/chrome/global/media/error.png +++ b/arc-firefox-theme/chrome/global/media/error.png diff --git a/arc-firefox-theme/chrome/global/media/fullscreenButton.png b/arc-firefox-theme/chrome/global/media/fullscreenButton.png Binary files differdeleted file mode 100644 index ffbc3d5..0000000 --- a/arc-firefox-theme/chrome/global/media/fullscreenButton.png +++ /dev/null diff --git a/arc-firefox-theme/chrome/global/media/fullscreenButton.svg b/arc-firefox-theme/chrome/global/media/fullscreenButton.svg new file mode 100644 index 0000000..0bf3ec2 --- /dev/null +++ b/arc-firefox-theme/chrome/global/media/fullscreenButton.svg @@ -0,0 +1,47 @@ +<?xml version="1.0" encoding="utf-8"?> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="18px" height="18px" viewBox="0 0 18 18"> + <style> + use:not(:target) { + display: none; + } + use { + fill: #ffffff; + } + use[id$="-hover"] { + fill: #48a0f7; + } + use[id$="-active"] { + fill: #2d89e6; + } + use[id$="-focus"] { + fill: #48a0f7; + } + use[id$="-disabled"] { + fill: #ffffff; + } + </style> + <symbol id="fullscreen-shape"> + <path d="M6.728,10.188l-3.235,3.094l0.017-2.267l-1.513-0.016l0,5l4.987-0.008l0.011-1.537l-2.281-0.022 + l3.097-3.158L6.728,10.188z M14.453,11.004l-0.022,2.281l-3.158-3.097l-1.086,1.083l3.094,3.235l-2.267-0.017l-0.016,1.514l5,0 + l-0.008-4.988L14.453,11.004z M11.015,2.01l-0.011,1.537l2.281,0.022l-3.097,3.158l1.083,1.086l3.235-3.094L14.49,6.986 + l1.513,0.016v-5L11.015,2.01z M6.986,3.511l0.016-1.514l-5,0L2.01,6.985l1.537,0.011l0.022-2.281l3.158,3.097l1.086-1.083 + L4.718,3.494L6.986,3.511z"/> + </symbol> + <symbol id="unfullscreen-shape"> + <path d="M2.047,11.135l-0.011,1.537l2.281,0.022L1.22,15.851l1.083,1.086l3.235-3.094l-0.017,2.268l1.513,0.016 + l0-5L2.047,11.135z M13.781,12.587l2.267,0.017l0.016-1.514l-5,0l0.008,4.988l1.537,0.011l0.022-2.281l3.158,3.097l1.086-1.083 + L13.781,12.587z M16.058,5.578l-2.281-0.021l3.097-3.158l-1.083-1.086l-3.235,3.094l0.017-2.267L11.06,2.123v5l4.988-0.008 + L16.058,5.578z M5.516,2.098L5.494,4.379L2.336,1.283L1.25,2.365L4.344,5.6L2.077,5.583L2.06,7.097l5,0L7.053,2.109L5.516,2.098z"/> + </symbol> + <use id="fullscreen" xlink:href="#fullscreen-shape"/> + <use id="fullscreen-hover" xlink:href="#fullscreen-shape"/> + <use id="fullscreen-active" xlink:href="#fullscreen-shape"/> + <use id="fullscreen-focus" xlink:href="#fullscreen-shape"/> + <use id="fullscreen-disabled" xlink:href="#fullscreen-shape"/> + + <use id="unfullscreen" xlink:href="#unfullscreen-shape"/> + <use id="unfullscreen-hover" xlink:href="#unfullscreen-shape"/> + <use id="unfullscreen-active" xlink:href="#unfullscreen-shape"/> + <use id="unfullscreen-focus" xlink:href="#unfullscreen-shape"/> + <use id="unfullscreen-disabled" xlink:href="#unfullscreen-shape"/> +</svg> diff --git a/arc-firefox-theme/chrome/global/media/fullscreenButton@2x.png b/arc-firefox-theme/chrome/global/media/fullscreenButton@2x.png Binary files differdeleted file mode 100644 index b09ebbd..0000000 --- a/arc-firefox-theme/chrome/global/media/fullscreenButton@2x.png +++ /dev/null diff --git a/arc-firefox-theme/chrome/global/media/muteButton.png b/arc-firefox-theme/chrome/global/media/muteButton.png Binary files differdeleted file mode 100644 index 8944807..0000000 --- a/arc-firefox-theme/chrome/global/media/muteButton.png +++ /dev/null diff --git a/arc-firefox-theme/chrome/global/media/muteButton.svg b/arc-firefox-theme/chrome/global/media/muteButton.svg new file mode 100644 index 0000000..779957c --- /dev/null +++ b/arc-firefox-theme/chrome/global/media/muteButton.svg @@ -0,0 +1,56 @@ +<?xml version="1.0" encoding="utf-8"?> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="18px" height="18px" viewBox="0 0 18 18"> + <style> + use:not(:target) { + display: none; + } + use { + fill: #ffffff; + } + use[id$="-hover"] { + fill: #48a0f7; + } + use[id$="-active"] { + fill: #2d89e6; + } + use[id$="-focus"] { + fill: #48a0f7; + } + use[id$="-disabled"] { + fill: #ffffff; + } + </style> + <symbol id="unmute-shape"> + <path d="M3.52,5.367c-1.332,0-2.422,1.09-2.422,2.422v2.422c0,1.332,1.09,2.422,2.422,2.422h1.516l4.102,3.633 + V1.735L5.035,5.367H3.52z M12.059,9c0-0.727-0.484-1.211-1.211-1.211v2.422C11.574,10.211,12.059,9.727,12.059,9z M14.48,9 + c0-1.695-1.211-3.148-2.785-3.512l-0.363,1.09C12.422,6.82,13.27,7.789,13.27,9c0,1.211-0.848,2.18-1.938,2.422l0.484,1.09 + C13.27,12.148,14.48,10.695,14.48,9z M12.543,3.188l-0.484,1.09C14.238,4.883,15.691,6.82,15.691,9c0,2.18-1.453,4.117-3.512,4.601 + l0.484,1.09c2.422-0.605,4.238-2.906,4.238-5.691C16.902,6.215,15.086,3.914,12.543,3.188z"/> + </symbol> + <symbol id="mute-shape"> + <path d="M3.52,5.367c-1.332,0-2.422,1.09-2.422,2.422v2.422c0,1.332,1.09,2.422,2.422,2.422h1.516l4.102,3.633 + V1.735L5.035,5.367H3.52z"/> + <path fill-rule="evenodd" clip-rule="evenodd" d="M12.155,12.066l-1.138-1.138l4.872-4.872l1.138,1.138 + L12.155,12.066z"/> + <path fill-rule="evenodd" clip-rule="evenodd" d="M10.998,7.204l1.138-1.138l4.872,4.872l-1.138,1.138L10.998,7.204 + z"/> + </symbol> + <symbol id="noaudio-shape"> + <path d="M14.901,3.571l-4.412,3.422V1.919L6.286,5.46H4.869c-1.298,0-2.36,1.062-2.36,2.36v2.36 + c0,1.062,0.708,1.888,1.652,2.242l-2.242,1.77l1.18,1.416L16.081,4.987L14.901,3.571z M10.489,16.081V11.36l-2.669,2.36 + L10.489,16.081z"/> + </symbol> + <use id="unmute" xlink:href="#unmute-shape"/> + <use id="unmute-hover" xlink:href="#unmute-shape"/> + <use id="unmute-active" xlink:href="#unmute-shape"/> + <use id="unmute-focus" xlink:href="#unmute-shape"/> + <use id="unmute-disabled" xlink:href="#unmute-shape"/> + + <use id="mute" xlink:href="#mute-shape"/> + <use id="mute-hover" xlink:href="#mute-shape"/> + <use id="mute-active" xlink:href="#mute-shape"/> + <use id="mute-focus" xlink:href="#mute-shape"/> + <use id="mute-disabled" xlink:href="#mute-shape"/> + + <use id="noaudio" xlink:href="#noaudio-shape"/> +</svg> diff --git a/arc-firefox-theme/chrome/global/media/muteButton@2x.png b/arc-firefox-theme/chrome/global/media/muteButton@2x.png Binary files differdeleted file mode 100644 index b2cd21c..0000000 --- a/arc-firefox-theme/chrome/global/media/muteButton@2x.png +++ /dev/null diff --git a/arc-firefox-theme/chrome/global/media/noAudio.png b/arc-firefox-theme/chrome/global/media/noAudio.png Binary files differdeleted file mode 100644 index 3db8c97..0000000 --- a/arc-firefox-theme/chrome/global/media/noAudio.png +++ /dev/null diff --git a/arc-firefox-theme/chrome/global/media/noAudio@2x.png b/arc-firefox-theme/chrome/global/media/noAudio@2x.png Binary files differdeleted file mode 100644 index 7de728b..0000000 --- a/arc-firefox-theme/chrome/global/media/noAudio@2x.png +++ /dev/null diff --git a/arc-firefox-theme/chrome/global/media/pauseButton.png b/arc-firefox-theme/chrome/global/media/pauseButton.png Binary files differdeleted file mode 100644 index 944098c..0000000 --- a/arc-firefox-theme/chrome/global/media/pauseButton.png +++ /dev/null diff --git a/arc-firefox-theme/chrome/global/media/pauseButton.svg b/arc-firefox-theme/chrome/global/media/pauseButton.svg new file mode 100644 index 0000000..8d56b96 --- /dev/null +++ b/arc-firefox-theme/chrome/global/media/pauseButton.svg @@ -0,0 +1,36 @@ +<?xml version="1.0" encoding="utf-8"?> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="18px" height="18px" viewBox="0 0 18 18"> + <style> + use:not(:target) { + display: none; + } + use { + fill: #ffffff; + } + use[id$="-hover"] { + fill: #48a0f7; + } + use[id$="-active"] { + fill: #2d89e6; + } + use[id$="-focus"] { + fill: #48a0f7; + } + use[id$="-disabled"] { + fill: #ffffff; + } + </style> + + + <symbol id="pause-shape"> + <path fill-rule="evenodd" clip-rule="evenodd" d="M6.002,1.953C5.172,1.953,4.5,2.626,4.5,3.455v11.08 + c0,0.83,0.672,1.502,1.502,1.502c0.829,0,1.502-0.672,1.502-1.502V3.455C7.504,2.626,6.831,1.953,6.002,1.953z M12,1.953 + c-0.828,0-1.5,0.672-1.5,1.5v11.094c0,0.828,0.672,1.5,1.5,1.5s1.5-0.672,1.5-1.5V3.453C13.5,2.625,12.828,1.953,12,1.953z"/> + </symbol> + + <use id="pause" xlink:href="#pause-shape"/> + <use id="pause-hover" xlink:href="#pause-shape"/> + <use id="pause-active" xlink:href="#pause-shape"/> + <use id="pause-focus" xlink:href="#pause-shape"/> + <use id="pause-disalbed" xlink:href="#pause-shape"/> +</svg> diff --git a/arc-firefox-theme/chrome/global/media/pauseButton@2x.png b/arc-firefox-theme/chrome/global/media/pauseButton@2x.png Binary files differdeleted file mode 100644 index df22919..0000000 --- a/arc-firefox-theme/chrome/global/media/pauseButton@2x.png +++ /dev/null diff --git a/arc-firefox-theme/chrome/global/media/playButton.png b/arc-firefox-theme/chrome/global/media/playButton.png Binary files differdeleted file mode 100644 index 11e2731..0000000 --- a/arc-firefox-theme/chrome/global/media/playButton.png +++ /dev/null diff --git a/arc-firefox-theme/chrome/global/media/playButton.svg b/arc-firefox-theme/chrome/global/media/playButton.svg new file mode 100644 index 0000000..dc20c61 --- /dev/null +++ b/arc-firefox-theme/chrome/global/media/playButton.svg @@ -0,0 +1,37 @@ +<?xml version="1.0" encoding="utf-8"?> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="18px" height="18px" viewBox="0 0 18 18"> + <style> + use:not(:target) { + display: none; + } + use { + fill: #ffffff; + } + use[id$="-hover"] { + fill: #48a0f7; + } + use[id$="-active"] { + fill: #2d89e6; + } + use[id$="-focus"] { + fill: #48a0f7; + } + use[id$="-disabled"] { + fill: #ffffff; + } + use[id$="-clicktoplay"] { + fill: #000000; + } + </style> + + <symbol id="play-shape"> + <path d="M3.243,15.155c0,0.845,0.593,1.157,1.317,0.707l9.659-6.041c0.727-0.453,0.722-1.193,0-1.645L4.556,2.137 + C3.827,1.682,3.237,2.014,3.237,2.844v12.312H3.243z"/> + </symbol> + + <use id="play" xlink:href="#play-shape"/> + <use id="play-hover" xlink:href="#play-shape"/> + <use id="play-active" xlink:href="#play-shape"/> + <use id="play-focus" xlink:href="#play-shape"/> + <use id="play-clicktoplay" xlink:href="#play-shape"/> +</svg> diff --git a/arc-firefox-theme/chrome/global/media/playButton@2x.png b/arc-firefox-theme/chrome/global/media/playButton@2x.png Binary files differdeleted file mode 100644 index fb20075..0000000 --- a/arc-firefox-theme/chrome/global/media/playButton@2x.png +++ /dev/null diff --git a/arc-firefox-theme/chrome/global/media/scrubberThumb.png b/arc-firefox-theme/chrome/global/media/scrubberThumb.png Binary files differdeleted file mode 100644 index f159627..0000000 --- a/arc-firefox-theme/chrome/global/media/scrubberThumb.png +++ /dev/null diff --git a/arc-firefox-theme/chrome/global/media/scrubberThumb@2x.png b/arc-firefox-theme/chrome/global/media/scrubberThumb@2x.png Binary files differdeleted file mode 100644 index f8790f4..0000000 --- a/arc-firefox-theme/chrome/global/media/scrubberThumb@2x.png +++ /dev/null diff --git a/arc-firefox-theme/chrome/global/media/scrubberThumbWide.png b/arc-firefox-theme/chrome/global/media/scrubberThumbWide.png Binary files differdeleted file mode 100644 index 96d2ed7..0000000 --- a/arc-firefox-theme/chrome/global/media/scrubberThumbWide.png +++ /dev/null diff --git a/arc-firefox-theme/chrome/global/media/scrubberThumbWide@2x.png b/arc-firefox-theme/chrome/global/media/scrubberThumbWide@2x.png Binary files differdeleted file mode 100644 index 52c9d72..0000000 --- a/arc-firefox-theme/chrome/global/media/scrubberThumbWide@2x.png +++ /dev/null diff --git a/arc-firefox-theme/chrome/global/media/unmuteButton.png b/arc-firefox-theme/chrome/global/media/unmuteButton.png Binary files differdeleted file mode 100644 index 5b76e2f..0000000 --- a/arc-firefox-theme/chrome/global/media/unmuteButton.png +++ /dev/null diff --git a/arc-firefox-theme/chrome/global/media/unmuteButton@2x.png b/arc-firefox-theme/chrome/global/media/unmuteButton@2x.png Binary files differdeleted file mode 100644 index 86f2185..0000000 --- a/arc-firefox-theme/chrome/global/media/unmuteButton@2x.png +++ /dev/null diff --git a/arc-firefox-theme/chrome/global/media/videocontrols.css b/arc-firefox-theme/chrome/global/media/videocontrols.css index 6907620..03a050e 100644 --- a/arc-firefox-theme/chrome/global/media/videocontrols.css +++ b/arc-firefox-theme/chrome/global/media/videocontrols.css @@ -2,271 +2,369 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ -@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); -@namespace html url("http://www.w3.org/1999/xhtml"); +@namespace xul url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); +@namespace url("http://www.w3.org/1999/xhtml"); + +video > xul|videocontrols, +audio > xul|videocontrols { + writing-mode: horizontal-tb; + width: 100%; + height: 100%; + display: inline-block; +} + +.controlsContainer [hidden="true"], +.controlBar[hidden] { + display: none; +} + +.controlBar[size="hidden"] { + display: none; +} + +.controlsSpacer[hideCursor] { + cursor: none; +} + +.controlsContainer, +.progressContainer { + position: relative; + height: 100%; +} + +.stackItem { + position: absolute; + left: 0; + bottom: 0; + width: 100%; + height: 100%; +} + +.statusOverlay { + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + background-color: rgb(80,80,80); +} + +.controlsOverlay { + display: flex; + flex-direction: column; + justify-content: center; + position: relative; +} + +.controlsSpacerStack { + display: flex; + flex-direction: column; + flex-grow: 1; + justify-content: center; + align-items: center; +} + +.controlsSpacer { + background-color: rgba(255,255,255,.4); +} .controlBar { - height: 28px; - background-color: rgba(35,31,32,.74); + position: relative; + display: flex; + justify-content: center; + align-items: center; + overflow: hidden; + height: 40px; + padding: 0 9px; + background-color: rgba(26,26,26,.8); } .playButton, .muteButton, .closedCaptionButton, .fullscreenButton { + height: 100%; + min-height: 30px; + min-width: 30px; + padding: 6px; + border: 0; + margin: 0; background-color: transparent; background-repeat: no-repeat; background-position: center; - -moz-appearance: none; /* Remove the native button appearance and styling */ - margin: 0; - padding: 0; - min-height: 28px; - min-width: 28px; - border: none; - opacity: 0.7; + background-origin: content-box; + background-clip: content-box; } -.playButton:hover, -.muteButton:hover, -.closedCaptionButton:hover, -.fullscreenButton:hover { - opacity: 1; +.playButton { + background-image: url(chrome://global/skin/media/pauseButton.svg#pause); } - -.playButton:hover:active, -.muteButton:hover:active, -.closedCaptionButton:hover:active, -.fullscreenButton:hover:active { - opacity: 0.4; +.playButton:hover { + background-image: url(chrome://global/skin/media/pauseButton.svg#pause-hover); } - -.playButton { - background-image: url(chrome://global/skin/media/pauseButton.png); - margin-right: -22px; /* 1/2 of scrubber thumb width, for overhang. */ - position: relative; /* Trick to work around negative margin interfering with clicking on the button. */ +.playButton:hover:active { + background-image: url(chrome://global/skin/media/pauseButton.svg#pause-active); } - .playButton[paused] { - background-image: url(chrome://global/skin/media/playButton.png); + background-image: url(chrome://global/skin/media/playButton.svg#play); +} +.playButton[paused]:hover { + background-image: url(chrome://global/skin/media/playButton.svg#play-hover); +} +.playButton[paused]:hover:active { + background-image: url(chrome://global/skin/media/playButton.svg#play-active); } .muteButton { - background-image: url(chrome://global/skin/media/muteButton.png); - min-width: 33px; + background-image: url(chrome://global/skin/media/muteButton.svg#unmute); +} +.muteButton:hover { + background-image: url(chrome://global/skin/media/muteButton.svg#unmute-hover); +} +.muteButton:hover:active { + background-image: url(chrome://global/skin/media/muteButton.svg#unmute-active); } .muteButton[muted] { - background-image: url(chrome://global/skin/media/unmuteButton.png); + background-image: url(chrome://global/skin/media/muteButton.svg#mute); } - -.muteButton[noAudio] { - background-image: url(chrome://global/skin/media/noAudio.png); +.muteButton[muted]:hover { + background-image: url(chrome://global/skin/media/muteButton.svg#mute-hover); +} +.muteButton[muted]:hover:active { + background-image: url(chrome://global/skin/media/muteButton.svg#mute-active); +} +.muteButton[noAudio], +.muteButton[noAudio]:hover, +.muteButton[noAudio]:hover:active { + background-image: url(chrome://global/skin/media/muteButton.svg#noaudio); } - .muteButton[noAudio] + .volumeStack { display: none; } .closedCaptionButton { - background-image: url(chrome://global/skin/media/closeCaptionButton.png); - background-position: 4px; + background-image: url(chrome://global/skin/media/closedCaptionButton.svg#cc-off); +} +.closedCaptionButton:hover { + background-image: url(chrome://global/skin/media/closedCaptionButton.svg#cc-off-hover); +} +.closedCaptionButton:hover:active { + background-image: url(chrome://global/skin/media/closedCaptionButton.svg#cc-off-active); } - .closedCaptionButton[enabled] { - opacity: 1; + background-image: url(chrome://global/skin/media/closedCaptionButton.svg#cc); } - -.closedCaptionButton[hidden] { - display: none; +.closedCaptionButton[enabled]:hover { + background-image: url(chrome://global/skin/media/closedCaptionButton.svg#cc-hover); +} +.closedCaptionButton[enabled]:hover:active { + background-image: url(chrome://global/skin/media/closedCaptionButton.svg#cc-active); } .fullscreenButton { - background-image: -moz-image-rect(url("chrome://global/skin/media/fullscreenButton.png"), 0, 16, 16, 0); + background-image: url(chrome://global/skin/media/fullscreenButton.svg#fullscreen); +} +.fullscreenButton:hover { + background-image: url(chrome://global/skin/media/fullscreenButton.svg#fullscreen-hover); +} +.fullscreenButton:hover:active { + background-image: url(chrome://global/skin/media/fullscreenButton.svg#fullscreen-active); } - .fullscreenButton[fullscreened] { - background-image: -moz-image-rect(url("chrome://global/skin/media/fullscreenButton.png"), 0, 32, 16, 16); + background-image: url(chrome://global/skin/media/fullscreenButton.svg#unfullscreen); +} +.fullscreenButton[fullscreened]:hover { + background-image: url(chrome://global/skin/media/fullscreenButton.svg#unfullscreen-hover); +} +.fullscreenButton[fullscreened]:hover:active { + background-image: url(chrome://global/skin/media/fullscreenButton.svg#unfullscreen-active); } -.volumeControl { - width: 32px; - opacity: 0; +.controlBarSpacer { + flex-grow: 1; } -.volumeBackground, -.volumeForeground { - background-repeat: no-repeat; - background-position: center; - width: 32px; +.volumeControl::-moz-range-thumb, +.scrubber::-moz-range-thumb { + height: 13px; + width: 13px; + border: none; + border-radius: 50%; + background-color: #ffffff; + filter: drop-shadow(0px 0px 2px rgba(0,0,0,0.65)); } -.volumeBackground { - background-image: url(chrome://global/skin/media/volume-empty.png); +.volumeControl::-moz-focus-outer, +.scrubber::-moz-focus-outer { + border: 0; } -.volumeForeground { - background-image: url(chrome://global/skin/media/volume-full.png); - background-clip: content-box; +.progressBackgroundBar { + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; } -.textTrackList { - display: -moz-box; - -moz-appearance: none; - -moz-box-pack: end; - -moz-box-align: end; - padding: 0; +.progressStack { + position: relative; + width: 100%; + height: 5px; } -.textTrackList[hidden] { - display: none; +.scrubberStack { + min-width: 48px; + flex-basis: 48px; + flex-grow: 2; + flex-shrink: 0; + margin: 0 9px; } -.textTrackList > html|*.textTrackItem { - -moz-appearance: none; - -moz-box-align: start; - text-align: start; - overflow: hidden; +.volumeStack { + max-width: 60px; + min-width: 48px; + flex-grow: 1; + flex-shrink: 0; + margin-right: 6px; + margin-left: 4px; +} + +.bufferBar, +.progressBar, +.scrubber, +.volumeBackground, +.volumeControl { + bottom: 0; + left: 0; + position: absolute; + width: 100%; + height: 100%; + padding: 0; + border: 0; + border-radius: 2.5px; margin: 0; - padding: 2px 10px; - -moz-margin-end: 10px; - border: none; - color: rgba(255,255,255,.5); - background-color: rgba(35,31,32,.74); - white-space: nowrap; + background: none; + background-color: transparent; } -.textTrackList > html|*.textTrackItem[on] { - color: white; - background-color: black; +.bufferBar, +.volumeBackground { + background-color: rgba(0,0,0,0.7); } -.textTrackList > html|*.textTrackItem:hover { - background-color: rgba(0,0,0,.55); +.bufferBar::-moz-progress-bar, +.progressBar::-moz-progress-bar, +.volumeBackground::-moz-meter-bar { + height: 100%; + padding: 0; + margin: 0; + border: 0; + border-radius: 2.5px; + background: none; } -.controlBar[fullscreen-unavailable] { - /* This value is duplicated in the videocontrols.xml adjustControlSize function. */ - padding-inline-end: 8px; +.scrubber:hover::-moz-range-thumb, +.volumeControl:hover::-moz-range-thumb { + background-color: #48a0f7; } -.volumeControl .scale-thumb { - min-width: 0; - opacity: 0; +.scrubber:active::-moz-range-thumb, +.volumeControl:active::-moz-range-thumb { + background-color: #2d89e6; } -.durationBox { - -moz-box-pack: center; +.scrubber::-moz-range-track, +.scrubber::-moz-range-progress { + background-color: transparent; } -.durationLabel { - margin-left: -22px; /* 1/2 of scrubber thumb width, for overhang. */ - padding-left: 8px; /* don't bump into the scrubber bar */ - color: rgba(255,255,255,.75); - font: message-box; - font-size: 11px; +.volumeControl::-moz-range-progress, +.volumeControl::-moz-range-track { + height: 5px; + border-radius: 2.5px; } -.durationLabel { - padding-top: 0; /* center vertically with scrubber bar */ +.volumeControl::-moz-range-progress { + background-color: #ffffff; } -.positionLabel { - display: none; +.volumeControl::-moz-range-track { + background-color: rgba(0,0,0,0.7); } -.backgroundBar { - /* margin top/bottom: make bar 8px tall (control height = 28, minus 2 * 10 margin) */ - /* margin left/right: 1/2 of scrubber thumb width, for overhang. */ - margin: 10px 22px; - background-color: rgba(255,255,255,.5); + +.bufferBar::-moz-progress-bar { + background-color: rgba(255,255,255,0.3); border-radius: 2.5px; } -.bufferBar, -.progressBar { - /* margin top/bottom: make bar 8px tall (control height = 28, minus 2 * 10 margin) */ - /* margin left/right: 1/2 of scrubber thumb width, for overhang. */ - margin: 10px 22px; - -moz-appearance: none; - border: none; - background-color: transparent; - min-width: 0; - min-height: 0; -} - -/* .progress-bar is an element inside the <progressmeter> implementation. */ -.bufferBar .progress-bar { - /* - * Note that this is drawn on top of the .backgroundBar. So although this - * has the same background-color specified, the semitransparent - * compositing gives it a different visual appearance. - */ - background-color: rgba(255,255,255,.5); - border-radius: 2.5px; - -moz-appearance: none; +.progressBar::-moz-progress-bar { + background-color: #00b6f0; } -.progressBar .progress-bar { - background-color: white; +.textTrackList { + position: absolute; + right: 5px; + bottom: 45px; + max-width: 80%; + border: 1px solid #000000; border-radius: 2.5px; - -moz-appearance: none; + padding: 5px 0; + vertical-align: middle; + font-size: 12px; + background-color: #000000; + opacity: 0.7; } -/* .scale-slider is an element inside the <scale> implementation. */ -.scrubber .scale-slider, -.volumeControl .scale-slider { - /* Hide the default horizontal bar. */ - -moz-appearance: none; - background: none; +.textTrackList > .textTrackItem { + display: block; + width: 100%; + height: 30px; + padding: 2px 10px; + border: none; margin: 0; + white-space: nowrap; + overflow: hidden; + text-align: left; + text-overflow: ellipsis; + color: #ffffff; + background-color: transparent; } -.scrubber .scale-slider { - /* abs(margin-top) + margin-bottom + bar height == timeThumb height */ - margin-top: -10px; - margin-bottom: 10px; -} -/* .scale-thumb is an element inside the <scale> implementation. */ -.scrubber .scale-thumb, -.volumeControl .scale-thumb { - /* Override the default thumb appearance with a custom image. */ - -moz-appearance: none; - background: transparent; - border: none; +.textTrackList > .textTrackItem:hover { + background-color: #444444; } -.timeThumb { - background: url(chrome://global/skin/media/scrubberThumb.png) no-repeat center; - min-width: 45px; - min-height: 28px; - -moz-box-pack: center; +.textTrackList > .textTrackItem[on] { + color: #48a0f7; } -.timeThumb[showhours="true"] { - background-image: url(chrome://global/skin/media/scrubberThumbWide.png); +.positionLabel, +.durationLabel { + display: none; } -.timeLabel { - color: rgba(255,255,255,.75); +.positionDurationBox { + text-align: center; + padding-inline-start: 1px; + padding-inline-end: 9px; + white-space: nowrap; font: message-box; - font-size: 10px; - text-shadow: rgba(0,0,0,.3) 0 1px; - padding-top: 7px; + font-size: 13px; + font-size-adjust: 0.55; + color: #ffffff; } -.timeLabel { - padding-top: 5px; /* center vertically with scrubber bar */ -} -.statusOverlay { - -moz-box-align: center; - -moz-box-pack: center; - background-color: rgba(0,0,0,.55); +.duration { + display: inline-block; + white-space: pre; + color: #929292; } .statusIcon { - margin-bottom: 28px; /* same height as .controlBar, to keep icon centered above it */ width: 36px; height: 36px; + margin-bottom: 20px; } .statusIcon[type="throbber"] { @@ -278,61 +376,55 @@ } .statusIcon[type="error"] { + min-width: 70px; + min-height: 60px; background: url(chrome://global/skin/media/error.png) no-repeat center; + background-size: contain; } /* Overlay Play button */ .clickToPlay { - width: 64px; - height: 64px; - -moz-box-pack: center; - -moz-box-align: center; - opacity: 0.7; - background-image: url(chrome://global/skin/media/clicktoplay-bgtexture.png), - url(chrome://global/skin/media/videoClickToPlayButton.svg); - background-repeat: repeat, no-repeat; - background-position: center, center; - background-size: auto, 64px 64px; - background-color: hsla(0,0%,10%,.5); + min-width: 48px; + min-height: 48px; + border-radius: 50%; + background-image: url(chrome://global/skin/media/playButton.svg#play); + background-repeat: no-repeat; + background-position: 54% 50%; + background-size: 40% 40%; + background-color: #1a1a1a; + opacity: 0.8; + position: relative; + top: 20px; } + +.controlsSpacerStack:hover > .clickToPlay, .clickToPlay:hover { - opacity: 1; + opacity: 0.55; } -/* Statistics formatting */ -html|*.statsDiv { - position: relative; +.controlsSpacerStack:hover > .clickToPlay[fadeout] { + opacity: 0; } -html|td { - height: 1em; - max-height: 1em; - padding: 0 2px; -} -html|table { - font-family: Helvetica, Arial, sans-serif; - font-size: 11px; - color: white; - text-shadow: - -1px -1px 0 #000, - 1px -1px 0 #000, - -1px 1px 0 #000, - 1px 1px 0 #000; - min-width: 100%; - background: rgba(68,68,68,.7); - table-layout: fixed; - border-collapse: collapse; - position: absolute; + +.controlBar[fullscreen-unavailable] .fullscreenButton { + display: none; } /* CSS Transitions */ .clickToPlay { - transition-property: opacity, background-size; + transition-property: transform, opacity; transition-duration: 400ms, 400ms; } + +.controlsSpacer[fadeout] { + opacity: 0; +} + .clickToPlay[fadeout] { - background-size: auto, 192px 192px; + transform: scale(3); opacity: 0; } + .clickToPlay[fadeout][immediate] { transition-property: opacity, background-size; transition-duration: 0s, 0s; @@ -348,10 +440,6 @@ html|table { transition-property: opacity, margin-top; transition-duration: 200ms, 200ms; } -.volumeStack[fadeout] { - opacity: 0; - margin-top: 0; -} .statusOverlay:not([immediate]) { transition-property: opacity; transition-duration: 300ms; @@ -363,66 +451,22 @@ html|table { /* Error description formatting */ .errorLabel { - font-family: Helvetica, Arial, sans-serif; - font-size: 11px; - color: #bbb; - text-shadow: - -1px -1px 0 #000, - 1px -1px 0 #000, - -1px 1px 0 #000, - 1px 1px 0 #000; padding: 0 10px; text-align: center; + font: message-box; + font-size: 14px; + color: #ffffff; +} + +.errorLabel { + display: none; } -@media (min-resolution: 2dppx) { - .playButton { - background-image: url(chrome://global/skin/media/pauseButton@2x.png); - background-size: 28px 28px; - } - .playButton[paused] { - background-image: url(chrome://global/skin/media/playButton@2x.png); - background-size: 28px 28px; - } - .volumeBackground { - background-image: url(chrome://global/skin/media/volume-empty@2x.png); - background-size: 32px 16px; - } - .volumeForeground { - background-image: url(chrome://global/skin/media/volume-full@2x.png); - background-size: 32px 16px; - } - .muteButton { - background-image: url(chrome://global/skin/media/muteButton@2x.png); - background-size: 33px 28px; - } - .muteButton[muted] { - background-image: url(chrome://global/skin/media/unmuteButton@2x.png); - background-size: 33px 28px; - } - .muteButton[noAudio] { - background-image: url(chrome://global/skin/media/noAudio@2x.png); - background-size: 33px 28px; - } - .closedCaptionButton { - background-image: url(chrome://global/skin/media/closeCaptionButton@2x.png); - background-position: 4px; - background-size: 28px 28px; - } - .fullscreenButton { - background-image: -moz-image-rect(url("chrome://global/skin/media/fullscreenButton@2x.png"), 0, 32, 32, 0); - background-size: 16px 16px; - } - .fullscreenButton[fullscreened] { - background-image: -moz-image-rect(url("chrome://global/skin/media/fullscreenButton@2x.png"), 0, 64, 32, 32); - background-size: 16px 16px; - } - .timeThumb { - background-image: url(chrome://global/skin/media/scrubberThumb@2x.png); - background-size: 33px 28px; - } - .timeThumb[showhours="true"] { - background-image: url(chrome://global/skin/media/scrubberThumbWide@2x.png); - background-size: 45px 28px; - } +[error="errorAborted"] > [anonid="errorAborted"], +[error="errorNetwork"] > [anonid="errorNetwork"], +[error="errorDecode"] > [anonid="errorDecode"], +[error="errorSrcNotSupported"] > [anonid="errorSrcNotSupported"], +[error="errorNoSource"] > [anonid="errorNoSource"], +[error="errorGeneric"] > [anonid="errorGeneric"] { + display: inline; } diff --git a/arc-firefox-theme/chrome/global/media/volume-empty.png b/arc-firefox-theme/chrome/global/media/volume-empty.png Binary files differdeleted file mode 100644 index 589abfb..0000000 --- a/arc-firefox-theme/chrome/global/media/volume-empty.png +++ /dev/null diff --git a/arc-firefox-theme/chrome/global/media/volume-empty@2x.png b/arc-firefox-theme/chrome/global/media/volume-empty@2x.png Binary files differdeleted file mode 100644 index ca494e8..0000000 --- a/arc-firefox-theme/chrome/global/media/volume-empty@2x.png +++ /dev/null diff --git a/arc-firefox-theme/chrome/global/media/volume-full.png b/arc-firefox-theme/chrome/global/media/volume-full.png Binary files differdeleted file mode 100644 index 4398a56..0000000 --- a/arc-firefox-theme/chrome/global/media/volume-full.png +++ /dev/null diff --git a/arc-firefox-theme/chrome/global/media/volume-full@2x.png b/arc-firefox-theme/chrome/global/media/volume-full@2x.png Binary files differdeleted file mode 100644 index 5bf63c7..0000000 --- a/arc-firefox-theme/chrome/global/media/volume-full@2x.png +++ /dev/null |