-
Notifications
You must be signed in to change notification settings - Fork 1.3k
/
support.html
93 lines (80 loc) · 2.75 KB
/
support.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
<!-- htmlhint style-disabled:false -->
<!DOCTYPE html>
<!--
Copyright 2016 Google LLC
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<html lang="en">
<head>
<meta charset="utf-8">
<title>Shaka Player Browser Support Test</title>
<style>
@media (pointer: none) {
/* If there is no pointer, assume this is a TV, and that we can't scroll.
* Reduce the font size to get all the text on screen at once.
* Increase the margins to compensate for overscan.
* Make the text bold to compensate for the reduced font size.
*/
body {
/* This is explicit because Chromecast has a different default (black). */
background-color: white;
margin: 4em;
font-size: 60%;
font-weight: bold;
}
}
</style>
<script src="dist/cast-boot.js"></script>
<script src="dist/shaka-player.compiled.js"></script>
<script>
function whenLoaded(fn) {
// IE 9 fires DOMContentLoaded, and enters the "interactive"
// readyState, before document.body has been initialized, so wait
// for window.load
if (document.readyState == 'loading' ||
document.readyState == 'interactive') {
if (window.attachEvent) {
// IE8
window.attachEvent('onload', fn);
} else {
window.addEventListener('load', fn);
}
} else {
fn();
}
}
function printSupport(support) {
var userAgent = navigator.userAgent;
var formatted = userAgent + '\n' + shaka.Player.version + '\n\n';
formatted += support;
var output = document.getElementById('output');
if (output.textContent === undefined) {
// IE8 and other very old browsers don't have textContent.
output.innerText = formatted;
} else {
output.textContent = formatted;
}
}
function doTest() {
shaka.polyfill.installAll();
if (shaka.Player.isBrowserSupported()) {
shaka.Player.probeSupport().then(function(support) {
printSupport(JSON.stringify(support, null, ' '));
});
} else {
printSupport('This browser is not supported.');
}
}
whenLoaded(doTest);
</script>
</head>
<body><pre id="output"></pre></body>
</html>