Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(58)

Side by Side Diff: chrome/test/data/prerender/prerender_html5_video.html

Issue 8095007: Defer loading of audio/video tags while prerendering. (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: Adding more tests and addressing all comments. Created 9 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 <html> 1 <html>
2 <!-- 2 <!--
3 This test checks that prerender is cancelled when an video tag is 3 This test checks that video tags are deferred during prerendering.
4 encountered.
5 --> 4 -->
6 <head> 5 <head>
7 <title>Prerender cancellation for HTML5 video.</title> 6 <title>Prerender for HTML5 video.</title>
8 </head> 7 </head>
9 <body> 8
10 <video src="nonexistant.mp4" width="320" height="240" controls="controls"> 9 <body>
11 </video> 10 <video id="videoEl" controls>
12 </body> 11 <source src="bear.ogv" type="video/ogg" />
12 </video>
13
14 <script>
15 var canPlaySeen = false;
16 var playingSeen = false;
17 var hasError = false;
18
19 var videoEl = document.getElementById("videoEl");
20
21 function videoEventHandler(e) {
22 console.log(e.type);
23
24 if (e.type == 'canplay') {
25 canPlaySeen = true;
26 } else if (e.type == 'playing') {
27 playingSeen = true;
28 } else if (e.type == 'error') {
29 hasError = true;
30 } else if (e.type == 'canplaythrough') {
31 if (!playingSeen && canPlaySeen)
32 document.title = "PASS";
33 }
34 }
35
36 videoEl.addEventListener('playing', videoEventHandler, false);
37 videoEl.addEventListener('canplay', videoEventHandler, false);
38 videoEl.addEventListener('canplaythrough', videoEventHandler, false);
39 videoEl.addEventListener('error', videoEventHandler, false);
40
41 function DidPrerenderPass() {
42 // The video should not have started at this point.
43 return !canPlaySeen && !playingSeen && !hasError &&
44 videoEl.currentTime == 0 &&
45 videoEl.readyState == videoEl.HAVE_NOTHING;
46 }
47
48 function DidDisplayPass() {
49 // The actual test is done via the TitleWatcher.
50 return true;
51 }
52
53 </script>
54 </body>
13 </html> 55 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698