Merge "Added ability to import traces from multiple tracers."
diff --git a/prefix.html b/prefix.html
index 3143913..887293a 100644
--- a/prefix.html
+++ b/prefix.html
@@ -21,16 +21,23 @@
{{SYSTRACE_TRACE_VIEWER_HTML}}
<script language="javascript">
document.addEventListener('DOMContentLoaded', function() {
- if (!linuxPerfData)
- return;
-
var traceViewerEl = new tv.TraceViewer();
traceViewerEl.viewTitle = 'Android System Trace';
var viewInsertionPt = document.body.querySelector('#trace-viewer-insertion-pt');
viewInsertionPt.parentElement.replaceChild(traceViewerEl, viewInsertionPt);
var m = new tv.c.TraceModel();
- var p = m.importTracesWithProgressDialog([linuxPerfData], true);
+
+ var traceDataEls = document.body.querySelectorAll('.trace-data');
+ var traces = [];
+ for (var i = 0; i < traceDataEls.length; i++) {
+ traceText = traceDataEls[i].textContent;
+ // Remove the leading newline.
+ traceText = traceText.substring(1);
+ traces.push(traceText);
+ }
+
+ var p = m.importTracesWithProgressDialog(traces, true);
p.then(
function() {
traceViewerEl.model = m;
@@ -50,6 +57,3 @@
<body>
<div id="trace-viewer-insertion-pt">
</div>
-<!-- BEGIN TRACE -->
- <script>
- var linuxPerfData = "\
diff --git a/suffix.html b/suffix.html
index f770848..308b1d0 100644
--- a/suffix.html
+++ b/suffix.html
@@ -1,5 +1,2 @@
-\n";
- </script>
-<!-- END TRACE -->
</body>
</html>
diff --git a/systrace.py b/systrace.py
index 6d77e9c..1fb3a65 100755
--- a/systrace.py
+++ b/systrace.py
@@ -263,9 +263,10 @@
html_file.write(
html_prefix.replace("{{SYSTRACE_TRACE_VIEWER_HTML}}", trace_viewer_html))
- # format newlines and double quotes
- # for embedding in double-quoted JS string
- html_file.write(out.replace('\n', '\\n\\\n').replace('\"', '\\\"'))
+ html_file.write('<!-- BEGIN TRACE -->\n' +
+ ' <script class="trace-data" type="application/text">\n')
+ html_file.write(out)
+ html_file.write(' </script>\n<!-- END TRACE -->\n')
html_file.write(html_suffix)
html_file.close()