Update to latest trace-viewer (a7f1c1b3)

Includes rewrite of prefix.html to switch from TraceViewer
to timeline-view, and account for new location of the
vulcanizer.

Cherry-pick of ced05db70069f9d84c4b0dd9b3b26b94e3482336 from AOSP

Change-Id: I07285c64bde7d4bfe414c9e93b097435e118a069
diff --git a/prefix.html b/prefix.html
index 1419f30..1c0270f 100644
--- a/prefix.html
+++ b/prefix.html
@@ -5,55 +5,65 @@
 <meta charset="utf-8"/>
 <title>Android System Trace</title>
 <style>
-  html, body {
-    box-sizing: border-box;
-    overflow: hidden;
-    margin: 0px;
-    padding: 0;
-    width: 100%;
+  html,
+  body {
     height: 100%;
   }
-  body > x-timeline-view {
-    width: 100%;
-    height: 100%;
+
+  body {
+    -webkit-flex-direction: column;
+    display: -webkit-flex;
+    margin: 0;
+    padding: 0;
+  }
+
+  body > tr-ui-timeline-view {
+    -webkit-flex: 1 1 auto;
+    min-height: 0;
+  }
+  body > tr-ui-timeline-view:focus {
+    outline: none;
   }
 </style>
 {{SYSTRACE_TRACE_VIEWER_HTML}}
-<script language="javascript">
-document.addEventListener('DOMContentLoaded', function() {
-  var traceViewerEl = new tr.TraceViewer();
-  traceViewerEl.viewTitle = 'Android System Trace';
-  var viewInsertionPt = document.body.querySelector('#trace-viewer-insertion-pt');
-  viewInsertionPt.parentElement.replaceChild(traceViewerEl, viewInsertionPt);
-
-  var m = new tr.Model();
-
-  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;
-      traceViewerEl.tabIndex = 1;
-      if (traceViewerEl.timeline)
-        traceViewerEl.timeline.focusElement = traceViewerEl;
-    },
-    function(err) {
-      var overlay = new tr.b.ui.Overlay();
-      overlay.textContent = tr.b.normalizeException(err).message;
-      overlay.title = 'Import error';
-      overlay.visible = true;
-    });
-});
-</script>
 </head>
 <body>
-  <div id="trace-viewer-insertion-pt">
-  </div>
+  <tr-ui-timeline-view>
+    <track-view-container id='track_view_container'></track-view-container>
+  </tr-ui-timeline-view>
+
+  <script>
+  'use strict';
+  var timelineViewEl;
+
+  function onLoad() {
+    timelineViewEl = document.querySelector('tr-ui-timeline-view');
+    timelineViewEl.globalMode = true;
+
+    var traceDataEls = document.body.querySelectorAll('.trace-data');
+    var traces = [];
+    for (var i = 0; i < traceDataEls.length; i++) {
+      var traceText = traceDataEls[i].textContent;
+      // Remove the leading newline.
+      traceText = traceText.substring(1);
+      traces.push(traceText);
+    }
+
+    var m = new tr.Model();
+    var p = m.importTracesWithProgressDialog(traces, true);
+    p.then(
+      function() {
+        timelineViewEl.model = m;
+        timelineViewEl.updateDocumentFavicon();
+        timelineViewEl.globalMode = true;
+        timelineViewEl.viewTitle = 'Android System Trace';
+      },
+      function(err) {
+        var overlay = new tr.ui.b.Overlay();
+        overlay.textContent = tr.b.normalizeException(err).message;
+        overlay.title = 'Import error';
+        overlay.visible = true;
+      });
+  }
+  window.addEventListener('load', onLoad);
+  </script>