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

Side by Side Diff: chrome/test/data/prerender/prerender_events_common.js

Issue 11571037: Pass load events from prerenders to launching elements. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: did you know prerenders can be canceled? Created 7 years, 11 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
(Empty)
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 // Common js for prerender loaders; defines the helper functions that put
6 // event handlers on prerenders and track the events for browser tests.
7
8 // TODO(gavinp): Put more common loader logic in here.
9
10 // Currently only errors with the ordering of Prerender events are caught.
11 var hadPrerenderEventErrors = false;
12
13 var receivedPrerenderStartEvents = [];
14 var receivedPrerenderLoadEvents = [];
15 var receivedPrerenderStopEvents = [];
16
17 function PrerenderStartHandler(index) {
18 if (receivedPrerenderStartEvents[index] ||
19 receivedPrerenderLoadEvents[index] ||
20 receivedPrerenderStopEvents[index]) {
21 hadPrerenderEventErrors = true;
22 return;
23 }
24 receivedPrerenderStartEvents[index] = true;
25 }
26
27 function PrerenderLoadHandler(index) {
28 if (!receivedPrerenderStartEvents[index] ||
29 receivedPrerenderLoadEvents[index] ||
30 receivedPrerenderStopEvents[index]) {
31 hadPrerenderEventErrors = true;
32 return;
33 }
34 receivedPrerenderLoadEvents[index] = true;
35 }
36
37 function PrerenderStopHandler(index) {
38 if (!receivedPrerenderStartEvents[index] ||
39 receivedPrerenderStopEvents[index]) {
40 hadPrerenderEventErrors = true;
41 return;
42 }
43 receivedPrerenderStopEvents[index] = true;
44 }
45
46 function AddEventHandlersToLinkElement(link, index) {
47 link.addEventListener('webkitprerenderstart',
48 PrerenderStartHandler.bind(null, index), false);
49 link.addEventListener('webkitprerenderload',
50 PrerenderLoadHandler.bind(null, index), false);
51 link.addEventListener('webkitprerenderstop',
52 PrerenderStopHandler.bind(null, index), false);
53 }
OLDNEW
« no previous file with comments | « chrome/renderer/prerender/prerender_dispatcher.cc ('k') | chrome/test/data/prerender/prerender_loader.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698