<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[197974] trunk/Source/WebInspectorUI</title>
</head>
<body>
<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/197974">197974</a></dd>
<dt>Author</dt> <dd>mattbaker@apple.com</dd>
<dt>Date</dt> <dd>2016-03-10 16:49:16 -0800 (Thu, 10 Mar 2016)</dd>
</dl>
<h3>Log Message</h3>
<pre>Web Inspector: Timelines UI redesign: remove navigation sidebar
https://bugs.webkit.org/show_bug.cgi?id=153036
<rdar://problem/24195627>
Reviewed by Timothy Hatcher.
Removed TimelineView methods used by the sidebar to setup the content tree
outline and handle tree element events, which are no longer used. Tree elements
are no longer created by TimelineViews as records are processed.
* UserInterface/Main.html:
Removed files.
* UserInterface/Views/LayoutTimelineView.js:
(WebInspector.LayoutTimelineView):
Removed tree outline event listeners and data grid parameter.
(WebInspector.LayoutTimelineView.prototype._processPendingRecords):
(WebInspector.LayoutTimelineView.prototype._dataGridFiltersDidChange):
(WebInspector.LayoutTimelineView.prototype._hoveredOrSelectedRecord):
Get record from data grid node instead of tree element.
(WebInspector.LayoutTimelineView.prototype.get navigationSidebarTreeOutlineLabel): Deleted.
(WebInspector.LayoutTimelineView.prototype._mouseOverTreeOutline): Deleted.
(WebInspector.LayoutTimelineView.prototype._mouseLeaveTreeOutline): Deleted.
No longer needed, highlighting performed by data grid event handlers.
* UserInterface/Views/MemoryTimelineView.js:
(WebInspector.MemoryTimelineView.prototype.get navigationSidebarTreeOutlineLabel): Deleted.
No longer needed.
* UserInterface/Views/NavigationSidebarPanel.js:
(WebInspector.NavigationSidebarPanel.prototype._updateFilter): Deleted.
Removed hack which was specific to TimelineSidebarPanel.
* UserInterface/Views/NetworkTimelineView.js:
(WebInspector.NetworkTimelineView):
Removed sidebar styles and tree outline data grid parameter.
(WebInspector.NetworkTimelineView.prototype._processPendingRecords):
(WebInspector.NetworkTimelineView.prototype._dataGridFiltersDidChange):
(WebInspector.NetworkTimelineView.prototype.get navigationSidebarTreeOutlineLabel): Deleted.
(WebInspector.NetworkTimelineView.prototype.treeElementSelected): Deleted.
No longer needed.
* UserInterface/Views/OverviewTimelineView.js:
(WebInspector.OverviewTimelineView):
(WebInspector.OverviewTimelineView.prototype.get selectionPathComponents):
(WebInspector.OverviewTimelineView.prototype.dataGridNodePathComponentSelected):
Create path components from the grid selection. This should have been
included in https://webkit.org/b/154954.
(WebInspector.OverviewTimelineView.prototype._compareDataGridNodesByStartTime.getStartTime):
(WebInspector.OverviewTimelineView.prototype._compareDataGridNodesByStartTime):
(WebInspector.OverviewTimelineView.prototype._insertDataGridNode):
(WebInspector.OverviewTimelineView.prototype._addResourceToDataGridIfNeeded):
(WebInspector.OverviewTimelineView.prototype._addSourceCodeTimeline):
Refactored to accept grid nodes instead of tree elements.
(WebInspector.OverviewTimelineView.prototype._processPendingRepresentedObjects):
(WebInspector.OverviewTimelineView.prototype.get navigationSidebarTreeOutlineLabel): Deleted.
(WebInspector.OverviewTimelineView.prototype.shown):
(WebInspector.OverviewTimelineView.prototype.treeElementPathComponentSelected): Deleted.
(WebInspector.OverviewTimelineView.prototype._compareTreeElementsByDetails): Deleted.
Not used anywhere.
(WebInspector.OverviewTimelineView.prototype._compareTreeElementsByStartTime.getStartTime): Deleted.
(WebInspector.OverviewTimelineView.prototype._compareTreeElementsByStartTime): Deleted.
(WebInspector.OverviewTimelineView.prototype._insertTreeElement): Deleted.
(WebInspector.OverviewTimelineView.prototype._addResourceToTreeIfNeeded): Deleted.
Reimplemented as _compareDataGridNodesByStartTime, _insertDataGridNode and _addResourceToDataGridIfNeeded.
* UserInterface/Views/RenderingFrameTimelineView.js:
(WebInspector.RenderingFrameTimelineView):
Removed sidebar styles and tree outline data grid parameter.
(WebInspector.RenderingFrameTimelineView.prototype.get selectionPathComponents):
(WebInspector.RenderingFrameTimelineView.prototype.dataGridNodePathComponentSelected):
Create path components from the grid selection. This should have been
included in https://webkit.org/b/154954.
(WebInspector.RenderingFrameTimelineView.prototype._processPendingRecords):
(WebInspector.RenderingFrameTimelineView.prototype._scopeBarSelectionDidChange):
(WebInspector.RenderingFrameTimelineView.prototype.get navigationSidebarTreeOutlineLabel): Deleted.
(WebInspector.RenderingFrameTimelineView.prototype.treeElementDeselected): Deleted.
(WebInspector.RenderingFrameTimelineView.prototype.treeElementSelected): Deleted.
(WebInspector.RenderingFrameTimelineView.prototype.treeElementPathComponentSelected): Deleted.
* UserInterface/Views/ScriptClusterTimelineView.js:
(WebInspector.ScriptClusterTimelineView):
Don't hold reference to extraArguments, just pass to subviews.
* UserInterface/Views/ScriptDetailsTimelineView.js:
(WebInspector.ScriptDetailsTimelineView):
Removed sidebar styles and tree outline data grid parameter.
(WebInspector.ScriptDetailsTimelineView.prototype._processPendingRecords):
(WebInspector.ScriptDetailsTimelineView.prototype._dataGridFiltersDidChange):
(WebInspector.ScriptDetailsTimelineView.prototype.get navigationSidebarTreeOutlineLabel): Deleted.
(WebInspector.ScriptDetailsTimelineView.prototype.treeElementSelected): Deleted.
(WebInspector.ScriptDetailsTimelineView.prototype.dataGridNodeForTreeElement): Deleted.
(WebInspector.ScriptDetailsTimelineView.prototype.populateProfileNodeTreeElement): Deleted.
* UserInterface/Views/TimelineDataGrid.js:
(WebInspector.TimelineDataGrid.prototype.addRowInSortOrder):
Fixed failure when treeElement and parentTreeElementOrDataGridNode are both null.
* UserInterface/Views/TimelineRecordingContentView.js:
(WebInspector.TimelineRecordingContentView):
Removed extraArguments and sidebar panel references.
(WebInspector.TimelineRecordingContentView.prototype.contentBrowserTreeElementForRepresentedObject):
Use icon style from the tab, instead of the sidebar.
(WebInspector.TimelineRecordingContentView.prototype._currentContentViewDidChange):
Removed updates to the sidebar.
(WebInspector.TimelineRecordingContentView.prototype._pathComponentSelected):
(WebInspector.TimelineRecordingContentView.prototype._updateTimes):
(WebInspector.TimelineRecordingContentView.prototype._instrumentAdded):
Removed sidebar reference when creating new TimelineViews.
(WebInspector.TimelineRecordingContentView.prototype._timeRangeSelectionChanged):
* UserInterface/Views/TimelineSidebarPanel.css: Removed.
* UserInterface/Views/TimelineTabContentView.js:
(WebInspector.TimelineTabContentView):
Removed hidden sidebar FIXME.
(WebInspector.TimelineTabContentView.prototype._addRecording):
New location for sidebar style class constant StopwatchIconStyleClass.
* UserInterface/Views/TimelineView.js:
(WebInspector.TimelineView):
(WebInspector.TimelineView.prototype.get navigationItems): Deleted.
(WebInspector.TimelineView.prototype.get navigationSidebarTreeOutline): Deleted.
(WebInspector.TimelineView.prototype.get navigationSidebarTreeOutlineLabel): Deleted.
(WebInspector.TimelineView.prototype.get timelineSidebarPanel): Deleted.
(WebInspector.TimelineView.prototype.treeElementPathComponentSelected): Deleted.
(WebInspector.TimelineView.prototype.treeElementDeselected): Deleted.
(WebInspector.TimelineView.prototype.treeElementSelected): Deleted.
(WebInspector.TimelineView.prototype._treeSelectionDidChange): Deleted.
Sidebar logic for panel and content tree outline removed.</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebInspectorUIChangeLog">trunk/Source/WebInspectorUI/ChangeLog</a></li>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceMainhtml">trunk/Source/WebInspectorUI/UserInterface/Main.html</a></li>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceViewsLayoutTimelineViewjs">trunk/Source/WebInspectorUI/UserInterface/Views/LayoutTimelineView.js</a></li>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceViewsMemoryTimelineViewjs">trunk/Source/WebInspectorUI/UserInterface/Views/MemoryTimelineView.js</a></li>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceViewsNavigationSidebarPaneljs">trunk/Source/WebInspectorUI/UserInterface/Views/NavigationSidebarPanel.js</a></li>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceViewsNetworkTimelineViewjs">trunk/Source/WebInspectorUI/UserInterface/Views/NetworkTimelineView.js</a></li>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceViewsOverviewTimelineViewjs">trunk/Source/WebInspectorUI/UserInterface/Views/OverviewTimelineView.js</a></li>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceViewsRenderingFrameTimelineViewjs">trunk/Source/WebInspectorUI/UserInterface/Views/RenderingFrameTimelineView.js</a></li>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceViewsScriptClusterTimelineViewjs">trunk/Source/WebInspectorUI/UserInterface/Views/ScriptClusterTimelineView.js</a></li>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceViewsScriptDetailsTimelineViewjs">trunk/Source/WebInspectorUI/UserInterface/Views/ScriptDetailsTimelineView.js</a></li>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceViewsTimelineDataGridjs">trunk/Source/WebInspectorUI/UserInterface/Views/TimelineDataGrid.js</a></li>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceViewsTimelineRecordingContentViewjs">trunk/Source/WebInspectorUI/UserInterface/Views/TimelineRecordingContentView.js</a></li>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceViewsTimelineTabContentViewjs">trunk/Source/WebInspectorUI/UserInterface/Views/TimelineTabContentView.js</a></li>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceViewsTimelineViewjs">trunk/Source/WebInspectorUI/UserInterface/Views/TimelineView.js</a></li>
</ul>
<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceViewsTimelineSidebarPanelcss">trunk/Source/WebInspectorUI/UserInterface/Views/TimelineSidebarPanel.css</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebInspectorUIChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebInspectorUI/ChangeLog (197973 => 197974)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/ChangeLog        2016-03-11 00:47:31 UTC (rev 197973)
+++ trunk/Source/WebInspectorUI/ChangeLog        2016-03-11 00:49:16 UTC (rev 197974)
</span><span class="lines">@@ -1,3 +1,141 @@
</span><ins>+2016-03-10 Matt Baker <mattbaker@apple.com>
+
+ Web Inspector: Timelines UI redesign: remove navigation sidebar
+ https://bugs.webkit.org/show_bug.cgi?id=153036
+ <rdar://problem/24195627>
+
+ Reviewed by Timothy Hatcher.
+
+ Removed TimelineView methods used by the sidebar to setup the content tree
+ outline and handle tree element events, which are no longer used. Tree elements
+ are no longer created by TimelineViews as records are processed.
+
+ * UserInterface/Main.html:
+ Removed files.
+
+ * UserInterface/Views/LayoutTimelineView.js:
+ (WebInspector.LayoutTimelineView):
+ Removed tree outline event listeners and data grid parameter.
+ (WebInspector.LayoutTimelineView.prototype._processPendingRecords):
+ (WebInspector.LayoutTimelineView.prototype._dataGridFiltersDidChange):
+ (WebInspector.LayoutTimelineView.prototype._hoveredOrSelectedRecord):
+ Get record from data grid node instead of tree element.
+ (WebInspector.LayoutTimelineView.prototype.get navigationSidebarTreeOutlineLabel): Deleted.
+ (WebInspector.LayoutTimelineView.prototype._mouseOverTreeOutline): Deleted.
+ (WebInspector.LayoutTimelineView.prototype._mouseLeaveTreeOutline): Deleted.
+ No longer needed, highlighting performed by data grid event handlers.
+
+ * UserInterface/Views/MemoryTimelineView.js:
+ (WebInspector.MemoryTimelineView.prototype.get navigationSidebarTreeOutlineLabel): Deleted.
+ No longer needed.
+
+ * UserInterface/Views/NavigationSidebarPanel.js:
+ (WebInspector.NavigationSidebarPanel.prototype._updateFilter): Deleted.
+ Removed hack which was specific to TimelineSidebarPanel.
+
+ * UserInterface/Views/NetworkTimelineView.js:
+ (WebInspector.NetworkTimelineView):
+ Removed sidebar styles and tree outline data grid parameter.
+ (WebInspector.NetworkTimelineView.prototype._processPendingRecords):
+ (WebInspector.NetworkTimelineView.prototype._dataGridFiltersDidChange):
+ (WebInspector.NetworkTimelineView.prototype.get navigationSidebarTreeOutlineLabel): Deleted.
+ (WebInspector.NetworkTimelineView.prototype.treeElementSelected): Deleted.
+ No longer needed.
+
+ * UserInterface/Views/OverviewTimelineView.js:
+ (WebInspector.OverviewTimelineView):
+ (WebInspector.OverviewTimelineView.prototype.get selectionPathComponents):
+ (WebInspector.OverviewTimelineView.prototype.dataGridNodePathComponentSelected):
+ Create path components from the grid selection. This should have been
+ included in https://webkit.org/b/154954.
+
+ (WebInspector.OverviewTimelineView.prototype._compareDataGridNodesByStartTime.getStartTime):
+ (WebInspector.OverviewTimelineView.prototype._compareDataGridNodesByStartTime):
+ (WebInspector.OverviewTimelineView.prototype._insertDataGridNode):
+ (WebInspector.OverviewTimelineView.prototype._addResourceToDataGridIfNeeded):
+ (WebInspector.OverviewTimelineView.prototype._addSourceCodeTimeline):
+ Refactored to accept grid nodes instead of tree elements.
+
+ (WebInspector.OverviewTimelineView.prototype._processPendingRepresentedObjects):
+ (WebInspector.OverviewTimelineView.prototype.get navigationSidebarTreeOutlineLabel): Deleted.
+ (WebInspector.OverviewTimelineView.prototype.shown):
+ (WebInspector.OverviewTimelineView.prototype.treeElementPathComponentSelected): Deleted.
+ (WebInspector.OverviewTimelineView.prototype._compareTreeElementsByDetails): Deleted.
+ Not used anywhere.
+
+ (WebInspector.OverviewTimelineView.prototype._compareTreeElementsByStartTime.getStartTime): Deleted.
+ (WebInspector.OverviewTimelineView.prototype._compareTreeElementsByStartTime): Deleted.
+ (WebInspector.OverviewTimelineView.prototype._insertTreeElement): Deleted.
+ (WebInspector.OverviewTimelineView.prototype._addResourceToTreeIfNeeded): Deleted.
+ Reimplemented as _compareDataGridNodesByStartTime, _insertDataGridNode and _addResourceToDataGridIfNeeded.
+
+ * UserInterface/Views/RenderingFrameTimelineView.js:
+ (WebInspector.RenderingFrameTimelineView):
+ Removed sidebar styles and tree outline data grid parameter.
+
+ (WebInspector.RenderingFrameTimelineView.prototype.get selectionPathComponents):
+ (WebInspector.RenderingFrameTimelineView.prototype.dataGridNodePathComponentSelected):
+ Create path components from the grid selection. This should have been
+ included in https://webkit.org/b/154954.
+
+ (WebInspector.RenderingFrameTimelineView.prototype._processPendingRecords):
+ (WebInspector.RenderingFrameTimelineView.prototype._scopeBarSelectionDidChange):
+ (WebInspector.RenderingFrameTimelineView.prototype.get navigationSidebarTreeOutlineLabel): Deleted.
+ (WebInspector.RenderingFrameTimelineView.prototype.treeElementDeselected): Deleted.
+ (WebInspector.RenderingFrameTimelineView.prototype.treeElementSelected): Deleted.
+ (WebInspector.RenderingFrameTimelineView.prototype.treeElementPathComponentSelected): Deleted.
+
+ * UserInterface/Views/ScriptClusterTimelineView.js:
+ (WebInspector.ScriptClusterTimelineView):
+ Don't hold reference to extraArguments, just pass to subviews.
+
+ * UserInterface/Views/ScriptDetailsTimelineView.js:
+ (WebInspector.ScriptDetailsTimelineView):
+ Removed sidebar styles and tree outline data grid parameter.
+ (WebInspector.ScriptDetailsTimelineView.prototype._processPendingRecords):
+ (WebInspector.ScriptDetailsTimelineView.prototype._dataGridFiltersDidChange):
+ (WebInspector.ScriptDetailsTimelineView.prototype.get navigationSidebarTreeOutlineLabel): Deleted.
+ (WebInspector.ScriptDetailsTimelineView.prototype.treeElementSelected): Deleted.
+ (WebInspector.ScriptDetailsTimelineView.prototype.dataGridNodeForTreeElement): Deleted.
+ (WebInspector.ScriptDetailsTimelineView.prototype.populateProfileNodeTreeElement): Deleted.
+
+ * UserInterface/Views/TimelineDataGrid.js:
+ (WebInspector.TimelineDataGrid.prototype.addRowInSortOrder):
+ Fixed failure when treeElement and parentTreeElementOrDataGridNode are both null.
+
+ * UserInterface/Views/TimelineRecordingContentView.js:
+ (WebInspector.TimelineRecordingContentView):
+ Removed extraArguments and sidebar panel references.
+ (WebInspector.TimelineRecordingContentView.prototype.contentBrowserTreeElementForRepresentedObject):
+ Use icon style from the tab, instead of the sidebar.
+ (WebInspector.TimelineRecordingContentView.prototype._currentContentViewDidChange):
+ Removed updates to the sidebar.
+ (WebInspector.TimelineRecordingContentView.prototype._pathComponentSelected):
+ (WebInspector.TimelineRecordingContentView.prototype._updateTimes):
+ (WebInspector.TimelineRecordingContentView.prototype._instrumentAdded):
+ Removed sidebar reference when creating new TimelineViews.
+ (WebInspector.TimelineRecordingContentView.prototype._timeRangeSelectionChanged):
+
+ * UserInterface/Views/TimelineSidebarPanel.css: Removed.
+
+ * UserInterface/Views/TimelineTabContentView.js:
+ (WebInspector.TimelineTabContentView):
+ Removed hidden sidebar FIXME.
+ (WebInspector.TimelineTabContentView.prototype._addRecording):
+ New location for sidebar style class constant StopwatchIconStyleClass.
+
+ * UserInterface/Views/TimelineView.js:
+ (WebInspector.TimelineView):
+ (WebInspector.TimelineView.prototype.get navigationItems): Deleted.
+ (WebInspector.TimelineView.prototype.get navigationSidebarTreeOutline): Deleted.
+ (WebInspector.TimelineView.prototype.get navigationSidebarTreeOutlineLabel): Deleted.
+ (WebInspector.TimelineView.prototype.get timelineSidebarPanel): Deleted.
+ (WebInspector.TimelineView.prototype.treeElementPathComponentSelected): Deleted.
+ (WebInspector.TimelineView.prototype.treeElementDeselected): Deleted.
+ (WebInspector.TimelineView.prototype.treeElementSelected): Deleted.
+ (WebInspector.TimelineView.prototype._treeSelectionDidChange): Deleted.
+ Sidebar logic for panel and content tree outline removed.
+
</ins><span class="cx"> 2016-03-10 Joseph Pecoraro <pecoraro@apple.com>
</span><span class="cx">
</span><span class="cx"> Web Inspector: Enable Memory Timelines by default if supported
</span></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceMainhtml"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebInspectorUI/UserInterface/Main.html (197973 => 197974)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Main.html        2016-03-11 00:47:31 UTC (rev 197973)
+++ trunk/Source/WebInspectorUI/UserInterface/Main.html        2016-03-11 00:49:16 UTC (rev 197974)
</span><span class="lines">@@ -169,7 +169,6 @@
</span><span class="cx"> <link rel="stylesheet" href="Views/TimelineRecordFrame.css">
</span><span class="cx"> <link rel="stylesheet" href="Views/TimelineRecordingContentView.css">
</span><span class="cx"> <link rel="stylesheet" href="Views/TimelineRuler.css">
</span><del>- <link rel="stylesheet" href="Views/TimelineSidebarPanel.css">
</del><span class="cx"> <link rel="stylesheet" href="Views/TimelineTabContentView.css">
</span><span class="cx"> <link rel="stylesheet" href="Views/TimelineView.css">
</span><span class="cx"> <link rel="stylesheet" href="Views/Toolbar.css">
</span><span class="lines">@@ -622,7 +621,6 @@
</span><span class="cx"> <script src="Views/TimelineRecordFrame.js"></script>
</span><span class="cx"> <script src="Views/TimelineRecordingContentView.js"></script>
</span><span class="cx"> <script src="Views/TimelineRuler.js"></script>
</span><del>- <script src="Views/TimelineSidebarPanel.js"></script>
</del><span class="cx"> <script src="Views/ToggleButtonNavigationItem.js"></script>
</span><span class="cx"> <script src="Views/ToggleControlToolbarItem.js"></script>
</span><span class="cx"> <script src="Views/Toolbar.js"></script>
</span></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceViewsLayoutTimelineViewjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebInspectorUI/UserInterface/Views/LayoutTimelineView.js (197973 => 197974)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Views/LayoutTimelineView.js        2016-03-11 00:47:31 UTC (rev 197973)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/LayoutTimelineView.js        2016-03-11 00:49:16 UTC (rev 197974)
</span><span class="lines">@@ -31,8 +31,6 @@
</span><span class="cx">
</span><span class="cx"> console.assert(timeline.type === WebInspector.TimelineRecord.Type.Layout, timeline);
</span><span class="cx">
</span><del>- this.navigationSidebarTreeOutline.element.classList.add("layout");
-
</del><span class="cx"> let columns = {name: {}, location: {}, width: {}, height: {}, startTime: {}, totalTime: {}};
</span><span class="cx">
</span><span class="cx"> columns.name.title = WebInspector.UIString("Type");
</span><span class="lines">@@ -70,7 +68,7 @@
</span><span class="cx"> for (var column in columns)
</span><span class="cx"> columns[column].sortable = true;
</span><span class="cx">
</span><del>- this._dataGrid = new WebInspector.LayoutTimelineDataGrid(this.navigationSidebarTreeOutline, columns);
</del><ins>+ this._dataGrid = new WebInspector.LayoutTimelineDataGrid(null, columns);
</ins><span class="cx"> this._dataGrid.addEventListener(WebInspector.TimelineDataGrid.Event.FiltersDidChange, this._dataGridFiltersDidChange, this);
</span><span class="cx"> this._dataGrid.addEventListener(WebInspector.DataGrid.Event.SelectedNodeChanged, this._dataGridNodeSelected, this);
</span><span class="cx">
</span><span class="lines">@@ -84,8 +82,6 @@
</span><span class="cx">
</span><span class="cx"> this._dataGrid.element.addEventListener("mouseover", this._mouseOverDataGrid.bind(this));
</span><span class="cx"> this._dataGrid.element.addEventListener("mouseleave", this._mouseLeaveDataGrid.bind(this));
</span><del>- this.navigationSidebarTreeOutline.element.addEventListener("mouseover", this._mouseOverTreeOutline.bind(this));
- this.navigationSidebarTreeOutline.element.addEventListener("mouseleave", this._mouseLeaveTreeOutline.bind(this));
</del><span class="cx">
</span><span class="cx"> this.element.classList.add("layout");
</span><span class="cx"> this.addSubview(this._dataGrid);
</span><span class="lines">@@ -97,11 +93,6 @@
</span><span class="cx">
</span><span class="cx"> // Public
</span><span class="cx">
</span><del>- get navigationSidebarTreeOutlineLabel()
- {
- return WebInspector.UIString("Records");
- }
-
</del><span class="cx"> get selectionPathComponents()
</span><span class="cx"> {
</span><span class="cx"> let dataGridNode = this._dataGrid.selectedNode;
</span><span class="lines">@@ -213,29 +204,27 @@
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> for (var layoutTimelineRecord of this._pendingRecords) {
</span><del>- var treeElement = new WebInspector.TimelineRecordTreeElement(layoutTimelineRecord, WebInspector.SourceCodeLocation.NameStyle.Short);
- var dataGridNode = new WebInspector.LayoutTimelineDataGridNode(layoutTimelineRecord, this.zeroTime);
</del><ins>+ let dataGridNode = new WebInspector.LayoutTimelineDataGridNode(layoutTimelineRecord, this.zeroTime);
</ins><span class="cx">
</span><del>- this._dataGrid.addRowInSortOrder(treeElement, dataGridNode);
</del><ins>+ this._dataGrid.addRowInSortOrder(null, dataGridNode);
</ins><span class="cx">
</span><del>- var stack = [{children: layoutTimelineRecord.children, parentTreeElement: treeElement, index: 0}];
</del><ins>+ let stack = [{children: layoutTimelineRecord.children, parentDataGridNode: dataGridNode, index: 0}];
</ins><span class="cx"> while (stack.length) {
</span><del>- var entry = stack.lastValue;
</del><ins>+ let entry = stack.lastValue;
</ins><span class="cx"> if (entry.index >= entry.children.length) {
</span><span class="cx"> stack.pop();
</span><span class="cx"> continue;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- var childRecord = entry.children[entry.index];
</del><ins>+ let childRecord = entry.children[entry.index];
</ins><span class="cx"> console.assert(childRecord.type === WebInspector.TimelineRecord.Type.Layout, childRecord);
</span><span class="cx">
</span><del>- var childTreeElement = new WebInspector.TimelineRecordTreeElement(childRecord, WebInspector.SourceCodeLocation.NameStyle.Short);
- var layoutDataGridNode = new WebInspector.LayoutTimelineDataGridNode(childRecord, this.zeroTime);
- console.assert(entry.parentTreeElement, "entry without parent!");
- this._dataGrid.addRowInSortOrder(childTreeElement, layoutDataGridNode, entry.parentTreeElement);
</del><ins>+ let childDataGridNode = new WebInspector.LayoutTimelineDataGridNode(childRecord, this.zeroTime);
+ console.assert(entry.parentDataGridNode, "entry without parent!");
+ this._dataGrid.addRowInSortOrder(null, childDataGridNode, entry.parentDataGridNode);
</ins><span class="cx">
</span><del>- if (childTreeElement && childRecord.children.length)
- stack.push({children: childRecord.children, parentTreeElement: childTreeElement, index: 0});
</del><ins>+ if (childDataGridNode && childRecord.children.length)
+ stack.push({children: childRecord.children, parentDataGridNode: childDataGridNode, index: 0});
</ins><span class="cx"> ++entry.index;
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -259,7 +248,7 @@
</span><span class="cx">
</span><span class="cx"> _dataGridFiltersDidChange(event)
</span><span class="cx"> {
</span><del>- this.timelineSidebarPanel.updateFilter();
</del><ins>+ // FIXME: <https://webkit.org/b/154924> Web Inspector: hook up grid row filtering in the new Timelines UI
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> _dataGridNodeSelected(event)
</span><span class="lines">@@ -317,15 +306,9 @@
</span><span class="cx"> if (this._hoveredDataGridNode)
</span><span class="cx"> return this._hoveredDataGridNode.record;
</span><span class="cx">
</span><del>- if (this._hoveredTreeElement)
- return this._hoveredTreeElement.record;
</del><ins>+ if (this._dataGrid.selectedNode && this._dataGrid.selectedNode.revealed)
+ return this._dataGrid.selectedNode.record;
</ins><span class="cx">
</span><del>- if (this._dataGrid.selectedNode) {
- var treeElement = this._dataGrid.treeElementForDataGridNode(this._dataGrid.selectedNode);
- if (treeElement.revealed())
- return this._dataGrid.selectedNode.record;
- }
-
</del><span class="cx"> return null;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -344,20 +327,4 @@
</span><span class="cx"> this._hoveredDataGridNode = null;
</span><span class="cx"> this._updateHighlight();
</span><span class="cx"> }
</span><del>-
- _mouseOverTreeOutline(event)
- {
- var hoveredTreeElement = this.navigationSidebarTreeOutline.treeElementFromNode(event.target);
- if (!hoveredTreeElement)
- return;
-
- this._hoveredTreeElement = hoveredTreeElement;
- this._updateHighlight();
- }
-
- _mouseLeaveTreeOutline(event)
- {
- this._hoveredTreeElement = null;
- this._updateHighlight();
- }
</del><span class="cx"> };
</span></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceViewsMemoryTimelineViewjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebInspectorUI/UserInterface/Views/MemoryTimelineView.js (197973 => 197974)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Views/MemoryTimelineView.js        2016-03-11 00:47:31 UTC (rev 197973)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/MemoryTimelineView.js        2016-03-11 00:49:16 UTC (rev 197974)
</span><span class="lines">@@ -111,11 +111,6 @@
</span><span class="cx">
</span><span class="cx"> // Public
</span><span class="cx">
</span><del>- get navigationSidebarTreeOutlineLabel()
- {
- return WebInspector.UIString("Records");
- }
-
</del><span class="cx"> shown()
</span><span class="cx"> {
</span><span class="cx"> super.shown();
</span></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceViewsNavigationSidebarPaneljs"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebInspectorUI/UserInterface/Views/NavigationSidebarPanel.js (197973 => 197974)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Views/NavigationSidebarPanel.js        2016-03-11 00:47:31 UTC (rev 197973)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/NavigationSidebarPanel.js        2016-03-11 00:49:16 UTC (rev 197974)
</span><span class="lines">@@ -609,14 +609,6 @@
</span><span class="cx">
</span><span class="cx"> this._checkForEmptyFilterResults();
</span><span class="cx"> this._updateContentOverflowShadowVisibility();
</span><del>-
- // Filter may have hidden the selected resource in the timeline view, which should now notify its listeners.
- // FIXME: This is a layering violation. This should at least be in TimelineSidebarPanel.
- if (selectedTreeElement && selectedTreeElement.hidden !== selectionWasHidden) {
- var currentContentView = this.contentBrowser.currentContentView;
- if (currentContentView instanceof WebInspector.TimelineRecordingContentView && typeof currentContentView.currentTimelineView.filterUpdated === "function")
- currentContentView.currentTimelineView.filterUpdated();
- }
</del><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> _treeElementAddedOrChanged(event)
</span></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceViewsNetworkTimelineViewjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebInspectorUI/UserInterface/Views/NetworkTimelineView.js (197973 => 197974)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Views/NetworkTimelineView.js        2016-03-11 00:47:31 UTC (rev 197973)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/NetworkTimelineView.js        2016-03-11 00:49:16 UTC (rev 197974)
</span><span class="lines">@@ -31,9 +31,6 @@
</span><span class="cx">
</span><span class="cx"> console.assert(timeline.type === WebInspector.TimelineRecord.Type.Network);
</span><span class="cx">
</span><del>- this.navigationSidebarTreeOutline.disclosureButtons = false;
- this.navigationSidebarTreeOutline.element.classList.add("network");
-
</del><span class="cx"> let columns = {name: {}, domain: {}, type: {}, method: {}, scheme: {}, statusCode: {}, cached: {}, size: {}, transferSize: {}, requestSent: {}, latency: {}, duration: {}};
</span><span class="cx">
</span><span class="cx"> columns.name.title = WebInspector.UIString("Name");
</span><span class="lines">@@ -90,7 +87,7 @@
</span><span class="cx"> for (var column in columns)
</span><span class="cx"> columns[column].sortable = true;
</span><span class="cx">
</span><del>- this._dataGrid = new WebInspector.TimelineDataGrid(this.navigationSidebarTreeOutline, columns);
</del><ins>+ this._dataGrid = new WebInspector.TimelineDataGrid(null, columns);
</ins><span class="cx"> this._dataGrid.addEventListener(WebInspector.TimelineDataGrid.Event.FiltersDidChange, this._dataGridFiltersDidChange, this);
</span><span class="cx"> this._dataGrid.addEventListener(WebInspector.DataGrid.Event.SelectedNodeChanged, this._dataGridNodeSelected, this);
</span><span class="cx"> this._dataGrid.sortColumnIdentifierSetting = new WebInspector.Setting("network-timeline-view-sort", "requestSent");
</span><span class="lines">@@ -102,15 +99,11 @@
</span><span class="cx"> timeline.addEventListener(WebInspector.Timeline.Event.RecordAdded, this._networkTimelineRecordAdded, this);
</span><span class="cx">
</span><span class="cx"> this._pendingRecords = [];
</span><ins>+ this._resourceDataGridNodeMap = new Map;
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // Public
</span><span class="cx">
</span><del>- get navigationSidebarTreeOutlineLabel()
- {
- return WebInspector.UIString("Resources");
- }
-
</del><span class="cx"> get selectionPathComponents()
</span><span class="cx"> {
</span><span class="cx"> if (!this._dataGrid.selectedNode || this._dataGrid.selectedNode.hidden)
</span><span class="lines">@@ -189,14 +182,6 @@
</span><span class="cx"> dataGridNode.revealAndSelect();
</span><span class="cx"> }
</span><span class="cx">
</span><del>- treeElementSelected(treeElement, selectedByUser)
- {
- if (this._dataGrid.shouldIgnoreSelectionEvent())
- return;
-
- super.treeElementSelected(treeElement, selectedByUser);
- }
-
</del><span class="cx"> layout()
</span><span class="cx"> {
</span><span class="cx"> this._processPendingRecords();
</span><span class="lines">@@ -209,16 +194,17 @@
</span><span class="cx"> if (!this._pendingRecords.length)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- for (var resourceTimelineRecord of this._pendingRecords) {
- // Skip the record if it already exists in the tree.
- var treeElement = this.navigationSidebarTreeOutline.findTreeElement(resourceTimelineRecord.resource);
- if (treeElement)
</del><ins>+ for (let resourceTimelineRecord of this._pendingRecords) {
+ // Skip the record if it already exists in the grid.
+ // FIXME: replace with this._dataGrid.findDataGridNode(resourceTimelineRecord.resource) once <https://webkit.org/b/155305> is fixed.
+ let dataGridNode = this._resourceDataGridNodeMap.get(resourceTimelineRecord.resource);
+ if (dataGridNode)
</ins><span class="cx"> continue;
</span><span class="cx">
</span><del>- treeElement = new WebInspector.ResourceTreeElement(resourceTimelineRecord.resource);
- var dataGridNode = new WebInspector.ResourceTimelineDataGridNode(resourceTimelineRecord, false, this);
</del><ins>+ dataGridNode = new WebInspector.ResourceTimelineDataGridNode(resourceTimelineRecord, false, this);
+ this._resourceDataGridNodeMap.set(resourceTimelineRecord.resource, dataGridNode);
</ins><span class="cx">
</span><del>- this._dataGrid.addRowInSortOrder(treeElement, dataGridNode);
</del><ins>+ this._dataGrid.addRowInSortOrder(null, dataGridNode);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> this._pendingRecords = [];
</span><span class="lines">@@ -236,7 +222,7 @@
</span><span class="cx">
</span><span class="cx"> _dataGridFiltersDidChange(event)
</span><span class="cx"> {
</span><del>- this.timelineSidebarPanel.updateFilter();
</del><ins>+ // FIXME: <https://webkit.org/b/154924> Web Inspector: hook up grid row filtering in the new Timelines UI
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> _dataGridNodeSelected(event)
</span></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceViewsOverviewTimelineViewjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebInspectorUI/UserInterface/Views/OverviewTimelineView.js (197973 => 197974)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Views/OverviewTimelineView.js        2016-03-11 00:47:31 UTC (rev 197973)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/OverviewTimelineView.js        2016-03-11 00:49:16 UTC (rev 197974)
</span><span class="lines">@@ -47,8 +47,6 @@
</span><span class="cx"> this._dataGrid = new WebInspector.DataGrid(columns);
</span><span class="cx"> this._dataGrid.addEventListener(WebInspector.DataGrid.Event.SelectedNodeChanged, this._dataGridNodeSelected, this);
</span><span class="cx">
</span><del>- this._treeOutlineDataGridSynchronizer = new WebInspector.TreeOutlineDataGridSynchronizer(this.navigationSidebarTreeOutline, this._dataGrid);
-
</del><span class="cx"> this._currentTimeMarker = new WebInspector.TimelineMarker(0, WebInspector.TimelineMarker.Type.CurrentTime);
</span><span class="cx"> this._timelineRuler.addMarker(this._currentTimeMarker);
</span><span class="cx">
</span><span class="lines">@@ -63,15 +61,11 @@
</span><span class="cx"> recording.addEventListener(WebInspector.TimelineRecording.Event.Reset, this._recordingReset, this);
</span><span class="cx">
</span><span class="cx"> this._pendingRepresentedObjects = [];
</span><ins>+ this._resourceDataGridNodeMap = new Map;
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // Public
</span><span class="cx">
</span><del>- get navigationSidebarTreeOutlineLabel()
- {
- return WebInspector.UIString("Timeline Events");
- }
-
</del><span class="cx"> get secondsPerPixel()
</span><span class="cx"> {
</span><span class="cx"> return this._timelineRuler.secondsPerPixel;
</span><span class="lines">@@ -86,7 +80,6 @@
</span><span class="cx"> {
</span><span class="cx"> super.shown();
</span><span class="cx">
</span><del>- this._treeOutlineDataGridSynchronizer.synchronize();
</del><span class="cx"> this._timelineRuler.updateLayout(WebInspector.View.LayoutReason.Resize);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -98,23 +91,19 @@
</span><span class="cx">
</span><span class="cx"> get selectionPathComponents()
</span><span class="cx"> {
</span><del>- var dataGridNode = this._dataGrid.selectedNode;
- if (!dataGridNode)
</del><ins>+ let dataGridNode = this._dataGrid.selectedNode;
+ if (!dataGridNode || dataGridNode.hidden)
</ins><span class="cx"> return null;
</span><span class="cx">
</span><del>- var pathComponents = [];
</del><ins>+ let pathComponents = [];
</ins><span class="cx">
</span><span class="cx"> while (dataGridNode && !dataGridNode.root) {
</span><del>- var treeElement = this._treeOutlineDataGridSynchronizer.treeElementForDataGridNode(dataGridNode);
- console.assert(treeElement);
- if (!treeElement)
- break;
-
- if (treeElement.hidden)
</del><ins>+ console.assert(dataGridNode instanceof WebInspector.TimelineDataGridNode);
+ if (dataGridNode.hidden)
</ins><span class="cx"> return null;
</span><span class="cx">
</span><del>- var pathComponent = new WebInspector.GeneralTreeElementPathComponent(treeElement);
- pathComponent.addEventListener(WebInspector.HierarchicalPathComponent.Event.SiblingWasSelected, this.treeElementPathComponentSelected, this);
</del><ins>+ let pathComponent = new WebInspector.TimelineDataGridNodePathComponent(dataGridNode);
+ pathComponent.addEventListener(WebInspector.HierarchicalPathComponent.Event.SiblingWasSelected, this.dataGridNodePathComponentSelected, this);
</ins><span class="cx"> pathComponents.unshift(pathComponent);
</span><span class="cx"> dataGridNode = dataGridNode.parent;
</span><span class="cx"> }
</span><span class="lines">@@ -131,11 +120,11 @@
</span><span class="cx">
</span><span class="cx"> // Protected
</span><span class="cx">
</span><del>- treeElementPathComponentSelected(event)
</del><ins>+ dataGridNodePathComponentSelected(event)
</ins><span class="cx"> {
</span><del>- var dataGridNode = this._treeOutlineDataGridSynchronizer.dataGridNodeForTreeElement(event.data.pathComponent.generalTreeElement);
- if (!dataGridNode)
- return;
</del><ins>+ let dataGridNode = event.data.pathComponent.timelineDataGridNode;
+ console.assert(dataGridNode.dataGrid === this._dataGrid);
+
</ins><span class="cx"> dataGridNode.revealAndSelect();
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -193,127 +182,92 @@
</span><span class="cx">
</span><span class="cx"> // Private
</span><span class="cx">
</span><del>- _compareTreeElementsByDetails(a, b)
</del><ins>+ _compareDataGridNodesByStartTime(a, b)
</ins><span class="cx"> {
</span><del>- if (a instanceof WebInspector.SourceCodeTimelineTreeElement && b instanceof WebInspector.ResourceTreeElement)
- return -1;
-
- if (a instanceof WebInspector.ResourceTreeElement && b instanceof WebInspector.SourceCodeTimelineTreeElement)
- return 1;
-
- if (a instanceof WebInspector.SourceCodeTimelineTreeElement && b instanceof WebInspector.SourceCodeTimelineTreeElement) {
- var aTimeline = a.sourceCodeTimeline;
- var bTimeline = b.sourceCodeTimeline;
-
- if (!aTimeline.sourceCodeLocation && !bTimeline.sourceCodeLocation) {
- if (aTimeline.recordType !== bTimeline.recordType)
- return aTimeline.recordType.localeCompare(bTimeline.recordType);
-
- return a.mainTitle.localeCompare(b.mainTitle);
- }
-
- if (!aTimeline.sourceCodeLocation || !bTimeline.sourceCodeLocation)
- return !!aTimeline.sourceCodeLocation - !!bTimeline.sourceCodeLocation;
-
- if (aTimeline.sourceCodeLocation.lineNumber !== bTimeline.sourceCodeLocation.lineNumber)
- return aTimeline.sourceCodeLocation.lineNumber - bTimeline.sourceCodeLocation.lineNumber;
-
- return aTimeline.sourceCodeLocation.columnNumber - bTimeline.sourceCodeLocation.columnNumber;
- }
-
- // Fallback to comparing by start time for ResourceTreeElement or anything else.
- return this._compareTreeElementsByStartTime(a, b);
- }
-
- _compareTreeElementsByStartTime(a, b)
- {
- function getStartTime(treeElement)
</del><ins>+ function getStartTime(dataGridNode)
</ins><span class="cx"> {
</span><del>- if (treeElement instanceof WebInspector.ResourceTreeElement)
- return treeElement.resource.firstTimestamp;
- if (treeElement instanceof WebInspector.SourceCodeTimelineTreeElement)
- return treeElement.sourceCodeTimeline.startTime;
</del><ins>+ if (dataGridNode instanceof WebInspector.ResourceTimelineDataGridNode)
+ return dataGridNode.resource.firstTimestamp;
+ if (dataGridNode instanceof WebInspector.SourceCodeTimelineTimelineDataGridNode)
+ return dataGridNode.sourceCodeTimeline.startTime;
</ins><span class="cx">
</span><del>- console.error("Unknown tree element.");
</del><ins>+ console.error("Unknown data grid node.", dataGridNode);
</ins><span class="cx"> return 0;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- var result = getStartTime(a) - getStartTime(b);
</del><ins>+ let result = getStartTime(a) - getStartTime(b);
</ins><span class="cx"> if (result)
</span><span class="cx"> return result;
</span><span class="cx">
</span><span class="cx"> // Fallback to comparing titles.
</span><del>- return a.mainTitle.localeCompare(b.mainTitle);
</del><ins>+ return a.displayName().localeCompare(b.displayName());
</ins><span class="cx"> }
</span><span class="cx">
</span><del>- _insertTreeElement(treeElement, parentTreeElement)
</del><ins>+ _insertDataGridNode(dataGridNode, parentDataGridNode)
</ins><span class="cx"> {
</span><del>- console.assert(treeElement);
- console.assert(!treeElement.parent);
- console.assert(parentTreeElement);
</del><ins>+ console.assert(dataGridNode);
+ console.assert(!dataGridNode.parent);
</ins><span class="cx">
</span><del>- parentTreeElement.insertChild(treeElement, insertionIndexForObjectInListSortedByFunction(treeElement, parentTreeElement.children, this._compareTreeElementsByStartTime.bind(this)));
</del><ins>+ if (parentDataGridNode)
+ parentDataGridNode.insertChild(dataGridNode, insertionIndexForObjectInListSortedByFunction(dataGridNode, parentDataGridNode.children, this._compareDataGridNodesByStartTime.bind(this)));
+ else
+ this._dataGrid.appendChild(dataGridNode);
</ins><span class="cx"> }
</span><span class="cx">
</span><del>- _addResourceToTreeIfNeeded(resource)
</del><ins>+ _addResourceToDataGridIfNeeded(resource)
</ins><span class="cx"> {
</span><span class="cx"> console.assert(resource);
</span><span class="cx"> if (!resource)
</span><span class="cx"> return null;
</span><span class="cx">
</span><del>- var treeElement = this.navigationSidebarTreeOutline.findTreeElement(resource);
- if (treeElement)
- return treeElement;
</del><ins>+ // FIXME: replace with this._dataGrid.findDataGridNode(resource) once <https://webkit.org/b/155305> is fixed.
+ let dataGridNode = this._resourceDataGridNodeMap.get(resource);
+ if (dataGridNode)
+ return dataGridNode;
</ins><span class="cx">
</span><del>- var parentFrame = resource.parentFrame;
</del><ins>+ let parentFrame = resource.parentFrame;
</ins><span class="cx"> if (!parentFrame)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- var expandedByDefault = false;
</del><ins>+ let resourceTimelineRecord = this._networkTimeline ? this._networkTimeline.recordForResource(resource) : null;
+ if (!resourceTimelineRecord)
+ resourceTimelineRecord = new WebInspector.ResourceTimelineRecord(resource);
+
+ let resourceDataGridNode = new WebInspector.ResourceTimelineDataGridNode(resourceTimelineRecord, true, this);
+ this._resourceDataGridNodeMap.set(resource, resourceDataGridNode);
+
+ let expandedByDefault = false;
</ins><span class="cx"> if (parentFrame.mainResource === resource || parentFrame.provisionalMainResource === resource) {
</span><span class="cx"> parentFrame = parentFrame.parentFrame;
</span><span class="cx"> expandedByDefault = !parentFrame; // Main frame expands by default.
</span><span class="cx"> }
</span><span class="cx">
</span><del>- var resourceTreeElement = new WebInspector.ResourceTreeElement(resource);
</del><span class="cx"> if (expandedByDefault)
</span><del>- resourceTreeElement.expand();
</del><ins>+ resourceDataGridNode.expand();
</ins><span class="cx">
</span><del>- var resourceTimelineRecord = this._networkTimeline ? this._networkTimeline.recordForResource(resource) : null;
- if (!resourceTimelineRecord)
- resourceTimelineRecord = new WebInspector.ResourceTimelineRecord(resource);
-
- var resourceDataGridNode = new WebInspector.ResourceTimelineDataGridNode(resourceTimelineRecord, true, this);
- this._treeOutlineDataGridSynchronizer.associate(resourceTreeElement, resourceDataGridNode);
-
- var parentTreeElement = this.navigationSidebarTreeOutline;
</del><ins>+ let parentDataGridNode = null;
</ins><span class="cx"> if (parentFrame) {
</span><span class="cx"> // Find the parent main resource, adding it if needed, to append this resource as a child.
</span><del>- var parentResource = parentFrame.provisionalMainResource || parentFrame.mainResource;
</del><ins>+ let parentResource = parentFrame.provisionalMainResource || parentFrame.mainResource;
</ins><span class="cx">
</span><del>- parentTreeElement = this._addResourceToTreeIfNeeded(parentResource);
- console.assert(parentTreeElement);
- if (!parentTreeElement)
</del><ins>+ parentDataGridNode = this._addResourceToDataGridIfNeeded(parentResource);
+ console.assert(parentDataGridNode);
+ if (!parentDataGridNode)
</ins><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- this._insertTreeElement(resourceTreeElement, parentTreeElement);
</del><ins>+ this._insertDataGridNode(resourceDataGridNode, parentDataGridNode);
</ins><span class="cx">
</span><del>- return resourceTreeElement;
</del><ins>+ return resourceDataGridNode;
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> _addSourceCodeTimeline(sourceCodeTimeline)
</span><span class="cx"> {
</span><del>- var parentTreeElement = sourceCodeTimeline.sourceCodeLocation ? this._addResourceToTreeIfNeeded(sourceCodeTimeline.sourceCode) : this.navigationSidebarTreeOutline;
- console.assert(parentTreeElement);
- if (!parentTreeElement)
- return;
</del><ins>+ let parentDataGridNode = sourceCodeTimeline.sourceCodeLocation ? this._addResourceToDataGridIfNeeded(sourceCodeTimeline.sourceCode) : null;
+ let sourceCodeTimelineDataGridNode = new WebInspector.SourceCodeTimelineTimelineDataGridNode(sourceCodeTimeline, this);
+ this._resourceDataGridNodeMap.set(sourceCodeTimeline, sourceCodeTimelineDataGridNode);
</ins><span class="cx">
</span><del>- var sourceCodeTimelineTreeElement = new WebInspector.SourceCodeTimelineTreeElement(sourceCodeTimeline);
- var sourceCodeTimelineDataGridNode = new WebInspector.SourceCodeTimelineTimelineDataGridNode(sourceCodeTimeline, this);
-
- this._treeOutlineDataGridSynchronizer.associate(sourceCodeTimelineTreeElement, sourceCodeTimelineDataGridNode);
- this._insertTreeElement(sourceCodeTimelineTreeElement, parentTreeElement);
</del><ins>+ this._insertDataGridNode(sourceCodeTimelineDataGridNode, parentDataGridNode);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> _processPendingRepresentedObjects()
</span><span class="lines">@@ -323,7 +277,7 @@
</span><span class="cx">
</span><span class="cx"> for (var representedObject of this._pendingRepresentedObjects) {
</span><span class="cx"> if (representedObject instanceof WebInspector.Resource)
</span><del>- this._addResourceToTreeIfNeeded(representedObject);
</del><ins>+ this._addResourceToDataGridIfNeeded(representedObject);
</ins><span class="cx"> else if (representedObject instanceof WebInspector.SourceCodeTimeline)
</span><span class="cx"> this._addSourceCodeTimeline(representedObject);
</span><span class="cx"> else
</span></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceViewsRenderingFrameTimelineViewjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebInspectorUI/UserInterface/Views/RenderingFrameTimelineView.js (197973 => 197974)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Views/RenderingFrameTimelineView.js        2016-03-11 00:47:31 UTC (rev 197973)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/RenderingFrameTimelineView.js        2016-03-11 00:49:16 UTC (rev 197974)
</span><span class="lines">@@ -31,8 +31,6 @@
</span><span class="cx">
</span><span class="cx"> console.assert(WebInspector.TimelineRecord.Type.RenderingFrame);
</span><span class="cx">
</span><del>- this.navigationSidebarTreeOutline.element.classList.add("rendering-frame");
-
</del><span class="cx"> var scopeBarItems = [];
</span><span class="cx"> for (var key in WebInspector.RenderingFrameTimelineView.DurationFilter) {
</span><span class="cx"> var value = WebInspector.RenderingFrameTimelineView.DurationFilter[key];
</span><span class="lines">@@ -78,7 +76,7 @@
</span><span class="cx"> for (var column in columns)
</span><span class="cx"> columns[column].sortable = true;
</span><span class="cx">
</span><del>- this._dataGrid = new WebInspector.TimelineDataGrid(this.navigationSidebarTreeOutline, columns, this);
</del><ins>+ this._dataGrid = new WebInspector.TimelineDataGrid(null, columns, this);
</ins><span class="cx"> this._dataGrid.addEventListener(WebInspector.DataGrid.Event.SelectedNodeChanged, this._dataGridNodeSelected, this);
</span><span class="cx"> this._dataGrid.sortColumnIdentifierSetting = new WebInspector.Setting("rendering-frame-timeline-view-sort", "startTime");
</span><span class="cx"> this._dataGrid.sortOrderSetting = new WebInspector.Setting("rendering-frame-timeline-view-sort-order", WebInspector.DataGrid.SortOrder.Ascending);
</span><span class="lines">@@ -109,11 +107,6 @@
</span><span class="cx">
</span><span class="cx"> // Public
</span><span class="cx">
</span><del>- get navigationSidebarTreeOutlineLabel()
- {
- return WebInspector.UIString("Records");
- }
-
</del><span class="cx"> shown()
</span><span class="cx"> {
</span><span class="cx"> super.shown();
</span><span class="lines">@@ -138,23 +131,19 @@
</span><span class="cx">
</span><span class="cx"> get selectionPathComponents()
</span><span class="cx"> {
</span><del>- var dataGridNode = this._dataGrid.selectedNode;
- if (!dataGridNode)
</del><ins>+ let dataGridNode = this._dataGrid.selectedNode;
+ if (!dataGridNode || dataGridNode.hidden)
</ins><span class="cx"> return null;
</span><span class="cx">
</span><del>- var pathComponents = [];
</del><ins>+ let pathComponents = [];
</ins><span class="cx">
</span><span class="cx"> while (dataGridNode && !dataGridNode.root) {
</span><del>- var treeElement = this._dataGrid.treeElementForDataGridNode(dataGridNode);
- console.assert(treeElement);
- if (!treeElement)
- break;
-
- if (treeElement.hidden)
</del><ins>+ console.assert(dataGridNode instanceof WebInspector.TimelineDataGridNode);
+ if (dataGridNode.hidden)
</ins><span class="cx"> return null;
</span><span class="cx">
</span><del>- var pathComponent = new WebInspector.GeneralTreeElementPathComponent(treeElement);
- pathComponent.addEventListener(WebInspector.HierarchicalPathComponent.Event.SiblingWasSelected, this.treeElementPathComponentSelected, this);
</del><ins>+ let pathComponent = new WebInspector.TimelineDataGridNodePathComponent(dataGridNode);
+ pathComponent.addEventListener(WebInspector.HierarchicalPathComponent.Event.SiblingWasSelected, this.dataGridNodePathComponentSelected, this);
</ins><span class="cx"> pathComponents.unshift(pathComponent);
</span><span class="cx"> dataGridNode = dataGridNode.parent;
</span><span class="cx"> }
</span><span class="lines">@@ -209,28 +198,11 @@
</span><span class="cx"> super.showContentViewForTreeElement(treeElement);
</span><span class="cx"> }
</span><span class="cx">
</span><del>- treeElementDeselected(treeElement)
</del><ins>+ dataGridNodePathComponentSelected(event)
</ins><span class="cx"> {
</span><del>- var dataGridNode = this._dataGrid.dataGridNodeForTreeElement(treeElement);
- if (!dataGridNode)
- return;
</del><ins>+ let dataGridNode = event.data.pathComponent.timelineDataGridNode;
+ console.assert(dataGridNode.dataGrid === this._dataGrid);
</ins><span class="cx">
</span><del>- dataGridNode.deselect();
- }
-
- treeElementSelected(treeElement, selectedByUser)
- {
- if (this._dataGrid.shouldIgnoreSelectionEvent())
- return;
-
- super.treeElementSelected(treeElement, selectedByUser);
- }
-
- treeElementPathComponentSelected(event)
- {
- var dataGridNode = this._dataGrid.dataGridNodeForTreeElement(event.data.pathComponent.generalTreeElement);
- if (!dataGridNode)
- return;
</del><span class="cx"> dataGridNode.revealAndSelect();
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -253,54 +225,45 @@
</span><span class="cx"> if (!this._pendingRecords.length)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- for (var renderingFrameTimelineRecord of this._pendingRecords) {
</del><ins>+ for (let renderingFrameTimelineRecord of this._pendingRecords) {
</ins><span class="cx"> console.assert(renderingFrameTimelineRecord instanceof WebInspector.RenderingFrameTimelineRecord);
</span><span class="cx">
</span><del>- var treeElement = new WebInspector.TimelineRecordTreeElement(renderingFrameTimelineRecord);
- var dataGridNode = new WebInspector.RenderingFrameTimelineDataGridNode(renderingFrameTimelineRecord, this.zeroTime);
- this._dataGrid.addRowInSortOrder(treeElement, dataGridNode);
</del><ins>+ let dataGridNode = new WebInspector.RenderingFrameTimelineDataGridNode(renderingFrameTimelineRecord, this.zeroTime);
+ this._dataGrid.addRowInSortOrder(null, dataGridNode);
</ins><span class="cx">
</span><del>- var stack = [{children: renderingFrameTimelineRecord.children, parentTreeElement: treeElement, index: 0}];
</del><ins>+ let stack = [{children: renderingFrameTimelineRecord.children, parentDataGridNode: dataGridNode, index: 0}];
</ins><span class="cx"> while (stack.length) {
</span><del>- var entry = stack.lastValue;
</del><ins>+ let entry = stack.lastValue;
</ins><span class="cx"> if (entry.index >= entry.children.length) {
</span><span class="cx"> stack.pop();
</span><span class="cx"> continue;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- var childRecord = entry.children[entry.index];
- var childTreeElement = null;
</del><ins>+ let childRecord = entry.children[entry.index];
+ let childDataGridNode = null;
</ins><span class="cx"> if (childRecord.type === WebInspector.TimelineRecord.Type.Layout) {
</span><del>- childTreeElement = new WebInspector.TimelineRecordTreeElement(childRecord, WebInspector.SourceCodeLocation.NameStyle.Short);
- if (childRecord.width && childRecord.height) {
- let subtitle = document.createElement("span");
- subtitle.textContent = WebInspector.UIString("%d \u2A09 %d").format(childRecord.width, childRecord.height);
- childTreeElement.subtitle = subtitle;
- }
- var layoutDataGridNode = new WebInspector.LayoutTimelineDataGridNode(childRecord, this.zeroTime);
</del><ins>+ childDataGridNode = new WebInspector.LayoutTimelineDataGridNode(childRecord, this.zeroTime);
</ins><span class="cx">
</span><del>- this._dataGrid.addRowInSortOrder(childTreeElement, layoutDataGridNode, entry.parentTreeElement);
</del><ins>+ this._dataGrid.addRowInSortOrder(null, childDataGridNode, entry.parentDataGridNode);
</ins><span class="cx"> } else if (childRecord.type === WebInspector.TimelineRecord.Type.Script) {
</span><del>- var rootNodes = [];
</del><ins>+ let rootNodes = [];
</ins><span class="cx"> if (childRecord.profile) {
</span><span class="cx"> // FIXME: Support using the bottom-up tree once it is implemented.
</span><span class="cx"> rootNodes = childRecord.profile.topDownRootNodes;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- childTreeElement = new WebInspector.TimelineRecordTreeElement(childRecord, WebInspector.SourceCodeLocation.NameStyle.Short, rootNodes.length);
- var scriptDataGridNode = new WebInspector.ScriptTimelineDataGridNode(childRecord, this.zeroTime);
</del><ins>+ childDataGridNode = new WebInspector.ScriptTimelineDataGridNode(childRecord, this.zeroTime);
</ins><span class="cx">
</span><del>- this._dataGrid.addRowInSortOrder(childTreeElement, scriptDataGridNode, entry.parentTreeElement);
</del><ins>+ this._dataGrid.addRowInSortOrder(null, childDataGridNode, entry.parentDataGridNode);
</ins><span class="cx">
</span><del>- for (var profileNode of rootNodes) {
- var profileNodeTreeElement = new WebInspector.ProfileNodeTreeElement(profileNode, this);
- var profileNodeDataGridNode = new WebInspector.ProfileNodeDataGridNode(profileNode, this.zeroTime, this.startTime, this.endTime);
- this._dataGrid.addRowInSortOrder(profileNodeTreeElement, profileNodeDataGridNode, childTreeElement);
</del><ins>+ for (let profileNode of rootNodes) {
+ let profileNodeDataGridNode = new WebInspector.ProfileNodeDataGridNode(profileNode, this.zeroTime, this.startTime, this.endTime);
+ this._dataGrid.addRowInSortOrder(null, profileNodeDataGridNode, childDataGridNode);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>- if (childTreeElement && childRecord.children.length)
- stack.push({children: childRecord.children, parentTreeElement: childTreeElement, index: 0});
</del><ins>+ if (childDataGridNode && childRecord.children.length)
+ stack.push({children: childRecord.children, parentDataGridNode: childDataGridNode, index: 0});
</ins><span class="cx"> ++entry.index;
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -326,7 +289,7 @@
</span><span class="cx">
</span><span class="cx"> _scopeBarSelectionDidChange(event)
</span><span class="cx"> {
</span><del>- this.timelineSidebarPanel.updateFilter();
</del><ins>+ // FIXME: <https://webkit.org/b/154924> Web Inspector: hook up grid row filtering in the new Timelines UI
</ins><span class="cx"> }
</span><span class="cx"> };
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceViewsScriptClusterTimelineViewjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebInspectorUI/UserInterface/Views/ScriptClusterTimelineView.js (197973 => 197974)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Views/ScriptClusterTimelineView.js        2016-03-11 00:47:31 UTC (rev 197973)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/ScriptClusterTimelineView.js        2016-03-11 00:49:16 UTC (rev 197974)
</span><span class="lines">@@ -31,8 +31,6 @@
</span><span class="cx">
</span><span class="cx"> console.assert(timeline.type === WebInspector.TimelineRecord.Type.Script);
</span><span class="cx">
</span><del>- this._extraArguments = extraArguments;
-
</del><span class="cx"> this._currentContentViewSetting = new WebInspector.Setting("script-cluster-timeline-view-current-view", WebInspector.ScriptClusterTimelineView.EventsIdentifier);
</span><span class="cx">
</span><span class="cx"> let showSelectorArrows = this._canShowProfileView();
</span><span class="lines">@@ -52,8 +50,8 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // FIXME: We should be able to create these lazily.
</span><del>- this._eventsContentView = new WebInspector.ScriptDetailsTimelineView(this.representedObject, this._extraArguments);
- this._profileContentView = this._canShowProfileView() ? new WebInspector.ScriptProfileTimelineView(this.representedObject, this._extraArguments) : null;
</del><ins>+ this._eventsContentView = new WebInspector.ScriptDetailsTimelineView(this.representedObject, extraArguments);
+ this._profileContentView = this._canShowProfileView() ? new WebInspector.ScriptProfileTimelineView(this.representedObject, extraArguments) : null;
</ins><span class="cx">
</span><span class="cx"> this._showContentViewForIdentifier(this._currentContentViewSetting.value);
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceViewsScriptDetailsTimelineViewjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebInspectorUI/UserInterface/Views/ScriptDetailsTimelineView.js (197973 => 197974)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Views/ScriptDetailsTimelineView.js        2016-03-11 00:47:31 UTC (rev 197973)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/ScriptDetailsTimelineView.js        2016-03-11 00:49:16 UTC (rev 197974)
</span><span class="lines">@@ -31,8 +31,6 @@
</span><span class="cx">
</span><span class="cx"> console.assert(timeline.type === WebInspector.TimelineRecord.Type.Script);
</span><span class="cx">
</span><del>- this.navigationSidebarTreeOutline.element.classList.add("script");
-
</del><span class="cx"> let columns = {name: {}, location: {}, callCount: {}, startTime: {}, totalTime: {}, selfTime: {}, averageTime: {}};
</span><span class="cx">
</span><span class="cx"> columns.name.title = WebInspector.UIString("Name");
</span><span class="lines">@@ -73,7 +71,7 @@
</span><span class="cx"> for (var column in columns)
</span><span class="cx"> columns[column].sortable = true;
</span><span class="cx">
</span><del>- this._dataGrid = new WebInspector.ScriptTimelineDataGrid(this.navigationSidebarTreeOutline, columns, this);
</del><ins>+ this._dataGrid = new WebInspector.ScriptTimelineDataGrid(null, columns, this);
</ins><span class="cx"> this._dataGrid.addEventListener(WebInspector.TimelineDataGrid.Event.FiltersDidChange, this._dataGridFiltersDidChange, this);
</span><span class="cx"> this._dataGrid.addEventListener(WebInspector.DataGrid.Event.SelectedNodeChanged, this._dataGridNodeSelected, this);
</span><span class="cx"> this._dataGrid.sortColumnIdentifierSetting = new WebInspector.Setting("script-timeline-view-sort", "startTime");
</span><span class="lines">@@ -90,11 +88,6 @@
</span><span class="cx">
</span><span class="cx"> // Public
</span><span class="cx">
</span><del>- get navigationSidebarTreeOutlineLabel()
- {
- return WebInspector.UIString("Records");
- }
-
</del><span class="cx"> shown()
</span><span class="cx"> {
</span><span class="cx"> super.shown();
</span><span class="lines">@@ -180,34 +173,6 @@
</span><span class="cx"> dataGridNode.revealAndSelect();
</span><span class="cx"> }
</span><span class="cx">
</span><del>- treeElementSelected(treeElement, selectedByUser)
- {
- if (this._dataGrid.shouldIgnoreSelectionEvent())
- return;
-
- super.treeElementSelected(treeElement, selectedByUser);
- }
-
- dataGridNodeForTreeElement(treeElement)
- {
- if (treeElement instanceof WebInspector.ProfileNodeTreeElement)
- return new WebInspector.ProfileNodeDataGridNode(treeElement.profileNode, this.zeroTime, this.startTime, this.endTime);
- return null;
- }
-
- populateProfileNodeTreeElement(treeElement)
- {
- var zeroTime = this.zeroTime;
- var startTime = this.startTime;
- var endTime = this.endTime;
-
- for (var childProfileNode of treeElement.profileNode.childNodes) {
- var profileNodeTreeElement = new WebInspector.ProfileNodeTreeElement(childProfileNode, this);
- var profileNodeDataGridNode = new WebInspector.ProfileNodeDataGridNode(childProfileNode, zeroTime, startTime, endTime);
- this._dataGrid.addRowInSortOrder(profileNodeTreeElement, profileNodeDataGridNode, treeElement);
- }
- }
-
</del><span class="cx"> layout()
</span><span class="cx"> {
</span><span class="cx"> if (this.startTime !== this._oldStartTime || this.endTime !== this._oldEndTime) {
</span><span class="lines">@@ -240,22 +205,19 @@
</span><span class="cx"> let startTime = this.startTime;
</span><span class="cx"> let endTime = this.endTime;
</span><span class="cx">
</span><del>- for (var scriptTimelineRecord of this._pendingRecords) {
- var rootNodes = [];
</del><ins>+ for (let scriptTimelineRecord of this._pendingRecords) {
+ let rootNodes = [];
</ins><span class="cx"> if (scriptTimelineRecord.profile) {
</span><span class="cx"> // FIXME: Support using the bottom-up tree once it is implemented.
</span><span class="cx"> rootNodes = scriptTimelineRecord.profile.topDownRootNodes;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- var treeElement = new WebInspector.TimelineRecordTreeElement(scriptTimelineRecord, WebInspector.SourceCodeLocation.NameStyle.Short, true);
- var dataGridNode = new WebInspector.ScriptTimelineDataGridNode(scriptTimelineRecord, zeroTime);
</del><ins>+ let dataGridNode = new WebInspector.ScriptTimelineDataGridNode(scriptTimelineRecord, zeroTime);
+ this._dataGrid.addRowInSortOrder(null, dataGridNode);
</ins><span class="cx">
</span><del>- this._dataGrid.addRowInSortOrder(treeElement, dataGridNode);
-
- for (var profileNode of rootNodes) {
- var profileNodeTreeElement = new WebInspector.ProfileNodeTreeElement(profileNode, this);
- var profileNodeDataGridNode = new WebInspector.ProfileNodeDataGridNode(profileNode, zeroTime, startTime, endTime);
- this._dataGrid.addRowInSortOrder(profileNodeTreeElement, profileNodeDataGridNode, treeElement);
</del><ins>+ for (let profileNode of rootNodes) {
+ let profileNodeDataGridNode = new WebInspector.ProfileNodeDataGridNode(profileNode, zeroTime, startTime, endTime);
+ this._dataGrid.addRowInSortOrder(null, profileNodeDataGridNode, dataGridNode);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -279,7 +241,7 @@
</span><span class="cx">
</span><span class="cx"> _dataGridFiltersDidChange(event)
</span><span class="cx"> {
</span><del>- this.timelineSidebarPanel.updateFilter();
</del><ins>+ // FIXME: <https://webkit.org/b/154924> Web Inspector: hook up grid row filtering in the new Timelines UI
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> _dataGridNodeSelected(event)
</span></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceViewsTimelineDataGridjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebInspectorUI/UserInterface/Views/TimelineDataGrid.js (197973 => 197974)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Views/TimelineDataGrid.js        2016-03-11 00:47:31 UTC (rev 197973)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/TimelineDataGrid.js        2016-03-11 00:49:16 UTC (rev 197974)
</span><span class="lines">@@ -153,29 +153,9 @@
</span><span class="cx"> return true;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- addRowInSortOrder(treeElement, dataGridNode, parentElement)
- {
- this._treeOutlineDataGridSynchronizer.associate(treeElement, dataGridNode);
-
- parentElement = parentElement || this._treeOutlineDataGridSynchronizer.treeOutline;
- var parentNode = parentElement.root ? this : this._treeOutlineDataGridSynchronizer.dataGridNodeForTreeElement(parentElement);
-
- console.assert(parentNode);
-
- if (this.sortColumnIdentifier) {
- var insertionIndex = insertionIndexForObjectInListSortedByFunction(dataGridNode, parentNode.children, this._sortComparator.bind(this));
-
- // Insert into the parent, which will cause the synchronizer to insert into the data grid.
- parentElement.insertChild(treeElement, insertionIndex);
- } else {
- // Append to the parent, which will cause the synchronizer to append to the data grid.
- parentElement.appendChild(treeElement);
- }
- }
-
</del><span class="cx"> addRowInSortOrder(treeElement, dataGridNode, parentTreeElementOrDataGridNode)
</span><span class="cx"> {
</span><del>- let parentDataGridNode = parentTreeElementOrDataGridNode || this;
</del><ins>+ let parentDataGridNode;
</ins><span class="cx"> let childElement = dataGridNode;
</span><span class="cx">
</span><span class="cx"> if (treeElement) {
</span><span class="lines">@@ -192,6 +172,9 @@
</span><span class="cx">
</span><span class="cx"> parentTreeElementOrDataGridNode = parentTreeElement;
</span><span class="cx"> childElement = treeElement;
</span><ins>+ } else {
+ parentTreeElementOrDataGridNode = parentTreeElementOrDataGridNode || this;
+ parentDataGridNode = parentTreeElementOrDataGridNode;
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (this.sortColumnIdentifier) {
</span></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceViewsTimelineRecordingContentViewjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebInspectorUI/UserInterface/Views/TimelineRecordingContentView.js (197973 => 197974)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Views/TimelineRecordingContentView.js        2016-03-11 00:47:31 UTC (rev 197973)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/TimelineRecordingContentView.js        2016-03-11 00:49:16 UTC (rev 197974)
</span><span class="lines">@@ -26,15 +26,11 @@
</span><span class="cx">
</span><span class="cx"> WebInspector.TimelineRecordingContentView = class TimelineRecordingContentView extends WebInspector.ContentView
</span><span class="cx"> {
</span><del>- constructor(recording, extraArguments)
</del><ins>+ constructor(recording)
</ins><span class="cx"> {
</span><del>- console.assert(extraArguments);
- console.assert(extraArguments.timelineSidebarPanel instanceof WebInspector.TimelineSidebarPanel);
-
</del><span class="cx"> super(recording);
</span><span class="cx">
</span><span class="cx"> this._recording = recording;
</span><del>- this._timelineSidebarPanel = extraArguments.timelineSidebarPanel;
</del><span class="cx">
</span><span class="cx"> this.element.classList.add("timeline-recording");
</span><span class="cx">
</span><span class="lines">@@ -61,7 +57,7 @@
</span><span class="cx"> this._clearTimelineNavigationItem = new WebInspector.ButtonNavigationItem("clear-timeline", WebInspector.UIString("Clear Timeline"), "Images/NavigationItemTrash.svg", 15, 15);
</span><span class="cx"> this._clearTimelineNavigationItem.addEventListener(WebInspector.ButtonNavigationItem.Event.Clicked, this._clearTimeline, this);
</span><span class="cx">
</span><del>- this._overviewTimelineView = new WebInspector.OverviewTimelineView(recording, {timelineSidebarPanel: this._timelineSidebarPanel});
</del><ins>+ this._overviewTimelineView = new WebInspector.OverviewTimelineView(recording);
</ins><span class="cx"> this._overviewTimelineView.secondsPerPixel = this._timelineOverview.secondsPerPixel;
</span><span class="cx">
</span><span class="cx"> this._timelineViewMap = new Map;
</span><span class="lines">@@ -343,7 +339,7 @@
</span><span class="cx"> iconClassName = WebInspector.TimelineTabContentView.iconClassNameForTimeline(representedObject);
</span><span class="cx"> title = WebInspector.UIString("Details");
</span><span class="cx"> } else {
</span><del>- iconClassName = "stopwatch-icon";
</del><ins>+ iconClassName = WebInspector.TimelineTabContentView.StopwatchIconStyleClass;
</ins><span class="cx"> title = WebInspector.UIString("Overview");
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -383,10 +379,7 @@
</span><span class="cx">
</span><span class="cx"> this._timelineOverview.viewMode = newViewMode;
</span><span class="cx">
</span><del>- if (timelineView instanceof WebInspector.TimelineView) {
- this._timelineSidebarPanel.contentTreeOutline = timelineView.navigationSidebarTreeOutline;
- this._timelineSidebarPanel.contentTreeOutlineLabel = timelineView.navigationSidebarTreeOutlineLabel;
-
</del><ins>+ if (timelineView) {
</ins><span class="cx"> this._updateTimelineViewSelection(timelineView);
</span><span class="cx"> timelineView.currentTime = this._currentTime;
</span><span class="cx">
</span><span class="lines">@@ -403,7 +396,6 @@
</span><span class="cx">
</span><span class="cx"> _pathComponentSelected(event)
</span><span class="cx"> {
</span><del>- this._timelineSidebarPanel.showTimelineViewForTimeline(event.data.pathComponent.representedObject);
</del><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> _timeRangePathComponentSelected(event)
</span><span class="lines">@@ -498,7 +490,8 @@
</span><span class="cx"> if (this._timelineOverview.timelineRuler.entireRangeSelected)
</span><span class="cx"> this._updateTimelineViewSelection(this._overviewTimelineView);
</span><span class="cx">
</span><del>- this._timelineSidebarPanel.updateFilter();
</del><ins>+ // Filter records on new recording times.
+ // FIXME: <https://webkit.org/b/154924> Web Inspector: hook up grid row filtering in the new Timelines UI
</ins><span class="cx">
</span><span class="cx"> // Force a layout now since we are already in an animation frame and don't need to delay it until the next.
</span><span class="cx"> this._timelineOverview.updateLayoutIfNeeded();
</span><span class="lines">@@ -620,7 +613,7 @@
</span><span class="cx"> let timeline = this._recording.timelineForInstrument(instrument);
</span><span class="cx"> console.assert(!this._timelineViewMap.has(timeline), timeline);
</span><span class="cx">
</span><del>- this._timelineViewMap.set(timeline, WebInspector.ContentView.createFromRepresentedObject(timeline, {timelineSidebarPanel: this._timelineSidebarPanel, recording: this._recording}));
</del><ins>+ this._timelineViewMap.set(timeline, WebInspector.ContentView.createFromRepresentedObject(timeline, {recording: this._recording}));
</ins><span class="cx"> if (timeline.type === WebInspector.TimelineRecord.Type.RenderingFrame)
</span><span class="cx"> this._renderingFrameTimeline = timeline;
</span><span class="cx">
</span><span class="lines">@@ -728,7 +721,8 @@
</span><span class="cx"> var selectedTreeElement = this.currentTimelineView && this.currentTimelineView.navigationSidebarTreeOutline ? this.currentTimelineView.navigationSidebarTreeOutline.selectedTreeElement : null;
</span><span class="cx"> var selectionWasHidden = selectedTreeElement && selectedTreeElement.hidden;
</span><span class="cx">
</span><del>- this._timelineSidebarPanel.updateFilter();
</del><ins>+ // Filter records on new timeline selection.
+ // FIXME: <https://webkit.org/b/154924> Web Inspector: hook up grid row filtering in the new Timelines UI
</ins><span class="cx">
</span><span class="cx"> if (selectedTreeElement && selectedTreeElement.hidden !== selectionWasHidden)
</span><span class="cx"> this.dispatchEventToListeners(WebInspector.ContentView.Event.SelectionPathComponentsDidChange);
</span></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceViewsTimelineSidebarPanelcss"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebInspectorUI/UserInterface/Views/TimelineSidebarPanel.css (197973 => 197974)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Views/TimelineSidebarPanel.css        2016-03-11 00:47:31 UTC (rev 197973)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/TimelineSidebarPanel.css        2016-03-11 00:49:16 UTC (rev 197974)
</span><span class="lines">@@ -1,199 +0,0 @@
</span><del>-/*
- * Copyright (C) 2013 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-.sidebar > .panel.navigation.timeline > .navigation-bar > .item.record-start-stop {
- /* Workaround for background image clipping issue on non-retina machines. See http://webkit.org/b/147346. */
- filter: brightness(100%);
-}
-
-.sidebar > .panel.navigation.timeline > .navigation-bar > .item.record-start-stop:hover {
- filter: brightness(95%);
-}
-
-.sidebar > .panel.navigation.timeline > .navigation-bar > .item.record-start-stop:active {
- filter: brightness(80%);
-}
-
-.sidebar > .panel.navigation.timeline > .navigation-bar > .item.record-start-stop * {
- pointer-events: none;
-}
-
-.sidebar > .panel.navigation.timeline > .navigation-bar > .item.flexible-space {
- justify-content: center;
-
- line-height: 20px;
- font-weight: bold;
-
- color: hsl(0, 0%, 29%);
- text-shadow: hsla(0, 0%, 100%, 0.5) 0 1px 0;
-}
-
-.sidebar > .panel.navigation.timeline > .title-bar {
- position: absolute;
- left: 0;
- right: 0;
-
- height: 29px;
-
- border-bottom: 1px solid var(--border-color);
- background-color: var(--panel-background-color);
- color: hsl(0, 0%, 22%);
-
- white-space: nowrap;
- overflow: hidden;
- text-overflow: ellipsis;
-
- font-weight: bold;
-
- padding: 4px 9px;
-
- white-space: nowrap;
- overflow: hidden;
-}
-
-.sidebar > .panel.navigation.timeline > .title-bar.timelines {
- top: 29px;
- padding: 8px 9px;
-}
-
-.sidebar > .panel.navigation.timeline > .navigation-bar-container {
- position: absolute;
- top: 29px;
- left: 0;
- right: 0;
-}
-
-.sidebar > .panel.navigation.timeline > .navigation-bar-container > .navigation-bar {
- position: absolute;
- top: 0;
- left: 0;
- right: 0;
- align-content: center;
-}
-
-.sidebar > .panel.navigation.timeline > .title-bar.timeline-events {
- display: flex;
- height: 23px;
- border-top: 1px solid var(--border-color);
-}
-
-.sidebar > .panel.navigation.timeline > .title-bar.timeline-events > .title-bar-scope-bar {
- position: absolute;
- top: 2px;
- right: 0;
- font-weight: normal;
-}
-
-.sidebar > .panel.navigation.timeline > .title-bar.timeline-events > .title-bar-scope-bar > .default-item-selected > .multiple {
- background-color: transparent;
- color: black;
-}
-
-.sidebar > .panel.navigation.timeline > .title-bar.timeline-events > .title-bar-scope-bar > .default-item-selected > .multiple .arrows {
- color: black;
-}
-
-.sidebar > .panel.navigation.timeline > .timelines-content {
- position: absolute;
- top: 58px;
- left: 0;
- right: 0;
-
- overflow: hidden;
-}
-
-.sidebar > .panel.navigation.timeline > .timelines-content .close-button {
- width: 14px;
-
- visibility: hidden;
-}
-
-.sidebar > .panel.navigation.timeline > .timelines-content li.item .icon {
- width: 24px;
- height: 24px;
- margin-top: 5px;
-}
-
-.sidebar > .panel.navigation.timeline > .timelines-content li.item.selected .close-button {
- visibility: visible;
-}
-
-.sidebar > .panel.navigation.timeline > .timelines-content li.item:not(.selected):nth-child(even) {
- background-color: hsla(0, 0%, 0%, 0.03);
- background-clip: padding-box;
-}
-
-.sidebar > .panel.navigation.timeline > .timelines-content li.item:not(.selected):not(:first-child) {
- border-top: 1px solid hsla(0, 0%, 0%, 0.09);
-}
-
-.sidebar > .panel.navigation.timeline > .timelines-content li.item.selected + li.item {
- border-top-color: hsl(0, 0%, 83%);
-}
-
-body.window-inactive .sidebar > .panel.navigation.timeline > .timelines-content li.item.selected + li.item {
- border-top-color: hsl(0, 0%, 83%);
-}
-
-.sidebar > .panel.navigation.timeline > .timelines-content :focus li.item.selected + li.item {
- border-top-color: hsl(209, 100%, 49%);
-}
-
-.sidebar > .panel.navigation.timeline > .content,
-.sidebar > .panel.navigation.timeline > .empty-content-placeholder {
- top: 189px;
-}
-
-.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing > .content {
- /* This hides the scrollbar. The view shows a scrollbar, we don't need two. */
- padding-right: 16px;
- right: -16px;
-}
-
-.sidebar > .panel.navigation.timeline .item:not(:hover, .selected) .status .status-button,
-.sidebar > .panel.navigation.timeline .item:hover:not(.selected) .status .close.status-button {
- display: none;
-}
-
-.sidebar > .panel.navigation.timeline:not(.timeline-recording-content-view-showing) .status .go-to-arrow.status-button {
- display: none;
-}
-
-.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .status .close.status-button {
- display: none;
-}
-
-.sidebar > .panel.navigation.timeline > .timelines-content > .details-section > div.header {
- display: none;
-}
-
-.sidebar > .panel.navigation.timeline > .timelines-content > .details-section > .content > .group > .row.chart {
- height: 108px;
-}
-
-.sidebar > .panel.navigation.timeline > .timelines-content > .details-section > .content > .group > .row.chart > .chart-content > .chart {
- width: 76px;
- height: 76px;
-}
</del></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceViewsTimelineTabContentViewjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebInspectorUI/UserInterface/Views/TimelineTabContentView.js (197973 => 197974)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Views/TimelineTabContentView.js        2016-03-11 00:47:31 UTC (rev 197973)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/TimelineTabContentView.js        2016-03-11 00:49:16 UTC (rev 197974)
</span><span class="lines">@@ -33,10 +33,6 @@
</span><span class="cx">
</span><span class="cx"> super(identifier || "timeline", "timeline", tabBarItem, WebInspector.TimelineSidebarPanel, detailsSidebarPanels);
</span><span class="cx">
</span><del>- // FIXME: Remove these when the TimelineSidebarPanel is removed. https://bugs.webkit.org/show_bug.cgi?id=154973
- this.contentBrowser.navigationBar.removeNavigationItem(this._showNavigationSidebarItem);
- this.navigationSidebarPanel.hide();
-
</del><span class="cx"> // Maintain an invisible tree outline containing tree elements for all recordings.
</span><span class="cx"> // The visible recording's tree element is selected when the content view changes.
</span><span class="cx"> this._recordingTreeElementMap = new Map;
</span><span class="lines">@@ -423,7 +419,7 @@
</span><span class="cx"> {
</span><span class="cx"> console.assert(recording instanceof WebInspector.TimelineRecording, recording);
</span><span class="cx">
</span><del>- let recordingTreeElement = new WebInspector.GeneralTreeElement(WebInspector.TimelineSidebarPanel.StopwatchIconStyleClass, recording.displayName, null, recording);
</del><ins>+ let recordingTreeElement = new WebInspector.GeneralTreeElement(WebInspector.TimelineTabContentView.StopwatchIconStyleClass, recording.displayName, null, recording);
</ins><span class="cx"> this._recordingTreeElementMap.set(recording, recordingTreeElement);
</span><span class="cx"> this._recordingsTreeOutline.appendChild(recordingTreeElement);
</span><span class="cx"> }
</span><span class="lines">@@ -555,3 +551,4 @@
</span><span class="cx"> WebInspector.TimelineTabContentView.ShowingTimelineRecordingContentViewCookieKey = "timeline-sidebar-panel-showing-timeline-recording-content-view";
</span><span class="cx"> WebInspector.TimelineTabContentView.SelectedTimelineViewIdentifierCookieKey = "timeline-sidebar-panel-selected-timeline-view-identifier";
</span><span class="cx"> WebInspector.TimelineTabContentView.OverviewTimelineIdentifierCookieValue = "overview";
</span><ins>+WebInspector.TimelineTabContentView.StopwatchIconStyleClass = "stopwatch-icon";
</ins></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceViewsTimelineViewjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebInspectorUI/UserInterface/Views/TimelineView.js (197973 => 197974)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Views/TimelineView.js        2016-03-11 00:47:31 UTC (rev 197973)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/TimelineView.js        2016-03-11 00:49:16 UTC (rev 197974)
</span><span class="lines">@@ -26,22 +26,13 @@
</span><span class="cx">
</span><span class="cx"> WebInspector.TimelineView = class TimelineView extends WebInspector.ContentView
</span><span class="cx"> {
</span><del>- constructor(representedObject, extraArguments)
</del><ins>+ constructor(representedObject)
</ins><span class="cx"> {
</span><del>- console.assert(extraArguments);
- console.assert(extraArguments.timelineSidebarPanel instanceof WebInspector.TimelineSidebarPanel);
-
</del><span class="cx"> super(representedObject);
</span><span class="cx">
</span><span class="cx"> // This class should not be instantiated directly. Create a concrete subclass instead.
</span><span class="cx"> console.assert(this.constructor !== WebInspector.TimelineView && this instanceof WebInspector.TimelineView);
</span><span class="cx">
</span><del>- this._timelineSidebarPanel = extraArguments.timelineSidebarPanel;
-
- this._contentTreeOutline = this._timelineSidebarPanel.createContentTreeOutline();
- this._contentTreeOutline.addEventListener(WebInspector.TreeOutline.Event.SelectionDidChange, this._treeSelectionDidChange, this);
- this._contentTreeOutline.__canShowContentViewForTreeElement = this.canShowContentViewForTreeElement.bind(this);
-
</del><span class="cx"> this.element.classList.add("timeline-view");
</span><span class="cx">
</span><span class="cx"> this._zeroTime = 0;
</span><span class="lines">@@ -52,32 +43,11 @@
</span><span class="cx">
</span><span class="cx"> // Public
</span><span class="cx">
</span><del>- get navigationItems()
- {
- return this._scopeBar ? [this._scopeBar] : [];
- }
-
- get navigationSidebarTreeOutline()
- {
- return this._contentTreeOutline;
- }
-
- get navigationSidebarTreeOutlineLabel()
- {
- // Implemented by sub-classes if needed.
- return null;
- }
-
</del><span class="cx"> get navigationSidebarTreeOutlineScopeBar()
</span><span class="cx"> {
</span><span class="cx"> return this._scopeBar;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- get timelineSidebarPanel()
- {
- return this._timelineSidebarPanel;
- }
-
</del><span class="cx"> get selectionPathComponents()
</span><span class="cx"> {
</span><span class="cx"> // Implemented by sub-classes if needed.
</span><span class="lines">@@ -222,42 +192,8 @@
</span><span class="cx"> WebInspector.showOriginalOrFormattedSourceCodeLocation(sourceCodeLocation);
</span><span class="cx"> }
</span><span class="cx">
</span><del>- treeElementPathComponentSelected(event)
- {
- // Implemented by sub-classes if needed.
- }
-
- treeElementDeselected(treeElement)
- {
- // Implemented by sub-classes if needed.
- }
-
- treeElementSelected(treeElement, selectedByUser)
- {
- // Implemented by sub-classes if needed.
-
- if (!this._timelineSidebarPanel.canShowDifferentContentView())
- return;
-
- if (treeElement instanceof WebInspector.FolderTreeElement)
- return;
-
- this.showContentViewForTreeElement(treeElement);
- }
-
</del><span class="cx"> userSelectedRecordFromOverview(timelineRecord)
</span><span class="cx"> {
</span><span class="cx"> // Implemented by sub-classes if needed.
</span><span class="cx"> }
</span><del>-
- // Private
-
- _treeSelectionDidChange(event)
- {
- if (event.data.deselectedElement)
- this.treeElementDeselected(event.data.deselectedElement);
-
- if (event.data.selectedElement)
- this.treeElementSelected(event.data.selectedElement, event.data.selectedByUser);
- }
</del><span class="cx"> };
</span></span></pre>
</div>
</div>
</body>
</html>