chromedriver-helper 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,5 @@
1
+ *.gem
2
+ .bundle
3
+ Gemfile.lock
4
+ pkg/*
5
+ chromedriver.log
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "http://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in chromedriver-helper.gemspec
4
+ gemspec
@@ -0,0 +1,73 @@
1
+ # chromedriver-helper
2
+
3
+ Easy installation and use of chromedriver, the Chromium project's
4
+ selenium webdriver adapter.
5
+
6
+ * [http://github.com/flavorjones/chromedriver-helper](http://github.com/flavorjones/chromedriver-helper)
7
+
8
+
9
+ # Description
10
+
11
+ `chromedriver-helper` installs an executable, `chromedriver`, in your
12
+ gem path.
13
+
14
+ This script will, if necessary, download the appropriate binary for
15
+ your platform and install it into `~/.chromedriver-helper`, then exec
16
+ it. Easy peasy!
17
+
18
+ chromedriver is fast. By my unscientific benchmark, it's around 20%
19
+ faster than webdriver + Firefox 8. You should use it!
20
+
21
+
22
+ # Usage
23
+
24
+ If you're using Bundler and Capybara, it's as easy as:
25
+
26
+ # Gemfile
27
+ gem "chromedriver-helper"
28
+
29
+ then, in your specs:
30
+
31
+ Capybara.register_driver :selenium do |app|
32
+ Capybara::Selenium::Driver.new(app, :browser => :chrome)
33
+ end
34
+
35
+
36
+ # Support
37
+
38
+ The code lives at [http://github.com/flavorjones/chromedriver-helper](http://github.com/flavorjones/chromedriver-helper). Open a Github Issue, or send a pull request! Thanks! You're the best.
39
+
40
+
41
+ # License
42
+
43
+ (The MIT License)
44
+
45
+ Copyright (c) 2011: [Mike Dalessio](http://mike.daless.io)
46
+
47
+ Permission is hereby granted, free of charge, to any person obtaining
48
+ a copy of this software and associated documentation files (the
49
+ 'Software'), to deal in the Software without restriction, including
50
+ without limitation the rights to use, copy, modify, merge, publish,
51
+ distribute, sublicense, and/or sell copies of the Software, and to
52
+ permit persons to whom the Software is furnished to do so, subject to
53
+ the following conditions:
54
+
55
+ The above copyright notice and this permission notice shall be
56
+ included in all copies or substantial portions of the Software.
57
+
58
+ THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
59
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
60
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
61
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
62
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
63
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
64
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
65
+
66
+ # Credit
67
+
68
+ The idea for this gem comes from @brianhempel's project
69
+ `chromedriver-gem` which, despite the name, is not currently published
70
+ on http://rubygems.org/.
71
+
72
+ Some improvements on the idea were taken from the installation process
73
+ for standalone Phusion Passenger.
@@ -0,0 +1 @@
1
+ require "bundler/gem_tasks"
@@ -0,0 +1,5 @@
1
+ #! /usr/bin/env ruby
2
+
3
+ require "chromedriver/helper"
4
+
5
+ Chromedriver::Helper.new.run *ARGV
@@ -0,0 +1,26 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "chromedriver/helper/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "chromedriver-helper"
7
+ s.version = Chromedriver::Helper::VERSION
8
+ s.authors = ["Mike Dalessio"]
9
+ s.email = ["mike@csa.net"]
10
+ s.homepage = ""
11
+ s.summary = "Easy installation and use of chromedriver, the Chromium project's selenium webdriver adapter."
12
+ s.description = <<EOF
13
+ `chromedriver-helper` installs a script, `chromedriver`, in your gem
14
+ path. This script will, if necessary, download the appropriate binary
15
+ for your platform and install it into `~/.chromedriver-helper`, then
16
+ it will exec the real `chromedriver`. Easy peasy!
17
+ EOF
18
+
19
+ s.files = `git ls-files`.split("\n")
20
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
21
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
22
+ s.require_paths = ["lib"]
23
+
24
+ s.add_development_dependency "rspec"
25
+ s.add_runtime_dependency "nokogiri"
26
+ end
@@ -0,0 +1,59 @@
1
+ require "chromedriver/helper/version"
2
+ require "chromedriver/helper/google_code_parser"
3
+ require 'fileutils'
4
+ require 'open-uri'
5
+
6
+ module Chromedriver
7
+ class Helper
8
+ DOWNLOAD_URL = "http://code.google.com/p/chromium/downloads/list"
9
+
10
+ def run *args
11
+ download
12
+ exec binary_path, *args
13
+ end
14
+
15
+ def download
16
+ return if File.exists? binary_path
17
+ url = download_url
18
+ filename = File.basename url
19
+ Dir.chdir platform_install_dir do
20
+ system("wget -c -O #{filename} #{url}") || system("curl -C - -o #{filename} #{url}")
21
+ raise "Could not download #{url}" unless File.exists? filename
22
+ system "unzip #{filename}"
23
+ end
24
+ raise "Could not unzip #{filename} to get #{binary_path}" unless File.exists? binary_path
25
+ end
26
+
27
+ def download_url
28
+ downloads = GoogleCodeParser.new(open(DOWNLOAD_URL)).downloads
29
+ url = downloads.grep(/chromedriver_#{platform}_.*\.zip/).first
30
+ url = "http:#{url}" if url !~ /^http/
31
+ url
32
+ end
33
+
34
+ def binary_path
35
+ File.join platform_install_dir, "chromedriver"
36
+ end
37
+
38
+ def platform_install_dir
39
+ dir = File.join install_dir, platform
40
+ FileUtils.mkdir_p dir
41
+ dir
42
+ end
43
+
44
+ def install_dir
45
+ dir = File.expand_path File.join(ENV['HOME'], ".chromedriver-helper")
46
+ FileUtils.mkdir_p dir
47
+ dir
48
+ end
49
+
50
+ def platform
51
+ case RUBY_PLATFORM
52
+ when /64.*linux|linux.*64/ then "linux64"
53
+ when /linux/ then "linux32"
54
+ when /darwin/ then "mac"
55
+ else "win"
56
+ end
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,18 @@
1
+ require 'nokogiri'
2
+
3
+ module Chromedriver
4
+ class Helper
5
+ class GoogleCodeParser
6
+ attr_reader :html
7
+
8
+ def initialize html
9
+ @html = html
10
+ end
11
+
12
+ def downloads
13
+ doc = Nokogiri::HTML html
14
+ doc.css("td.vt a[@title=Download]").collect {|_| _["href"]}
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,5 @@
1
+ module Chromedriver
2
+ class Helper
3
+ VERSION = "0.0.1"
4
+ end
5
+ end
@@ -0,0 +1,1396 @@
1
+
2
+
3
+ <!DOCTYPE html>
4
+ <html>
5
+ <head>
6
+ <link rel="icon" type="image/vnd.microsoft.icon" href="http://www.gstatic.com/codesite/ph/images/phosting.ico">
7
+
8
+
9
+ <script type="text/javascript">
10
+
11
+
12
+
13
+
14
+ var codesite_token = null;
15
+
16
+
17
+ var CS_env = {"profileUrl":null,"token":null,"assetHostPath":"http://www.gstatic.com/codesite/ph","domainName":null,"assetVersionPath":"http://www.gstatic.com/codesite/ph/12684539022547559253","projectHomeUrl":"/p/chromium","relativeBaseUrl":"","projectName":"chromium","loggedInUserEmail":null};
18
+ var _gaq = _gaq || [];
19
+ _gaq.push(
20
+ ['siteTracker._setAccount', 'UA-18071-1'],
21
+ ['siteTracker._trackPageview']);
22
+
23
+
24
+ </script>
25
+
26
+
27
+ <title>Downloads -
28
+ chromium -
29
+
30
+
31
+ An open-source browser project to help move the web forward. - Google Project Hosting
32
+ </title>
33
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" >
34
+ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" >
35
+
36
+ <meta name="ROBOTS" content="NOARCHIVE">
37
+
38
+ <link type="text/css" rel="stylesheet" href="http://www.gstatic.com/codesite/ph/12684539022547559253/css/core.css">
39
+
40
+ <link type="text/css" rel="stylesheet" href="http://www.gstatic.com/codesite/ph/12684539022547559253/css/ph_list.css" >
41
+
42
+
43
+
44
+ <link type="application/atom+xml" rel="alternate" href="/feeds/p/chromium/downloads/basic">
45
+
46
+
47
+ <!--[if IE]>
48
+ <link type="text/css" rel="stylesheet" href="http://www.gstatic.com/codesite/ph/12684539022547559253/css/d_ie.css" >
49
+ <![endif]-->
50
+ <style type="text/css">
51
+ .menuIcon.off { background: no-repeat url(http://www.gstatic.com/codesite/ph/images/dropdown_sprite.gif) 0 -42px }
52
+ .menuIcon.on { background: no-repeat url(http://www.gstatic.com/codesite/ph/images/dropdown_sprite.gif) 0 -28px }
53
+ .menuIcon.down { background: no-repeat url(http://www.gstatic.com/codesite/ph/images/dropdown_sprite.gif) 0 0; }
54
+
55
+
56
+
57
+ </style>
58
+ </head>
59
+ <body class="t2">
60
+ <script type="text/javascript">
61
+ (function() {
62
+ var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
63
+ ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
64
+ (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(ga);
65
+ })();
66
+ </script>
67
+ <div class="headbg">
68
+
69
+ <div id="gaia">
70
+
71
+
72
+ <span>
73
+
74
+ <a href="#" id="projects-dropdown" onclick="return false;"><u>My favorites</u> <small>&#9660;</small></a>
75
+ | <a href="https://www.google.com/accounts/ServiceLogin?service=code&amp;ltmpl=phosting&amp;continue=http%3A%2F%2Fcode.google.com%2Fp%2Fchromium%2Fdownloads%2Flist&amp;followup=http%3A%2F%2Fcode.google.com%2Fp%2Fchromium%2Fdownloads%2Flist" onclick="_CS_click('/gb/ph/signin');"><u>Sign in</u></a>
76
+
77
+ </span>
78
+
79
+ </div>
80
+
81
+ <div class="gbh" style="left: 0pt;"></div>
82
+ <div class="gbh" style="right: 0pt;"></div>
83
+
84
+
85
+ <div style="height: 1px"></div>
86
+ <!--[if lte IE 7]>
87
+ <div style="text-align:center;">
88
+ Your version of Internet Explorer is not supported. Try a browser that
89
+ contributes to open source, such as <a href="http://www.firefox.com">Firefox</a>,
90
+ <a href="http://www.google.com/chrome">Google Chrome</a>, or
91
+ <a href="http://code.google.com/chrome/chromeframe/">Google Chrome Frame</a>.
92
+ </div>
93
+ <![endif]-->
94
+
95
+
96
+
97
+
98
+ <table style="padding:0px; margin: 0px 0px 10px 0px; width:100%" cellpadding="0" cellspacing="0"
99
+ itemscope itemtype="http://schema.org/CreativeWork">
100
+ <tr style="height: 58px;">
101
+
102
+ <td id="plogo">
103
+ <link itemprop="url" href="/p/chromium">
104
+ <a href="/p/chromium/">
105
+
106
+
107
+ <img src="/p/chromium/logo?cct=1322506016"
108
+ alt="Logo" itemprop="image">
109
+
110
+ </a>
111
+ </td>
112
+
113
+ <td style="padding-left: 0.5em">
114
+
115
+ <div id="pname">
116
+ <a href="/p/chromium/"><span itemprop="name">chromium</span></a>
117
+ </div>
118
+
119
+ <div id="psum">
120
+ <a id="project_summary_link"
121
+ href="/p/chromium/"><span itemprop="description">An open-source browser project to help move the web forward.</span></a>
122
+
123
+ </div>
124
+
125
+
126
+ </td>
127
+ <td style="white-space:nowrap;text-align:right; vertical-align:bottom;">
128
+
129
+ <form action="/hosting/search">
130
+ <input size="30" name="q" value="" type="text">
131
+
132
+ <input type="submit" name="projectsearch" value="Search projects" >
133
+ </form>
134
+
135
+ </tr>
136
+ </table>
137
+
138
+ </div>
139
+
140
+
141
+ <div id="mt" class="gtb">
142
+ <a href="/p/chromium/" class="tab ">Project&nbsp;Home</a>
143
+
144
+
145
+
146
+
147
+ <a href="/p/chromium/downloads/list" class="tab active">Downloads</a>
148
+
149
+
150
+
151
+
152
+
153
+ <a href="/p/chromium/w/list" class="tab ">Wiki</a>
154
+
155
+
156
+
157
+
158
+
159
+ <a href="/p/chromium/issues/list"
160
+ class="tab ">Issues</a>
161
+
162
+
163
+
164
+
165
+
166
+
167
+
168
+ <div class=gtbc></div>
169
+ </div>
170
+ <table cellspacing="0" cellpadding="0" width="100%" align="center" border="0" class="st">
171
+ <tr>
172
+
173
+
174
+
175
+
176
+ <td class="subt">
177
+ <div class="issueList">
178
+ <div class="isf">
179
+
180
+ <span class="inIssueList">
181
+ <span>Search</span>
182
+ <form action="list" method="GET" style="display:inline">
183
+ <select id="can" name="can" style="font-size:92%">
184
+ <option disabled="disabled">Search within:</option>
185
+
186
+ <option value="1" >&nbsp;All downloads</option>
187
+ <option value="3" >&nbsp;Featured downloads</option>
188
+ <option value="2" selected="selected">&nbsp;Current downloads</option>
189
+
190
+
191
+ <option value="4" >&nbsp;Deprecated downloads</option>
192
+
193
+ </select>
194
+ <span>for</span>
195
+ <span id="qq"><input type="text" size="38" id="searchq" name="q" value=""
196
+ autocomplete="off" style="font-size:92%" ></span>
197
+
198
+
199
+ <span id="search_colspec"><input type="hidden" name="colspec" value="Filename Summary Uploaded ReleaseDate Size DownloadCount" ></span>
200
+ <input type="submit" value="Search" style="font-size:92%" >
201
+ </form>
202
+ </span>
203
+ </div>
204
+ </div>
205
+
206
+ </td>
207
+
208
+
209
+
210
+
211
+
212
+ <td align="right" valign="top" class="bevel-right"></td>
213
+ </tr>
214
+ </table>
215
+
216
+
217
+ <script type="text/javascript">
218
+ var cancelBubble = false;
219
+ function _go(url) { document.location = url; }
220
+ </script>
221
+ <div id="maincol"
222
+
223
+ >
224
+
225
+
226
+ <!-- IE -->
227
+
228
+
229
+
230
+
231
+
232
+ <script type="text/javascript">
233
+ function _showBelow(){}
234
+ function _toggleStar(){}
235
+ function _rowRolloverOn(){}
236
+ function _rowRolloverOff(){}
237
+ function _goIssue(){}
238
+ function _goFile(){}
239
+ </script>
240
+
241
+ <script type="text/javascript">
242
+ function starClick(el, filename) {
243
+ _CS_toggleStar(
244
+ el,
245
+ {'scope': 'downloads',
246
+ 'user': '_CURRENT_USER',
247
+ 'item': 'chromium:' + filename
248
+ });
249
+ }
250
+ </script>
251
+ <div id="colcontrol">
252
+ <div class="list">
253
+
254
+
255
+ <div class="pagination">
256
+
257
+ 1 - 8
258
+ of 8
259
+
260
+ </div>
261
+
262
+
263
+
264
+
265
+ &nbsp;&nbsp;
266
+
267
+ <form id="colspecform" action="list" method="GET" autocomplete="off" style="display:inline">
268
+ <input type="hidden" name="can" value=2 >
269
+ <input type="hidden" name="q" value="" >
270
+ <input type="hidden" name="sort" value="" >
271
+ <input type="hidden" id="groupbyspec" name="groupby" value="" >
272
+ <span id="columnspec" style="display:none;"><span style="font-size: 95%">Columns: </span><span id="colspec_field"><input type="text" size="60" style="font-size: 80%" name="colspec"
273
+ value="Filename Summary Uploaded ReleaseDate Size DownloadCount" /></span>&nbsp; <input type="submit" style="font-size: 80%" name="nobtn" value="Update" >&nbsp;
274
+
275
+ </span>
276
+ </form>
277
+ </div>
278
+ <table cellspacing="0" cellpadding="2" border="0" class="results" id="resultstable" width="100%">
279
+ <thead>
280
+ <tr id="headingrow">
281
+
282
+ <th style="border-left: 0"> &nbsp; </th>
283
+
284
+
285
+ <th class="col_0" nowrap="nowrap" onclick="return _showBelow('pop_0',this)"><a href="#" style="text-decoration: none">Filename <span class="indicator">&#9660;</span></a></th>
286
+
287
+
288
+
289
+
290
+ <th class="col_1" nowrap="nowrap" id="summaryheading" onclick="return _showBelow('pop_1',this)" width="100%"><a href="#" style="text-decoration: none">Summary + Labels <span class="indicator">&#9660;</span></a></th>
291
+
292
+
293
+
294
+
295
+
296
+ <th class="col_2" nowrap="nowrap" onclick="return _showBelow('pop_2',this)"><a href="#" style="text-decoration: none">Uploaded <span class="indicator">&#9660;</span></a></th>
297
+
298
+
299
+
300
+
301
+
302
+ <th class="col_3" nowrap="nowrap" onclick="return _showBelow('pop_3',this)"><a href="#" style="text-decoration: none">ReleaseDate <span class="indicator">&#9660;</span></a></th>
303
+
304
+
305
+
306
+
307
+
308
+ <th class="col_4" nowrap="nowrap" onclick="return _showBelow('pop_4',this)"><a href="#" style="text-decoration: none">Size <span class="indicator">&#9660;</span></a></th>
309
+
310
+
311
+
312
+
313
+
314
+ <th class="col_5" nowrap="nowrap" onclick="return _showBelow('pop_5',this)"><a href="#" style="text-decoration: none">DownloadCount <span class="indicator">&#9660;</span></a></th>
315
+
316
+
317
+
318
+ <th onclick="return _showBelow('pop__dot',this)" style="width:3ex"><a href="#columnprefs" class="dotdotdot">...</a></th>
319
+ </tr>
320
+ </thead>
321
+
322
+
323
+
324
+
325
+
326
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this); cancelBubble=false" class="ifOpened">
327
+
328
+
329
+
330
+ <td class="vt" nowrap="nowrap">
331
+
332
+
333
+ <a href="//chromium.googlecode.com/files/chromedriver_win_16.0.902.0.zip" onclick="_gaq.push(['siteTracker._trackEvent', 'Download - Downloaded', '//chromium.googlecode.com/files/chromedriver_win_16.0.902.0.zip', '']);"
334
+ title="Download">
335
+ <img src="http://www.gstatic.com/codesite/ph/images/dl_arrow.gif" />
336
+ </a>
337
+ </td>
338
+
339
+
340
+ <td class="vt id col_0">
341
+ <a href="detail?name=chromedriver_win_16.0.902.0.zip&amp;can=2&amp;q=">
342
+
343
+ chromedriver_win_16.0.902.0.zip
344
+
345
+
346
+ </a>
347
+ </td>
348
+
349
+
350
+
351
+
352
+
353
+
354
+
355
+ <td class="vt col_1" width="100%"
356
+ onclick="if (!cancelBubble) _go('detail?name=chromedriver_win_16.0.902.0.zip&amp;can=2&amp;q=')"
357
+ ><a onclick="cancelBubble=true;" href="detail?name=chromedriver_win_16.0.902.0.zip&amp;can=2&amp;q=">
358
+
359
+ ChromeDriver server for windows
360
+
361
+
362
+ </a>
363
+
364
+
365
+
366
+ </td>
367
+
368
+
369
+
370
+
371
+
372
+
373
+
374
+
375
+ <td class="vt col_2" onclick="if (!cancelBubble) _go('detail?name=chromedriver_win_16.0.902.0.zip&amp;can=2&amp;q=')"
376
+
377
+ ><a onclick="cancelBubble=true;" href="detail?name=chromedriver_win_16.0.902.0.zip&amp;can=2&amp;q=" style="white-space:nowrap">
378
+
379
+ Oct 6
380
+
381
+
382
+ </a></td>
383
+
384
+
385
+
386
+
387
+
388
+
389
+ <td class="vt col_3" onclick="if (!cancelBubble) _go('detail?name=chromedriver_win_16.0.902.0.zip&amp;can=2&amp;q=')"
390
+
391
+ ><a onclick="cancelBubble=true;" href="detail?name=chromedriver_win_16.0.902.0.zip&amp;can=2&amp;q=" style="white-space:nowrap">
392
+
393
+ Oct 6
394
+
395
+
396
+ </a></td>
397
+
398
+
399
+
400
+
401
+
402
+
403
+ <td class="vt col_4" onclick="if (!cancelBubble) _go('detail?name=chromedriver_win_16.0.902.0.zip&amp;can=2&amp;q=')"
404
+ align="right"
405
+ ><a onclick="cancelBubble=true;" href="detail?name=chromedriver_win_16.0.902.0.zip&amp;can=2&amp;q=" style="white-space:nowrap">
406
+
407
+ 1011 KB
408
+
409
+
410
+ </a></td>
411
+
412
+
413
+
414
+
415
+
416
+
417
+ <td class="vt col_5" onclick="if (!cancelBubble) _go('detail?name=chromedriver_win_16.0.902.0.zip&amp;can=2&amp;q=')"
418
+ align="right"
419
+ ><a onclick="cancelBubble=true;" href="detail?name=chromedriver_win_16.0.902.0.zip&amp;can=2&amp;q=" style="white-space:nowrap">
420
+
421
+ 7352
422
+
423
+
424
+ </a></td>
425
+
426
+
427
+ <td>&nbsp;</td>
428
+ </tr>
429
+
430
+
431
+
432
+
433
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this); cancelBubble=false" class="ifOpened">
434
+
435
+
436
+
437
+ <td class="vt" nowrap="nowrap">
438
+
439
+
440
+ <a href="//chromium.googlecode.com/files/chromedriver_mac_16.0.902.0.zip" onclick="_gaq.push(['siteTracker._trackEvent', 'Download - Downloaded', '//chromium.googlecode.com/files/chromedriver_mac_16.0.902.0.zip', '']);"
441
+ title="Download">
442
+ <img src="http://www.gstatic.com/codesite/ph/images/dl_arrow.gif" />
443
+ </a>
444
+ </td>
445
+
446
+
447
+ <td class="vt id col_0">
448
+ <a href="detail?name=chromedriver_mac_16.0.902.0.zip&amp;can=2&amp;q=">
449
+
450
+ chromedriver_mac_16.0.902.0.zip
451
+
452
+
453
+ </a>
454
+ </td>
455
+
456
+
457
+
458
+
459
+
460
+
461
+
462
+ <td class="vt col_1" width="100%"
463
+ onclick="if (!cancelBubble) _go('detail?name=chromedriver_mac_16.0.902.0.zip&amp;can=2&amp;q=')"
464
+ ><a onclick="cancelBubble=true;" href="detail?name=chromedriver_mac_16.0.902.0.zip&amp;can=2&amp;q=">
465
+
466
+ ChromeDriver server for Mac OS X
467
+
468
+
469
+ </a>
470
+
471
+
472
+
473
+ </td>
474
+
475
+
476
+
477
+
478
+
479
+
480
+
481
+
482
+ <td class="vt col_2" onclick="if (!cancelBubble) _go('detail?name=chromedriver_mac_16.0.902.0.zip&amp;can=2&amp;q=')"
483
+
484
+ ><a onclick="cancelBubble=true;" href="detail?name=chromedriver_mac_16.0.902.0.zip&amp;can=2&amp;q=" style="white-space:nowrap">
485
+
486
+ Oct 6
487
+
488
+
489
+ </a></td>
490
+
491
+
492
+
493
+
494
+
495
+
496
+ <td class="vt col_3" onclick="if (!cancelBubble) _go('detail?name=chromedriver_mac_16.0.902.0.zip&amp;can=2&amp;q=')"
497
+
498
+ ><a onclick="cancelBubble=true;" href="detail?name=chromedriver_mac_16.0.902.0.zip&amp;can=2&amp;q=" style="white-space:nowrap">
499
+
500
+ Oct 6
501
+
502
+
503
+ </a></td>
504
+
505
+
506
+
507
+
508
+
509
+
510
+ <td class="vt col_4" onclick="if (!cancelBubble) _go('detail?name=chromedriver_mac_16.0.902.0.zip&amp;can=2&amp;q=')"
511
+ align="right"
512
+ ><a onclick="cancelBubble=true;" href="detail?name=chromedriver_mac_16.0.902.0.zip&amp;can=2&amp;q=" style="white-space:nowrap">
513
+
514
+ 5.1 MB
515
+
516
+
517
+ </a></td>
518
+
519
+
520
+
521
+
522
+
523
+
524
+ <td class="vt col_5" onclick="if (!cancelBubble) _go('detail?name=chromedriver_mac_16.0.902.0.zip&amp;can=2&amp;q=')"
525
+ align="right"
526
+ ><a onclick="cancelBubble=true;" href="detail?name=chromedriver_mac_16.0.902.0.zip&amp;can=2&amp;q=" style="white-space:nowrap">
527
+
528
+ 2818
529
+
530
+
531
+ </a></td>
532
+
533
+
534
+ <td>&nbsp;</td>
535
+ </tr>
536
+
537
+
538
+
539
+
540
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this); cancelBubble=false" class="ifOpened">
541
+
542
+
543
+
544
+ <td class="vt" nowrap="nowrap">
545
+
546
+
547
+ <a href="//chromium.googlecode.com/files/chromedriver_linux64_16.0.902.0.zip" onclick="_gaq.push(['siteTracker._trackEvent', 'Download - Downloaded', '//chromium.googlecode.com/files/chromedriver_linux64_16.0.902.0.zip', '']);"
548
+ title="Download">
549
+ <img src="http://www.gstatic.com/codesite/ph/images/dl_arrow.gif" />
550
+ </a>
551
+ </td>
552
+
553
+
554
+ <td class="vt id col_0">
555
+ <a href="detail?name=chromedriver_linux64_16.0.902.0.zip&amp;can=2&amp;q=">
556
+
557
+ chromedriver_linux64_16.0.902.0.zip
558
+
559
+
560
+ </a>
561
+ </td>
562
+
563
+
564
+
565
+
566
+
567
+
568
+
569
+ <td class="vt col_1" width="100%"
570
+ onclick="if (!cancelBubble) _go('detail?name=chromedriver_linux64_16.0.902.0.zip&amp;can=2&amp;q=')"
571
+ ><a onclick="cancelBubble=true;" href="detail?name=chromedriver_linux64_16.0.902.0.zip&amp;can=2&amp;q=">
572
+
573
+ ChromeDriver server for linux64
574
+
575
+
576
+ </a>
577
+
578
+
579
+
580
+ </td>
581
+
582
+
583
+
584
+
585
+
586
+
587
+
588
+
589
+ <td class="vt col_2" onclick="if (!cancelBubble) _go('detail?name=chromedriver_linux64_16.0.902.0.zip&amp;can=2&amp;q=')"
590
+
591
+ ><a onclick="cancelBubble=true;" href="detail?name=chromedriver_linux64_16.0.902.0.zip&amp;can=2&amp;q=" style="white-space:nowrap">
592
+
593
+ Oct 6
594
+
595
+
596
+ </a></td>
597
+
598
+
599
+
600
+
601
+
602
+
603
+ <td class="vt col_3" onclick="if (!cancelBubble) _go('detail?name=chromedriver_linux64_16.0.902.0.zip&amp;can=2&amp;q=')"
604
+
605
+ ><a onclick="cancelBubble=true;" href="detail?name=chromedriver_linux64_16.0.902.0.zip&amp;can=2&amp;q=" style="white-space:nowrap">
606
+
607
+ Oct 6
608
+
609
+
610
+ </a></td>
611
+
612
+
613
+
614
+
615
+
616
+
617
+ <td class="vt col_4" onclick="if (!cancelBubble) _go('detail?name=chromedriver_linux64_16.0.902.0.zip&amp;can=2&amp;q=')"
618
+ align="right"
619
+ ><a onclick="cancelBubble=true;" href="detail?name=chromedriver_linux64_16.0.902.0.zip&amp;can=2&amp;q=" style="white-space:nowrap">
620
+
621
+ 6.5 MB
622
+
623
+
624
+ </a></td>
625
+
626
+
627
+
628
+
629
+
630
+
631
+ <td class="vt col_5" onclick="if (!cancelBubble) _go('detail?name=chromedriver_linux64_16.0.902.0.zip&amp;can=2&amp;q=')"
632
+ align="right"
633
+ ><a onclick="cancelBubble=true;" href="detail?name=chromedriver_linux64_16.0.902.0.zip&amp;can=2&amp;q=" style="white-space:nowrap">
634
+
635
+ 2550
636
+
637
+
638
+ </a></td>
639
+
640
+
641
+ <td>&nbsp;</td>
642
+ </tr>
643
+
644
+
645
+
646
+
647
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this); cancelBubble=false" class="ifOpened">
648
+
649
+
650
+
651
+ <td class="vt" nowrap="nowrap">
652
+
653
+
654
+ <a href="//chromium.googlecode.com/files/chromedriver_linux32_16.0.902.0.zip" onclick="_gaq.push(['siteTracker._trackEvent', 'Download - Downloaded', '//chromium.googlecode.com/files/chromedriver_linux32_16.0.902.0.zip', '']);"
655
+ title="Download">
656
+ <img src="http://www.gstatic.com/codesite/ph/images/dl_arrow.gif" />
657
+ </a>
658
+ </td>
659
+
660
+
661
+ <td class="vt id col_0">
662
+ <a href="detail?name=chromedriver_linux32_16.0.902.0.zip&amp;can=2&amp;q=">
663
+
664
+ chromedriver_linux32_16.0.902.0.zip
665
+
666
+
667
+ </a>
668
+ </td>
669
+
670
+
671
+
672
+
673
+
674
+
675
+
676
+ <td class="vt col_1" width="100%"
677
+ onclick="if (!cancelBubble) _go('detail?name=chromedriver_linux32_16.0.902.0.zip&amp;can=2&amp;q=')"
678
+ ><a onclick="cancelBubble=true;" href="detail?name=chromedriver_linux32_16.0.902.0.zip&amp;can=2&amp;q=">
679
+
680
+ ChromeDriver server for linux32
681
+
682
+
683
+ </a>
684
+
685
+
686
+
687
+ </td>
688
+
689
+
690
+
691
+
692
+
693
+
694
+
695
+
696
+ <td class="vt col_2" onclick="if (!cancelBubble) _go('detail?name=chromedriver_linux32_16.0.902.0.zip&amp;can=2&amp;q=')"
697
+
698
+ ><a onclick="cancelBubble=true;" href="detail?name=chromedriver_linux32_16.0.902.0.zip&amp;can=2&amp;q=" style="white-space:nowrap">
699
+
700
+ Oct 6
701
+
702
+
703
+ </a></td>
704
+
705
+
706
+
707
+
708
+
709
+
710
+ <td class="vt col_3" onclick="if (!cancelBubble) _go('detail?name=chromedriver_linux32_16.0.902.0.zip&amp;can=2&amp;q=')"
711
+
712
+ ><a onclick="cancelBubble=true;" href="detail?name=chromedriver_linux32_16.0.902.0.zip&amp;can=2&amp;q=" style="white-space:nowrap">
713
+
714
+ Oct 6
715
+
716
+
717
+ </a></td>
718
+
719
+
720
+
721
+
722
+
723
+
724
+ <td class="vt col_4" onclick="if (!cancelBubble) _go('detail?name=chromedriver_linux32_16.0.902.0.zip&amp;can=2&amp;q=')"
725
+ align="right"
726
+ ><a onclick="cancelBubble=true;" href="detail?name=chromedriver_linux32_16.0.902.0.zip&amp;can=2&amp;q=" style="white-space:nowrap">
727
+
728
+ 6.4 MB
729
+
730
+
731
+ </a></td>
732
+
733
+
734
+
735
+
736
+
737
+
738
+ <td class="vt col_5" onclick="if (!cancelBubble) _go('detail?name=chromedriver_linux32_16.0.902.0.zip&amp;can=2&amp;q=')"
739
+ align="right"
740
+ ><a onclick="cancelBubble=true;" href="detail?name=chromedriver_linux32_16.0.902.0.zip&amp;can=2&amp;q=" style="white-space:nowrap">
741
+
742
+ 2899
743
+
744
+
745
+ </a></td>
746
+
747
+
748
+ <td>&nbsp;</td>
749
+ </tr>
750
+
751
+
752
+
753
+
754
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this); cancelBubble=false" class="ifOpened">
755
+
756
+
757
+
758
+ <td class="vt" nowrap="nowrap">
759
+
760
+
761
+ <a href="//chromium.googlecode.com/files/Chrome552.215.exe" onclick="_gaq.push(['siteTracker._trackEvent', 'Download - Downloaded', '//chromium.googlecode.com/files/Chrome552.215.exe', '']);"
762
+ title="Download">
763
+ <img src="http://www.gstatic.com/codesite/ph/images/dl_arrow.gif" />
764
+ </a>
765
+ </td>
766
+
767
+
768
+ <td class="vt id col_0">
769
+ <a href="detail?name=Chrome552.215.exe&amp;can=2&amp;q=">
770
+
771
+ Chrome552.215.exe
772
+
773
+
774
+ </a>
775
+ </td>
776
+
777
+
778
+
779
+
780
+
781
+
782
+
783
+ <td class="vt col_1" width="100%"
784
+ onclick="if (!cancelBubble) _go('detail?name=Chrome552.215.exe&amp;can=2&amp;q=')"
785
+ ><a onclick="cancelBubble=true;" href="detail?name=Chrome552.215.exe&amp;can=2&amp;q=">
786
+
787
+ 552.15 standalone installer
788
+
789
+
790
+ </a>
791
+
792
+
793
+
794
+ </td>
795
+
796
+
797
+
798
+
799
+
800
+
801
+
802
+
803
+ <td class="vt col_2" onclick="if (!cancelBubble) _go('detail?name=Chrome552.215.exe&amp;can=2&amp;q=')"
804
+
805
+ ><a onclick="cancelBubble=true;" href="detail?name=Chrome552.215.exe&amp;can=2&amp;q=" style="white-space:nowrap">
806
+
807
+ Dec 2010
808
+
809
+
810
+ </a></td>
811
+
812
+
813
+
814
+
815
+
816
+
817
+ <td class="vt col_3" onclick="if (!cancelBubble) _go('detail?name=Chrome552.215.exe&amp;can=2&amp;q=')"
818
+
819
+ ><a onclick="cancelBubble=true;" href="detail?name=Chrome552.215.exe&amp;can=2&amp;q=" style="white-space:nowrap">
820
+
821
+
822
+
823
+
824
+ </a></td>
825
+
826
+
827
+
828
+
829
+
830
+
831
+ <td class="vt col_4" onclick="if (!cancelBubble) _go('detail?name=Chrome552.215.exe&amp;can=2&amp;q=')"
832
+ align="right"
833
+ ><a onclick="cancelBubble=true;" href="detail?name=Chrome552.215.exe&amp;can=2&amp;q=" style="white-space:nowrap">
834
+
835
+ 24.3 MB
836
+
837
+
838
+ </a></td>
839
+
840
+
841
+
842
+
843
+
844
+
845
+ <td class="vt col_5" onclick="if (!cancelBubble) _go('detail?name=Chrome552.215.exe&amp;can=2&amp;q=')"
846
+ align="right"
847
+ ><a onclick="cancelBubble=true;" href="detail?name=Chrome552.215.exe&amp;can=2&amp;q=" style="white-space:nowrap">
848
+
849
+ 64720
850
+
851
+
852
+ </a></td>
853
+
854
+
855
+ <td>&nbsp;</td>
856
+ </tr>
857
+
858
+
859
+
860
+
861
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this); cancelBubble=false" class="ifOpened">
862
+
863
+
864
+
865
+ <td class="vt" nowrap="nowrap">
866
+
867
+
868
+ <a href="//chromium.googlecode.com/files/Chrome517.41.exe" onclick="_gaq.push(['siteTracker._trackEvent', 'Download - Downloaded', '//chromium.googlecode.com/files/Chrome517.41.exe', '']);"
869
+ title="Download">
870
+ <img src="http://www.gstatic.com/codesite/ph/images/dl_arrow.gif" />
871
+ </a>
872
+ </td>
873
+
874
+
875
+ <td class="vt id col_0">
876
+ <a href="detail?name=Chrome517.41.exe&amp;can=2&amp;q=">
877
+
878
+ Chrome517.41.exe
879
+
880
+
881
+ </a>
882
+ </td>
883
+
884
+
885
+
886
+
887
+
888
+
889
+
890
+ <td class="vt col_1" width="100%"
891
+ onclick="if (!cancelBubble) _go('detail?name=Chrome517.41.exe&amp;can=2&amp;q=')"
892
+ ><a onclick="cancelBubble=true;" href="detail?name=Chrome517.41.exe&amp;can=2&amp;q=">
893
+
894
+ 517.41 standalone installer
895
+
896
+
897
+ </a>
898
+
899
+
900
+
901
+ </td>
902
+
903
+
904
+
905
+
906
+
907
+
908
+
909
+
910
+ <td class="vt col_2" onclick="if (!cancelBubble) _go('detail?name=Chrome517.41.exe&amp;can=2&amp;q=')"
911
+
912
+ ><a onclick="cancelBubble=true;" href="detail?name=Chrome517.41.exe&amp;can=2&amp;q=" style="white-space:nowrap">
913
+
914
+ Dec 2010
915
+
916
+
917
+ </a></td>
918
+
919
+
920
+
921
+
922
+
923
+
924
+ <td class="vt col_3" onclick="if (!cancelBubble) _go('detail?name=Chrome517.41.exe&amp;can=2&amp;q=')"
925
+
926
+ ><a onclick="cancelBubble=true;" href="detail?name=Chrome517.41.exe&amp;can=2&amp;q=" style="white-space:nowrap">
927
+
928
+
929
+
930
+
931
+ </a></td>
932
+
933
+
934
+
935
+
936
+
937
+
938
+ <td class="vt col_4" onclick="if (!cancelBubble) _go('detail?name=Chrome517.41.exe&amp;can=2&amp;q=')"
939
+ align="right"
940
+ ><a onclick="cancelBubble=true;" href="detail?name=Chrome517.41.exe&amp;can=2&amp;q=" style="white-space:nowrap">
941
+
942
+ 23.3 MB
943
+
944
+
945
+ </a></td>
946
+
947
+
948
+
949
+
950
+
951
+
952
+ <td class="vt col_5" onclick="if (!cancelBubble) _go('detail?name=Chrome517.41.exe&amp;can=2&amp;q=')"
953
+ align="right"
954
+ ><a onclick="cancelBubble=true;" href="detail?name=Chrome517.41.exe&amp;can=2&amp;q=" style="white-space:nowrap">
955
+
956
+ 2152
957
+
958
+
959
+ </a></td>
960
+
961
+
962
+ <td>&nbsp;</td>
963
+ </tr>
964
+
965
+
966
+
967
+
968
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this); cancelBubble=false" class="ifOpened">
969
+
970
+
971
+
972
+ <td class="vt" nowrap="nowrap">
973
+
974
+
975
+ <a href="//chromium.googlecode.com/files/codesite.crx" onclick="_gaq.push(['siteTracker._trackEvent', 'Download - Downloaded', '//chromium.googlecode.com/files/codesite.crx', 'Type-Installer, OpSys-All']);"
976
+ title="Download">
977
+ <img src="http://www.gstatic.com/codesite/ph/images/dl_arrow.gif" />
978
+ </a>
979
+ </td>
980
+
981
+
982
+ <td class="vt id col_0">
983
+ <a href="detail?name=codesite.crx&amp;can=2&amp;q=">
984
+
985
+ codesite.crx
986
+
987
+
988
+ </a>
989
+ </td>
990
+
991
+
992
+
993
+
994
+
995
+
996
+
997
+ <td class="vt col_1" width="100%"
998
+ onclick="if (!cancelBubble) _go('detail?name=codesite.crx&amp;can=2&amp;q=')"
999
+ ><a onclick="cancelBubble=true;" href="detail?name=codesite.crx&amp;can=2&amp;q=">
1000
+
1001
+ Google Code enhancements for Chromium (Inlined images and fix svn path in issues)
1002
+
1003
+
1004
+ </a>
1005
+
1006
+
1007
+
1008
+ </td>
1009
+
1010
+
1011
+
1012
+
1013
+
1014
+
1015
+
1016
+
1017
+ <td class="vt col_2" onclick="if (!cancelBubble) _go('detail?name=codesite.crx&amp;can=2&amp;q=')"
1018
+
1019
+ ><a onclick="cancelBubble=true;" href="detail?name=codesite.crx&amp;can=2&amp;q=" style="white-space:nowrap">
1020
+
1021
+ Jul 2009
1022
+
1023
+
1024
+ </a></td>
1025
+
1026
+
1027
+
1028
+
1029
+
1030
+
1031
+ <td class="vt col_3" onclick="if (!cancelBubble) _go('detail?name=codesite.crx&amp;can=2&amp;q=')"
1032
+
1033
+ ><a onclick="cancelBubble=true;" href="detail?name=codesite.crx&amp;can=2&amp;q=" style="white-space:nowrap">
1034
+
1035
+
1036
+
1037
+
1038
+ </a></td>
1039
+
1040
+
1041
+
1042
+
1043
+
1044
+
1045
+ <td class="vt col_4" onclick="if (!cancelBubble) _go('detail?name=codesite.crx&amp;can=2&amp;q=')"
1046
+ align="right"
1047
+ ><a onclick="cancelBubble=true;" href="detail?name=codesite.crx&amp;can=2&amp;q=" style="white-space:nowrap">
1048
+
1049
+ 1.3 KB
1050
+
1051
+
1052
+ </a></td>
1053
+
1054
+
1055
+
1056
+
1057
+
1058
+
1059
+ <td class="vt col_5" onclick="if (!cancelBubble) _go('detail?name=codesite.crx&amp;can=2&amp;q=')"
1060
+ align="right"
1061
+ ><a onclick="cancelBubble=true;" href="detail?name=codesite.crx&amp;can=2&amp;q=" style="white-space:nowrap">
1062
+
1063
+ 20575
1064
+
1065
+
1066
+ </a></td>
1067
+
1068
+
1069
+ <td>&nbsp;</td>
1070
+ </tr>
1071
+
1072
+
1073
+
1074
+
1075
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this); cancelBubble=false" class="ifOpened">
1076
+
1077
+
1078
+
1079
+ <td class="vt" nowrap="nowrap">
1080
+
1081
+
1082
+ <a href="//chromium.googlecode.com/files/chromecomicJPGS.zip" onclick="_gaq.push(['siteTracker._trackEvent', 'Download - Downloaded', '//chromium.googlecode.com/files/chromecomicJPGS.zip', '']);"
1083
+ title="Download">
1084
+ <img src="http://www.gstatic.com/codesite/ph/images/dl_arrow.gif" />
1085
+ </a>
1086
+ </td>
1087
+
1088
+
1089
+ <td class="vt id col_0">
1090
+ <a href="detail?name=chromecomicJPGS.zip&amp;can=2&amp;q=">
1091
+
1092
+ chromecomicJPGS.zip
1093
+
1094
+
1095
+ </a>
1096
+ </td>
1097
+
1098
+
1099
+
1100
+
1101
+
1102
+
1103
+
1104
+ <td class="vt col_1" width="100%"
1105
+ onclick="if (!cancelBubble) _go('detail?name=chromecomicJPGS.zip&amp;can=2&amp;q=')"
1106
+ ><a onclick="cancelBubble=true;" href="detail?name=chromecomicJPGS.zip&amp;can=2&amp;q=">
1107
+
1108
+ Google Chrome Comic
1109
+
1110
+
1111
+ </a>
1112
+
1113
+
1114
+
1115
+ </td>
1116
+
1117
+
1118
+
1119
+
1120
+
1121
+
1122
+
1123
+
1124
+ <td class="vt col_2" onclick="if (!cancelBubble) _go('detail?name=chromecomicJPGS.zip&amp;can=2&amp;q=')"
1125
+
1126
+ ><a onclick="cancelBubble=true;" href="detail?name=chromecomicJPGS.zip&amp;can=2&amp;q=" style="white-space:nowrap">
1127
+
1128
+ Sep 2008
1129
+
1130
+
1131
+ </a></td>
1132
+
1133
+
1134
+
1135
+
1136
+
1137
+
1138
+ <td class="vt col_3" onclick="if (!cancelBubble) _go('detail?name=chromecomicJPGS.zip&amp;can=2&amp;q=')"
1139
+
1140
+ ><a onclick="cancelBubble=true;" href="detail?name=chromecomicJPGS.zip&amp;can=2&amp;q=" style="white-space:nowrap">
1141
+
1142
+
1143
+
1144
+
1145
+ </a></td>
1146
+
1147
+
1148
+
1149
+
1150
+
1151
+
1152
+ <td class="vt col_4" onclick="if (!cancelBubble) _go('detail?name=chromecomicJPGS.zip&amp;can=2&amp;q=')"
1153
+ align="right"
1154
+ ><a onclick="cancelBubble=true;" href="detail?name=chromecomicJPGS.zip&amp;can=2&amp;q=" style="white-space:nowrap">
1155
+
1156
+ 9.9 MB
1157
+
1158
+
1159
+ </a></td>
1160
+
1161
+
1162
+
1163
+
1164
+
1165
+
1166
+ <td class="vt col_5" onclick="if (!cancelBubble) _go('detail?name=chromecomicJPGS.zip&amp;can=2&amp;q=')"
1167
+ align="right"
1168
+ ><a onclick="cancelBubble=true;" href="detail?name=chromecomicJPGS.zip&amp;can=2&amp;q=" style="white-space:nowrap">
1169
+
1170
+ 20927
1171
+
1172
+
1173
+ </a></td>
1174
+
1175
+
1176
+ <td>&nbsp;</td>
1177
+ </tr>
1178
+
1179
+
1180
+ </table>
1181
+ <div class="list-foot">
1182
+
1183
+
1184
+ <div class="pagination">
1185
+
1186
+ 1 - 8
1187
+ of 8
1188
+
1189
+ </div>
1190
+
1191
+
1192
+
1193
+ </div>
1194
+ &nbsp;&nbsp;
1195
+ <div style="margin-top: 1px; font-size: small">
1196
+
1197
+
1198
+ </div>
1199
+
1200
+
1201
+ <div id="pop_0" class="popup">
1202
+ <table cellspacing="0" cellpadding="0" border="0">
1203
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_sortUp('filename')"><td>Sort Up</td></tr>
1204
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_sortDown('filename')"><td>Sort Down</td></tr>
1205
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_toggleColumn('hide_col_0')"><td>Hide Column</td></tr>
1206
+ </table>
1207
+ </div>
1208
+
1209
+
1210
+
1211
+
1212
+ <div id="pop_1" class="popup">
1213
+ <table cellspacing="0" cellpadding="0" border="0">
1214
+ <tr onmouseover="_rowRolloverOn(this);_closeSubmenus()" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_sortUp('summary')"><td>Sort Up</td></tr>
1215
+ <tr onmouseover="_rowRolloverOn(this);_closeSubmenus()" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_sortDown('summary')"><td>Sort Down</td></tr>
1216
+
1217
+ <tr onmouseover="_rowRolloverOn(this);_closeSubmenus()" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_toggleColumn('hide_col_1')"><td>Hide Column</td></tr>
1218
+ </table>
1219
+ </div>
1220
+
1221
+
1222
+
1223
+
1224
+
1225
+ <div id="pop_2" class="popup">
1226
+ <table cellspacing="0" cellpadding="0" border="0">
1227
+ <tr onmouseover="_rowRolloverOn(this);_closeSubmenus()" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_sortUp('uploaded')"><td>Sort Up</td></tr>
1228
+ <tr onmouseover="_rowRolloverOn(this);_closeSubmenus()" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_sortDown('uploaded')"><td>Sort Down</td></tr>
1229
+
1230
+ <tr onmouseover="_rowRolloverOn(this);_closeSubmenus()" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_toggleColumn('hide_col_2')"><td>Hide Column</td></tr>
1231
+ <tr onmouseover="_rowRolloverOn(this);_closeSubmenus()" onmouseout="_rowRolloverOff(this)"
1232
+ onclick="_closeAllPopups(this);_addGroupBy(2)"
1233
+ id="pop_groupby_2"
1234
+ ><td>Group Rows</td></tr>
1235
+ </table>
1236
+ </div>
1237
+
1238
+
1239
+
1240
+
1241
+
1242
+ <div id="pop_3" class="popup">
1243
+ <table cellspacing="0" cellpadding="0" border="0">
1244
+ <tr onmouseover="_rowRolloverOn(this);_closeSubmenus()" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_sortUp('releasedate')"><td>Sort Up</td></tr>
1245
+ <tr onmouseover="_rowRolloverOn(this);_closeSubmenus()" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_sortDown('releasedate')"><td>Sort Down</td></tr>
1246
+
1247
+ <tr onmouseover="_rowRolloverOn(this);_closeSubmenus()" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_toggleColumn('hide_col_3')"><td>Hide Column</td></tr>
1248
+ <tr onmouseover="_rowRolloverOn(this);_closeSubmenus()" onmouseout="_rowRolloverOff(this)"
1249
+ onclick="_closeAllPopups(this);_addGroupBy(3)"
1250
+ id="pop_groupby_3"
1251
+ ><td>Group Rows</td></tr>
1252
+ </table>
1253
+ </div>
1254
+
1255
+
1256
+
1257
+
1258
+
1259
+ <div id="pop_4" class="popup">
1260
+ <table cellspacing="0" cellpadding="0" border="0">
1261
+ <tr onmouseover="_rowRolloverOn(this);_closeSubmenus()" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_sortUp('size')"><td>Sort Up</td></tr>
1262
+ <tr onmouseover="_rowRolloverOn(this);_closeSubmenus()" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_sortDown('size')"><td>Sort Down</td></tr>
1263
+
1264
+ <tr onmouseover="_rowRolloverOn(this);_closeSubmenus()" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_toggleColumn('hide_col_4')"><td>Hide Column</td></tr>
1265
+ <tr onmouseover="_rowRolloverOn(this);_closeSubmenus()" onmouseout="_rowRolloverOff(this)"
1266
+ onclick="_closeAllPopups(this);_addGroupBy(4)"
1267
+ id="pop_groupby_4"
1268
+ ><td>Group Rows</td></tr>
1269
+ </table>
1270
+ </div>
1271
+
1272
+
1273
+
1274
+
1275
+
1276
+ <div id="pop_5" class="popup">
1277
+ <table cellspacing="0" cellpadding="0" border="0">
1278
+ <tr onmouseover="_rowRolloverOn(this);_closeSubmenus()" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_sortUp('downloadcount')"><td>Sort Up</td></tr>
1279
+ <tr onmouseover="_rowRolloverOn(this);_closeSubmenus()" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_sortDown('downloadcount')"><td>Sort Down</td></tr>
1280
+
1281
+ <tr onmouseover="_rowRolloverOn(this);_closeSubmenus()" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_toggleColumn('hide_col_5')"><td>Hide Column</td></tr>
1282
+ <tr onmouseover="_rowRolloverOn(this);_closeSubmenus()" onmouseout="_rowRolloverOff(this)"
1283
+ onclick="_closeAllPopups(this);_addGroupBy(5)"
1284
+ id="pop_groupby_5"
1285
+ ><td>Group Rows</td></tr>
1286
+ </table>
1287
+ </div>
1288
+
1289
+
1290
+
1291
+
1292
+ <div id="filter_0" class="popup subpopup">
1293
+ <table cellspacing="0" cellpadding="0" border="0">
1294
+
1295
+ </table>
1296
+ </div>
1297
+
1298
+ <div id="filter_1" class="popup subpopup">
1299
+ <table cellspacing="0" cellpadding="0" border="0">
1300
+
1301
+ </table>
1302
+ </div>
1303
+
1304
+ <div id="filter_2" class="popup subpopup">
1305
+ <table cellspacing="0" cellpadding="0" border="0">
1306
+
1307
+ </table>
1308
+ </div>
1309
+
1310
+ <div id="filter_3" class="popup subpopup">
1311
+ <table cellspacing="0" cellpadding="0" border="0">
1312
+
1313
+ </table>
1314
+ </div>
1315
+
1316
+ <div id="filter_4" class="popup subpopup">
1317
+ <table cellspacing="0" cellpadding="0" border="0">
1318
+
1319
+ </table>
1320
+ </div>
1321
+
1322
+ <div id="filter_5" class="popup subpopup">
1323
+ <table cellspacing="0" cellpadding="0" border="0">
1324
+
1325
+ </table>
1326
+ </div>
1327
+
1328
+ <div id="pop__dot" class="popup">
1329
+ <table cellspacing="0" cellpadding="0" border="0">
1330
+ <tr><th>Show columns:</th></tr>
1331
+
1332
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_toggleColumn('hide_col_0')"><td>&nbsp;<span class="col_0">&diams;</span>&nbsp;Filename</td></tr>
1333
+
1334
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_toggleColumn('hide_col_1')"><td>&nbsp;<span class="col_1">&diams;</span>&nbsp;Summary</td></tr>
1335
+
1336
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_toggleColumn('hide_col_2')"><td>&nbsp;<span class="col_2">&diams;</span>&nbsp;Uploaded</td></tr>
1337
+
1338
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_toggleColumn('hide_col_3')"><td>&nbsp;<span class="col_3">&diams;</span>&nbsp;ReleaseDate</td></tr>
1339
+
1340
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_toggleColumn('hide_col_4')"><td>&nbsp;<span class="col_4">&diams;</span>&nbsp;Size</td></tr>
1341
+
1342
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_toggleColumn('hide_col_5')"><td>&nbsp;<span class="col_5">&diams;</span>&nbsp;DownloadCount</td></tr>
1343
+
1344
+
1345
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_addcol('UploadedBy')"><td>&nbsp;&nbsp;&nbsp;&nbsp;UploadedBy</td></tr>
1346
+
1347
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_addcol('Stars')"><td>&nbsp;&nbsp;&nbsp;&nbsp;Stars</td></tr>
1348
+
1349
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_addcol('Project')"><td>&nbsp;&nbsp;&nbsp;&nbsp;Project</td></tr>
1350
+
1351
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_addcol('Type')"><td>&nbsp;&nbsp;&nbsp;&nbsp;Type</td></tr>
1352
+
1353
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this);_addcol('Opsys')"><td>&nbsp;&nbsp;&nbsp;&nbsp;Opsys</td></tr>
1354
+
1355
+ <tr onmouseover="_rowRolloverOn(this)" onmouseout="_rowRolloverOff(this)" onclick="_closeAllPopups(this); document.getElementById('columnspec').style.display=''; return true;"><td>&nbsp;&nbsp;&nbsp;&nbsp;Edit&nbsp;column&nbsp;spec...</td></tr>
1356
+ </table>
1357
+ </div>
1358
+ </div>
1359
+ <script type="text/javascript" src="http://www.gstatic.com/codesite/ph/12684539022547559253/js/dit_scripts.js"></script>
1360
+
1361
+ <script type="text/javascript">
1362
+ var cancelBubble = false;
1363
+ var _allColumnNames = [
1364
+ 'filename', 'summary', 'uploaded', 'releasedate', 'size', 'downloadcount'
1365
+ ];
1366
+
1367
+ </script>
1368
+
1369
+
1370
+
1371
+ <script type="text/javascript" src="http://www.gstatic.com/codesite/ph/12684539022547559253/js/ph_core.js"></script>
1372
+
1373
+
1374
+
1375
+
1376
+ <script type="text/javascript" src="/js/codesite_product_dictionary_ph.pack.04102009.js"></script>
1377
+ </div>
1378
+ <div id="footer" dir="ltr">
1379
+ <div class="text">
1380
+ &copy;2011 Google -
1381
+ <a href="/projecthosting/terms.html">Terms</a> -
1382
+ <a href="http://www.google.com/privacy.html">Privacy</a> -
1383
+ <a href="/p/support/">Project Hosting Help</a>
1384
+ </div>
1385
+ </div>
1386
+ <div class="hostedBy" style="margin-top: -20px;">
1387
+ <span style="vertical-align: top;">Powered by <a href="http://code.google.com/projecthosting/">Google Project Hosting</a></span>
1388
+ </div>
1389
+
1390
+
1391
+
1392
+
1393
+
1394
+ </body>
1395
+ </html>
1396
+