Index: chrome/browser/resources/tracing/timeline_test.html |
diff --git a/chrome/browser/resources/tracing/timeline_test.html b/chrome/browser/resources/tracing/timeline_test.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..6a8cc204d58f84e391bfa9abb2d6b6f65aa91915 |
--- /dev/null |
+++ b/chrome/browser/resources/tracing/timeline_test.html |
@@ -0,0 +1,130 @@ |
+<!DOCTYPE HTML> |
+<html> |
+<!-- |
+Copyright (c) 2010 The Chromium Authors. All rights reserved. |
James Hawkins
2011/11/16 17:41:38
2011.
nduca
2011/11/16 19:03:56
Done.
|
+Use of this source code is governed by a BSD-style license that can be |
+found in the LICENSE file. |
+--> |
+<head i18n-values="dir:textdirection;"> |
+<title>Interactive Timeline Tests</title> |
+<style> |
James Hawkins
2011/11/16 17:41:38
Move to a CSS file.
nduca
2011/11/16 19:03:56
Killed this entirely. It was just convenience stuf
|
+* { |
+ box-sizing: border-box; |
+ -webkit-user-select: none; |
+} |
+ |
+.timeline-container { |
+ border: 1px solid red; |
+} |
+ |
+</style> |
+<link rel="stylesheet" href="timeline.css"> |
+<script src="../shared/js/cr.js"></script> |
+<script src="../shared/js/cr/event_target.js"></script> |
+<script src="../shared/js/cr/ui.js"></script> |
+<script src="../shared/js/util.js"></script> |
+<script src="timeline_model.js"></script> |
+<script src="sorted_array_utils.js"></script> |
+<script src="measuring_stick.js"></script> |
+<script src="timeline.js"></script> |
+<script src="timeline_track.js"></script> |
+<script src="fast_rect_renderer.js"></script> |
+</head> |
+<body> |
+ <script> |
+ function get(url, cb) { |
James Hawkins
2011/11/16 17:41:38
Move to a JS file.
nduca
2011/11/16 19:03:56
Done.
|
+ var req = new XMLHttpRequest(); |
+ req.open('GET', url, true); |
+ req.onreadystatechange = function(aEvt) { |
+ if (req.readyState == 4) { |
+ window.setTimeout(function() { |
+ if (req.status == 200) { |
+ var resp = JSON.parse(req.responseText); |
+ if (resp.traceEvents) |
+ cb(resp.traceEvents); |
+ else |
+ cb(resp); |
+ } else { |
+ console.log('Failed to load ' + url); |
+ } |
+ }, 0); |
+ } |
+ } |
+ req.send(null); |
+ } |
+ </script> |
+ |
+ <div class="timeline-test" src="./tests/trivial_trace.json" create-detached=1> |
+ </div> |
+ |
+ <div class="timeline-test" src="./tests/trivial_trace.json"> |
+ </div> |
+ |
+ <div class="timeline-test" src="./tests/simple_trace.json"> |
+ </div> |
+ |
+ <div class="timeline-test" src="./tests/nonnested_trace.json"> |
+ </div> |
+ |
+ <div class="timeline-test" src="./tests/tall_trace.json"> |
+ </div> |
+ |
+ <div class="timeline-test" src="./tests/big_trace.json"> |
+ </div> |
+ |
+ <div class="timeline-test" src="./tests/huge_trace.json"> |
+ </div> |
+ |
+ <script> |
+ function load(parentEl) { |
James Hawkins
2011/11/16 17:41:38
Move to a JS file.
nduca
2011/11/16 19:03:56
This code is specific to this test group. I was co
|
+ var src = parentEl.getAttribute('src'); |
+ if (document.location.hash && document.location.hash.substring(1) != src) { |
+ parentEl.hidden = true; |
+ return; |
+ } |
+ parentEl.hidden = false; |
+ parentEl.textContent = ''; |
+ var titleEl = document.createElement('h3'); |
+ var linkEl = document.createElement('a'); |
+ linkEl.textContent = src; |
+ linkEl.href = '#' + src; |
+ titleEl.appendChild(linkEl); |
+ |
+ var containerEl = document.createElement('div'); |
+ containerEl.tabIndex = 0; |
+ containerEl.className = 'timeline-container'; |
+ |
+ var timelineEl = document.createElement('div'); |
+ cr.ui.decorate(timelineEl, tracing.Timeline); |
+ timelineEl.focusElement = containerEl; |
+ |
+ parentEl.appendChild(titleEl); |
+ parentEl.appendChild(containerEl); |
+ |
+ // Creating attached vs detached stress tests the canvas- and viewport- |
+ // setup code. |
+ var create_detached = parentEl.getAttribute('create-attached') == 1; |
+ if (create_detached) { |
+ containerEl.appendChild(timelineEl); |
+ get(src, function(events) { |
+ var model = new tracing.TimelineModel(events); |
+ timelineEl.model = model; |
+ }); |
+ } else { |
+ get(src, function(events) { |
+ var model = new tracing.TimelineModel(events); |
+ timelineEl.model = model; |
+ containerEl.appendChild(timelineEl); |
+ }); |
+ } |
+ } |
+ function onLoad() { |
+ Array.prototype.forEach.call(document.querySelectorAll('.timeline-test'), |
+ load); |
+ } |
+ |
+ document.addEventListener('DOMContentLoaded', onLoad); |
+ window.addEventListener('hashchange', onLoad); |
+ </script> |
+</body> |
+</html> |