Mercurial > hg > config
annotate chrome/pageloader.js @ 202:0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
author | Joel Maher <jmaher@mozilla.com> |
---|---|
date | Wed, 14 Sep 2011 16:41:38 -0400 |
parents | bffb8b1b0948 |
children | 4dec1e56c677 |
rev | line source |
---|---|
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
1 /* -*- Mode: C++; tab-width: 20; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
2 /* ***** BEGIN LICENSE BLOCK ***** |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
3 * Version: MPL 1.1/GPL 2.0/LGPL 2.1 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
4 * |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
5 * The contents of this file are subject to the Mozilla Public License Version |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
6 * 1.1 (the "License"); you may not use this file except in compliance with |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
7 * the License. You may obtain a copy of the License at |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
8 * http://www.mozilla.org/MPL/ |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
9 * |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
10 * Software distributed under the License is distributed on an "AS IS" basis, |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
11 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
12 * for the specific language governing rights and limitations under the |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
13 * License. |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
14 * |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
15 * The Original Code is tp. |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
16 * |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
17 * The Initial Developer of the Original Code is |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
18 * Mozilla Corporation. |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
19 * Portions created by the Initial Developer are Copyright (C) 2007 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
20 * the Initial Developer. All Rights Reserved. |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
21 * |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
22 * Contributor(s): |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
23 * Rob Helmer <rhelmer@mozilla.com> |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
24 * Vladimir Vukicevic <vladimir@mozilla.com> |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
25 * |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
26 * Alternatively, the contents of this file may be used under the terms of |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
27 * either the GNU General Public License Version 2 or later (the "GPL"), or |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
28 * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
29 * in which case the provisions of the GPL or the LGPL are applicable instead |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
30 * of those above. If you wish to allow use of your version of this file only |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
31 * under the terms of either the GPL or the LGPL, and not to allow others to |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
32 * use your version of this file under the terms of the MPL, indicate your |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
33 * decision by deleting the provisions above and replace them with the notice |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
34 * and other provisions required by the GPL or the LGPL. If you do not delete |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
35 * the provisions above, a recipient may use your version of this file under |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
36 * the terms of any one of the MPL, the GPL or the LGPL. |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
37 * |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
38 * ***** END LICENSE BLOCK ***** */ |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
39 |
198
59d4f04497dd
package into extension for profile, add direct file logging instead of stdout r=vlad
Joel Maher <jmaher@mozilla.com>
parents:
197
diff
changeset
|
40 try { |
59d4f04497dd
package into extension for profile, add direct file logging instead of stdout r=vlad
Joel Maher <jmaher@mozilla.com>
parents:
197
diff
changeset
|
41 if (Cc === undefined) { |
59d4f04497dd
package into extension for profile, add direct file logging instead of stdout r=vlad
Joel Maher <jmaher@mozilla.com>
parents:
197
diff
changeset
|
42 var Cc = Components.classes; |
59d4f04497dd
package into extension for profile, add direct file logging instead of stdout r=vlad
Joel Maher <jmaher@mozilla.com>
parents:
197
diff
changeset
|
43 var Ci = Components.interfaces; |
59d4f04497dd
package into extension for profile, add direct file logging instead of stdout r=vlad
Joel Maher <jmaher@mozilla.com>
parents:
197
diff
changeset
|
44 } |
59d4f04497dd
package into extension for profile, add direct file logging instead of stdout r=vlad
Joel Maher <jmaher@mozilla.com>
parents:
197
diff
changeset
|
45 } catch (ex) {} |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
46 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
47 var NUM_CYCLES = 5; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
48 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
49 var pageFilterRegexp = null; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
50 var reportFormat = "js"; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
51 var useBrowser = true; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
52 var winWidth = 1024; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
53 var winHeight = 768; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
54 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
55 var doRenderTest = false; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
56 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
57 var pages; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
58 var pageIndex; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
59 var start_time; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
60 var cycle; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
61 var report; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
62 var renderReport; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
63 var noisy = false; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
64 var timeout = -1; |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
65 var delay = 250; |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
66 var timeoutEvent = -1; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
67 var running = false; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
68 var forceCC = true; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
69 |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
70 var useMozAfterPaint = false; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
71 var gPaintWindow = window; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
72 var gPaintListener = false; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
73 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
74 //when TEST_DOES_OWN_TIMING, we need to store the time from the page as MozAfterPaint can be slower than pageload |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
75 var gTime = -1; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
76 var gStartTime = -1; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
77 |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
78 var content; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
79 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
80 var TEST_DOES_OWN_TIMING = 1; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
81 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
82 var browserWindow = null; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
83 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
84 // the io service |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
85 var gIOS = null; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
86 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
87 function plInit() { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
88 if (running) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
89 return; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
90 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
91 running = true; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
92 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
93 cycle = 0; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
94 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
95 try { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
96 var args = window.arguments[0].wrappedJSObject; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
97 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
98 var manifestURI = args.manifest; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
99 var startIndex = 0; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
100 var endIndex = -1; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
101 if (args.startIndex) startIndex = parseInt(args.startIndex); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
102 if (args.endIndex) endIndex = parseInt(args.endIndex); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
103 if (args.numCycles) NUM_CYCLES = parseInt(args.numCycles); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
104 if (args.format) reportFormat = args.format; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
105 if (args.width) winWidth = parseInt(args.width); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
106 if (args.height) winHeight = parseInt(args.height); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
107 if (args.filter) pageFilterRegexp = new RegExp(args.filter); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
108 if (args.noisy) noisy = true; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
109 if (args.timeout) timeout = parseInt(args.timeout); |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
110 if (args.delay) delay = parseInt(args.delay); |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
111 if (args.mozafterpaint) useMozAfterPaint = true; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
112 |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
113 forceCC = !args.noForceCC; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
114 doRenderTest = args.doRender; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
115 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
116 if (forceCC && |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
117 !window.QueryInterface(Components.interfaces.nsIInterfaceRequestor) |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
118 .getInterface(Components.interfaces.nsIDOMWindowUtils) |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
119 .garbageCollect) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
120 forceCC = false; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
121 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
122 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
123 gIOS = Cc["@mozilla.org/network/io-service;1"] |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
124 .getService(Ci.nsIIOService); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
125 if (args.offline) |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
126 gIOS.offline = true; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
127 var fileURI = gIOS.newURI(manifestURI, null, null); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
128 pages = plLoadURLsFromURI(fileURI); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
129 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
130 if (!pages) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
131 dumpLine('tp: could not load URLs, quitting'); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
132 plStop(true); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
133 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
134 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
135 if (pages.length == 0) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
136 dumpLine('tp: no pages to test, quitting'); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
137 plStop(true); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
138 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
139 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
140 if (startIndex < 0) |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
141 startIndex = 0; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
142 if (endIndex == -1 || endIndex >= pages.length) |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
143 endIndex = pages.length-1; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
144 if (startIndex > endIndex) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
145 dumpLine("tp: error: startIndex >= endIndex"); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
146 plStop(true); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
147 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
148 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
149 pages = pages.slice(startIndex,endIndex+1); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
150 var pageUrls = pages.map(function(p) { return p.url.spec.toString(); }); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
151 report = new Report(pageUrls); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
152 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
153 if (doRenderTest) |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
154 renderReport = new Report(pageUrls); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
155 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
156 pageIndex = 0; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
157 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
158 if (args.useBrowserChrome) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
159 var wwatch = Cc["@mozilla.org/embedcomp/window-watcher;1"] |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
160 .getService(Ci.nsIWindowWatcher); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
161 var blank = Cc["@mozilla.org/supports-string;1"] |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
162 .createInstance(Ci.nsISupportsString); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
163 blank.data = "about:blank"; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
164 browserWindow = wwatch.openWindow |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
165 (null, "chrome://browser/content/", "_blank", |
201
bffb8b1b0948
bug 651659 (pageloader no longer creating browser windows with chrome) one small change and chrome returns! (take 1) p=anodelman r=jmaher
Alice Nodelman <alice@mozilla.com>
parents:
200
diff
changeset
|
166 "chrome,all,dialog=no,width=" + winWidth + ",height=" + winHeight, blank); |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
167 |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
168 gPaintWindow = browserWindow; |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
169 // get our window out of the way |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
170 window.resizeTo(10,10); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
171 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
172 var browserLoadFunc = function (ev) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
173 browserWindow.removeEventListener('load', browserLoadFunc, true); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
174 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
175 // do this half a second after load, because we need to be |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
176 // able to resize the window and not have it get clobbered |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
177 // by the persisted values |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
178 setTimeout(function () { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
179 browserWindow.resizeTo(winWidth, winHeight); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
180 browserWindow.moveTo(0, 0); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
181 browserWindow.focus(); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
182 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
183 content = browserWindow.getBrowser(); |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
184 |
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
185 // Load the frame script for e10s / IPC message support |
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
186 if (content.getAttribute("remote") == "true") { |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
187 let contentScript = "data:,function _contentLoadHandler(e) { " + |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
188 " if (e.originalTarget.defaultView == content) { " + |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
189 " content.wrappedJSObject.tpRecordTime = function(t, s) { sendAsyncMessage('PageLoader:RecordTime', { time: t, startTime: s }); }; "; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
190 if (useMozAfterPaint) { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
191 contentScript += "" + |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
192 "function _contentPaintHandler() { " + |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
193 " var utils = content.QueryInterface(Components.interfaces.nsIInterfaceRequestor).getInterface(Components.interfaces.nsIDOMWindowUtils); " + |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
194 " if (utils.isMozAfterPaintPending) { " + |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
195 " addEventListener('MozAfterPaint', function(e) { " + |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
196 " removeEventListener('MozAfterPaint', arguments.callee, true); " + |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
197 " sendAsyncMessage('PageLoader:MozAfterPaint', {}); " + |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
198 " }, true); " + |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
199 " } else { " + |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
200 " sendAsyncMessage('PageLoader:MozAfterPaint', {}); " + |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
201 " } " + |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
202 "}; " + |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
203 "content.wrappedJSObject.setTimeout(_contentPaintHandler, 0); "; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
204 } else { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
205 contentScript += " sendAsyncMessage('PageLoader:Load', {}); "; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
206 } |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
207 contentScript += "" + |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
208 " }" + |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
209 "} " + |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
210 "addEventListener('load', _contentLoadHandler, true); "; |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
211 content.messageManager.loadFrameScript(contentScript, false); |
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
212 } |
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
213 |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
214 setTimeout(plLoadPage, 100); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
215 }, 500); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
216 }; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
217 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
218 browserWindow.addEventListener('load', browserLoadFunc, true); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
219 } else { |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
220 gPaintWindow = window; |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
221 window.resizeTo(winWidth, winHeight); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
222 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
223 content = document.getElementById('contentPageloader'); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
224 |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
225 setTimeout(plLoadPage, delay); |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
226 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
227 } catch(e) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
228 dumpLine(e); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
229 plStop(true); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
230 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
231 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
232 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
233 function plPageFlags() { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
234 return pages[pageIndex].flags; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
235 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
236 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
237 // load the current page, start timing |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
238 var removeLastAddedListener = null; |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
239 var removeLastAddedMsgListener = null; |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
240 function plLoadPage() { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
241 var pageName = pages[pageIndex].url.spec; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
242 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
243 if (removeLastAddedListener) |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
244 removeLastAddedListener(); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
245 |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
246 if (removeLastAddedMsgListener) |
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
247 removeLastAddedMsgListener(); |
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
248 |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
249 if (plPageFlags() & TEST_DOES_OWN_TIMING) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
250 // if the page does its own timing, use a capturing handler |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
251 // to make sure that we can set up the function for content to call |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
252 |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
253 content.addEventListener('load', plLoadHandlerCapturing, true); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
254 removeLastAddedListener = function() { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
255 content.removeEventListener('load', plLoadHandlerCapturing, true); |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
256 if (useMozAfterPaint) { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
257 content.removeEventListener("MozAfterPaint", plPaintedCapturing, true); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
258 gPaintHandler = false; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
259 } |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
260 }; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
261 } else { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
262 // if the page doesn't do its own timing, use a bubbling handler |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
263 // to make sure that we're called after the page's own onload() handling |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
264 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
265 // XXX we use a capturing event here too -- load events don't bubble up |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
266 // to the <browser> element. See bug 390263. |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
267 content.addEventListener('load', plLoadHandler, true); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
268 removeLastAddedListener = function() { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
269 content.removeEventListener('load', plLoadHandler, true); |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
270 if (useMozAfterPaint) { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
271 gPaintWindow.removeEventListener("MozAfterPaint", plPainted, true); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
272 gPaintHandler = false; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
273 } |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
274 }; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
275 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
276 |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
277 // If the test browser is remote (e10s / IPC) we need to use messages to watch for page load |
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
278 if (content.getAttribute("remote") == "true") { |
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
279 content.messageManager.addMessageListener('PageLoader:Load', plLoadHandlerMessage); |
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
280 content.messageManager.addMessageListener('PageLoader:RecordTime', plRecordTimeMessage); |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
281 if (useMozAfterPaint) |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
282 content.messageManager.addMessageListener('PageLoader:MozAfterPaint', plPaintHandler); |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
283 removeLastAddedMsgListener = function() { |
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
284 content.messageManager.removeMessageListener('PageLoader:Load', plLoadHandlerMessage); |
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
285 content.messageManager.removeMessageListener('PageLoader:RecordTime', plRecordTimeMessage); |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
286 if (useMozAfterPaint) |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
287 content.messageManager.removeMessageListener('PageLoader:MozAfterPaint', plPaintHandler); |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
288 }; |
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
289 } |
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
290 |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
291 if (timeout > 0) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
292 timeoutEvent = setTimeout('loadFail()', timeout); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
293 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
294 start_time = Date.now(); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
295 content.loadURI(pageName); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
296 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
297 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
298 function loadFail() { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
299 var pageName = pages[pageIndex].url.spec; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
300 dumpLine("__FAILTimeout exceeded on " + pageName + "__FAIL") |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
301 plStop(true); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
302 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
303 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
304 function plNextPage() { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
305 if (pageIndex < pages.length-1) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
306 pageIndex++; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
307 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
308 if (forceCC) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
309 var tccstart = new Date(); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
310 window.QueryInterface(Components.interfaces.nsIInterfaceRequestor) |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
311 .getInterface(Components.interfaces.nsIDOMWindowUtils) |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
312 .garbageCollect(); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
313 var tccend = new Date(); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
314 report.recordCCTime(tccend - tccstart); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
315 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
316 |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
317 setTimeout(plLoadPage, delay); |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
318 } else { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
319 plStop(false); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
320 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
321 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
322 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
323 function plRecordTime(time) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
324 var pageName = pages[pageIndex].url.spec; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
325 var i = pageIndex |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
326 if (i < pages.length-1) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
327 i++; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
328 } else { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
329 i = 0; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
330 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
331 var nextName = pages[i].url.spec; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
332 report.recordTime(pageIndex, time); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
333 if (noisy) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
334 dumpLine("Cycle " + (cycle+1) + ": loaded " + pageName + " (next: " + nextName + ")"); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
335 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
336 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
337 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
338 function plLoadHandlerCapturing(evt) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
339 // make sure we pick up the right load event |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
340 if (evt.type != 'load' || |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
341 evt.originalTarget.defaultView.frameElement) |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
342 return; |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
343 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
344 //set the tpRecordTime function (called from test pages we load to store a global time. |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
345 content.contentWindow.wrappedJSObject.tpRecordTime = function (time, startTime) { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
346 gTime = time; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
347 gStartTime = startTime; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
348 setTimeout(plWaitForPaintingCapturing, 0); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
349 } |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
350 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
351 content.removeEventListener('load', plLoadHandlerCapturing, true); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
352 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
353 setTimeout(plWaitForPaintingCapturing, 0); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
354 } |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
355 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
356 function plWaitForPaintingCapturing() { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
357 if (gPaintListener) |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
358 return; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
359 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
360 var utils = gPaintWindow.QueryInterface(Components.interfaces.nsIInterfaceRequestor) |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
361 .getInterface(Components.interfaces.nsIDOMWindowUtils); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
362 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
363 if (utils.isMozAfterPaintPending && useMozAfterPaint) { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
364 if (gPaintListener == false) |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
365 gPaintWindow.addEventListener("MozAfterPaint", plPaintedCapturing, true); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
366 gPaintListener = true; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
367 return; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
368 } |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
369 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
370 _loadHandlerCapturing(); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
371 } |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
372 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
373 function plPaintedCapturing() { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
374 gPaintWindow.removeEventListener("MozAfterPaint", plPaintedCapturing, true); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
375 gPaintListener = false; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
376 _loadHandlerCapturing(); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
377 } |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
378 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
379 function _loadHandlerCapturing() { |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
380 if (timeout > 0) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
381 clearTimeout(timeoutEvent); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
382 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
383 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
384 if (!(plPageFlags() & TEST_DOES_OWN_TIMING)) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
385 dumpLine("tp: Capturing onload handler used with page that doesn't do its own timing?"); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
386 plStop(true); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
387 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
388 |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
389 if (useMozAfterPaint) { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
390 if (gStartTime != null && gStartTime >= 0) { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
391 gTime = (new Date()) - gStartTime; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
392 gStartTime = -1; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
393 } |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
394 } |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
395 |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
396 // set up the function for content to call |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
397 if (gTime >= 0) { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
398 plRecordTime(gTime); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
399 gTime = -1; |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
400 setTimeout(plNextPage, delay); |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
401 }; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
402 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
403 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
404 // the onload handler |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
405 function plLoadHandler(evt) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
406 // make sure we pick up the right load event |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
407 if (evt.type != 'load' || |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
408 evt.originalTarget.defaultView.frameElement) |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
409 return; |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
410 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
411 content.removeEventListener('load', plLoadHandler, true); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
412 setTimeout(waitForPainted, 0); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
413 } |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
414 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
415 // This is called after we have received a load event, now we wait for painted |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
416 function waitForPainted() { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
417 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
418 var utils = gPaintWindow.QueryInterface(Components.interfaces.nsIInterfaceRequestor) |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
419 .getInterface(Components.interfaces.nsIDOMWindowUtils); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
420 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
421 if (!utils.isMozAfterPaintPending || !useMozAfterPaint) { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
422 _loadHandler(); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
423 return; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
424 } |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
425 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
426 if (gPaintListener == false) |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
427 gPaintWindow.addEventListener("MozAfterPaint", plPainted, true); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
428 gPaintListener = true; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
429 } |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
430 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
431 function plPainted() { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
432 gPaintWindow.removeEventListener("MozAfterPaint", plPainted, true); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
433 gPaintListener = false; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
434 _loadHandler(); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
435 } |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
436 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
437 function _loadHandler() { |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
438 if (timeout > 0) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
439 clearTimeout(timeoutEvent); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
440 } |
197
b4da709724e1
Bug 379233 - check offset before recording page load complete - r=vladimir
Alice Nodelman <alice@mozilla.com>
parents:
196
diff
changeset
|
441 var docElem; |
b4da709724e1
Bug 379233 - check offset before recording page load complete - r=vladimir
Alice Nodelman <alice@mozilla.com>
parents:
196
diff
changeset
|
442 if (browserWindow) |
b4da709724e1
Bug 379233 - check offset before recording page load complete - r=vladimir
Alice Nodelman <alice@mozilla.com>
parents:
196
diff
changeset
|
443 docElem = browserWindow.frames["content"].document.documentElement; |
b4da709724e1
Bug 379233 - check offset before recording page load complete - r=vladimir
Alice Nodelman <alice@mozilla.com>
parents:
196
diff
changeset
|
444 else |
b4da709724e1
Bug 379233 - check offset before recording page load complete - r=vladimir
Alice Nodelman <alice@mozilla.com>
parents:
196
diff
changeset
|
445 docElem = content.contentDocument.documentElement; |
b4da709724e1
Bug 379233 - check offset before recording page load complete - r=vladimir
Alice Nodelman <alice@mozilla.com>
parents:
196
diff
changeset
|
446 var width; |
b4da709724e1
Bug 379233 - check offset before recording page load complete - r=vladimir
Alice Nodelman <alice@mozilla.com>
parents:
196
diff
changeset
|
447 if ("getBoundingClientRect" in docElem) { |
b4da709724e1
Bug 379233 - check offset before recording page load complete - r=vladimir
Alice Nodelman <alice@mozilla.com>
parents:
196
diff
changeset
|
448 width = docElem.getBoundingClientRect().width; |
b4da709724e1
Bug 379233 - check offset before recording page load complete - r=vladimir
Alice Nodelman <alice@mozilla.com>
parents:
196
diff
changeset
|
449 } else if ("offsetWidth" in docElem) { |
b4da709724e1
Bug 379233 - check offset before recording page load complete - r=vladimir
Alice Nodelman <alice@mozilla.com>
parents:
196
diff
changeset
|
450 width = docElem.offsetWidth; |
b4da709724e1
Bug 379233 - check offset before recording page load complete - r=vladimir
Alice Nodelman <alice@mozilla.com>
parents:
196
diff
changeset
|
451 } |
b4da709724e1
Bug 379233 - check offset before recording page load complete - r=vladimir
Alice Nodelman <alice@mozilla.com>
parents:
196
diff
changeset
|
452 |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
453 var end_time = Date.now(); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
454 var time = (end_time - start_time); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
455 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
456 // does this page want to do its own timing? |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
457 // if so, we shouldn't be here |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
458 if (plPageFlags() & TEST_DOES_OWN_TIMING) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
459 dumpLine("tp: Bubbling onload handler used with page that does its own timing?"); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
460 plStop(true); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
461 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
462 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
463 plRecordTime(time); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
464 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
465 if (doRenderTest) |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
466 runRenderTest(); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
467 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
468 plNextPage(); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
469 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
470 |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
471 // the onload handler used for remote (e10s) browser |
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
472 function plLoadHandlerMessage(message) { |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
473 _loadHandlerMessage(); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
474 } |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
475 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
476 // the mozafterpaint handler for remote (e10s) browser |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
477 function plPaintHandler(message) { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
478 _loadHandlerMessage(); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
479 } |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
480 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
481 // the core handler for remote (e10s) browser |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
482 function _loadHandlerMessage() { |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
483 if (timeout > 0) { |
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
484 clearTimeout(timeoutEvent); |
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
485 } |
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
486 |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
487 var time = -1; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
488 |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
489 // does this page want to do its own timing? |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
490 if ((plPageFlags() & TEST_DOES_OWN_TIMING)) { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
491 if (typeof(gStartTime) != "number") |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
492 gStartTime = Date.parse(gStartTime); |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
493 |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
494 if (gTime >= 0) { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
495 if (useMozAfterPaint && gStartTime >= 0) { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
496 gTime = Date.now() - gStartTime; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
497 gStartTime = -1; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
498 } else if (useMozAfterPaint) { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
499 gTime = -1; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
500 } |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
501 time = gTime; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
502 gTime = -1; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
503 } |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
504 |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
505 } else { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
506 var end_time = Date.now(); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
507 time = (end_time - start_time); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
508 } |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
509 |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
510 if (time >= 0) { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
511 plRecordTime(time); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
512 if (doRenderTest) |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
513 runRenderTest(); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
514 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
515 plNextPage(); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
516 } |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
517 } |
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
518 |
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
519 // the record time handler used for remote (e10s) browser |
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
520 function plRecordTimeMessage(message) { |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
521 gTime = message.json.time; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
522 if (useMozAfterPaint) { |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
523 gStartTime = message.json.startTime; |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
524 } |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
525 _loadHandlerMessage(); |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
526 } |
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
527 |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
528 function runRenderTest() { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
529 const redrawsPerSample = 500; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
530 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
531 if (!Ci.nsIDOMWindowUtils) |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
532 return; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
533 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
534 var win; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
535 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
536 if (browserWindow) |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
537 win = content.contentWindow; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
538 else |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
539 win = window; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
540 var wu = win.QueryInterface(Ci.nsIInterfaceRequestor).getInterface(Ci.nsIDOMWindowUtils); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
541 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
542 var start = Date.now(); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
543 for (var j = 0; j < redrawsPerSample; j++) |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
544 wu.redraw(); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
545 var end = Date.now(); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
546 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
547 renderReport.recordTime(pageIndex, end - start); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
548 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
549 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
550 function plStop(force) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
551 try { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
552 if (force == false) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
553 pageIndex = 0; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
554 if (cycle < NUM_CYCLES-1) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
555 cycle++; |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
556 setTimeout(plLoadPage, delay); |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
557 return; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
558 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
559 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
560 var formats = reportFormat.split(","); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
561 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
562 if (!renderReport) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
563 for each (var fmt in formats) |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
564 dumpLine(report.getReport(fmt)); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
565 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
566 else { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
567 dumpLine ("*************** Render report *******************"); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
568 for each (var fmt in formats) |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
569 dumpLine(renderReport.getReport(fmt)); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
570 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
571 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
572 } catch (e) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
573 dumpLine(e); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
574 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
575 |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
576 if (content) { |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
577 content.removeEventListener('load', plLoadHandlerCapturing, true); |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
578 content.removeEventListener('load', plLoadHandler, true); |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
579 if (useMozAfterPaint) |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
580 content.removeEventListener("MozAfterPaint", plPaintedCapturing, true); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
581 content.removeEventListener("MozAfterPaint", plPainted, true); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
582 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
583 if (content.getAttribute("remote") == "true") { |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
584 content.messageManager.removeMessageListener('PageLoader:Load', plLoadHandlerMessage); |
202
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
585 content.messageManager.removeMessageListener('PageLoader:RecordTime', plRecordTimeMessage); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
586 if (MozAfterPaint) |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
587 content.messageManager.removeMessageListener('PageLoader:MozAfterPaint', plPaintHandler); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
588 |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
589 content.messageManager.loadFrameScript("data:,removeEventListener('load', _contentLoadHandler, true);", false); |
0b38ce037298
Bug 661918 - Tp should wait for MozAfterPaint after onload. r=tnikkel,vlad
Joel Maher <jmaher@mozilla.com>
parents:
201
diff
changeset
|
590 } |
200
31249cbe4f19
Bug 629691 - pageloader.xpi does not support e10s for Tp chrome testing. r=jmaher
Joel Maher <jmaher@mozilla.com>
parents:
198
diff
changeset
|
591 } |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
592 |
198
59d4f04497dd
package into extension for profile, add direct file logging instead of stdout r=vlad
Joel Maher <jmaher@mozilla.com>
parents:
197
diff
changeset
|
593 if (MozillaFileLogger) |
59d4f04497dd
package into extension for profile, add direct file logging instead of stdout r=vlad
Joel Maher <jmaher@mozilla.com>
parents:
197
diff
changeset
|
594 MozillaFileLogger.close(); |
59d4f04497dd
package into extension for profile, add direct file logging instead of stdout r=vlad
Joel Maher <jmaher@mozilla.com>
parents:
197
diff
changeset
|
595 |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
596 goQuitApplication(); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
597 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
598 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
599 /* Returns array */ |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
600 function plLoadURLsFromURI(manifestUri) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
601 var fstream = Cc["@mozilla.org/network/file-input-stream;1"] |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
602 .createInstance(Ci.nsIFileInputStream); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
603 var uriFile = manifestUri.QueryInterface(Ci.nsIFileURL); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
604 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
605 fstream.init(uriFile.file, -1, 0, 0); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
606 var lstream = fstream.QueryInterface(Ci.nsILineInputStream); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
607 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
608 var d = []; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
609 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
610 var lineNo = 0; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
611 var line = {value:null}; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
612 var more; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
613 do { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
614 lineNo++; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
615 more = lstream.readLine(line); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
616 var s = line.value; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
617 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
618 // strip comments |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
619 s = s.replace(/#.*/, ''); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
620 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
621 // strip leading and trailing whitespace |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
622 s = s.replace(/^\s*/, '').replace(/s\*$/, ''); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
623 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
624 if (!s) |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
625 continue; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
626 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
627 var flags = 0; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
628 var urlspec = s; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
629 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
630 // split on whitespace, and figure out if we have any flags |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
631 var items = s.split(/\s+/); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
632 if (items[0] == "include") { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
633 if (items.length != 2) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
634 dumpLine("tp: Error on line " + lineNo + " in " + manifestUri.spec + ": include must be followed by the manifest to include!"); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
635 return null; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
636 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
637 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
638 var subManifest = gIOS.newURI(items[1], null, manifestUri); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
639 if (subManifest == null) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
640 dumpLine("tp: invalid URI on line " + manifestUri.spec + ":" + lineNo + " : '" + line.value + "'"); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
641 return null; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
642 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
643 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
644 var subItems = plLoadURLsFromURI(subManifest); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
645 if (subItems == null) |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
646 return null; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
647 d = d.concat(subItems); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
648 } else { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
649 if (items.length == 2) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
650 if (items[0].indexOf("%") != -1) |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
651 flags |= TEST_DOES_OWN_TIMING; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
652 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
653 urlspec = items[1]; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
654 } else if (items.length != 1) { |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
655 dumpLine("tp: Error on line " + lineNo + " in " + manifestUri.spec + ": whitespace must be %-escaped!"); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
656 return null; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
657 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
658 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
659 var url = gIOS.newURI(urlspec, null, manifestUri); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
660 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
661 if (pageFilterRegexp && !pageFilterRegexp.test(url.spec)) |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
662 continue; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
663 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
664 d.push({ url: url, |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
665 flags: flags }); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
666 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
667 } while (more); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
668 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
669 return d; |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
670 } |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
671 |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
672 function dumpLine(str) { |
198
59d4f04497dd
package into extension for profile, add direct file logging instead of stdout r=vlad
Joel Maher <jmaher@mozilla.com>
parents:
197
diff
changeset
|
673 if (MozillaFileLogger) |
59d4f04497dd
package into extension for profile, add direct file logging instead of stdout r=vlad
Joel Maher <jmaher@mozilla.com>
parents:
197
diff
changeset
|
674 MozillaFileLogger.log(str + "\n"); |
196
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
675 dump(str); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
676 dump("\n"); |
dd0018bc27de
Copy the pageloader from CVS and into a bundle format (single chrome.manifest).
Benjamin Smedberg <benjamin@smedbergs.us>
parents:
diff
changeset
|
677 } |