Web Inspector: Unfocusing / Focusing inspector window should not change ContentView
[WebKit-https.git] / Source / WebInspectorUI / ChangeLog
index ea72f08..f8f376a 100644 (file)
-2016-08-16  Devin Rousso  <dcrousso+webkit@gmail.com>
+2016-09-27  Matt Baker  <mattbaker@apple.com>
 
-        Web Inspector: Visual Styles: "Text -> Content" isn't escaped
-        https://bugs.webkit.org/show_bug.cgi?id=158271
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Base/Utilities.js:
-        (String.prototype.hasMatchingEscapedQuotes):
-        Checks that the given string has property escaped quotes (single or double).
-
-        * UserInterface/Views/VisualStyleBasicInput.js:
-        (WebInspector.VisualStyleBasicInput):
-        (WebInspector.VisualStyleBasicInput.prototype._handleInputElementInput):
-
-2016-08-16  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Modernize model objects simple getters
-        https://bugs.webkit.org/show_bug.cgi?id=160863
-
-        Reviewed by Timothy Hatcher.
-
-        Simplify the style of many Model objects with basic accessors.
-        We reduce them to a single line and group them together so
-        that they can be more easily read at a glance.
-
-        * UserInterface/Models/AnalyzerMessage.js:
-        * UserInterface/Models/ApplicationCacheFrame.js:
-        * UserInterface/Models/ApplicationCacheManifest.js:
-        * UserInterface/Models/BreakpointAction.js:
-        * UserInterface/Models/CSSMedia.js:
-        * UserInterface/Models/CSSSelector.js:
-        * UserInterface/Models/CollectionEntry.js:
-        * UserInterface/Models/CollectionEntryPreview.js:
-        * UserInterface/Models/DOMStorageObject.js:
-        * UserInterface/Models/DatabaseObject.js:
-        * UserInterface/Models/DatabaseTableObject.js:
-        * UserInterface/Models/ExecutionContext.js:
-        * UserInterface/Models/GarbageCollection.js:
-        * UserInterface/Models/IndexedDatabase.js:
-        * UserInterface/Models/IndexedDatabaseObjectStore.js:
-        * UserInterface/Models/IndexedDatabaseObjectStoreIndex.js:
-        * UserInterface/Models/ObjectPreview.js:
-        * UserInterface/Models/ProbeSet.js:
-        * UserInterface/Models/PropertyDescriptor.js:
-        * UserInterface/Models/PropertyPath.js:
-        * UserInterface/Models/PropertyPreview.js:
-        * UserInterface/Models/SourceCodePosition.js:
-        * UserInterface/Models/SourceCodeSearchMatchObject.js:
-        * UserInterface/Models/SourceCodeTimeline.js:
-        * UserInterface/Models/StructureDescription.js:
-        * UserInterface/Models/TextRange.js:
-        * UserInterface/Models/Timeline.js:
-        * UserInterface/Models/TimelineRecording.js:
-        * UserInterface/Models/TypeDescription.js:
-
-2016-08-15  Devin Rousso  <dcrousso+webkit@gmail.com>
-
-        Web Inspector: Large class lists are not easily discoverable with "Classes" quick-toggle
-        https://bugs.webkit.org/show_bug.cgi?id=160856
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Base/DOMUtilities.js:
-        (WebInspector.linkifyNodeReference):
-        Add option to truncate the text of the linkified node.
-
-        * UserInterface/Views/CSSStyleDetailsSidebarPanel.css:
-        (.sidebar > .panel.details.css-style > .content ~ .class-list-container):
-        Increase the max-height to partially show additional classes if many are set.
-
-        * UserInterface/Views/RulesStyleDetailsPanel.js:
-        (WebInspector.RulesStyleDetailsPanel.prototype.refresh.insertMediaOrInheritanceLabel):
-        Trucate the name of inherited nodes so they don't take up as much space in the sidebar.
-
-        * UserInterface/Views/VisualStyleSelectorSection.css:
-        (.details-section.visual-style-selector-section > .header > .current-selector): Deleted.
-        (.details-section.visual-style-selector-section > .content > .selectors > .selector-list > .section-divider > .titles): Deleted.
-        Removed since they are already inherited.
-
-2016-08-15  Devin Rousso  <dcrousso+webkit@gmail.com>
-
-        Web Inspector: Close button on selected item in Network tab is misaligned
-        https://bugs.webkit.org/show_bug.cgi?id=160884
-
-        Reviewed by Matt Baker.
-
-        * UserInterface/Views/NetworkSidebarPanel.css:
-        (.sidebar > .panel.navigation.network .status .close.status-button):
-
-2016-08-15  Devin Rousso  <dcrousso+webkit@gmail.com>
-
-        Web Inspector: Error/Warning icons are misplaced in the Visual sidebar
-        https://bugs.webkit.org/show_bug.cgi?id=160875
-
-        Reviewed by Matt Baker.
-
-        * UserInterface/Views/VisualStyleCommaSeparatedKeywordEditor.css:
-        (.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-special-property-placeholder): Deleted.
-        Reworked to apply more generally to editors without titles.
-
-        * UserInterface/Views/VisualStylePropertyEditor.css:
-        (.visual-style-property-container.missing-dependency > .visual-style-property-editor-warning):
-        (.visual-style-property-container.invalid-value > .visual-style-property-editor-warning):
-        (.visual-style-property-container:matches(.missing-dependency, .invalid-value) > *:first-child:matches(.visual-style-property-value-container)):
-        (.visual-style-property-container > *:first-child:matches(.visual-style-property-value-container) > .visual-style-special-property-placeholder):
-        (.visual-style-property-container > .visual-style-property-editor-warning.missing-dependency): Deleted.
-        (.visual-style-property-container > .visual-style-property-editor-warning.invalid-value): Deleted.
-        Reworked class names to be on the element container instead of the icon.
-
-        * UserInterface/Views/VisualStylePropertyEditor.js:
-        (WebInspector.VisualStylePropertyEditor.prototype.update):
-        (WebInspector.VisualStylePropertyEditor.prototype.updateEditorValues):
-        (WebInspector.VisualStylePropertyEditor.prototype._valueDidChange):
-        (WebInspector.VisualStylePropertyEditor.prototype._checkDependencies):
-
-2016-08-15  Saam Barati  <sbarati@apple.com>
-
-        Web Inspector: Introduce a method to enable code coverage profiler without enabling type profiler
-        https://bugs.webkit.org/show_bug.cgi?id=160750
-        <rdar://problem/27793469>
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Base/Main.js:
-        (WebInspector.loaded):
-        * UserInterface/Views/SourceCodeTextEditor.js:
-        (WebInspector.SourceCodeTextEditor.prototype._setTypeTokenAnnotatorEnabledState):
-
-2016-08-12  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: Add application/vnd.api+json as a valid JSON MIME-type
-        https://bugs.webkit.org/show_bug.cgi?id=160834
-        rdar://problem/27608536
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Views/CodeMirrorAdditions.js: Add Add application/vnd.api+json to extraJSONTypes.
-
-2016-08-12  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Command-Shift-O causes infinite loop if web page has frames
-        https://bugs.webkit.org/show_bug.cgi?id=160810
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Views/OpenResourceDialog.js:
-        (WebInspector.OpenResourceDialog.prototype._addResourcesForFrame):
-        "frame" doesn't change inside the loop.
-
-2016-08-12  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Support for :lineNumber syntax in Open Resource Dialog
-        https://bugs.webkit.org/show_bug.cgi?id=159732
-        <rdar://problem/27684491>
-
-        Reviewed by Matt Baker.
-
-        Allow the Open Resource Dialog to support line/column syntax.
-        Other tools allow "<name>:<line>:<column>" syntax, where the
-        location data at the end is optional. If the <name> portion
-        is missing, the location can be used for the active content
-        view, assuming it has text data and has lines.
-
-        * UserInterface/Base/Main.js:
-        (WebInspector.focusedOrVisibleContentView):
-        Expose a function to access the current focused / visible content view.
-
-        (WebInspector.dialogWasDismissed):
-        Include passing on cookie data when showing a represented object.
-
-        * UserInterface/Views/Dialog.js:
-        (WebInspector.Dialog):
-        (WebInspector.Dialog.prototype.get visible):
-        (WebInspector.Dialog.prototype.get delegate):
-        (WebInspector.Dialog.prototype.get representedObject):
-        (WebInspector.Dialog.prototype.get cookie):
-        (WebInspector.Dialog.prototype.dismiss):
-        * UserInterface/Models/ResourceQueryResult.js:
-        (WebInspector.ResourceQueryResult):
-        (WebInspector.ResourceQueryResult.prototype.get cookie):
-        Include cookie data along with the represented object in matches
-        and dialog results.
-
-        * UserInterface/Controllers/ResourceQueryController.js:
-        (WebInspector.ResourceQueryController.prototype.executeQuery):
-        Cut off location data from a query, and stash it on the query result.
-        A query can be "<name>:<line>:<column>", and the line/column data
-        becomes cookie data for the resource.
-
-        * UserInterface/Views/OpenResourceDialog.js:
-        (WebInspector.OpenResourceDialog.prototype._populateResourceTreeOutline):
-        If the query is just ":<line>:<column>" have it jump to a location
-        in the current content view if applicable.
-
-        (WebInspector.OpenResourceDialog.prototype._handleKeydownEvent):
-        (WebInspector.OpenResourceDialog.prototype._treeSelectionDidChange):
-        When dismissing, include cookie data.
-
-2016-08-11  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        REGRESSION (r204264): Web Inspector: Uncaught Exception in Network tab when reloading a web page
-        https://bugs.webkit.org/show_bug.cgi?id=160781
-        <rdar://problem/27810452>
-
-        Reviewed by Matt Baker.
-
-        WebInspector.TimelineDataGrid.prototype.closed was removed in r204264.
-        Define a stub method on DataGrid so it's available to all its subclasses.
-
-        * UserInterface/Views/DataGrid.js:
-        this._dataGrid.closed()
-
-2016-08-10  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Should be able to Edit Node Attributes and Styles for non-UserAgent Shadow DOM nodes
-        https://bugs.webkit.org/show_bug.cgi?id=160762
-        <rdar://problem/27798271>
-
-        Reviewed by Ryosuke Niwa.
-
-        * UserInterface/Models/DOMNode.js:
-        (WebInspector.DOMNode.prototype.isInUserAgentShadowTree):
-        (WebInspector.DOMNode.prototype.isShadowRoot):
-        (WebInspector.DOMNode.prototype.isUserAgentShadowRoot):
-        (WebInspector.DOMNode.prototype.ancestorShadowRoot):
-        (WebInspector.DOMNode.prototype.ancestorShadowHost):
-        Add methods for determining the shadow root, host, and easily
-        checking the type of shadow tree a node is in.
-
-        * UserInterface/Models/CSSStyleDeclaration.js:
-        (WebInspector.CSSStyleDeclaration.prototype.get editable):
-        * UserInterface/Views/DOMTreeElement.js:
-        (WebInspector.DOMTreeElement.prototype.get editable):
-        (WebInspector.DOMTreeElement.prototype._startEditingTarget):
-        (WebInspector.DOMTreeElement.prototype._populateTagContextMenu):
-        * UserInterface/Views/RulesStyleDetailsPanel.js:
-        (WebInspector.RulesStyleDetailsPanel.prototype.newRuleButtonClicked):
-        * UserInterface/Views/VisualStyleSelectorSection.js:
-        (WebInspector.VisualStyleSelectorSection.prototype._addNewRule):
-        Allow editing shadow DOM nodes as long as they are not in a UserAgent shadow tree.
-
-        * UserInterface/Views/DOMTreeOutline.js:
-        (WebInspector.DOMTreeOutline.prototype._populateContextMenu):
-        Disallow "Log Element" on UserAgent shadow tree nodes.
-
-2016-08-10  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Can't click on the lower half of "S" icon in JavaScript Allocations timeline
-        https://bugs.webkit.org/show_bug.cgi?id=160743
-        <rdar://problem/27790098>
-
-        Reviewed by Timothy Hatcher.
-
-        "S" icons are covered by .scroll-container, which has `z-index: calc(var(--z-index-resizer) + 1)`.
-        Set larger z-index on the "S" icons.
-
-        * UserInterface/Views/HeapAllocationsTimelineOverviewGraph.css:
-        (.timeline-overview-graph.heap-allocations > img.snapshot):
-
-2016-08-08  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Popover for Color Picker should update position when window resizes
-        https://bugs.webkit.org/show_bug.cgi?id=160321
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Views/Popover.js:
-        (WebInspector.Popover):
-        (WebInspector.Popover.prototype.set windowResizeHandler):
-        (WebInspector.Popover.prototype.dismiss):
-        (WebInspector.Popover.prototype.handleEvent):
-        (WebInspector.Popover.prototype._addListenersIfNeeded):
-        The popover already has a set of window listeners, add "resize" to
-        the list. If there is a resize, invoke a resize handler. The resize
-        handler will only be called while the popover is visible.
-
-        * UserInterface/Views/HeapSnapshotDataGridTree.js:
-        (WebInspector.HeapSnapshotDataGridTree):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.get visible):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.get popoverNode):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.set popoverNode):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.get popoverTargetElement):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.set popoverTargetElement):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.get popover):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.willDismissPopover):
-        * UserInterface/Views/HeapSnapshotInstanceDataGridNode.js:
-        Update heap snapshot popovers to reposition on window resize.
-        Set a target to reposition around, since the popover is shared.
-
-        * UserInterface/Views/ProbeSetDetailsSection.js:
-        (WebInspector.ProbeSetDetailsSection.prototype._addProbeButtonClicked):
-        Update probe expression popover to respect window resizes.
-
-        * UserInterface/Views/VisualStylePropertyEditor.js:
-        (WebInspector.VisualStylePropertyEditor.prototype._showPropertyInfoPopover):
-        Though not yet visible, update this to respect window resizes.
-
-        * UserInterface/Views/InlineSwatch.js:
-        (WebInspector.InlineSwatch.prototype._swatchElementClicked):
-        Add a window resize handler to reposition over the swatch element.
-
-        * UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
-        (WebInspector.LayerTreeDetailsSidebarPanel.prototype._updatePopoverForSelectedNode):
-        (WebInspector.LayerTreeDetailsSidebarPanel): Deleted.
-        (WebInspector.LayerTreeDetailsSidebarPanel.prototype._windowResized): Deleted.
-        * UserInterface/Views/TimelineDataGrid.js:
-        (WebInspector.TimelineDataGrid.prototype._showPopoverForSelectedNodeSoon):
-        (WebInspector.TimelineDataGrid): Deleted.
-        (WebInspector.TimelineDataGrid.prototype.closed): Deleted.
-        (WebInspector.TimelineDataGrid.prototype.handleEvent): Deleted.
-        (WebInspector.TimelineDataGrid.prototype._windowResized): Deleted.
-        * UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
-        (WebInspector.ScopeChainDetailsSidebarPanel.prototype._addWatchExpressionButtonClicked):
-        (WebInspector.ScopeChainDetailsSidebarPanel.prototype.willDismissPopover): Deleted.
-        Replace custom popover repositioning with standard Popover handling.
-
-2016-08-07  Matt Baker  <mattbaker@apple.com>
-
-        REGRESSION (r201245): switching between Computed and Visual Styles panels causes internal error
-        https://bugs.webkit.org/show_bug.cgi?id=160604
-        <rdar://problem/27723416>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/StyleDetailsPanel.js:
-        (WebInspector.StyleDetailsPanel.prototype.shown):
-        Only perform a layout if needed. Subclasses access node style
-        data during layout, which may not exist yet.
-
-2016-08-06  Matt Baker  <mattbaker@apple.com>
-
-        REGRESSION (r203253): Node details sidebar flickers while resizing
-        https://bugs.webkit.org/show_bug.cgi?id=160631
-        <rdar://problem/27733024>
-
-        Reviewed by Timothy Hatcher.
-
-        Sidebar panel layouts can be expensive, and should be performed only
-        when necessary (i.e., when the panel is shown for the first time, or
-        model data changed while the panel was hidden).
-
-        * UserInterface/Views/Sidebar.js:
-        (WebInspector.Sidebar.prototype._recalculateWidth):
-
-        * UserInterface/Views/SidebarPanel.js:
-        (WebInspector.SidebarPanel.prototype.shown):
-
-        * UserInterface/Views/View.js:
-        (WebInspector.View.prototype.updateLayoutIfNeeded):
-        Update the layout if an initial layout was never performed.
-
-2016-08-04  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: UI polish for Edit Breakpoint dialog
-        https://bugs.webkit.org/show_bug.cgi?id=160566
-        <rdar://problem/27706378>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Images/BreakpointActionAdd.svg: Removed.
-        * UserInterface/Images/BreakpointActionRemove.svg: Removed.
-        Use Plus13.svg and Minus.svg instead.
-
-        * UserInterface/Views/BreakpointActionView.css:
-        (.breakpoint-action-button-container):
-        (.breakpoint-action-append-button,):
-        (.breakpoint-action-append-button):
-        (.breakpoint-action-remove-button):
-        Button styles should match Xcode.
-        (.breakpoint-action-append-button:active,): Deleted.
-        Brightness on activation no longer needed.
-
-        * UserInterface/Views/BreakpointActionView.js:
-        (WebInspector.BreakpointActionView):
-        Add a button container so buttons can float together.
-
-        * UserInterface/Views/BreakpointPopoverController.css:
-        (.wide .edit-breakpoint-popover-condition > .CodeMirror):
-        Increase condition field width by the same amount as the popover.
-
-2016-08-04  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Popover's arrow is misplaced
-        https://bugs.webkit.org/show_bug.cgi?id=151236
-        <rdar://problem/23527296>
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Views/Popover.js:
-        (WebInspector.Popover.prototype._setAnchorPoint):
-        Drive-by style fix.
-        (WebInspector.Popover.prototype._drawFrame):
-        Position the arrow so that the arrow head doesn't overlap the
-        rounded corners of its edge.
-
-2016-08-04  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Add placeholder graphs to TimelineOverview while editing
-        https://bugs.webkit.org/show_bug.cgi?id=160485
-        <rdar://problem/27670755>
-
-        Reviewed by Brian Burg.
-
-        Insert placeholder elements in TimelineOverview's graph container
-        when editing instruments. This allows alternating overview graph styles
-        to be shown for disabled instruments, and ensures that every tree element
-        has a corresponding element in the overview during dragging/reordering
-        of instruments (see https://webkit.org/b/157957).
-
-        * UserInterface/Views/TimelineOverview.js:
-        (WebInspector.TimelineOverview.prototype._startEditingInstruments):
-        (WebInspector.TimelineOverview.prototype._stopEditingInstruments):
-
-2016-08-04  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: UI polish for Open Quickly and Goto Line dialogs
-        https://bugs.webkit.org/show_bug.cgi?id=159849
-        <rdar://problem/27383068>
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Images/Search.svg: Added.
-        Magnifying glass icon.
-
-        * UserInterface/Views/GoToLineDialog.css:
-        (.go-to-line-dialog):
-        (.go-to-line-dialog > div):
-        (.go-to-line-dialog > div::before):
-        * UserInterface/Views/OpenResourceDialog.css:
-        (.open-resource-dialog > .field):
-        (.open-resource-dialog > .field::before):
-        (.open-resource-dialog.has-results > .tree-outline):
-        (.open-resource-dialog > .tree-outline .item):
-        Add search icon to left of the input field in both dialogs,
-        and adjust styles to better match Xcode 8.
-
-        * UserInterface/Views/OpenResourceDialog.js:
-        (WebInspector.OpenResourceDialog):
-        Remove "input" event listener, as styles are now toggled in _updateFilter.
-        (WebInspector.OpenResourceDialog.prototype._updateFilter):
-        Toggle "has-results" and "non-empty" class names.
-        (WebInspector.OpenResourceDialog.prototype._handleInputEvent): Deleted.
-        (WebInspector.OpenResourceDialog.prototype._clear): Deleted.
-        Moved class toggle to _updateFilter.
-
-2016-08-03  Chris Dumez  <cdumez@apple.com>
-
-        Drop DocumentType.internalSubset attribute
-        https://bugs.webkit.org/show_bug.cgi?id=160530
-
-        Reviewed by Alex Christensen.
-
-        Drop DocumentType.internalSubset attribute.
-
-        * UserInterface/Models/DOMNode.js:
-        (WebInspector.DOMNode): Deleted.
-        * UserInterface/Models/DOMSearchMatchObject.js:
-        (WebInspector.DOMSearchMatchObject.titleForDOMNode): Deleted.
-        * UserInterface/Views/DOMTreeElement.js:
-        (WebInspector.DOMTreeElement.prototype._nodeTitleInfo): Deleted.
-
-2016-08-03  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Cmd-L shortcut for Jump to Line conflicts with selecting URL of inspected page
-        https://bugs.webkit.org/show_bug.cgi?id=158028
-        <rdar://problem/26516663>
-
-        Reviewed by Timothy Hatcher.
-
-        Remove Command-L shortcut for opening the Line Number dialog, since
-        we already support Control-G.
-
-        * UserInterface/Views/SourceCodeTextEditor.js:
-        (WebInspector.SourceCodeTextEditor): Deleted.
-
-2016-08-01  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Don't set `width:calc(100% - 0px); left:0px` on console messages
-        https://bugs.webkit.org/show_bug.cgi?id=160428
-        <rdar://problem/27646033>
-
-        Reviewed by Timothy Hatcher.
-
-        Console messages inside console.group() are indented. Console messages outside of
-        console.group() aren't and there is no reason to set inline styles that do nothing
-        on each one of them.
-
-        * UserInterface/Views/LogContentView.js:
-        (WebInspector.LogContentView.prototype.didAppendConsoleMessageView):
-
-2016-08-01  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Grid column resizer elements positioned incorrectly
-        https://bugs.webkit.org/show_bug.cgi?id=160311
-        <rdar://problem/27595586>
-
-        Reviewed by Brian Burg.
-
-        Perform a resize layout on a newly shown tab content view if the tab
-        browser was resized before showing the tab.
-
-        * UserInterface/Views/TabBrowser.js:
-        (WebInspector.TabBrowser):
-        (WebInspector.TabBrowser.prototype.layout):
-        Mark all recent tab content views (except for the current view)
-        as needing a resize layout.
-
-        (WebInspector.TabBrowser.prototype._tabBarItemSelected):
-        If the tab browser was resized while the view was hidden, update the
-        view's layout for the new content view container size.
-
-2016-08-01  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Waterfall graph in Network tab shows too much whitespace/dead time
-        https://bugs.webkit.org/show_bug.cgi?id=160373
-
-        Reviewed by Timothy Hatcher.
-
-        Track the start and end time separate from the ruler to remove
-        leading/trailing whitespace in the graph. Also prevent network
-        record bars from being clipped.
-
-        * UserInterface/Views/NetworkGridContentView.js:
-        (WebInspector.NetworkGridContentView):
-        (WebInspector.NetworkGridContentView.prototype.get zeroTime):
-        Set equal to the ruler start time.
-        (WebInspector.NetworkGridContentView.prototype.reset):
-        Reset start and end time.
-        (WebInspector.NetworkGridContentView.prototype.layout):
-        Set the initial values for ruler start/zero time if needed.
-        (WebInspector.NetworkGridContentView.prototype._networkTimelineRecordAdded):
-        Set the start time if needed.
-        Reduce debounce from 250ms to 150ms. This prevents the current time from
-        exceeding the end time by as wide a margin, while keeping the current
-        time "timer" from being restarted too frequently.
-
-        (WebInspector.NetworkGridContentView.prototype._stopUpdatingCurrentTime):
-        Update the ruler end time and schedule a layout.
-        Add padding equal to the time needed to draw a network bar at minimum width
-        to prevent bars from being clipped.
-
-2016-07-29  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Inactive/active network bar segments overlap when latency is zero
-        https://bugs.webkit.org/show_bug.cgi?id=160147
-        <rdar://problem/27516007>
-
-        Reviewed by Joseph Pecoraro.
-
-        TimelineRecordBar should hide the inactive segment when its duration
-        is less than the minimum displayable size. The active segment can
-        assume the whole width of the bar.
-
-        * UserInterface/Views/TimelineOverviewGraph.js:
-        (WebInspector.TimelineOverviewGraph.prototype.get secondsPerPixel):
-        Make secondsPerPixel available during TimelineRecordBars.refresh.
-
-        * UserInterface/Views/TimelineRecordBar.js:
-        (WebInspector.TimelineRecordBar.prototype.refresh):
-        Check inactive duration against the minimum display size,
-        and add/remove DOM nodes and bar styles as needed.
-
-2016-07-29  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        REGRESSION (r195456): Web Inspector: Changing tabs in Styles sidebar shouldn't change sidebar's width
-        https://bugs.webkit.org/show_bug.cgi?id=159646
-        <rdar://problem/27286338>
-
-        Reviewed by Brian Burg.
-
-        Remember sidebar width on per tab basis. For example, Node, Styles, and Layers sidebar panels in
-        Elements tab should all have the same width, but Resource sidebar panel in Debugger tab should NOT
-        share its width Element tab's sidebar.
-
-        TabContentView stores the width but TabBrowser manages saving and restoring it.
-        The same way collapsed sidebar state is handled.
-
-        * UserInterface/Views/Sidebar.js:
-        (WebInspector.Sidebar.prototype.set collapsed):
-        Don't change sidebar's width when sidebar panels change.
-
-        (WebInspector.Sidebar.prototype._recalculateWidth):
-        (WebInspector.Sidebar.prototype.set selectedSidebarPanel): Deleted.
-        Pass newWidth as an argument so it can be saved in TabBrowser.
-
-        * UserInterface/Views/SidebarPanel.js:
-        (WebInspector.SidebarPanel): Deleted.
-        (WebInspector.SidebarPanel.prototype.get savedWidth): Deleted.
-        (WebInspector.SidebarPanel.prototype.sizeDidChange): Deleted.
-        Remove the per sidebar panel width setting that was added in r195456.
-
-        * UserInterface/Views/TabBrowser.js:
-        (WebInspector.TabBrowser):
-        (WebInspector.TabBrowser.prototype._detailsSidebarWidthDidChange):
-        (WebInspector.TabBrowser.prototype._showDetailsSidebarPanelsForTabContentView):
-        * UserInterface/Views/TabContentView.js:
-        (WebInspector.TabContentView):
-        (WebInspector.TabContentView.prototype.get detailsSidebarWidthSetting):
-        Store details sidebar width on TabContentView.
-
-2016-07-29  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Assertion in NetworkGridContentView when updating data grid for the first time
-        https://bugs.webkit.org/show_bug.cgi?id=160330
-        <rdar://problem/27600905>
-
-        Reviewed by Brian Burg.
-
-        When the first grid node is added, a view layout and current time update
-        are scheduled. A view layout occurring before the current time is updated
-        should be skipped, since the ruler end time hasn't been set.
-
-        * UserInterface/Views/NetworkGridContentView.js:
-        (WebInspector.NetworkGridContentView.prototype.layout):
-        Skip layout until current time is updated.
-        (WebInspector.NetworkGridContentView.prototype._update):
-        Remove unused variables `startTime` and `endTime`. Don't force a layout
-        if the elapsed time is zero.
-
-2016-07-28  Chris Dumez  <cdumez@apple.com>
-
-        Parameters to Event.initEvent() should be mandatory
-        https://bugs.webkit.org/show_bug.cgi?id=160320
-
-        Reviewed by Darin Adler.
-
-        Update WebInspector accordingly.
-
-        * UserInterface/Models/NativeFunctionParameters.js:
-
-2016-07-28  Chris Dumez  <cdumez@apple.com>
-
-        First parameter to canvas.getContext() / probablySupportsContext() should be mandatory
-        https://bugs.webkit.org/show_bug.cgi?id=160312
-
-        Reviewed by Darin Adler.
-
-        Update WebInspector accordingly.
-
-        * UserInterface/Models/NativeFunctionParameters.js:
-
-2016-07-28  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Hiding a column which contains a TimelineRuler as the headerview, doesn't hide the headerView
-        https://bugs.webkit.org/show_bug.cgi?id=160093
-        <rdar://problem/27499300>
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGrid.prototype._positionHeaderViews):
-        Remove early return so that a header view in a hidden column will have
-        its width resized to zero, matching the column.
-
-2016-07-28  Johan K. Jensen  <johan_jensen@apple.com>
-
-        Web Inspector: Waterfall view should be visible in Network tab and Network Timeline
-        https://bugs.webkit.org/show_bug.cgi?id=160061
-
-        Reviewed by Joseph Pecoraro.
-
-        Adds a Timeline-column (waterfall) to the Network tab and Network Timeline.
-
-        * Localizations/en.lproj/localizedStrings.js:
-        Add "Timeline" localized string.
-
-        * UserInterface/Views/NetworkGridContentView.js:
-        (WebInspector.NetworkGridContentView):
-        Add the Timeline-column with a TimelineRuler as the headerview,
-        and properties for updating current time.
-
-        (WebInspector.NetworkGridContentView.prototype.get secondsPerPixel):
-        (WebInspector.NetworkGridContentView.prototype.get startTime):
-        (WebInspector.NetworkGridContentView.prototype.get currentTime):
-        (WebInspector.NetworkGridContentView.prototype.get endTime):
-        Acting as a graphDataSource used by TimelineDataGridNode.
-
-        (WebInspector.NetworkGridContentView.prototype.shown):
-        (WebInspector.NetworkGridContentView.prototype.reset):
-        (WebInspector.NetworkGridContentView.prototype.layout):
-        Refresh graphs and update the TimelineRuler on layout changes.
-
-        (WebInspector.NetworkGridContentView.prototype._networkTimelineRecordAdded):
-        Add listeners for when resources are finished to stop the timer.
-
-        (WebInspector.NetworkGridContentView.prototype._update):
-        (WebInspector.NetworkGridContentView.prototype._startUpdatingCurrentTime):
-        (WebInspector.NetworkGridContentView.prototype._stopUpdatingCurrentTime):
-        Adding a timer which updates the TimelineRuler and the layout
-        if any non-finished requests are running.
-
-        * UserInterface/Views/NetworkTimelineView.js:
-        (WebInspector.NetworkTimelineView):
-        Add the Timeline-column with a TimelineRuler as the headerview.
-
-        (WebInspector.NetworkTimelineView.prototype.get secondsPerPixel):
-        (WebInspector.NetworkTimelineView.prototype.layout):
-        Refresh graphs on layout changes.
-
-        * UserInterface/Views/TimelineDataGrid.css:
-        (.tree-outline.timeline-data-grid .item:hover .subtitle):
-        (.data-grid.timeline th):
-        (.data-grid.timeline th.graph-column > .timeline-ruler):
-        (.data-grid.timeline td.graph-column):
-        (.data-grid.timeline td.graph-column > .cell-content):
-        (.data-grid.timeline td.graph-column .timeline-record-bar):
-
-2016-07-28  Chris Dumez  <cdumez@apple.com>
-
-        Parameter to table.deleteRow() / body.deleteRow() should be mandatory
-        https://bugs.webkit.org/show_bug.cgi?id=160307
-
-        Reviewed by Ryosuke Niwa.
-
-        Update WebInspector accordingly.
-
-        * UserInterface/Models/NativeFunctionParameters.js:
-
-2016-07-28  Chris Dumez  <cdumez@apple.com>
-
-        2 first parameters to input.setSelectionRange() should be mandatory
-        https://bugs.webkit.org/show_bug.cgi?id=160310
-
-        Reviewed by Alex Christensen.
-
-        Update WebInspector accordingly.
-
-        * UserInterface/Models/NativeFunctionParameters.js:
-
-2016-07-28  Chris Dumez  <cdumez@apple.com>
-
-        Parameter to tr.deleteCell() should be mandatory
-        https://bugs.webkit.org/show_bug.cgi?id=160308
-
-        Reviewed by Ryosuke Niwa.
-
-        Report tr.deleteCell() parameter as mandatory.
-
-        * UserInterface/Models/NativeFunctionParameters.js:
-
-2016-07-27  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Visual Styles Sidebar should have only one column when it's narrow
-        https://bugs.webkit.org/show_bug.cgi?id=159905
-        <rdar://problem/27413248>
-
-        Reviewed by Joseph Pecoraro.
-
-        Many CSS values often get clipped in the two colunm layout. Change the layout to one colunm
-        when visual style rows get too narrow.
-
-        * UserInterface/Views/VisualStyleDetailsPanel.css:
-        (.sidebar > .panel.details.css-style .visual > .details-section .details-section > .content .group > .row):
-        (.sidebar > .panel.details.css-style .visual > .details-section .details-section > .content .group > .metric-section-row):
-        Wrap all rows except for position/padding/margin controls.
-
-        (.sidebar > .panel.details.css-style .visual > .details-section .details-section > .content .group > .row > .visual-style-property-container:not(.layout-reversed):last-child): Deleted.
-        Margin between the first and the second column doesn't make sense one column layout.
-        Set the margin in .visual-style-property-container instead.
-
-        * UserInterface/Views/VisualStyleDetailsPanel.js:
-        (WebInspector.VisualStyleDetailsPanel.prototype._generateMetricSectionRows):
-        * UserInterface/Views/VisualStylePropertyEditor.css:
-        (.visual-style-property-container):
-
-2016-07-27  Joseph Pecoraro  <pecoraro@apple.com>
-
-        [Mac] Web Inspector: CodeMirror-based editor bindings for Home and End don't match system behavior
-        https://bugs.webkit.org/show_bug.cgi?id=160267
-        <rdar://problem/27575553>
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Views/CodeMirrorEditor.js:
-        (WebInspector.CodeMirrorEditor.create):
-        (WebInspector.CodeMirrorEditor):
-        Add some key map overrides for Home and End to better match system Mac
-        behavior. This scrolls to the start or end of a document and does not
-        change the cursor position.
-
-2016-07-27  Brian Burg  <bburg@apple.com>
-
-        Regression(r203535): Uncaught Exception: TypeError: Not enough arguments at LayerTreeDataGridNode.js:47
-        https://bugs.webkit.org/show_bug.cgi?id=160187
-        <rdar://problem/27540435>
-
-        Reviewed by Eric Carlson.
-
-        After r203535, document.createTextNode() requires an argument.
-
-        * UserInterface/Views/LayerTreeDataGridNode.js:
-        (WebInspector.LayerTreeDataGridNode.prototype.createCellContent):
-        Since this use-site is for creating a cell in an unknown column,
-        initialize it to '–'. Previously it would have been the string
-        "undefined" or empty.
-
-2016-07-24  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Filtering is broken in the Overview timeline view
-        https://bugs.webkit.org/show_bug.cgi?id=160152
-        <rdar://problem/27517481>
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Views/SourceCodeTimelineTimelineDataGridNode.js:
-        (WebInspector.SourceCodeTimelineTimelineDataGridNode.prototype.filterableDataForColumn):
-        Non-resource nodes should be filtered based on their display name.
-
-2016-07-23  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        REGRESSION (r202876): Web Inspector: Switching away from Console tab with a lot of messages is slow
-        https://bugs.webkit.org/show_bug.cgi?id=160112
-
-        Reviewed by Joseph Pecoraro.
-
-        Showing NavigationSidebar before removing previous TabContentView can be very slow when
-        TabContentView is ConsoleTabContentView with a lot of messages. The order of operations
-        (show sidebar, change content view, show sidebar) caused more forced layouts. This patch
-        reduces the number of forced layouts by changes the order to: show content view, show sidebar,
-        show sidebar.
-
-        * UserInterface/Views/TabBrowser.js:
-        (WebInspector.TabBrowser.prototype._tabBarItemSelected):
-
-2016-07-20  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Pausing when Debugger tab is closed opens tab in wrong state
-        https://bugs.webkit.org/show_bug.cgi?id=159946
-        <rdar://problem/27429886>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/DebuggerSidebarPanel.js:
-        (WebInspector.DebuggerSidebarPanel):
-        At the end of construction, update the UI to match the current state
-        of the world. Such as updating the UI if we are paused, or if the
-        Timeline is capturing and we are temporarily disabling breakpoints.
-
-2016-07-15  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: Make Open Quickly and Goto Line dialogs match Xcode 8
-        https://bugs.webkit.org/show_bug.cgi?id=159823
-        rdar://problem/27376501
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Views/GoToLineDialog.css:
-        (.go-to-line-dialog):
-        (.go-to-line-dialog > div > input):
-        (.go-to-line-dialog > div > input::placeholder):
-        (.go-to-line-dialog > div > img):
-        (.go-to-line-dialog > div): Deleted.
-        * UserInterface/Views/OpenResourceDialog.css:
-        (.open-resource-dialog):
-        (.open-resource-dialog > .field):
-        (.open-resource-dialog > .field > input):
-        (.open-resource-dialog > .field > input::placeholder):
-        (.open-resource-dialog > .field > img):
-        (.open-resource-dialog > .tree-outline .item): Deleted.
-        (.open-resource-dialog > .tree-outline .item:first-child): Deleted.
-
-2016-07-14  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Rename CCTNode to CallingContextTreeNode
-        https://bugs.webkit.org/show_bug.cgi?id=159782
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Models/CallingContextTree.js:
-        * UserInterface/Models/CallingContextTreeNode.js:
-        Extra to its own file and rename.
-
-        * UserInterface/Main.html:
-        * UserInterface/Test.html:
-        * UserInterface/TestStub.html:
-        Include the new file.
-
-        * UserInterface/Views/ProfileDataGridNode.js:
-        (WebInspector.ProfileDataGridNode):
-        * UserInterface/Views/ProfileDataGridTree.js:
-        (WebInspector.ProfileDataGridTree.prototype._updateCurrentFocusDetails):
-        Rename shorthand "cctnode".
-
-2016-07-14  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: SidebarPanel classes should use View.layout instead of "refresh"
-        https://bugs.webkit.org/show_bug.cgi?id=159745
-        <rdar://problem/27335252>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/ApplicationCacheDetailsSidebarPanel.js:
-        (WebInspector.ApplicationCacheDetailsSidebarPanel.prototype.set applicationCacheFrame):
-        Use needsLayout.
-
-        * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
-        (WebInspector.CSSStyleDetailsSidebarPanel.prototype.layout):
-        Move refresh logic to layout.
-        (WebInspector.CSSStyleDetailsSidebarPanel.prototype.initialLayout):
-        (WebInspector.CSSStyleDetailsSidebarPanel.prototype._styleSheetAddedOrRemoved):
-        Defer layout to coalesce updates.
-        (WebInspector.CSSStyleDetailsSidebarPanel):
-        (WebInspector.CSSStyleDetailsSidebarPanel.prototype.refresh): Deleted.
-
-        * UserInterface/Views/DOMDetailsSidebarPanel.js:
-        (WebInspector.DOMDetailsSidebarPanel.prototype.set domNode):
-        Use needsLayout.
-
-        * UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
-        Move refresh logic to layout.
-
-        * UserInterface/Views/DetailsSidebarPanel.js:
-        (WebInspector.DetailsSidebarPanel.prototype.shown): Deleted.
-        Base class already forces a layout when shown.
-        (WebInspector.DetailsSidebarPanel.prototype.needsRefresh): Deleted.
-        No longer needed.
-        (WebInspector.DetailsSidebarPanel.prototype.refresh): Deleted.
-        Renamed layout.
-        (WebInspector.DetailsSidebarPanel): Deleted.
-
-        * UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
-        (WebInspector.LayerTreeDetailsSidebarPanel.prototype.supportsDOMNode):
-        (WebInspector.LayerTreeDetailsSidebarPanel.prototype._layerTreeDidChange):
-        Use needsLayout.
-        (WebInspector.LayerTreeDetailsSidebarPanel.prototype.shown):
-        Base class already forces a layout when shown.
-
-        * UserInterface/Views/ResourceDetailsSidebarPanel.js:
-        (WebInspector.ResourceDetailsSidebarPanel.prototype.set resource):
-        Use needsLayout.
-
-        * UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
-        (WebInspector.ScopeChainDetailsSidebarPanel):
-        (WebInspector.ScopeChainDetailsSidebarPanel.prototype.set callFrame):
-        (WebInspector.ScopeChainDetailsSidebarPanel.prototype._addWatchExpression):
-        (WebInspector.ScopeChainDetailsSidebarPanel.prototype._removeWatchExpression):
-        (WebInspector.ScopeChainDetailsSidebarPanel.prototype._clearAllWatchExpressions):
-        (WebInspector.ScopeChainDetailsSidebarPanel.prototype._refreshAllWatchExpressionsButtonClicked):
-        (WebInspector.ScopeChainDetailsSidebarPanel.prototype._didEvaluateExpression):
-        (WebInspector.ScopeChainDetailsSidebarPanel.prototype._mainResourceDidChange):
-        Use needsLayout.
-
-2016-07-14  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Maintain selected function when switching between different profile representations
-        https://bugs.webkit.org/show_bug.cgi?id=159778
-        <rdar://problem/27355913>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Models/CallingContextTree.js:
-        (WebInspector.CCTNode):
-        (WebInspector.CCTNode.prototype.get hash):
-        (WebInspector.CCTNode.prototype.findOrMakeChild):
-        (WebInspector.CCTNode.prototype.equals):
-        Expose the hash so two nodes can be compared cheaply.
-
-        * UserInterface/Views/ProfileView.js:
-        (WebInspector.ProfileView.prototype._repopulateDataGridFromTree):
-        (WebInspector.ProfileView.prototype._restoreSharedState):
-        (WebInspector.ProfileView.prototype._dataGridNodeSelected):
-        Share data between multiple ProfileViews. Currently just remembering
-        and restoring the selected function.
-
-        * UserInterface/Views/ScriptProfileTimelineView.js:
-        (WebInspector.ScriptProfileTimelineView):
-        (WebInspector.ScriptProfileTimelineView.prototype._showProfileViewForOrientation):
-        Include the shared data when constructing new ProfileViews.
-
-2016-07-13  Matt Baker  <mattbaker@apple.com>
-
-        Uncaught Exception: TypeError: null is not an object (evaluating 'this._contentViewContainer.currentContentView.showsFilterBar')
-        https://bugs.webkit.org/show_bug.cgi?id=159696
-        <rdar://problem/27312356>
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Views/TimelineRecordingContentView.js:
-        (WebInspector.TimelineRecordingContentView.prototype._contentViewSelectionPathComponentDidChange):
-        Early return if content view not visible, since the event is sent during
-        tab teardown and the current TimelineView may be invalid.
-
-2016-07-12  Joseph Pecoraro  <pecoraro@apple.com>
-
-        REGRESSION(r192789): Web Inspector: Log Value context menu appears twice
-        https://bugs.webkit.org/show_bug.cgi?id=159681
-        <rdar://problem/27304804>
-
-        Reviewed by Brian Burg.
-
-        In r192789 contextmenu events may bubble up so that multiple handlers
-        may append ContextMenuItems. In nested ObjectTrees / ObjectPreviews
-        this could result in duplicate items. Add a flag on the bubbling event
-        so that we only include Object Tree context menu items for the deepest
-        part of the Object Tree, but still allow bubbling up to the root.
-
-        * UserInterface/Views/ObjectPreviewView.js:
-        (WebInspector.ObjectPreviewView.prototype._contextMenuHandler):
-        (WebInspector.ObjectPreviewView):
-        * UserInterface/Views/ObjectTreeBaseTreeElement.js:
-        (WebInspector.ObjectTreeBaseTreeElement.prototype._contextMenuHandler):
-
-2016-07-12  Johan K. Jensen  <johan_jensen@apple.com>
-
-        Web Inspector: ER: Copy as cURL
-        https://bugs.webkit.org/show_bug.cgi?id=159380
-
-        Reviewed by Joseph Pecoraro.
-
-        Inspired by https://chromium.googlesource.com/chromium/src/+/b7c1115dbae65030ad96e773d9a270465a05f5c4/third_party/WebKit/Source/devtools/front_end/network/NetworkLogView.js
-
-        This "Copy as cURL" feature only approximates the original request as only some parts of
-        that request is known to the frontend.
-
-        * UserInterface/Models/Resource.js:
-        (WebInspector.Resource.prototype.generateCURLCommand.escapeStringPosix.escapeCharacter):
-        (WebInspector.Resource.prototype.generateCURLCommand.escapeStringPosix):
-        (WebInspector.Resource.prototype.generateCURLCommand):
-        (WebInspector.Resource):
-        * UserInterface/Views/ResourceTimelineDataGridNode.js:
-        (WebInspector.ResourceTimelineDataGridNode.prototype.appendContextMenuItems):
-
-2016-07-12  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Use separate files for TreeOutline/TreeElement and DataGrid/DataGridNode
-        https://bugs.webkit.org/show_bug.cgi?id=159659
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Main.html:
-        * UserInterface/Views/DataGrid.js:
-        * UserInterface/Views/DataGridNode.js: Added.
-        * UserInterface/Views/TreeElement.js: Added.
-        * UserInterface/Views/TreeOutline.js:
-        Extra the component classes to their own file.
-
-2016-07-11  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: ProfileView sometimes shows Top Functions data despite Top Functions being disabled
-        https://bugs.webkit.org/show_bug.cgi?id=159660
-        <rdar://problem/27291647>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/ScriptProfileTimelineView.js:
-        (WebInspector.ScriptProfileTimelineView.prototype._profileOrientationButtonClicked):
-        Pass the value of the setting, not the setting itself.
-
-2016-07-11  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Transition and Animation sections in Visual Styles sidebar should have more spacing to their left
-        https://bugs.webkit.org/show_bug.cgi?id=159633
-        <rdar://problem/27281805>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/VisualStyleDetailsPanel.css:
-        (.visual-style-property-container.animation):
-
-2016-07-08  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Command-Shift-S in the Styles sidebar should always show the save dialog
-        https://bugs.webkit.org/show_bug.cgi?id=156858
-        <rdar://problem/25859098>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/CSSStyleDeclarationSection.js:
-        (WebInspector.CSSStyleDeclarationSection):
-
-2016-07-07  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector, regression: JS/JSON pretty-printing sporadically broken in STP8
-        https://bugs.webkit.org/show_bug.cgi?id=159511
-        <rdar://problem/27218435>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Workers/Formatter/FormatterWorker.js:
-        (FormatterWorker.prototype.formatJavaScript):
-        Attempt to format invalid JSON that can be evaluated to an object.
-
-2016-07-07  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: scrolled Snapshot list is reset to top and drawn blank after switching back from Snapshot Comparison view
-        https://bugs.webkit.org/show_bug.cgi?id=158218
-        rdar://problem/26545000
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Views/ClusterContentView.js:
-        (WebInspector.ClusterContentView.prototype.get scrollableElements): Added.
-        A default implementation for all cluster views.
-
-        * UserInterface/Views/DOMStorageContentView.js:
-        (WebInspector.DOMStorageContentView.prototype.get scrollableElements): Deleted.
-        This was duplicated in the class, removed one.
-
-        * UserInterface/Views/HeapAllocationsTimelineView.js:
-        (WebInspector.HeapAllocationsTimelineView): Initialize _snapshotListScrollTop.
-        (WebInspector.HeapAllocationsTimelineView.prototype.get scrollableElements): Added. Return elements
-        based on what is showing.
-
-        (WebInspector.HeapAllocationsTimelineView.prototype.showHeapSnapshotList): Restore the scroll position
-        of the DataGrid after it is added to the view.
-
-        (WebInspector.HeapAllocationsTimelineView.prototype.showHeapSnapshotTimelineRecord): Save the scroll position
-        of the DataGrid before it is removed from the view.
-
-        * UserInterface/Views/ScriptClusterTimelineView.js:
-        (WebInspector.ScriptClusterTimelineView.prototype.get scrollableElements): Deleted. Handled by the base class now.
-
-2016-07-06  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: REGRESSION: Hitting ⌘T in Web Inspector no longer opens in new tab in Safari
-        https://bugs.webkit.org/show_bug.cgi?id=159487
-        rdar://problem/27188047
-
-        Change Command-T to Command-Option-T to open a new tab.
-
-        I also changed Command-1, etc. to Command-Option-1, etc. to switch tabs. The number commands
-        conflicted similarly with Safari and didn't work for me as a Web Inspector shortcut at all.
-        We can't use Command-Shift because of Command-Shift-3 and Command-Shift-4 for screenshots.
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Base/Main.js:
-        (WebInspector.contentLoaded):
-
-2016-07-06  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: sometimes reloading a page with main resource selected will show an empty content view
-        https://bugs.webkit.org/show_bug.cgi?id=158069
-        <rdar://problem/26516710>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/DebuggerSidebarPanel.js:
-        (WebInspector.DebuggerSidebarPanel.prototype.showDefaultContentView):
-        Continue until we get one that works.
-
-        * UserInterface/Views/NavigationSidebarPanel.js:
-        (WebInspector.NavigationSidebarPanel.prototype.showDefaultContentViewForTreeElement):
-        Avoid showing a content view for a background tab if it could steal
-        the content view from a foreground tab. This is a targeted fix for
-        reload + tab content view loading behavior. A more general fix would
-        be reducing the work done by non-foreground tabs.
-
-        * UserInterface/Views/TabBrowser.js:
-        (WebInspector.TabBrowser.prototype._tabBarItemSelected):
-        Update navigation sidebar first so it is set when showing the TabContentView.
-
-2016-07-06  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: Uncaught Exception reporter should include the currently dispatching protocol event or request/response if applicable
-        https://bugs.webkit.org/show_bug.cgi?id=159320
-        <rdar://problem/27117754>
-
-        Reviewed by Timothy Hatcher and Joseph Pecoraro.
-
-        Keep track of the currently dispatched protocol response or protocol event and make
-        them available to the uncaught exception reporter. If an internal exception is reported
-        while dispatching an event or response, dump the protocol message(s) into the pre-filled
-        bug report.
-
-        * UserInterface/Debug/UncaughtExceptionReporter.js:
-        (stringifyAndTruncateObject): Added.
-        Rearrange the code that generates the pre-filled report so it's easier to add optional sections.
-
-        * UserInterface/Protocol/InspectorBackend.js:
-        (InspectorBackendClass):
-        (InspectorBackendClass.prototype.get currentDispatchState): Expose the dispatching state.
-        (InspectorBackendClass.prototype._sendCommandToBackendWithCallback):
-        (InspectorBackendClass.prototype._sendCommandToBackendExpectingPromise):
-        Store the originating command request with the pendingResponse data so that we can examine
-        the originating request if the response causes an error. This will cause request message objects
-        to be garbage-collected after their responses are dispatched rather than when the request is sent.
-        But, I don't forsee this being a performance problem since we should always get a command response
-        and pending command responses do not typically accumulate except when the inspector first loads.
-
-        (InspectorBackendClass.prototype._dispatchResponse): Save the response being dispatched.
-        (InspectorBackendClass.prototype._dispatchResponseToCallback): Simplify exception reporting.
-        (InspectorBackendClass.prototype._dispatchEvent): Save the event being dispatched.
-
-2016-07-05  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: Switch last uses of -webkit-linear-gradient() to linear-gradient()
-        https://bugs.webkit.org/show_bug.cgi?id=159438
-        rdar://problem/27183417
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Views/RenderingFrameTimelineOverviewGraph.css:
-        (.timeline-overview-graph.rendering-frame > .frame-marker):
-        (body.window-inactive .timeline-overview-graph.rendering-frame > .frame-marker):
-        * UserInterface/Views/TimelineRecordFrame.css:
-        (.timeline-record-frame.tall):
-        (.timeline-record-frame.selected):
-        (body.window-inactive .timeline-record-frame.selected):
-
-2016-07-05  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: Drop -webkit-calc() in completions and a single use
-        https://bugs.webkit.org/show_bug.cgi?id=159435
-        rdar://problem/27179340
-
-        Reviewed by Dean Jackson.
-
-        * UserInterface/Models/CSSKeywordCompletions.js:
-        * UserInterface/Views/VisualStylePropertyEditorLink.css:
-        (.visual-style-property-editor-link > .visual-style-property-editor-link-border):
-
-2016-07-05  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: Drop the prefix from -webkit-image-set()
-        https://bugs.webkit.org/show_bug.cgi?id=159433
-        rdar://problem/27178887
-
-        Reviewed by Dean Jackson.
-
-        * UserInterface/Models/CSSKeywordCompletions.js:
-        * UserInterface/Views/ApplicationCacheIcons.css:
-        (.application-cache-manifest .icon):
-        (.application-cache-frame .icon):
-        * UserInterface/Views/CookieIcon.css:
-        (.cookie-icon .icon):
-        * UserInterface/Views/DOMStorageIcons.css:
-        (.local-storage-icon .icon):
-        (.session-storage-icon .icon):
-        * UserInterface/Views/DatabaseIcon.css:
-        (.database-icon .icon):
-        * UserInterface/Views/DatabaseTableIcon.css:
-        (.database-table-icon .icon):
-        * UserInterface/Views/FolderIcon.css:
-        (.folder-icon .icon):
-        * UserInterface/Views/GradientSlider.css:
-        (.gradient-slider-knob):
-        (.gradient-slider-knob.selected):
-        * UserInterface/Views/HoverMenu.css:
-        (.hover-menu > img):
-        * UserInterface/Views/ResourceIcons.css:
-        (.resource-icon .icon):
-        (.resource-icon.resource-type-document .icon):
-        (.resource-icon.resource-type-image .icon):
-        (.resource-icon.resource-type-font .icon):
-        (.resource-icon.resource-type-stylesheet .icon):
-        (.resource-icon.resource-type-script .icon):
-        (.anonymous-script-icon .icon):
-        (.source-map-resource.resource-icon .icon):
-        (.source-map-resource.resource-icon.resource-type-stylesheet .icon):
-        (.source-map-resource.resource-icon.resource-type-script .icon):
-        (.large .resource-icon .icon):
-        (.large .resource-icon.resource-type-document .icon):
-        (.large .resource-icon.resource-type-image .icon):
-        (.large .resource-icon.resource-type-font .icon):
-        (.large .resource-icon.resource-type-stylesheet .icon):
-        (.large .resource-icon.resource-type-script .icon):
-        (.large .anonymous-script-icon .icon):
-        (.large .source-map-resource.resource-icon .icon):
-        (.large .source-map-resource.resource-icon.resource-type-stylesheet .icon):
-        (.large .source-map-resource.resource-icon.resource-type-script .icon):
-        * UserInterface/Views/Slider.css:
-        (.slider > img):
-        (.slider > img.dragging):
-        * UserInterface/Views/SourceCodeTextEditor.css:
-        (.hover-menu.color > img):
-        * UserInterface/Views/TextEditor.css:
-        (.text-editor > .CodeMirror .has-breakpoint .CodeMirror-linenumber::before):
-        (.text-editor > .CodeMirror .breakpoint-resolved .CodeMirror-linenumber::before):
-        (.text-editor > .CodeMirror .execution-line .CodeMirror-linenumber::after):
-        * UserInterface/Views/TimelineIcons.css:
-        (body:not(.mac-platform, .windows-platform) .network-icon .icon):
-        (body:not(.mac-platform, .windows-platform) .network-icon.large .icon):
-        (body:not(.mac-platform, .windows-platform) .layout-icon .icon):
-        (body:not(.mac-platform, .windows-platform) .layout-icon.large .icon):
-        (body:not(.mac-platform, .windows-platform) .script-icon .icon):
-        (body:not(.mac-platform, .windows-platform) .script-icon.large .icon):
-        (body:not(.mac-platform, .windows-platform) .rendering-frame-icon .icon):
-        (body:not(.mac-platform, .windows-platform) .memory-icon .icon):
-        (body:not(.mac-platform, .windows-platform) .heap-allocations-icon .icon):
-        (body:not(.mac-platform, .windows-platform) .stopwatch-icon .icon):
-
-2016-07-02  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: CallFrame console.assert seen in tests (sourceCodeLocation instanceof SourceCodeLocation)
-        https://bugs.webkit.org/show_bug.cgi?id=159368
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Test.html:
-        SourceCodeLocation was already included earlier. This redefines it and
-        thereby breaks some things.
-
-2016-07-02  Joseph Pecoraro  <pecoraro@apple.com>
-
-        inspector/debugger/command-line-api-exception.html flakily times out on mac
-        https://bugs.webkit.org/show_bug.cgi?id=152029
-        <rdar://problem/23813812>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Base/Object.js:
-        (WebInspector.Object.addEventListener):
-        Return the listener, this makes it cleaner to write tests.
-
-2016-07-01  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Make enabling protocol logging in inspector tests easy to remember
-        https://bugs.webkit.org/show_bug.cgi?id=159323
-
-        Reviewed by Brian Burg.
-
-        Now you just need to type InspectorTest.debug() or
-        ProtocolTest.debug() and it will include stderr logging.
-
-        * UserInterface/Test/FrontendTestHarness.js:
-        (FrontendTestHarness.prototype.debug):
-        * UserInterface/Test/ProtocolTestHarness.js:
-        (ProtocolTestHarness.prototype.debug):
-        (ProtocolTestHarness):
-        * UserInterface/Test/TestHarness.js:
-        (TestHarness.prototype.debug):
-
-2016-06-30  Matt Baker  <mattbaker@apple.com>
-
-        Unreviewed build fix.
-
-        * Localizations/en.lproj/localizedStrings.js:
-        Add "Area" localized string.
-
-2016-06-30  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Wrong function name next to scope
-        https://bugs.webkit.org/show_bug.cgi?id=158210
-        <rdar://problem/26543093>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Controllers/DebuggerManager.js:
-        (WebInspector.DebuggerManager.prototype._scopeChainNodeFromPayload):
-        Include new payload data in the construction call.
-        All the new data is optional, so we gracefully handle
-        legacy backends.
-
-        * UserInterface/Models/ScopeChainNode.js:
-        (WebInspector.ScopeChainNode):
-        (WebInspector.ScopeChainNode.prototype.get type):
-        (WebInspector.ScopeChainNode.prototype.get objects):
-        (WebInspector.ScopeChainNode.prototype.get name):
-        (WebInspector.ScopeChainNode.prototype.get location):
-        (WebInspector.ScopeChainNode.prototype.get hash):
-        Hash is a rough (name:sourceId:line:column) string for quick comparisons.
-
-        (WebInspector.ScopeChainNode.prototype.makeLocalScope):
-        Make this an action you take on a scope, to avoid having to
-        do it at construction time, or making it a generic setting.
-
-        * UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
-        (WebInspector.ScopeChainDetailsSidebarPanel.prototype._generateCallFramesSection):
-        This was wrong before. Move the work to CallFrame
-        and change it to be correct.
-
-        * UserInterface/CallFrame.js:
-        (WebInspector.CallFrame.prototype.mergedScopeChain):
-
-        This transforms the scope chain for a call frame from:
-        
-             scope1  scope2  scope3  scope4  scope5  scope6  scope7
-              foo     foo     foo     bar     bar      -       -
-             Block  Closure Closure Closure Closure   GLE     GBL
-
-        To:
-             scope1  scope2&3   scope4&5  scope6  scope7
-              foo      foo*       bar*      -       -
-             Block    Local     Closure    GLE     GBL
-
-        Doing a few things:
-
-            - Merge the first two Closure scopes sharing a location.
-              These are the "var" and "let" Closure scopes in a function,
-              and it is better to present these together in the UI.
-
-            - Mark the first Closure scope within a function (*). When
-              this is displayed in the UI, we can provide the name of
-              the function: "Closure Scope (name)", and we even have
-              location information that we can use to display a goto
-              arrow if needed.
-
-            - Make the first Closure scope the Local scope if it
-              matches the Call Frame's function name. This lets us
-              display the section as "Local Variables".
-
-2016-06-30  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: add pixel area column to layout timeline view
-        https://bugs.webkit.org/show_bug.cgi?id=148677
-        <rdar://problem/22518762>
-
-        Reviewed by Timothy Hatcher.
-
-        The view can simply add the column. LayoutTimelineDataGridNode
-        already includes area data and cell formatting.
-
-        * UserInterface/Views/LayoutTimelineView.js:
-        (WebInspector.LayoutTimelineView):
-
-2016-06-30  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: the last normal tab cannot be closed with "Close Tab" context menu item
-        https://bugs.webkit.org/show_bug.cgi?id=159317
-        <rdar://problem/27042491>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/TabBarItem.js:
-        (WebInspector.TabBarItem.prototype._handleContextMenuEvent):
-        (WebInspector.TabBarItem): fix the expression that controls whether the item is disabled.
-
-2016-06-30  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Add "spring" to transition-timing-function value autocompletion
-        https://bugs.webkit.org/show_bug.cgi?id=159313
-        <rdar://problem/27114269>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Models/CSSKeywordCompletions.js:
-
-2016-06-30  Commit Queue  <commit-queue@webkit.org>
-
-        Unreviewed, rolling out r202659.
-        https://bugs.webkit.org/show_bug.cgi?id=159305
-
-        The test for this change times out on mac-wk2 debug and caused
-        an existing test to crash. (Requested by ryanhaddad on
-        #webkit).
-
-        Reverted changeset:
-
-        "Web Inspector: Wrong function name next to scope"
-        https://bugs.webkit.org/show_bug.cgi?id=158210
-        http://trac.webkit.org/changeset/202659
-
-2016-06-29  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Wrong function name next to scope
-        https://bugs.webkit.org/show_bug.cgi?id=158210
-        <rdar://problem/26543093>
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Controllers/DebuggerManager.js:
-        (WebInspector.DebuggerManager.prototype._scopeChainNodeFromPayload):
-        Include new payload data in the construction call.
-        All the new data is optional, so we gracefully handle
-        legacy backends.
-
-        * UserInterface/Models/ScopeChainNode.js:
-        (WebInspector.ScopeChainNode):
-        (WebInspector.ScopeChainNode.prototype.get type):
-        (WebInspector.ScopeChainNode.prototype.get objects):
-        (WebInspector.ScopeChainNode.prototype.get name):
-        (WebInspector.ScopeChainNode.prototype.get location):
-        (WebInspector.ScopeChainNode.prototype.get hash):
-        Hash is a rough (name:sourceId:line:column) string for quick comparisons.
-
-        (WebInspector.ScopeChainNode.prototype.makeLocalScope):
-        Make this an action you take on a scope, to avoid having to
-        do it at construction time, or making it a generic setting.
-
-        * UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
-        (WebInspector.ScopeChainDetailsSidebarPanel.prototype._generateCallFramesSection):
-        This was wrong before. Move the work to CallFrame
-        and change it to be correct.
-
-        * UserInterface/CallFrame.js:
-        (WebInspector.CallFrame.prototype.mergedScopeChain):
-
-        This transforms the scope chain for a call frame from:
-        
-             scope1  scope2  scope3  scope4  scope5  scope6  scope7
-              foo     foo     foo     bar     bar      -       -
-             Block  Closure Closure Closure Closure   GLE     GBL
-
-        To:
-             scope1  scope2&3   scope4&5  scope6  scope7
-              foo      foo*       bar*      -       -
-             Block    Local     Closure    GLE     GBL
-
-        Doing a few things:
-
-            - Merge the first two Closure scopes sharing a location.
-              These are the "var" and "let" Closure scopes in a function,
-              and it is better to present these together in the UI.
-
-            - Mark the first Closure scope within a function (*). When
-              this is displayed in the UI, we can provide the name of
-              the function: "Closure Scope (name)", and we even have
-              location information that we can use to display a goto
-              arrow if needed.
-
-            - Make the first Closure scope the Local scope if it
-              matches the Call Frame's function name. This lets us
-              display the section as "Local Variables".
-
-2016-06-29  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: Uncaught Exception page never shows if exception is thrown while processing a protocol event
-        https://bugs.webkit.org/show_bug.cgi?id=159182
-
-        Reviewed by Joseph Pecoraro.
-
-        Since we catch exceptions raised during the handling of protocol responses and events, there
-        is no way for these exceptions to trigger the global exception handler that shows the Uncaught
-        Exception Reporter sheet. We should show these in the sheet because it makes them get fixed faster.
-
-        Add a new entry point, WebInspector.reportInternalError, that takes an error or string and
-        a free-form map of strings to strings for storing additional information such as message data.
-        Pass the error and any other relevant details to this entry point, which decides whether to
-        show the uncaught exception reporter or quietly log the error to Inspector^2 console.
-
-        In future patches, I would like to do the following once the common errors are fixed:
-         - enable reporting via Uncaught Exception Reporter for all engineering builds
-         - move internal console.error call sites to use WebInspector.reportInternalError
-
-        * UserInterface/Base/Main.js: Add reportInternalError, which redirects to the uncaught
-        exception reporter sheet or does console.error. It also adds a console.assert that could
-        cause the debugger to pause if desired.
-
-        * UserInterface/Debug/UncaughtExceptionReporter.css:
-        (.sheet-container): Make the report scrollable now that we could potentially show a lot of text.
-
-        * UserInterface/Debug/UncaughtExceptionReporter.js:
-        (handleError): Also pass along the 'details' poperty.
-        (formattedEntry): Refactor the code so it additionally prints out the keys and values of
-        the 'details' property. It does not do any coercions, so callers must convert values to strings.
-
-        * UserInterface/Protocol/InspectorBackend.js:
-        (InspectorBackendClass.prototype._dispatchResponse): Inlined a function.
-        (InspectorBackendClass.prototype._dispatchResponseToCallback):
-        (InspectorBackendClass.prototype._dispatchEvent):
-        Report uncaught exceptions via WebInspector.reportInternalError.
-
-        (InspectorBackendClass.prototype._reportProtocolError): Deleted, inlined into the single use site.
-
-2016-06-29  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Show Shadow Root type in DOM Tree
-        https://bugs.webkit.org/show_bug.cgi?id=159236
-        <rdar://problem/27068521>
-
-        Reviewed by Timothy Hatcher.
-
-        * Localizations/en.lproj/localizedStrings.js:
-        "Shadow Content (type)" string.
-
-        * UserInterface/Models/DOMNode.js:
-        (WebInspector.DOMNode):
-        (WebInspector.DOMNode.prototype.shadowRoots):
-        (WebInspector.DOMNode.prototype.shadowRootType):
-        Initialize state and add accessors.
-
-        * UserInterface/Views/DOMTreeElement.js:
-        (WebInspector.DOMTreeElement.shadowRootTypeDisplayName):
-        (WebInspector.DOMTreeElement.prototype._nodeTitleInfo):
-        Better string when an element is a Shadow Root.
-
-        * UserInterface/Views/DOMTreeElementPathComponent.js:
-        (WebInspector.DOMTreeElementPathComponent):
-        Better to check the Shadow Root type.
-
-        * UserInterface/Views/DOMTreeOutline.css:
-        (.tree-outline.dom .html-fragment.shadow):
-        Opacity looks poor when there is a selection. Switch to gray.
-
-2016-06-28  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        REGRESSION (r188730): Web Inspector: Warning icons incorrectly positioned in CSS Rules sidebar
-        https://bugs.webkit.org/show_bug.cgi?id=157869
-        <rdar://problem/26356520>
-
-        Reviewed by Timothy Hatcher.
-
-        Before r188730, CSS text always had a line break as a prefix. r188730 started trimming text.
-        This patch keeps trimming unnecessary whitespace but brings back required line break prefix.
-
-        * UserInterface/Models/CSSStyleDeclaration.js:
-        (WebInspector.CSSStyleDeclaration.prototype.set text):
-        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
-        Make PrefixWhitespace and SuffixWhitespace public.
-
-        (WebInspector.CSSStyleDeclarationTextEditor.prototype._formattedContent):
-        (WebInspector.CSSStyleDeclarationTextEditor.prototype._updateTextMarkers.update):
-        (WebInspector.CSSStyleDeclarationTextEditor.prototype._updateTextMarkers):
-        Remove an if conditional as it's always true.
-
-2016-06-28  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: QuickConsole should update its selection when RuntimeManager.defaultExecutionContextIdentifier changes
-        https://bugs.webkit.org/show_bug.cgi?id=159183
-
-        Reviewed by Timothy Hatcher.
-
-        Currently, the UI listens for state changes in the Frame tree to decide when to reset
-        the selected execution context back to its default value. This is no good, because this
-        should happen even if we have no UI (i.e., testing models only). The UI should simply
-        display changes to the model rather than driving them based on other model changes.
-
-        Move the logic to reset the execution context into RuntimeManager. When the selected
-        context changes, an event is fired which causes the QuickConsole to rebuild its path components.
-
-        * UserInterface/Controllers/RuntimeManager.js:
-        (WebInspector.RuntimeManager):
-        (WebInspector.RuntimeManager.prototype.set defaultExecutionContextIdentifier):
-        Fire an event when the execution context actually changes.
-
-        (WebInspector.RuntimeManager.prototype._frameExecutionContextsCleared):
-        Added. If the selected context was cleared, reset back to default.
-
-        * UserInterface/Models/Frame.js:
-        (WebInspector.Frame.prototype.clearExecutionContexts):
-        Include the contexts that were cleared so clients can match against them.
-
-        * UserInterface/Views/QuickConsole.js:
-        (WebInspector.QuickConsole):
-        Use the proper constant name. Both the old and new names evaluated to `undefined`.
-        No need to keep track of the selected path component, it will always match the
-        defaultExecutionContextIdentifier in RuntimeManager.
-
-        (WebInspector.QuickConsole.prototype.get selectedExecutionContextIdentifier):
-        (WebInspector.QuickConsole.prototype.set selectedExecutionContextIdentifier):
-        Forward to RuntimeManager. This name is less awkward for the UI code that manages selections.
-
-        (WebInspector.QuickConsole.prototype._executionContextPathComponentsToDisplay):
-        Special-case for the main frame execution context.
-
-        (WebInspector.QuickConsole.prototype._framePageExecutionContextsChanged):
-        Remove indirection.
-
-        (WebInspector.QuickConsole.prototype._frameExecutionContextsCleared):
-        Fix the guard to handle undefined execution contexts in the case where it represents the main frame (undefined).
-
-        (WebInspector.QuickConsole.prototype._defaultExecutionContextChanged):
-        Rebuild when the model changes.
-
-        (WebInspector.QuickConsole.prototype._pathComponentSelected): Simplify.
-        (WebInspector.QuickConsole.prototype.get executionContextIdentifier):
-        (WebInspector.QuickConsole.prototype._removeExecutionContextPathComponentForFrame):
-        Move the fallback selection behavior into RuntimeManager.
-
-        (WebInspector.QuickConsole.prototype._updateExecutionContextPathComponentForFrame): Deleted.
-        This has been dead code ever since we removed iOS 6 legacy support.
-
-2016-06-27  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: When modifying sessionStorage, localStorage gets updated
-        https://bugs.webkit.org/show_bug.cgi?id=159181
-        <rdar://problem/27043447>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Test/Test.js:
-        (WebInspector.loaded):
-        Add registration for StorageManager and StorageObserver.
-
-2016-06-27  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: RuntimeManager should not use view object WebInspector.quickConsole
-        https://bugs.webkit.org/show_bug.cgi?id=128092
-        <rdar://problem/15966526>
-
-        Reviewed by Timothy Hatcher.
-
-        This is a layering violation which makes it harder to use RuntimeManager.evaluateInInspectedWindow
-        from a testing context where the QuickConsole view does not exist.
-
-        Store the selected execution context identifier on RuntimeManager and use it
-        when doing subsequent evaluations that act on the currently selected frame.
-
-        * UserInterface/Controllers/RuntimeManager.js:
-        (WebInspector.RuntimeManager.prototype.evaluateInInspectedWindow):
-        (WebInspector.RuntimeManager.prototype.saveResult):
-        Use local state.
-
-        (WebInspector.RuntimeManager.prototype.get defaultExecutionContextIdentifier):
-        (WebInspector.RuntimeManager.prototype.set defaultExecutionContextIdentifier):
-        Added.
-
-        (WebInspector.RuntimeManager):
-        * UserInterface/Models/ExecutionContext.js:
-        (WebInspector.ExecutionContext):
-        Move the symbolic name for the top level execution context to RuntimeManager.
-
-        * UserInterface/Test/Test.js:
-        (WebInspector.loaded): No need to stub out WebInspector.QuickConsole any more.
-
-        * UserInterface/Views/QuickConsole.js:
-        (WebInspector.QuickConsole.prototype._framePageExecutionContextsChanged):
-        (WebInspector.QuickConsole.prototype._removeExecutionContextPathComponentForFrame):
-        (WebInspector.QuickConsole.prototype._updateExecutionContextPathComponentForFrame):
-        (WebInspector.QuickConsole.prototype._pathComponentSelected):
-        For now, set RuntimeManager's selected execution context whenever we set the
-        selected path component. In a future patch, we should invert the dependency and have
-        the selected component change whenever RuntimeManager.defaultExecutionContext changes.
-
-2016-06-23  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: first heap snapshot taken when a page is reloaded happens before the reload navigation
-        https://bugs.webkit.org/show_bug.cgi?id=158995
-        <rdar://problem/26923778>
-
-        Reviewed by Brian Burg.
-
-        Let instruments decide to do work or not based on programmatic
-        (backend initiated) starts and stop.
-
-        Programmatic start can happen due to Auto Capture or console.profile.
-        Programmatic stop can happen due to console.profileEnd.
-
-        For example, this allows the frontend to avoid sending agents start/stop
-        messages when the backend would have already started/stopped the agents.
-
-        * UserInterface/Controllers/TimelineManager.js:
-        (WebInspector.TimelineManager):
-        (WebInspector.TimelineManager.prototype.startCapturing):
-        (WebInspector.TimelineManager.prototype.capturingStopped):
-        (WebInspector.TimelineManager.prototype.autoCaptureStarted):
-        (WebInspector.TimelineManager.prototype.programmaticCaptureStarted):
-        Call Recording.start/stop with a programmatic flag so the frontend
-        instruments can perform a more informed start/stop.
-
-        * UserInterface/Models/TimelineRecording.js:
-        (WebInspector.TimelineRecording.prototype.start):
-        (WebInspector.TimelineRecording.prototype.stop):
-        Let the instruments decide to do work based on the start/stop
-        being initiated by the backend or not.
-
-        * UserInterface/Models/HeapAllocationsInstrument.js:
-        (WebInspector.HeapAllocationsInstrument.prototype.startInstrumentation):
-        (WebInspector.HeapAllocationsInstrument.prototype.stopInstrumentation):
-        * UserInterface/Models/Instrument.js:
-        (WebInspector.Instrument.startLegacyTimelineAgent):
-        (WebInspector.Instrument.prototype.startInstrumentation):
-        (WebInspector.Instrument.prototype.stopInstrumentation):
-        (WebInspector.Instrument):
-        * UserInterface/Models/MemoryInstrument.js:
-        (WebInspector.MemoryInstrument.prototype.startInstrumentation):
-        (WebInspector.MemoryInstrument.prototype.stopInstrumentation):
-        (WebInspector.MemoryInstrument):
-        * UserInterface/Models/NetworkInstrument.js:
-        * UserInterface/Models/ScriptInstrument.js:
-        (WebInspector.ScriptInstrument.prototype.startInstrumentation):
-        (WebInspector.ScriptInstrument.prototype.stopInstrumentation):
-        (WebInspector.ScriptInstrument):
-        Avoid sending start/stop tracking messages when programmatic.
-        This still allows the instruments to do their own frontend tracking,
-        such as the Heap agent triggering periodic snapshots.
-
-2016-06-23  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Snapshots should be cleared at some point
-        https://bugs.webkit.org/show_bug.cgi?id=157907
-        <rdar://problem/26373610>
-
-        Reviewed by Timothy Hatcher.
-
-        Invalidate HeapSnapshotProxy objects when the page navigates.
-        This allows us to clear our frontend data for the snapshots.
-        When a snapshot is invalidated, it is disabled in the UI.
-        This means you cannot select the snapshot or see content
-        views for the snapshot. If you are in a snapshot when it is
-        invalidated, you are taken out to the snapshot list.
-
-        * UserInterface/Main.html:
-        New files.
-
-        * UserInterface/Proxies/HeapSnapshotProxy.js:
-        (WebInspector.HeapSnapshotProxy):
-        (WebInspector.HeapSnapshotProxy.invalidateSnapshotProxies):
-        (WebInspector.HeapSnapshotProxy.prototype.get invalid):
-        (WebInspector.HeapSnapshotProxy.prototype._invalidate):
-        Keep track of valid snapshots, and provide a static method to invalidate them.
-
-        (WebInspector.HeapSnapshotProxy.prototype.updateForCollectionEvent):
-        (WebInspector.HeapSnapshotProxy.prototype.allocationBucketCounts):
-        (WebInspector.HeapSnapshotProxy.prototype.instancesWithClassName):
-        (WebInspector.HeapSnapshotProxy.prototype.update):
-        (WebInspector.HeapSnapshotProxy.prototype.nodeWithIdentifier):
-        UI should only act on valid snapshots.
-
-        * UserInterface/Proxies/HeapSnapshotDiffProxy.js:
-        (WebInspector.HeapSnapshotDiffProxy.prototype.get invalid):
-        (WebInspector.HeapSnapshotDiffProxy.prototype.updateForCollectionEvent):
-        (WebInspector.HeapSnapshotDiffProxy.prototype.allocationBucketCounts):
-        (WebInspector.HeapSnapshotDiffProxy.prototype.instancesWithClassName):
-        (WebInspector.HeapSnapshotDiffProxy.prototype.update):
-        (WebInspector.HeapSnapshotDiffProxy.prototype.nodeWithIdentifier):
-        UI should only act on valid snapshots.
-
-        * UserInterface/Proxies/HeapSnapshotWorkerProxy.js:
-        (WebInspector.HeapSnapshotWorkerProxy.prototype._mainResourceDidChange):
-        Invalidate and discard snapshots when the main frame navigates.
-
-        (WebInspector.HeapSnapshotWorkerProxy.prototype._handleMessage):
-        (WebInspector.HeapSnapshotWorkerProxy):
-        * UserInterface/Workers/HeapSnapshot/HeapSnapshotWorker.js:
-        (HeapSnapshotWorker.prototype.clearSnapshots):
-        (HeapSnapshotWorker.prototype._handleMessage):
-        (HeapSnapshotWorker):
-        A message may come in for a snapshot before it has been cleared.
-        If that is the case, the object may not exist. Return an error so
-        that the callback can be deleted on the calling side.
-
-        * UserInterface/Views/HeapAllocationsTimelineDataGridNodePathComponent.js:
-        (WebInspector.HeapAllocationsTimelineDataGridNodePathComponent.prototype.get previousSibling):
-        (WebInspector.HeapAllocationsTimelineDataGridNodePathComponent.prototype.get nextSibling):
-        (WebInspector.HeapAllocationsTimelineDataGridNodePathComponent):
-        Don't show invalid snapshots in page component picker.
-
-        * UserInterface/Views/HeapAllocationsTimelineOverviewGraph.css:
-        (.timeline-overview-graph.heap-allocations > img.snapshot.invalid):
-        * UserInterface/Views/HeapAllocationsTimelineDataGridNode.js:
-        (WebInspector.HeapAllocationsTimelineDataGridNode):
-        (WebInspector.HeapAllocationsTimelineDataGridNode.prototype.createCellContent):
-        (WebInspector.HeapAllocationsTimelineDataGridNode.prototype.createCells):
-        (WebInspector.HeapAllocationsTimelineDataGridNode.prototype._heapSnapshotInvalidated):
-        Give invalid snapshots an invalidated appearance in the snapshot list.
-
-        * UserInterface/Views/HeapAllocationsTimelineOverviewGraph.js:
-        (WebInspector.HeapAllocationsTimelineOverviewGraph.prototype.layout):
-        * UserInterface/Views/HeapAllocationsTimelineView.css:
-        (.timeline-view.heap-allocations > .data-grid tr.invalid):
-        (.timeline-view.heap-allocations > .data-grid:not(:focus, .force-focus) tr.selected.invalid):
-        Give invalid snapshots an invalidated appearance in the overview graph.
-
-        * UserInterface/Views/HeapAllocationsTimelineView.js:
-        (WebInspector.HeapAllocationsTimelineView):
-        (WebInspector.HeapAllocationsTimelineView.prototype.get selectionPathComponents):
-        (WebInspector.HeapAllocationsTimelineView.prototype.closed):
-        (WebInspector.HeapAllocationsTimelineView.prototype._heapSnapshotCollectionEvent.updateHeapSnapshotForEvent):
-        (WebInspector.HeapAllocationsTimelineView.prototype._heapSnapshotCollectionEvent):
-        (WebInspector.HeapAllocationsTimelineView.prototype._heapSnapshotInvalidated):
-        (WebInspector.HeapAllocationsTimelineView.prototype._updateCompareHeapSnapshotButton):
-        (WebInspector.HeapAllocationsTimelineView.prototype._dataGridNodeSelected):
-        Handle interactions when snapshots in the list are invalidated.
-
-2016-06-22  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: don't start auto capturing if the Inspector window is not visible
-        https://bugs.webkit.org/show_bug.cgi?id=159014
-
-        Reviewed by Joseph Pecoraro.
-        <rdar://problem/26931269>
-
-        Followup, add a missing super.closed() call mentioned in review comments.
-
-        * UserInterface/Views/TimelineTabContentView.js:
-        (WebInspector.TimelineTabContentView.prototype.closed):
-
-2016-06-22  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: don't start auto capturing if the Inspector window is not visible
-        https://bugs.webkit.org/show_bug.cgi?id=159014
-        <rdar://problem/26931269>
-
-        Reviewed by Joseph Pecoraro.
-
-        TimelineTabContentView should not tell the timeline manager to enable
-        auto-capturing unless the Web Inspector UI is visible. If it is preloaded
-        but not shown to the user, then auto-capturing may inadvertently disable
-        the debugger, causing it to miss `debugger` statements and not bring the
-        inspector to front.
-
-        * UserInterface/Controllers/TimelineManager.js:
-        (WebInspector.TimelineManager.prototype.set autoCaptureOnPageLoad):
-        Bail out if nothing changed. Coerce to a boolean since the backend requires a boolean.
-
-        * UserInterface/Views/TimelineTabContentView.js:
-        (WebInspector.TimelineTabContentView): Listen for UI visibility changes.
-        (WebInspector.TimelineTabContentView.prototype.shown):
-        Enable auto-capturing if the UI is visible.
-
-        (WebInspector.TimelineTabContentView.prototype.closed): Added.
-        Remove listeners on global objects so this tab doesn't leak.
-
-        (WebInspector.TimelineTabContentView.prototype._inspectorVisibilityChanged):
-        Update the auto-capturing setting if the UI became visible or not visible.
-
-2016-06-22  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Simplify CSS rule for ContentBrowser navigation bar items
-        https://bugs.webkit.org/show_bug.cgi?id=159000
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/ContentBrowser.css:
-        (.content-browser > .navigation-bar > .item):
-        Both these values result in 28px, but `100%` is simplier.
-
-2016-06-21  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        REGRESSION(r201177): Web Inspector: ContentBrowser navigation bar should fit on a single line
-        https://bugs.webkit.org/show_bug.cgi?id=158700
-        <rdar://problem/26772058>
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Views/ContentBrowser.css:
-        (.content-browser > .navigation-bar > .item):
-        Set the height to 28px, as it was before r201177.
-        Make it one pixel shorter than the navigation bar for better vertical alignment.
-
-2016-06-20  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: UncaughtExceptionReporter should handle null event.error
-        https://bugs.webkit.org/show_bug.cgi?id=158971
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Debug/UncaughtExceptionReporter.js:
-        Since `typeof null === "object"` handle uncaught exceptions where the
-        Error object itself is null.
-
-2016-06-20  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Snapshot List should show the total size and the total live size
-        https://bugs.webkit.org/show_bug.cgi?id=157904
-        <rdar://problem/26372833>
-
-        Reviewed by Brian Burg.
-
-        Include the live size of a snapshot in the snapshot list.
-
-        * Localizations/en.lproj/localizedStrings.js:
-        New "Live Size" string.
-
-        * UserInterface/Workers/HeapSnapshot/HeapSnapshot.js:
-        (HeapSnapshot):
-        (HeapSnapshot.updateCategoriesAndMetadata):
-        (HeapSnapshot.prototype.update):
-        (HeapSnapshot.prototype.serialize):
-        (HeapSnapshotDiff):
-        (HeapSnapshotDiff.prototype.update):
-        (HeapSnapshot.buildCategories): Deleted.
-        (HeapSnapshot.prototype.updateCategories): Deleted.
-        (HeapSnapshotDiff.prototype.updateCategories): Deleted.
-        * UserInterface/Proxies/HeapSnapshotDiffProxy.js:
-        (WebInspector.HeapSnapshotDiffProxy.prototype.updateForCollectionEvent):
-        (WebInspector.HeapSnapshotDiffProxy.prototype.update):
-        (WebInspector.HeapSnapshotDiffProxy.prototype.updateCategories): Deleted.
-        * UserInterface/Proxies/HeapSnapshotProxy.js:
-        (WebInspector.HeapSnapshotProxy):
-        (WebInspector.HeapSnapshotProxy.deserialize):
-        (WebInspector.HeapSnapshotProxy.prototype.get liveSize):
-        (WebInspector.HeapSnapshotProxy.prototype.updateForCollectionEvent):
-        (WebInspector.HeapSnapshotProxy.prototype.update):
-        (WebInspector.HeapSnapshotProxy.prototype.updateCategories): Deleted.
-        Rename "updateCategories" to "update" and update both categories
-        and metadata, like the liveSize.
-
-        * UserInterface/Views/HeapAllocationsTimelineDataGridNode.js:
-        (WebInspector.HeapAllocationsTimelineDataGridNode):
-        (WebInspector.HeapAllocationsTimelineDataGridNode.prototype.createCellContent):
-        (WebInspector.HeapAllocationsTimelineDataGridNode.prototype._heapSnapshotCollectedNodes):
-        Update live size after collection.
-
-        * UserInterface/Views/HeapAllocationsTimelineView.js:
-        (WebInspector.HeapAllocationsTimelineView):
-        Include a live size column in the DataGrid.
-        (WebInspector.HeapAllocationsTimelineView.prototype.closed):
-        Cleanup listeners appropriately.
-
-2016-06-20  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: console.profile should use the new Sampling Profiler
-        https://bugs.webkit.org/show_bug.cgi?id=153499
-        <rdar://problem/24352431>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Controllers/TimelineManager.js:
-        (WebInspector.TimelineManager.prototype.programmaticCaptureStarted):
-        (WebInspector.TimelineManager.prototype.programmaticCaptureStopped):
-        (WebInspector.TimelineManager.prototype.scriptProfilerProgrammaticCaptureStarted):
-        (WebInspector.TimelineManager.prototype.scriptProfilerProgrammaticCaptureStopped):
-        For programmatic captures, automatically show the Script Timeline, since
-        that is guarenteed to have been started by the backend. Start capturing
-        without creating a new recording.
-
-        * UserInterface/Models/TimelineRecording.js:
-        (WebInspector.TimelineRecording.prototype.stop):
-        (WebInspector.TimelineRecording.prototype.addScriptInstrumentForProgrammaticCapture):
-        When stopping for programmatic capture we don't need to disable
-        instruments, the backend would have already done this.
-
-        * UserInterface/Protocol/ScriptProfilerObserver.js:
-        (WebInspector.ScriptProfilerObserver.prototype.programmaticCaptureStarted):
-        (WebInspector.ScriptProfilerObserver.prototype.programmaticCaptureStopped):
-        (WebInspector.ScriptProfilerObserver):
-        * UserInterface/Protocol/TimelineObserver.js:
-        (WebInspector.TimelineObserver.prototype.programmaticCaptureStarted):
-        (WebInspector.TimelineObserver.prototype.programmaticCaptureStopped):
-        (WebInspector.TimelineObserver):
-        Pass through Web and JSContext programmatic capture events.
-
-2016-06-19  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Remove Sidebar z-index:0 workaround for scrollbars and position:sticky section headers
-        https://bugs.webkit.org/show_bug.cgi?id=158882
-
-        Reviewed by Darin Adler.
-
-        The z-index:0 workaround is no longer needed as it doesn't change anything.
-
-        * UserInterface/Views/Sidebar.css:
-        (.sidebar > .panel): Deleted.
-
-2016-06-17  Commit Queue  <commit-queue@webkit.org>
-
-        Unreviewed, rolling out r202152.
-        https://bugs.webkit.org/show_bug.cgi?id=158897
-
-        The new test is very unstable, timing out frequently
-        (Requested by ap on #webkit).
-
-        Reverted changeset:
-
-        "Web Inspector: console.profile should use the new Sampling
-        Profiler"
-        https://bugs.webkit.org/show_bug.cgi?id=153499
-        http://trac.webkit.org/changeset/202152
-
-2016-06-16  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: console.profile should use the new Sampling Profiler
-        https://bugs.webkit.org/show_bug.cgi?id=153499
-        <rdar://problem/24352431>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Controllers/TimelineManager.js:
-        (WebInspector.TimelineManager.prototype.programmaticCaptureStarted):
-        (WebInspector.TimelineManager.prototype.programmaticCaptureStopped):
-        (WebInspector.TimelineManager.prototype.scriptProfilerProgrammaticCaptureStarted):
-        (WebInspector.TimelineManager.prototype.scriptProfilerProgrammaticCaptureStopped):
-        For programmatic captures, automatically show the Script Timeline, since
-        that is guarenteed to have been started by the backend. Start capturing
-        without creating a new recording.
-
-        * UserInterface/Models/TimelineRecording.js:
-        (WebInspector.TimelineRecording.prototype.stop):
-        (WebInspector.TimelineRecording.prototype.addScriptInstrumentForProgrammaticCapture):
-        When stopping for programmatic capture we don't need to disable
-        instruments, the backend would have already done this.
-
-        * UserInterface/Protocol/ScriptProfilerObserver.js:
-        (WebInspector.ScriptProfilerObserver.prototype.programmaticCaptureStarted):
-        (WebInspector.ScriptProfilerObserver.prototype.programmaticCaptureStopped):
-        (WebInspector.ScriptProfilerObserver):
-        * UserInterface/Protocol/TimelineObserver.js:
-        (WebInspector.TimelineObserver.prototype.programmaticCaptureStarted):
-        (WebInspector.TimelineObserver.prototype.programmaticCaptureStopped):
-        (WebInspector.TimelineObserver):
-        Pass through Web and JSContext programmatic capture events.
-
-2016-06-16  Joseph Pecoraro  <pecoraro@apple.com>
-
-        REGRESSION (r201538): Web Inspector: Border over Allocations Views is too thick
-        https://bugs.webkit.org/show_bug.cgi?id=158846
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/HeapAllocationsTimelineView.css:
-        (.timeline-view.heap-allocations > .content-view-container > .content-view): Deleted.
-
-2016-06-16  Matt Baker  <mattbaker@apple.com>
-
-        Unreviewed build fix.
-
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGrid.prototype.createSettings):
-        "showColumn" -> "setColumnVisible".
-
-2016-06-16  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: DataGrid should manage its own settings
-        https://bugs.webkit.org/show_bug.cgi?id=158675
-        <rdar://problem/26761338>
-
-        Reviewed by Timothy Hatcher.
-
-        Move grid sorting settings (sort order, column identifier) into DataGrid,
-        removing duplicated code from various views. A new grid method, "createSettings",
-        takes an identifier which is used as a prefix for naming the grid's settings.
-
-        So that the new behavior is easy to use and hard to misuse, default values
-        for each setting are set to the current value of the associated property.
-        The result is that:
-
-            grid.sortColumnIdentifier = "columnA";
-            grid.createSettings("myGrid");
-
-        will use "columnA" as the default value the first time the setting is created.
-
-        * UserInterface/Views/ApplicationCacheFrameContentView.js:
-        (WebInspector.ApplicationCacheFrameContentView.prototype._createDataGrid):
-        * UserInterface/Views/CookieStorageContentView.js:
-        (WebInspector.CookieStorageContentView.prototype._rebuildTable):
-        * UserInterface/Views/DOMStorageContentView.js:
-        (WebInspector.DOMStorageContentView):
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGrid):
-        (WebInspector.DataGrid.prototype.createSettings):
-        (WebInspector.DataGrid.prototype.get identifier): Deleted.
-        (WebInspector.DataGrid.prototype.set identifier): Deleted.
-        (WebInspector.DataGrid.prototype.set sortOrderSetting): Deleted.
-        (WebInspector.DataGrid.prototype.set sortColumnIdentifierSetting): Deleted.
-        * UserInterface/Views/HeapAllocationsTimelineView.js:
-        (WebInspector.HeapAllocationsTimelineView):
-        * UserInterface/Views/HeapSnapshotContentView.js:
-        (WebInspector.HeapSnapshotContentView):
-        * UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
-        (WebInspector.LayerTreeDetailsSidebarPanel.prototype._buildDataGridSection):
-        * UserInterface/Views/LayoutTimelineView.js:
-        (WebInspector.LayoutTimelineView):
-        * UserInterface/Views/NetworkGridContentView.js:
-        (WebInspector.NetworkGridContentView):
-        * UserInterface/Views/NetworkTimelineView.js:
-        (WebInspector.NetworkTimelineView):
-        * UserInterface/Views/ProfileView.js:
-        (WebInspector.ProfileView):
-        * UserInterface/Views/RenderingFrameTimelineView.js:
-        (WebInspector.RenderingFrameTimelineView):
-        * UserInterface/Views/ScriptDetailsTimelineView.js:
-        (WebInspector.ScriptDetailsTimelineView):
-
-2016-06-15  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Uncaught Exception: TypeError: undefined is not an object (evaluating 'imageElement.classList')
-        https://bugs.webkit.org/show_bug.cgi?id=158808
-        <rdar://problem/26821034>
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Views/HeapAllocationsTimelineOverviewGraph.js:
-        (WebInspector.HeapAllocationsTimelineOverviewGraph.prototype._updateSnapshotMarkers):
-        If the record is out of the layout bounds of the overview graph, the overview graph
-        may not have created an image element yet, so bail. Later, when the image element
-        is created, it would get the appropriate style if the record is selected.
-
-2016-06-14  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Rename DataGrid.showColumn to setColumnVisible
-        https://bugs.webkit.org/show_bug.cgi?id=158764
-        <rdar://problem/26801448>
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGrid):
-        Drive-by update to initialize "this._columnChooserEnabled".
-
-        (WebInspector.DataGrid.prototype.set identifier):
-        (WebInspector.DataGrid.prototype.insertColumn):
-        (WebInspector.DataGrid.prototype._collapseColumnGroupWithCell):
-        Use new method name.
-
-        (WebInspector.DataGrid.prototype._contextMenuInHeader):
-        Drive-by style update.
-
-2016-06-14  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Storage tab should allow hiding columns in the cookies grid
-        https://bugs.webkit.org/show_bug.cgi?id=158767
-        <rdar://problem/26803568>
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Views/CookieStorageContentView.js:
-        (WebInspector.CookieStorageContentView.prototype._rebuildTable):
-        Enable column chooser, exclude Name and Value columns.
-
-2016-06-14  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Visual Sidebar: Remove "Text -> Content" subsection
-        https://bugs.webkit.org/show_bug.cgi?id=158758
-        <rdar://problem/26799628>
-
-        Reviewed by Timothy Hatcher.
-
-        "content" CSS property only works with pseudo elements ::before and ::after.
-        It doesn't do anything for regular (non pseudo) elements. Remove it to
-        reduce UI clutter.
-
-        * UserInterface/Views/VisualStyleDetailsPanel.js:
-        (WebInspector.VisualStyleDetailsPanel.prototype.initialLayout):
-        (WebInspector.VisualStyleDetailsPanel.prototype._populateContentSection): Deleted.
-        * UserInterface/Views/VisualStylePropertyEditor.css:
-        (.visual-style-property-container > *:first-child:matches(.visual-style-property-value-container)): Deleted.
-
-2016-06-14  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Rename Timeline.setAutoCaptureInstruments to Timeline.setInstruments
-        https://bugs.webkit.org/show_bug.cgi?id=158762
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Controllers/TimelineManager.js:
-        (WebInspector.TimelineManager.prototype._updateAutoCaptureInstruments):
-        (WebInspector.TimelineManager):
-
-2016-06-14  Benjamin Poulain  <bpoulain@apple.com>
-
-        Add the unprefixed version of the pseudo element ::placeholder
-        https://bugs.webkit.org/show_bug.cgi?id=158653
-
-        Reviewed by Dean Jackson.
-
-        * UserInterface/Views/FilterBar.css:
-        (.filter-bar > input[type="search"]::placeholder):
-        (.filter-bar > input[type="search"]::-webkit-input-placeholder): Deleted.
-        * UserInterface/Views/FindBanner.css:
-        (.find-banner.console-find-banner > input[type="search"]::placeholder):
-        (.find-banner.console-find-banner > input[type="search"]::-webkit-input-placeholder): Deleted.
-        * UserInterface/Views/GoToLineDialog.css:
-        (.go-to-line-dialog > div > input::placeholder):
-        (.go-to-line-dialog > div > input::-webkit-input-placeholder): Deleted.
-        * UserInterface/Views/OpenResourceDialog.css:
-        (.open-resource-dialog > .field > input::placeholder):
-        (.open-resource-dialog > .field > input::-webkit-input-placeholder): Deleted.
-        * UserInterface/Views/SearchBar.css:
-        (.search-bar > input[type="search"]::placeholder):
-        (.search-bar > input[type="search"]::-webkit-input-placeholder): Deleted.
-        * UserInterface/Views/VisualStyleCommaSeparatedKeywordEditor.css:
-
-2016-06-14  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Introduce --navigation-bar-height CSS variable
-        https://bugs.webkit.org/show_bug.cgi?id=158752
-
-        Reviewed by Timothy Hatcher.
-
-        Abstract a commonly repeated height value (29px) into a variable.
-
-        * UserInterface/Views/CSSStyleDetailsSidebarPanel.css:
-        (.sidebar > .panel.details.css-style > .content.has-filter-bar):
-        * UserInterface/Views/DebuggerSidebarPanel.css:
-        (.sidebar > .panel.navigation.debugger > :matches(.content, .empty-content-placeholder)):
-        * UserInterface/Views/FilterBar.css:
-        (.filter-bar):
-        * UserInterface/Views/NavigationBar.css:
-        (.navigation-bar):
-        * UserInterface/Views/NavigationSidebarPanel.css:
-        (.sidebar > .panel.navigation > .content):
-        (.sidebar > .panel.navigation > .overflow-shadow.top):
-        * UserInterface/Views/NetworkSidebarPanel.css:
-        (.sidebar > .panel.navigation.network > .title-bar):
-        * UserInterface/Views/ResourceSidebarPanel.css:
-        (.sidebar > .panel.navigation.resource > :matches(.content, .empty-content-placeholder)):
-        * UserInterface/Views/SearchSidebarPanel.css:
-        (.sidebar > .panel.navigation.search > :matches(.content, .empty-content-placeholder)):
-        (.sidebar > .panel.navigation.search > .search-bar):
-        * UserInterface/Views/Sidebar.css:
-        (.sidebar.has-navigation-bar > .panel):
-        * UserInterface/Views/StorageSidebarPanel.css:
-        (.sidebar > .panel.navigation.storage > :matches(.content, .empty-content-placeholder)):
-        * UserInterface/Views/TimelineRecordingContentView.css:
-        (.content-view.timeline-recording > .content-browser .recording-progress):
-        * UserInterface/Views/Variables.css:
-        (:root):
-
-2016-06-14  Saam Barati  <sbarati@apple.com>
-
-        Follow up to: Web Inspector: Call Trees view should have a 'Top Functions'-like mode
-        https://bugs.webkit.org/show_bug.cgi?id=158555
-        <rdar://problem/26712544>
-
-        Unreviewed follow up patch.
-
-        - Move a long if-else sequence to a switch statement.
-        - Fix a copy-paste typo in a Symbol(.) enum.
-
-        * UserInterface/Models/CallingContextTree.js:
-        (WebInspector.CallingContextTree.prototype.updateTreeWithStackTrace):
-
-2016-06-13  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Show Exception Stack in UncaughtExceptionReporter view
-        https://bugs.webkit.org/show_bug.cgi?id=158657
-        <rdar://problem/26754441>
-
-        Reviewed by Darin Adler.
-
-        * UserInterface/Debug/UncaughtExceptionReporter.css:
-        (.uncaught-exception-sheet li):
-        Make newlines significant.
-
-        * UserInterface/Debug/UncaughtExceptionReporter.js:
-        (unblockEventHandlers):
-        (handleError):
-        (handleLinkClick):
-        (formattedEntry):
-        Format the exception and a possible stack with a bit of sanitizing.
-
-2016-06-13  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Filter Records not applying to new records
-        https://bugs.webkit.org/show_bug.cgi?id=158213
-        <rdar://problem/26543912>
-
-        Reviewed by Timothy Hatcher.
-
-        This patch makes the following improvements to timeline grid filtering:
-
-            - Records are filtered as they are added to the grid.
-            - Timeline view no longer triggers a filter refresh while the
-              current time changes while recording.
-            - Filters are refreshed whenever the current timeline view changes.
-
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGrid.prototype.hasFilters):
-        Helper function to check for custom and text filters.
-
-        (WebInspector.DataGrid.prototype._applyFiltersToNodeAndDispatchEvent):
-        Encapsulate node state change and event dispatch, which was previously
-        done in multiple places.
-
-        (WebInspector.DataGrid.prototype.insertChild):
-        Filter incoming node if needed.
-
-        (WebInspector.DataGrid.prototype._updateFilter.createIteratorForNodesToBeFiltered):
-        (WebInspector.DataGrid.prototype._updateFilter):
-        (WebInspector.DataGrid.prototype.yieldableTaskWillProcessItem):
-        Use new convenience functions.
-
-        (WebInspector.DataGrid.prototype.hasCustomFilters): Deleted.
-        Renamed `hasFilters`.
-
-        * UserInterface/Views/TimelineRecordingContentView.js:
-        (WebInspector.TimelineRecordingContentView.prototype._currentContentViewDidChange):
-        Refresh grid filters on view change.
-
-        * UserInterface/Views/TimelineView.js:
-        (WebInspector.TimelineView.prototype.set startTime):
-        (WebInspector.TimelineView.prototype.set endTime):
-        Schedule filter change notification when selection bounds changes.
-
-        (WebInspector.TimelineView.prototype._timesDidChange):
-        (WebInspector.TimelineView.prototype._scheduleFilterDidChange):
-        (WebInspector.TimelineView):
-
-2016-06-13  Saam Barati  <sbarati@apple.com>
-
-        Web Inspector: Call Trees view should have a 'Top Functions'-like mode
-        https://bugs.webkit.org/show_bug.cgi?id=158555
-        <rdar://problem/26712544>
-
-        Reviewed by Timothy Hatcher.
-
-        This patch adds a Top Functions view that is similar to Instruments'
-        Top Functions view. I really wanted to add this view because I've
-        been doing a lot of performance debugging and I've exclusively 
-        used the Top Functions view and I want the Inspector to also have
-        this view. I like to think of it as a more sophisticated version of the bottom-up view.
-        
-        Top Functions works by treating every frame as a root in the tree.
-        Top functions view then presents a list of "roots". This is the same
-        as all other views, which also present a list of roots, but in this case,
-        every frame is a root. Bottom Up is great for nailing in specific performance
-        problems in exactly one frame. But Bottom Up doesn't give you good context about where
-        a specific frame is in the call tree and how frames are related by having
-        a caller or some path of shared callers. For example, consider this call tree:
-                 (program)
-                 /        \
-                /          \
-           (many nodes...)  
-              / 
-             /
-            (parent)
-            /   \
-           /     \
-         (leaf1)  (leaf2)
-        
-        Suppose that 'leaf1' is super hot, and 'leaf2' is moderately hot.
-        If we look at this through Bottom Up view, we will see 'leaf1'
-        is super hot, but it will take more scrolling to see that 'leaf2'
-        is moderately hot. Lets say that 'parent' is also moderately hot,
-        but that the majority of its time isn't self time. With Bottom Up view,
-        there is no good way to see that 'leaf1' and 'leaf2' are both nodes under 'parent'.
-        With Top Down, you can find this information, but it requires a ton of drilling down into
-        the tree (i.e, you must expand past the 'many nodes...' I drew above). It's inconvenient to
-        use Top Down here for indentation alone. Bottom up will tell you that 'leaf1' is super hot,
-        and that 'leaf2' and 'parent' are moderately hot, but it doesn't show how they're related
-        in the original tree. It's important to see that 'parent's total time is very high
-        because it itself is moderately hot, and it has a child node that is super hot, and
-        another child that's moderately 'hot'. For the sake of this example, let's pretend
-        that 85% of the program's time is spent inside 'parent'. Seeing this information through
-        'Top Functions' is easy because this information filters to the top of the list. Specifically,
-        when using 'Top Functions' sorted by Total Time. Because every node is a root, there will be
-        a top-level entry for every frame in the program. Specifically, there will be a top-level node
-        for 'parent' in my above example. Because I've sorted this view by Total Time, I will see '(program)'
-        first. That's because 100% of execution time is under the '(program)' frame. Then, I might see
-        a few other nodes that also run the entire time because '(program)' calls them, and they eventually
-        call into other things that never leave the stack. These will also have time ranges near 100%.
-        But, only a few nodes after that, I'll see 'parent' in the list because it accounts for 85% of
-        execution time. Immediately, I will see that it has some self time, and that it has two child
-        nodes that have self time. This is really helpful.
-        
-        Let's consider another example where it's not easy in Top Down to get the full picture of 'parent':
-                   (program)
-                    /  |  \
-                 (... many nodes...)
-                  /           \
-            (many nodes...)   (many nodes...)
-                 /             \
-               parent         parent
-                 |              |
-                leaf1          leaf2
-        
-        
-        If we viewed this program in Top Down, we don't get a full picture of 'parent'
-        because it has its time distributed in two different subsections of the tree.
-        Specifically, lets say it has 70% of time in the leaf1 path, and 30% of the
-        time in the leaf2 path. We want a way to see these things together. It's impossible
-        to do this in Top Down or Bottom Up. But, in Top Functions view, we get the view that
-        we want to see because we treat 'parent' as a root of the tree. Because we do this,
-        we will create the following sub tree in the Top Functions view:
-                parent
-               /      \
-             leaf1   leaf2
-        This happens naturally because when 'parent' is a root, we add all its children
-        to its subtree.
-        
-        Constructing this tree is really easy. What we do is take any arbitrary stack
-        trace of length n, and treat is as n separate stack traces. Specifically, we
-        perform the following operation for any stack trace S.
-        
-        S = [A, B, C, D]
-        (A is the entry frame, and D is the top of the stack).
-        We will transform this into a list of stack traces S' like so:
-        S' = [[A, B, C, D], [B, C, D], [C, D], [D]]
-        
-        If we then run the normal top down tree algorithm on this set of stack
-        traces, all nodes get treated as roots, and voila, we get the Top Functions view.
-
-        * Localizations/en.lproj/localizedStrings.js:
-        * UserInterface/Controllers/TimelineManager.js:
-        * UserInterface/Main.html:
-        * UserInterface/Models/CallingContextTree.js:
-        * UserInterface/Models/TimelineRecording.js:
-        * UserInterface/Views/ScriptProfileTimelineView.js:
-        * UserInterface/Views/TextToggleButtonNavigationItem.css: Added.
-        * UserInterface/Views/TextToggleButtonNavigationItem.js: Added.
-
-2016-06-13  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Add ability to show/hide DataGird columns
-        https://bugs.webkit.org/show_bug.cgi?id=158676
-        <rdar://problem/26761573>
-
-        Reviewed by Timothy Hatcher.
-
-        Make it possible to show/hide grid columns using the grid header
-        context menu. This patch enables the new behavior for most of the
-        timeline grids.
-
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGrid):
-        (WebInspector.DataGrid.prototype.get identifier):
-        (WebInspector.DataGrid.prototype.set identifier):
-        An identifier for the grid instance, for managing per-grid settings.
-        Setting the id causes settings to be created, and their values to be
-        applied to the grid.
-
-        (WebInspector.DataGrid.prototype.get columnChooserEnabled):
-        (WebInspector.DataGrid.prototype.set columnChooserEnabled):
-        Enable showing/hiding columns via the grid header.
-
-        (WebInspector.DataGrid.prototype.insertColumn):
-        (WebInspector.DataGrid.prototype.showColumn):
-        Set column visibility and hidden column setting, then perform layout.
-
-        (WebInspector.DataGrid.prototype._collapseColumnGroupWithCell):
-        (WebInspector.DataGrid.prototype._contextMenuInHeader):
-        Create column chooser menu items if necessary.
-
-        (WebInspector.DataGrid.prototype._showColumn): Deleted.
-        (WebInspector.DataGrid.prototype._hideColumn): Deleted.
-        Replaced by `showColumn`.
-
-        * UserInterface/Views/LayoutTimelineView.js:
-        (WebInspector.LayoutTimelineView):
-        Always show "type" and "name" columns.
-
-        * UserInterface/Views/NetworkTimelineView.js:
-        (WebInspector.NetworkTimelineView):
-        * UserInterface/Views/RenderingFrameTimelineView.js:
-        (WebInspector.RenderingFrameTimelineView):
-        * UserInterface/Views/ScriptDetailsTimelineView.js:
-        (WebInspector.ScriptDetailsTimelineView):
-        Always show "name" column.
-
-        * UserInterface/Views/TimelineDataGrid.js:
-        (WebInspector.TimelineDataGrid):
-        Enable column chooser.
-
-2016-06-10  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: <template> content should not be hidden as Shadow Content
-        https://bugs.webkit.org/show_bug.cgi?id=158654
-
-        Reviewed by Ryosuke Niwa.
-
-        * Localizations/en.lproj/localizedStrings.js:
-        New "Template Content" string.
-
-        * UserInterface/Models/DOMNode.js:
-        (WebInspector.DOMNode):
-        Don't treat template content as shadow content.
-
-        * UserInterface/Views/DOMTreeElement.js:
-        (WebInspector.DOMTreeElement.prototype._nodeTitleInfo):
-        Custom string for template content fragment.
-
-2016-06-10  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: heap snapshot comparison view shows nothing if later snapshot is chosen first
-        https://bugs.webkit.org/show_bug.cgi?id=158584
-        <rdar://problem/26727849>
-
-        Reviewed by Timothy Hatcher.
-
-        ALways compare the the later snapshot to the earlier snapshot,
-        regardless of selection order.
-
-        * UserInterface/Views/HeapAllocationsTimelineView.js:
-        (WebInspector.HeapAllocationsTimelineView):
-        (WebInspector.HeapAllocationsTimelineView.prototype._dataGridNodeSelected):
-        Swap shapshots if the first has a greater identifier than the second.
-        Drive-by cleanup: null out `_baselineDataGridNode` since it isn't used
-        after the comparison completes.
-
-2016-06-10  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: rendering frames timeline "60fps" horizontal guide is mispositioned after switching timeline modes
-        https://bugs.webkit.org/show_bug.cgi?id=158587
-        <rdar://problem/26728174>
-
-        Reviewed by Timothy Hatcher.
-
-        When the view mode changes we iterate over all overview graphs, updating
-        their visibility as needed. Graphs being shown perform layout, even though
-        the overview's state is in transition: its offset height may still change.
-
-        A simple fix is to use TimelineOverviewGraph.height instead of the graph
-        element's offset height when performing layout.
-
-        * UserInterface/Views/RenderingFrameTimelineOverviewGraph.js:
-        (WebInspector.RenderingFrameTimelineOverviewGraph.prototype.layout):
-
-2016-06-10  Matt Baker  <mattbaker@apple.com>
-
-        REGRESSION (r201538): Web Inspector: 1px gap above timeline progress view
-        https://bugs.webkit.org/show_bug.cgi?id=158626
-
-        Reviewed by Joseph Pecoraro.
-
-        Adjust progress view top position to account for grid border changes.
-
-        * UserInterface/Views/TimelineRecordingContentView.css:
-        (.content-view.timeline-recording > .content-browser .recording-progress):
-
-2016-06-10  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: REGRESSION (r201538): Web Inspector: Border under JS Call Trees content view is too thick
-        https://bugs.webkit.org/show_bug.cgi?id=158624
-        <rdar://problem/26743633>
-
-        Reviewed by Joseph Pecoraro.
-
-        Remove top border from <th> elements.
-
-        * UserInterface/Views/ProfileView.css:
-        (.profile > .data-grid th): Deleted.
-
-2016-06-09  Joseph Pecoraro  <pecoraro@apple.com>
-
-        REGRESSION: Web Inspector: IndexedDB does not show ObjectStore data
-        https://bugs.webkit.org/show_bug.cgi?id=158592
-        <rdar://problem/26730696>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGrid.prototype._noteRowRemoved):
-        (WebInspector.DataGridNode.prototype._detach):
-        When rows are removed in the non-Virtual DataGrids, we should
-        actually remove the row.
-
-        * UserInterface/Views/IndexedDatabaseObjectStoreContentView.js:
-        (WebInspector.IndexedDatabaseObjectStoreContentView):
-        (WebInspector.IndexedDatabaseObjectStoreContentView.prototype._fetchMoreData.processEntries):
-        (WebInspector.IndexedDatabaseObjectStoreContentView.prototype._fetchMoreData):
-        Don't use the delete operator. Use a boolean.
-
-2016-06-09  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Support Command-P for quick open
-        https://bugs.webkit.org/show_bug.cgi?id=158579
-        <rdar://problem/26726751>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Base/Main.js:
-        (WebInspector.contentLoaded):
-
-2016-06-09  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        REGRESSION (r194717): Web Inspector: Elements tab: an element loses focus when selected by Up/Down key
-        https://bugs.webkit.org/show_bug.cgi?id=157768
-        <rdar://problem/26311155>
-
-        Reviewed by Timothy Hatcher.
-
-        Remove _previousFocusedSection and _newInspectorRuleSelector since it was used only
-        to focus on a newly created section (added by clicking on "+" button).
-
-        Introduce _inspectorSection and _isInspectorSectionPendingFocus.
-
-        * UserInterface/Views/CSSStyleDeclarationSection.js:
-        (WebInspector.CSSStyleDeclarationSection.prototype.cssStyleDeclarationTextEditorBlurActiveEditor): Deleted.
-        (WebInspector.CSSStyleDeclarationSection.prototype._handleSelectorPaste): Deleted.
-        No longer needed, it was only used by _previousFocusedSection and _newInspectorRuleSelector.
-
-        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
-        (WebInspector.CSSStyleDeclarationTextEditor.): Deleted.
-        No londer needed, it was only used by _previousFocusedSection.
-
-        * UserInterface/Views/RulesStyleDetailsPanel.js:
-        (WebInspector.RulesStyleDetailsPanel):
-        (WebInspector.RulesStyleDetailsPanel.prototype.refresh.appendStyleSection):
-        (WebInspector.RulesStyleDetailsPanel.prototype.newRuleButtonClicked):
-        (WebInspector.RulesStyleDetailsPanel.prototype.nodeStylesRefreshed):
-        (WebInspector.RulesStyleDetailsPanel.prototype.cssStyleDeclarationSectionEditorFocused): Deleted.
-        (WebInspector.RulesStyleDetailsPanel.prototype.cssStyleDeclarationSectionBlurActiveEditor): Deleted.
-        (WebInspector.RulesStyleDetailsPanel.prototype.cssStyleDeclarationSectionFocusNewInspectorRuleWithSelector): Deleted.
-
-2016-06-08  Joseph Pecoraro  <pecoraro@apple.com>
-
-        REGRESSION: Web Inspector: Should be able to evaluate "{a:1, b:2}" in the console
-        https://bugs.webkit.org/show_bug.cgi?id=158548
-        <rdar://problem/26708513>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Controllers/RuntimeManager.js:
-        (WebInspector.RuntimeManager.prototype.evaluateInInspectedWindow):
-        Switch the many parameters to an options dictionary.
-        Include a new option for sourceURL appender, so that
-        Console evaluations can have its own append.
-
-        * UserInterface/Controllers/JavaScriptLogViewController.js:
-        (WebInspector.JavaScriptLogViewController.prototype.consolePromptTextCommitted):
-        Use the appendWebInspectorConsoleEvaluationSourceURL appender.
-
-        * UserInterface/Controllers/JavaScriptRuntimeCompletionProvider.js:
-        (WebInspector.JavaScriptRuntimeCompletionProvider.prototype.completionControllerCompletionsNeeded.evaluated):
-        * UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
-        (WebInspector.ScopeChainDetailsSidebarPanel.prototype._generateWatchExpressionsSection.):
-        (WebInspector.ScopeChainDetailsSidebarPanel.prototype._generateWatchExpressionsSection):
-        Use the new options dictionary.
-
-2016-06-08  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: an error is encountered when trying to delete nodes that have children
-        https://bugs.webkit.org/show_bug.cgi?id=158541
-        <rdar://problem/26705901>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/DOMTreeElement.js:
-        (WebInspector.DOMTreeElement.prototype.adjustCollapsedRange):
-        Offset into the array variable instead of a variable holding its length.
-
-2016-06-08  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: DOMTreeOutline selection areas should be created and updated lazily
-        https://bugs.webkit.org/show_bug.cgi?id=158513
-        <rdar://problem/26689646>
-
-        Reviewed by Timothy Hatcher.
-
-        Selection areas for DOMTreeElements are used for several things: drag markers,
-        element hover styles, element selection styles, and showing forced pseudo states
-        for an element. Fortunately it's easy to tell when any of these things is necessary.
-
-        Change DOMTreeOutline and DOMTreeElement so they don't create selection areas
-        unless they are needed for one of these tasks. This significantly reduces
-        forced layouts that are required to update the selection area height in case the
-        element has new attributes that cause the tag to become more or less wrapped.
-
-        * UserInterface/Views/DOMTreeElement.js:
-        (WebInspector.DOMTreeElement.prototype.set hovered):
-        Modernize this method a bit.
-
-        (WebInspector.DOMTreeElement.prototype.updateSelectionArea):
-        If a selection area is not necessary, don't create one.
-        If one exists and it's not needed, then remove it.
-
-        (WebInspector.DOMTreeElement.prototype.onattach):
-        Remove redundant calls to updateSelection(). This is already called in
-        updateTitle().
-
-        (WebInspector.DOMTreeElement.prototype.onselect):
-        Ask the DOMTreeOutline to update the selection rather than forcing the
-        element to do it. This is consistent with other updates to user selection.
-
-        (WebInspector.DOMTreeElement.prototype._insertInLastAttributePosition):
-        (WebInspector.DOMTreeElement.prototype._startEditingAsHTML.dispose):
-        (WebInspector.DOMTreeElement.prototype._startEditingAsHTML):
-        Use renamed method.
-
-        (WebInspector.DOMTreeElement.prototype.updateTitle):
-        Add a comment to explain why the selection area is nulled out here.
-
-        (WebInspector.DOMTreeElement.prototype.get pseudoClassesEnabled):
-        (WebInspector.DOMTreeElement.prototype._nodePseudoClassesDidChange):
-        Update the selection area in case one does not exist for this tree element.
-        The indicator for forced pseudo classes is a pseudo element of the selection area.
-
-        (WebInspector.DOMTreeElement.prototype.updateSelection): Renamed.
-        (WebInspector.DOMTreeElement.prototype.onexpand):
-        (WebInspector.DOMTreeElement.prototype.oncollapse):
-        Remove redundant calls to updateSelection(). This is already called in
-        updateTitle().
-
-        * UserInterface/Views/DOMTreeOutline.css:
-        (.tree-outline.dom):
-        (.tree-outline.dom li.hovered:not(.selected) .selection-area):
-        (.tree-outline.dom li .selection-area):
-        (.tree-outline.dom li.selected .selection-area):
-        (.tree-outline.dom li.elements-drag-over .selection-area):
-        (.tree-outline.dom:focus li.selected .selection-area):
-        (.tree-outline.dom li.pseudo-class-enabled > .selection-area::before):
-        (.tree-outline.dom:focus li.selected.pseudo-class-enabled > .selection-area::before):
-        (.tree-outline.dom li.hovered:not(.selected) .selection): Deleted.
-        (.tree-outline.dom li .selection): Deleted.
-        (.tree-outline.dom li.selected .selection): Deleted.
-        (.tree-outline.dom li.elements-drag-over .selection): Deleted.
-        (.tree-outline.dom:focus li.selected .selection): Deleted.
-        (.tree-outline.dom li.pseudo-class-enabled > .selection::before): Deleted.
-        (.tree-outline.dom:focus li.selected.pseudo-class-enabled > .selection::before): Deleted.
-        Rename the selector to be less ambiguous.
-
-        * UserInterface/Views/DOMTreeOutline.js:
-        (WebInspector.DOMTreeOutline.prototype.updateSelection): Simplify. The call
-        to update the selection area will bail out if there is nothing to be done.
-
-        (WebInspector.DOMTreeOutline.prototype.findTreeElement):
-        (WebInspector.DOMTreeOutline.prototype._onmousemove):
-        (WebInspector.DOMTreeOutline.prototype._onmouseout):
-        Clean up and use let and arrow functions.
-
-        (WebInspector.DOMTreeOutline.prototype._ondragover):
-        (WebInspector.DOMTreeOutline.prototype._clearDragOverTreeElementMarker):
-        Clear the dragging element before updating the selection area since it looks at
-        the dragging element to determine whether anything needs to be done.
-
-        * UserInterface/Views/FormattedValue.css:
-        (.formatted-node > .tree-outline.dom li.hovered:not(.selected) .selection-area):
-        (.formatted-node > .tree-outline.dom li.hovered:not(.selected) .selection): Deleted.
-        Rename the selector to be less ambiguous.
-
-2016-06-08  Brian Burg  <bburg@apple.com>
-
-        Uncaught Exception in TimelineDataGrid._updatePopoverForSelectedNode()
-        https://bugs.webkit.org/show_bug.cgi?id=158502
-        <rdar://problem/26687038>
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Views/TimelineDataGrid.js:
-        (WebInspector.TimelineDataGrid.prototype._updatePopoverForSelectedNode):
-        It appears that this expression was moved around since it accesses
-        targetFrame before it's initialized. Check rect.size.height directly.
-
-2016-06-08  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: reduce redundant attribute modification updates in DOMTreeUpdater and DOMTreeElement
-        https://bugs.webkit.org/show_bug.cgi?id=158504
-        <rdar://problem/25561452>
-
-        Reviewed by Timothy Hatcher.
-
-        When the frontend gets lots of DOM.attributeModified events, it forwards these on to
-        DOMTreeUpdater, which pushes a record for every single modification. It then updates
-        the DOM elements with the attibute changes on an animation frame. However, since it
-        doesn't do any deduplication of the modification records, a lot of time is wasted
-        on updating DOMTreeElements with intermediate (non-final) attribute values.
-
-        This patch rewrites DOMTreeUpdater to precisely track which nodes and attributes
-        of each node need to be updated on the next animation frame. This is done using
-        Sets and Maps that only hold onto the most recent attribute values rather than
-        pushing a record object for every single mutation.
-
-        This improves the performance of the Elements tab on an SVG particle simulator
-        dramatically so that the Inspector will not immediately hang. It still only achieves
-        a few updates per second in this case, so there is still optimization to be done on
-        the frontend and throttling to be done on the backend.
-
-        * UserInterface/Views/DOMTreeElement.js:
-        (WebInspector.DOMTreeElement):
-        (WebInspector.DOMTreeElement.prototype.attributeDidChange):
-        (WebInspector.DOMTreeElement.prototype._buildAttributeDOM):
-        (WebInspector.DOMTreeElement.prototype._markNodeChanged):
-        (WebInspector.DOMTreeElement.prototype._nodeChangedAnimationEnd):
-        (WebInspector.DOMTreeElement.prototype._fireDidChange):
-        (WebInspector.DOMTreeElement.prototype.nodeStateChanged): Deleted.
-        Simplify the list of modified attributes a little bit. This still uses a worklist
-        approach, so it's possible that duplicate updates for the same attribute could accumulate
-        if DOMTreeUpdater pushes updates faster than DOMTreeElement can render them.
-
-        * UserInterface/Views/DOMTreeUpdater.js:
-        (WebInspector.DOMTreeUpdater):
-        (WebInspector.DOMTreeUpdater.prototype._attributesUpdated):
-        (WebInspector.DOMTreeUpdater.prototype._characterDataModified):
-        (WebInspector.DOMTreeUpdater.prototype._nodeAttributeModified):
-        (WebInspector.DOMTreeUpdater.prototype._nodeInserted):
-        (WebInspector.DOMTreeUpdater.prototype._nodeRemoved):
-        (WebInspector.DOMTreeUpdater.prototype._childNodeCountUpdated):
-        (WebInspector.DOMTreeUpdater.prototype._updateModifiedNodes):
-        (WebInspector.DOMTreeUpdater.prototype._reset):
-        Rewrite this class to separately track insertions, deletions, and modifications. Use
-        Sets and Maps so redundant entries are not kept around. Split the main work loop
-        and use fewer enum-like properties to control how each DOM element change is handled.
-
-        Attempt to update all inserted children before modifying their attributes. This
-        wasn't done previously, but enough duplicate attribute modifications occurred that
-        usually some of them would be processed after being added to the tree. There is only
-        one chance to do this now.
-
-2016-06-08  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        REGRESSION (r158219): Web Inspector: Border under the default Timeline content view is too thick
-        https://bugs.webkit.org/show_bug.cgi?id=158533
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/OverviewTimelineView.css:
-        (.timeline-view.overview > .data-grid th): Deleted.
-
-2016-06-08  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: Command-W should not close Web Inspector tabs; it should close the window
-        https://bugs.webkit.org/show_bug.cgi?id=158538
-        rdar://problem/26699215
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Views/TabBrowser.js:
-        (WebInspector.TabBrowser): Change shortcut to Command-Shift-W.
-
-2016-06-07  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: reduce timer churn when processing many DOM.attributeModified messages
-        https://bugs.webkit.org/show_bug.cgi?id=158491
-        <rdar://problem/25561452>
-
-        Reviewed by Timothy Hatcher.
-
-        When the backend sends thousands of DOM.attributeModified events to the frontend, it
-        slows to a crawl. This is partly because redundant messages are being sent, and
-        because the frontend is taking too long to render attribute updates in the elements tab.
-
-        This patch is a first step to improve performance by reducing unnecessary work. It
-        coalesces all attribute state updates to only happen once per animation frame. This
-        reduces timer churn because we previously used a debouncing timer with interval of 0ms,
-        and that had to be cleared and restarted on every call. This change also eliminates
-        forced layouts when updating the selection highlights, since the DOM tree outline has
-        been reflowed by the time we start updating selections in a requestAnimationFrame callback.
-
-        There is still a lot of optimization to be done here, but this reduces the problem
-        considerably by keeping the event loop clear and making it obvious which selection
-        update operations are still too expensive.
-
-        * UserInterface/Base/Utilities.js:
-        Add a 'onNextFrame' proxy to Object. It works like debounce, except it coalesces calls
-        up until the next animation frame rather than a fixed timeout. It also does not extend
-        the timeout interval for each call.
-
-        * UserInterface/Views/DOMTreeUpdater.js:
-        (WebInspector.DOMTreeUpdater.prototype._attributesUpdated):
-        (WebInspector.DOMTreeUpdater.prototype._characterDataModified):
-        (WebInspector.DOMTreeUpdater.prototype._nodeInserted):
-        (WebInspector.DOMTreeUpdater.prototype._nodeRemoved):
-        (WebInspector.DOMTreeUpdater.prototype._updateModifiedNodes):
-        Update on the next frame rather than on a zero delay timeout.
-
-        * UserInterface/Views/TreeOutline.js:
-        (WebInspector.TreeOutline.WebInspector.TreeElement.prototype.didChange):
-        (WebInspector.TreeOutline.WebInspector.TreeElement.prototype._fireDidChange):
-        Update on the next frame rather than on a zero delay timeout.
-
-2016-06-07  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        REGRESSION (r158219): Web Inspector: Border under Memory content view is too thick
-        https://bugs.webkit.org/show_bug.cgi?id=158495
-        <rdar://problem/26683428>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/MemoryTimelineView.css:
-        (.timeline-view.memory): Deleted.
-
-2016-06-07  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: add a keyboard shortcut to open the new tab tab
-        https://bugs.webkit.org/show_bug.cgi?id=158365
-        <rdar://problem/26631897>
-
-        Unreviewed, fix a typo introduced in r201692.
-        This caused the new tab button to stop working.
-
-        * UserInterface/Base/Main.js:
-        (WebInspector._updateNewTabButtonState):
-
-2016-06-05  Matt Baker  <mattbaker@apple.com>
-
-        REGRESSION (r201686): Web Inspector: Fix typo causing an internal error
-        https://bugs.webkit.org/show_bug.cgi?id=158392
-        <rdar://problem/26640467>
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Views/HeapAllocationsTimelineOverviewGraph.js:
-        Fixed typo.
-
-2016-06-04  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: add a keyboard shortcut to open the new tab tab
-        https://bugs.webkit.org/show_bug.cgi?id=158365
-        <rdar://problem/26631897>
-
-        Reviewed by Timothy Hatcher.
-
-        Make Cmd-t show the new tab tab if it's not already open and
-        there is at least one tab type that's not currently in the tab bar.
-
-        * UserInterface/Base/Main.js:
-        (WebInspector.contentLoaded):
-        (WebInspector._updateNewTabButtonState):
-        (WebInspector.showNewTabTab):
-        (WebInspector.isNewTabWithTypeAllowed):
-        Clean up the code that decides whether we can show the new tab tab.
-        It is now a special case inside WebInspector.isNewTabWithTypeAllowed.
-
-        * UserInterface/Views/NewTabContentView.js:
-        (WebInspector.NewTabContentView.prototype._updateShownTabs):
-        Use Array.from.
-
-2016-06-04  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: discontinuous recordings should have discontinuities in the timeline memory graph
-        https://bugs.webkit.org/show_bug.cgi?id=158052
-        <rdar://problem/26516695>
-
-        Reviewed by Joseph Pecoraro.
-
-        Add gaps to the overview and category line charts where discontinuities
-        exist in the timeline recording.
-
-        * UserInterface/Models/Timeline.js:
-        (WebInspector.Timeline.prototype.recordsInTimeRange):
-        Replaces `_visibleRecords` methods found in various views.
-
-        * UserInterface/Models/TimelineRecording.js:
-        (WebInspector.TimelineRecording.prototype.reset):
-        (WebInspector.TimelineRecording.prototype.addDiscontinuity):
-        (WebInspector.TimelineRecording.prototype.discontinuitiesInTimeRange):
-        Allow discontinuities to be added to the recording, and have a means to
-        look up gaps within a time range.
-
-        * UserInterface/Views/HeapAllocationsTimelineOverviewGraph.js:
-        (WebInspector.HeapAllocationsTimelineOverviewGraph.prototype._visibleRecords): Deleted.
-        Replaced by Timeline helper method.
-
-        * UserInterface/Views/MemoryTimelineOverviewGraph.js:
-        (WebInspector.MemoryTimelineOverviewGraph.prototype.layout.insertDiscontinuity):
-        (WebInspector.MemoryTimelineOverviewGraph.prototype.layout):
-        Insert zero-points into the chart at discontinuity boundaries to create
-        gaps. Data points for records immediately before or after a gap are extended
-        to the edge of the discontinuity.
-
-        (WebInspector.MemoryTimelineOverviewGraph.prototype._visibleRecords): Deleted.
-        Replaced by Timeline helper method.
-
-        * UserInterface/Views/MemoryTimelineView.js:
-        (WebInspector.MemoryTimelineView.prototype.layout):
-        Insert zero-points into each category chart at discontinuity boundaries
-        to create gaps.
-
-        Insert zero-points into the chart to create gaps.
-        (WebInspector.MemoryTimelineView.prototype._visibleRecords): Deleted.
-        Replaced by Timeline helper method.
-
-        * UserInterface/Views/TimelineOverview.js:
-        (WebInspector.TimelineOverview.prototype.discontinuitiesInTimeRange):
-        Forward to the TimelineRecording, which isn't exposed to clients.
-
-        * UserInterface/Views/TimelineRecordingContentView.js:
-        (WebInspector.TimelineRecordingContentView):
-        (WebInspector.TimelineRecordingContentView.prototype._capturingStarted):
-        (WebInspector.TimelineRecordingContentView.prototype._capturingStopped):
-        (WebInspector.TimelineRecordingContentView.prototype._recordingReset):
-        Track discontinuities (recording stop followed by a start) and add them
-        to the current recording.
-
-2016-06-03  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: add a keyboard shortcut to close the current tab bar item
-        https://bugs.webkit.org/show_bug.cgi?id=158363
-        <rdar://problem/22677254>
-
-        Reviewed by Timothy Hatcher.
-
-        Make Cmd-w close the current tab. This matches Safari's keyboard shortcut.
-
-        * UserInterface/Views/TabBrowser.js:
-        (WebInspector.TabBrowser):
-        Don't do anything if the New Tab tab is the only tab bar item besides the
-        pinned "new tab" button.
-
-2016-06-03  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: setter for debugging flag InspectorBackend.dumpInspectorTimeStats does not work
-        https://bugs.webkit.org/show_bug.cgi?id=158366
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Protocol/InspectorBackend.js:
-        (InspectorBackendClass.prototype.set dumpInspectorTimeStats):
-        Actually update the backing member when the setter is called.
-
-2016-06-03  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Remove unused WebInspector.CSSCompletions methods
-        https://bugs.webkit.org/show_bug.cgi?id=158352
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Models/CSSCompletions.js:
-        (WebInspector.CSSCompletions.prototype.firstStartsWith): Deleted.
-        (WebInspector.CSSCompletions.prototype.isLonghandPropertyName): Deleted.
-        (WebInspector.CSSCompletions.prototype.longhandsForShorthand): Deleted.
-
-2016-06-03  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Update NativeFunctionParameters (FontFaceSet, HTMLSlotElement, EventTarget)
-        https://bugs.webkit.org/show_bug.cgi?id=158333
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Models/NativeFunctionParameters.js:
-        Replace FontLoader with FontFaceSet. Add HTMLSlotElement API.
-        EventTarget is now actually in the prototype chain, so add it as
-        a first class citizen and keep mixing it in for legacy backends.
-
-2016-06-02  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Modernize Array.prototype.every/some callsites to arrow functions
-        https://bugs.webkit.org/show_bug.cgi?id=158330
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Controllers/DOMTreeManager.js:
-        (WebInspector.DOMTreeManager.prototype._updateContentFlowFromPayload):
-        * UserInterface/Models/ProfileNode.js:
-        (WebInspector.ProfileNode):
-        * UserInterface/Models/ScopeChainNode.js:
-        (WebInspector.ScopeChainNode):
-        * UserInterface/Models/StackTrace.js:
-        (WebInspector.StackTrace):
-        * UserInterface/Models/StructureDescription.js:
-        (WebInspector.StructureDescription):
-        * UserInterface/Models/TypeDescription.js:
-        (WebInspector.TypeDescription):
-        * UserInterface/Protocol/InspectorBackend.js:
-        (InspectorBackend.Command.prototype.supports):
-        * UserInterface/Views/ContentViewContainer.js:
-        (WebInspector.ContentViewContainer.prototype.showContentView):
-        * UserInterface/Views/NavigationSidebarPanel.js:
-        (WebInspector.NavigationSidebarPanel.prototype._checkElementsForPendingViewStateCookie.treeElementMatchesCookie):
-        (WebInspector.NavigationSidebarPanel.prototype._checkElementsForPendingViewStateCookie):
-        * UserInterface/Views/ScopeBar.js:
-        (WebInspector.ScopeBar.prototype.get selectedItems):
-        (WebInspector.ScopeBar.prototype.hasNonDefaultItemSelected):
-        * UserInterface/Views/TabContentView.js:
-        (WebInspector.TabContentView):
-        (WebInspector.TabContentView.console.assert): Deleted.
-
-2016-06-02  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Modernize some function expressions that bind(this) to arrow functions
-        https://bugs.webkit.org/show_bug.cgi?id=158315
-
-        Reviewed by Brian Burg.
-
-        Convert a common "function(x) { ... }.bind(this)" pattern to use arrow
-        functions "(x) => { ... }", which lexically binds `this`, slightly faster,
-        and uses less memory.
-
-        * UserInterface/Base/Main.js:
-        (WebInspector._updateNewTabButtonState):
-        * UserInterface/Controllers/BreakpointPopoverController.js:
-        (WebInspector.BreakpointPopoverController.prototype._createPopoverContent):
-        * UserInterface/Controllers/TypeTokenAnnotator.js:
-        (WebInspector.TypeTokenAnnotator.prototype.insertAnnotations):
-        (WebInspector.TypeTokenAnnotator.prototype.insertAnnotations.): Deleted.
-        * UserInterface/Models/RenderingFrameTimelineRecord.js:
-        (WebInspector.RenderingFrameTimelineRecord.prototype._calculateDurationRemainder):
-        (WebInspector.RenderingFrameTimelineRecord):
-        * UserInterface/Models/Resource.js:
-        (WebInspector.Resource.prototype.requestContent):
-        * UserInterface/Models/Script.js:
-        (WebInspector.Script.prototype.requestScriptSyntaxTree):
-        (WebInspector.Script.prototype.requestScriptSyntaxTree.makeSyntaxTreeAndCallCallback): Deleted.
-        * UserInterface/Models/SourceCodeLocation.js:
-        (WebInspector.SourceCodeLocation.prototype.populateLiveDisplayLocationString):
-        * UserInterface/Models/WrappedPromise.js:
-        (WebInspector.WrappedPromise):
-        * UserInterface/Views/BreakpointActionView.js:
-        (WebInspector.BreakpointActionView.prototype._updateBody):
-        * UserInterface/Views/BreakpointTreeElement.js:
-        (WebInspector.BreakpointTreeElement.prototype._dataUpdated):
-        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
-        (WebInspector.CSSStyleDeclarationTextEditor.prototype._updateTextMarkers.update):
-        (WebInspector.CSSStyleDeclarationTextEditor.prototype._updateTextMarkers):
-        * UserInterface/Views/DefaultDashboardView.js:
-        (WebInspector.DefaultDashboardView.prototype._appendElementForNamedItem.set item):
-        (WebInspector.DefaultDashboardView.prototype._appendElementForNamedItem):
-        * UserInterface/Views/ErrorObjectView.js:
-        (WebInspector.ErrorObjectView.prototype.update):
-        * UserInterface/Views/GeneralTreeElement.js:
-        (WebInspector.GeneralTreeElement.prototype.onattach):
-        (WebInspector.GeneralTreeElement.prototype.onattach.this._boundContextMenuEventHandler): Deleted.
-        * UserInterface/Views/InlineSwatch.js:
-        (WebInspector.InlineSwatch.prototype._getNextValidHEXFormat):
-        (WebInspector.InlineSwatch):
-        * UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
-        (WebInspector.LayerTreeDetailsSidebarPanel.prototype.refresh):
-        (WebInspector.LayerTreeDetailsSidebarPanel.prototype._showPopoverForSelectedNode):
-        (WebInspector.LayerTreeDetailsSidebarPanel.prototype._contentForPopover):
-        * UserInterface/Views/LogContentView.js:
-        (WebInspector.LogContentView.prototype._mouseup):
-        * UserInterface/Views/NavigationSidebarPanel.js:
-        (WebInspector.NavigationSidebarPanel.prototype._checkElementsForPendingViewStateCookie):
-        * UserInterface/Views/ObjectTreeBaseTreeElement.js:
-        (WebInspector.ObjectTreeBaseTreeElement.prototype.createGetterElement):
-        (WebInspector.ObjectTreeBaseTreeElement.prototype.createGetterElement.): Deleted.
-        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
-        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateEntries):
-        * UserInterface/Views/ObjectTreeView.js:
-        (WebInspector.ObjectTreeView.prototype._updateEntries):
-        * UserInterface/Views/ResourceDetailsSidebarPanel.js:
-        (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshImageSizeSection):
-        * UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
-        (WebInspector.ScopeChainDetailsSidebarPanel.prototype._addWatchExpressionButtonClicked):
-        (WebInspector.ScopeChainDetailsSidebarPanel.prototype._objectTreeElementAddContextMenuItems):
-        (WebInspector.ScopeChainDetailsSidebarPanel.prototype._addWatchExpressionButtonClicked.this._codeMirror.addKeyMap): Deleted.
-        * UserInterface/Views/TabBar.js:
-        * UserInterface/Views/VisualStylePropertyEditor.js:
-        (WebInspector.VisualStylePropertyEditor.prototype._checkDependencies):
-
-2016-05-31  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Storage DataGrids have a half-pixel transparent/white border below the header
-        https://bugs.webkit.org/show_bug.cgi?id=156699
-        <rdar://problem/25778260>
-
-        Reviewed by Timothy Hatcher.
-
-        Increase the width of the border below the DataGrid's header to match the border in the left sidebar.
-
-        * UserInterface/Views/DataGrid.css:
-        (.data-grid > .header-wrapper):
-
-2016-05-31  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Snapshot List scroll bar occludes border of containing view in top-right
-        https://bugs.webkit.org/show_bug.cgi?id=158219
-        <rdar://problem/26545018>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/TimelineDataGrid.css:
-        (.data-grid.timeline th): Deleted.
-        * UserInterface/Views/TimelineRecordingContentView.css:
-        (.content-view.timeline-recording > .content-browser > .navigation-bar):
-        Make the border line span across the whole navigation bar, not just its table cells.
-
-2016-05-30  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: Timelines: "-0.000ms" in Self Time
-        https://bugs.webkit.org/show_bug.cgi?id=158162
-        <rdar://problem/26523350>
-
-        Reviewed by Darin Adler.
-
-        Values such as -0.0000 and +0.00001 seem to indicate there is
-        some floating point error accumulating in profile node data.
-        Since the sampling profiler isn't accurate to that precision,
-        let's clean up the data so near-zero numbers are simply zero.
-
-        * UserInterface/Models/ProfileNode.js:
-        Round selfTime down to zero if it's less than the
-        smallest value we would show in the user interface.
-
-2016-05-30  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: Uncaught exception page should pre-populate the bug's URL with the inspected page URL
-        https://bugs.webkit.org/show_bug.cgi?id=158055
-        <rdar://problem/26516693>
-
-        Reviewed by Saam Barati.
-
-        * UserInterface/Debug/UncaughtExceptionReporter.js:
-        Include the encoded URL in the query string if it is not empty.
-
-2016-05-30  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Right-clicking in Snapshot's DataGrid throws an exception
-        https://bugs.webkit.org/show_bug.cgi?id=157934
-        <rdar://problem/26380910>
-
-        Reviewed by Brian Burg.
-
-        Check that click event target is actually a cell, as it can be a row
-        when focusing the table after dismissing a popup menu.
-
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGridNode.prototype.isEventWithinDisclosureTriangle):
-
-2016-05-27  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Not all transitively dominated nodes display their retained size
-        https://bugs.webkit.org/show_bug.cgi?id=158174
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/HeapSnapshotInstanceDataGridNode.js:
-        (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._isDominatedByNonBaseParent):
-        Use the parent reference changing in the loop instead of always using the same parent.
-
-2016-05-27  Devin Rousso  <dcrousso+webkit@gmail.com>
-
-        Web Inspector: Add indicators to show nesting levels inside DOM Tree
-        https://bugs.webkit.org/show_bug.cgi?id=157468
-        <rdar://problem/26162640>
-
-        Reviewed by Timothy Hatcher.
-
-        Add CSS rules to give all expanded node children lists a small line on the
-        left border indicating that all items under the line are descendants.
-
-        * UserInterface/Views/DOMTreeOutline.css:
-        (.tree-outline.dom li .selection):
-        (.tree-outline.dom li > span):
-        (.tree-outline.dom ol):
-        (.tree-outline.dom .tree-outline.dom li:matches(.hovered, .selected) + ol.children.expanded):
-        (.tree-outline.dom li.selected + ol.children.expanded):
-        (.tree-outline.dom li.parent::before):
-
-2016-05-26  Matt Baker  <mattbaker@apple.com>
-
-        Uncaught Exception: TypeError: undefined is not an object (evaluating 'records[endIndex].endTime')
-        https://bugs.webkit.org/show_bug.cgi?id=158057
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/TimelineRecordingContentView.js:
-        (WebInspector.TimelineRecordingContentView.prototype._updateTimelineViewTimes):
-        When the entire recording is selected, rendering frames should use the
-        record count as its end time instead of the recording's end time.
-
-2016-05-25  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Uncaught Exception: TypeError: undefined is not an object (evaluating 'collectionData.affectedSnapshots')
-        https://bugs.webkit.org/show_bug.cgi?id=158051
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Workers/HeapSnapshot/HeapSnapshot.js:
-        (HeapSnapshot.prototype.updateDeadNodesAndGatherCollectionData):
-        * UserInterface/Workers/HeapSnapshot/HeapSnapshotWorker.js:
-        (HeapSnapshotWorker.prototype.createSnapshot):
-        If by the time the timeout fires we had cleared our snapshot list, then
-        updateDeadNodesAndGatherCollectionData could bail. Handle gracefully.
-
-2016-05-23  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Split console navigation bar doesn't wrap as expected
-        https://bugs.webkit.org/show_bug.cgi?id=157950
-        <rdar://problem/26395573>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/Main.css:
-        (#split-content-browser > .navigation-bar .item):
-        Fix the split console and don't touch any other navigation bars.
-
-2016-05-22  Brady Eidson  <beidson@apple.com>
-
-        Move to C++14.
-        https://bugs.webkit.org/show_bug.cgi?id=157948
-
-        Reviewed by Michael Catanzaro.
-
-        * Configurations/Base.xcconfig:
-
-2016-05-21  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Creating the CSSStyleDetailsSidebarPanel takes about 50ms (20%) of main load
-        https://bugs.webkit.org/show_bug.cgi?id=156707
-        <rdar://problem/25780404>
-
-        Reviewed by Timothy Hatcher.
-
-        This patch adds new View concepts, `initialLayout` and `widthDidChange`,
-        making it possible for hidden views to postpone the creation of their
-        UI subtree until they are shown for the first time.
-
-        Sidebar panels get this performance improvement by virtue of SidebarPanel
-        and StyleDetailsPanel, which trigger a layout when shown. This can be
-        removed once <https://webkit.org/b/150741> is fixed, and this is done
-        automatically by View.
-
-        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
-        (WebInspector.CSSStyleDeclarationTextEditor):
-        Should subclass View.
-        (WebInspector.CSSStyleDeclarationTextEditor.prototype.layout):
-        (WebInspector.CSSStyleDeclarationTextEditor.prototype.get element): Deleted.
-        Handled in View base class.
-        (WebInspector.CSSStyleDeclarationTextEditor.prototype.updateLayout): Deleted.
-        Relocate to `layout` override, ignore unused parameter `force`.
-
-        * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
-        (WebInspector.CSSStyleDetailsSidebarPanel):
-        Create the minimum required initial state and UI elements. Relocate
-        anything that can be lazy loaded to `initialLayout`.
-
-        (WebInspector.CSSStyleDetailsSidebarPanel.prototype.initialLayout):
-        (WebInspector.CSSStyleDetailsSidebarPanel.prototype.sizeDidChange):
-        (WebInspector.CSSStyleDetailsSidebarPanel.prototype.widthDidChange): Deleted.
-
-        * UserInterface/Views/ComputedStyleDetailsPanel.js:
-        (WebInspector.ComputedStyleDetailsPanel):
-        Relocate anything that can be lazy loaded to `initialLayout`.
-        (WebInspector.ComputedStyleDetailsPanel.prototype.initialLayout):
-        (WebInspector.ComputedStyleDetailsPanel.prototype.shown): Deleted.
-        (WebInspector.ComputedStyleDetailsPanel.prototype.widthDidChange): Deleted.
-        Handled in View base class.
-
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGrid.prototype.layout):
-        Resize logic can be safely moved to `sizeDidChange`, since columns are
-        always initialized when the width changes.
-        (WebInspector.DataGrid.prototype.sizeDidChange):
-        Reposition headers, scrollbars.
-        (WebInspector.DataGrid.prototype._updateHeaderAndScrollbar):
-        Broke out header repositioning, which needs to be called whenever
-        column widths are initialized or the view size changes.
-
-        * UserInterface/Views/NavigationBar.js:
-        (WebInspector.NavigationBar.prototype.layout):
-
-        * UserInterface/Views/RulesStyleDetailsPanel.js:
-        (WebInspector.RulesStyleDetailsPanel.prototype.sizeDidChange):
-        (WebInspector.RulesStyleDetailsPanel.prototype.widthDidChange): Deleted.
-
-        * UserInterface/Views/Sidebar.js:
-        (WebInspector.Sidebar.prototype._recalculateWidth):
-        Width changes need to be coordinated by the View base class, since the
-        initial layout must have occurred before handling a width change.
-        Force a layout with a resize layout reason.
-
-        * UserInterface/Views/SidebarPanel.js:
-        (WebInspector.SidebarPanel.prototype.get displayName):
-        Drive-by style fix: add getter so that CSSStyleDetailsSidebarPanel
-        doesn't have to read the private property directly.
-
-        (WebInspector.SidebarPanel.prototype.shown):
-        Force a layout whenever the panel is shown.
-        (WebInspector.SidebarPanel.prototype.sizeDidChange):
-        (WebInspector.SidebarPanel):
-        (WebInspector.SidebarPanel.prototype.widthDidChange): Deleted.
-
-        * UserInterface/Views/StyleDetailsPanel.js:
-        (WebInspector.StyleDetailsPanel.prototype.shown):
-        Schedule a layout when shown. A forced layout isn't necessary.
-        Unlike SidebarPanels, the initial state of style panels doesn't depend
-        on its layout, and can be safely initialized by the next rAF.
-
-        (WebInspector.StyleDetailsPanel.prototype.hidden):
-        Cancel a pending layout if the panel is hidden before the next AF.
-        (WebInspector.StyleDetailsPanel.prototype.widthDidChange): Deleted.
-        Not needed, defined in View base class.
-
-        * UserInterface/Views/TimelineOverview.js:
-        (WebInspector.TimelineOverview.prototype.sizeDidChange):
-        (WebInspector.TimelineOverview.prototype.layout):
-        Moved resize logic to `sizeDidChange`.
-
-        * UserInterface/Views/TimelineRuler.js:
-        (WebInspector.TimelineRuler.prototype.sizeDidChange):
-        (WebInspector.TimelineRuler.prototype.layout):
-        Moved resize logic to `sizeDidChange`.
-
-        * UserInterface/Views/View.js:
-        (WebInspector.View):
-        (WebInspector.View.prototype.updateLayout):
-        (WebInspector.View.prototype.cancelLayout):
-        Allow a pending layout to be canceled. Useful when a view with a
-        pending layout is hidden before the layout occurs.
-
-        (WebInspector.View.prototype.get layoutReason):
-        Protected getter for subclasses that need to check the layout reason
-        outside `sizeDidChange`.
-
-        (WebInspector.View.prototype.initialLayout):
-        Subclass hook to create UI subtree the first time a layout occurs.
-        Called only once during the lifetime of the View.
-
-        (WebInspector.View.prototype.layout):
-        Drive-by comment fix.
-        (WebInspector.View.prototype.sizeDidChange):
-        New layout cycle hook for subclasses.
-        (WebInspector.View.prototype._layoutSubtree):
-        Do an initial layout the first time layout is called.
-        Call the `sizeDidChange` hook so that subclasses can update state
-        which depends on size/position before doing layout.
-
-        * UserInterface/Views/VisualStyleDetailsPanel.js:
-        (WebInspector.VisualStyleDetailsPanel):
-        Create the minimum required initial state and UI elements. Relocate
-        anything that can be lazy loaded to `initialLayout`.
-
-        (WebInspector.VisualStyleDetailsPanel.prototype.refresh):
-        No changes, shifting line numbers confused the diff.
-        (WebInspector.VisualStyleDetailsPanel.prototype.initialLayout):
-        (WebInspector.VisualStyleDetailsPanel.prototype.sizeDidChange):
-        (WebInspector.VisualStyleDetailsPanel.prototype.widthDidChange): Deleted.
-
-2016-05-21  Matt Baker  <mattbaker@apple.com>
-
-        Assertion Failed: StyleDetailsPanel.markAsNeedsRefresh() called with null domNode
-        https://bugs.webkit.org/show_bug.cgi?id=157955
-        <rdar://problem/26398943>
-
-        Reviewed by Timothy Hatcher.
-
-        CSSStyleDetailsSidebarPanel `visible` is true while the panel is being
-        removed from the details sidebar, even after calling `hidden()`. This
-        causes it to refresh its current StyleDetailsPanel with a null DOM node.
-
-        Unfortunately, SidebarPanel.visible isn't toggled by calling shown/hidden.
-        Since SidebarPanel.visible is only true if the panel is selected, we should
-        deselect panels before removing them.
-
-        * UserInterface/Views/Sidebar.js:
-        (WebInspector.Sidebar.prototype.removeSidebarPanel):
-        Deselect the panel being removed before calling visibiltyDidChange.
-
-        * UserInterface/Views/SidebarPanel.js:
-        (WebInspector.SidebarPanel.prototype.toggle): Deleted.
-        (WebInspector.SidebarPanel.prototype.willRemove): Deleted.
-        Drive-by update to remove some unused methods.
-
-2016-05-20  Joseph Pecoraro  <pecoraro@apple.com>
-
-        REGRESSION(r200740): Web Inspector: TimelineRecordBar class lists not properly cleared, bleeding colors when zooming in and out
-        https://bugs.webkit.org/show_bug.cgi?id=157959
-        <rdar://problem/26393067>
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Views/TimelineRecordBar.js:
-        (WebInspector.TimelineRecordBar.prototype.set records):
-        When records are cleared, clear all classes.
-
-2016-05-20  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Split Console is auto opening all the time when using Inspect Element context menu
-        https://bugs.webkit.org/show_bug.cgi?id=157910
-        <rdar://problem/26374066>
-
-        Reviewed by Timothy Hatcher.
-
-        Currently, "synthetic" property is only used to decide whether adding a console message should
-        open the console or not. Replace it with "shouldRevealConsole".
-
-        * UserInterface/Controllers/DOMTreeManager.js:
-        (WebInspector.DOMTreeManager.prototype.inspectNodeObject.nodeAvailable):
-        (WebInspector.DOMTreeManager.prototype.inspectNodeObject):
-        * UserInterface/Controllers/JavaScriptLogViewController.js:
-        (WebInspector.JavaScriptLogViewController.prototype.appendImmediateExecutionWithResult.saveResultCallback):
-        (WebInspector.JavaScriptLogViewController.prototype.appendImmediateExecutionWithResult):
-        (WebInspector.JavaScriptLogViewController.prototype.consolePromptTextCommitted.printResult):
-        (WebInspector.JavaScriptLogViewController.prototype.consolePromptTextCommitted):
-        (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessageView):
-        * UserInterface/Models/ConsoleCommandResultMessage.js:
-        (WebInspector.ConsoleCommandResultMessage):
-        (WebInspector.ConsoleCommandResultMessage.prototype.get shouldRevealConsole):
-        (WebInspector.ConsoleCommandResultMessage.prototype.get synthetic): Deleted.
-        * UserInterface/Views/HeapSnapshotInstanceDataGridNode.js:
-        (WebInspector.HeapSnapshotInstanceDataGridNode.logHeapSnapshotNode.node.shortestGCRootPath.):
-        (WebInspector.HeapSnapshotInstanceDataGridNode.logHeapSnapshotNode):
-
-2016-05-19  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Can't resume Debugger after breaking on exception in Promise
-        https://bugs.webkit.org/show_bug.cgi?id=157240
-        <rdar://problem/26030890>
-
-        Reviewed by Timothy Hatcher.
-
-        If we pause but have no source code to show we paused in purely internal
-        code. In such cases we were attempting to resume without actually
-        telling the backend to resume, so the backend and frontend were out of
-        sync. The frontend thinking it is "paused" without an activeCallFrame
-        and the backend actually being paused.
-
-        This change more gracefully handles this situation. It actually resumes
-        both the frontend and the backend.
-
-        * UserInterface/Controllers/DebuggerManager.js:
-        (WebInspector.DebuggerManager.prototype.debuggerDidPause):
-        Resume the backend and the frontend.
-
-        (WebInspector.DebuggerManager.prototype._didResumeInternal):
-        Don't look at the active call frame, look at the paused state.
-        This may issue a Resumed event without actually triggering a
-        Paused event if this was the only pause, but that is harmless.
-
-2016-05-19  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Main Resource with <scripts> not showing up in debugger sidebar after reload
-        https://bugs.webkit.org/show_bug.cgi?id=157939
-        <rdar://problem/26385691>
-
-        Reviewed by Timothy Hatcher.
-
-        The order of events on a reload are:
-
-            - MainResourceChanged, add main resource
-            - ScriptsCleared, remove all elements
-
-        This change makes it so ScriptsCleared add the main resource (and
-        potentially other resources). This also avoids the work in
-        MainResourceChanged on reloads / navigations that would be wasted if
-        ScriptsCleared were to just remove it. However, this is still needed
-        for initial load where ScriptsCleared does not happen.
-
-        * UserInterface/Views/DebuggerSidebarPanel.js:
-        (WebInspector.DebuggerSidebarPanel.prototype._mainResourceDidChange):
-        Only add the main resource tree here when we are first loading.
-
-        (WebInspector.DebuggerSidebarPanel.prototype._scriptsCleared):
-        Add the main resource tree after we remove all children in navigations.
-
-        * UserInterface/Views/NavigationSidebarPanel.js:
-        (WebInspector.NavigationSidebarPanel.prototype._contentTreeOutlineTreeSelectionDidChange):
-        This was not gracefully handling if there was no selected tree element.
-
-2016-05-19  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Visual Style connectors are not always centered properly
-        https://bugs.webkit.org/show_bug.cgi?id=157932
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/VisualStylePropertyEditorLink.css:
-        (.visual-style-property-editor-link):
-        Remove the 1px margin on @2x that would cause jitter at different
-        sidebar widths. It is however needed on @1x.
-
-        (.visual-style-property-editor-link:not(.link-all)):
-        Make the height 20 so these both move closer to the center of the
-        <select> elements they are next to. They are not perfectly centered
-        as that would require a half pixel.
-
-        (.visual-style-property-editor-link.link-vertical):
-        Move the top line up a pixel so it is "up 0.5" from center and
-        the bottom one is already "down 0.5" from the center.
-
-2016-05-19  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        REGRESSION (r189385): Web Inspector: CSS properties modified via JS don't update in the Styles sidebar
-        https://bugs.webkit.org/show_bug.cgi?id=157918
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Controllers/DOMTreeManager.js:
-        (WebInspector.DOMTreeManager):
-        (WebInspector.DOMTreeManager.prototype._inlineStyleInvalidated):
-        (WebInspector.DOMTreeManager.prototype._loadNodeAttributes):
-        Set the initial value of _loadNodeAttributesTimeout to be 0,
-        as setTimeout always returns a positive integer.
-
-2016-05-19  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Heap Snapshots taken before timeline view has a zero time do not get shown
-        https://bugs.webkit.org/show_bug.cgi?id=157923
-        <rdar://problem/26377366>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/HeapAllocationsTimelineDataGridNode.js:
-        (WebInspector.HeapAllocationsTimelineDataGridNode):
-        (WebInspector.HeapAllocationsTimelineDataGridNode.prototype.createCellContent):
-        (WebInspector.HeapAllocationsTimelineDataGridNode.prototype.updateTimestamp):
-        Show emDash for the timestamp if we don't yet have a zero time.
-        Update when we get a zero time.
-
-        * UserInterface/Views/HeapAllocationsTimelineView.js:
-        (WebInspector.HeapAllocationsTimelineView):
-        (WebInspector.HeapAllocationsTimelineView.prototype.layout):
-        (WebInspector.HeapAllocationsTimelineView.prototype.reset):
-        Save a list of nodes pre-zero time and update them when we get a zero time.
-
-2016-05-19  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: HeapSnapshot Instances view should remove dead objects
-        https://bugs.webkit.org/show_bug.cgi?id=157920
-        <rdar://problem/26375866>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Workers/HeapSnapshot/HeapSnapshotWorker.js:
-        (HeapSnapshotWorker):
-        (HeapSnapshotWorker.prototype.clearSnapshots):
-        (HeapSnapshotWorker.prototype.createSnapshot):
-        Preserve a list of snapshots for this page's session. When
-        new snapshots come in we can determine which nodes have died
-        and update previous snapshots. Emit a CollectionEvent
-        containing the nodes that were deleted and affected snapshots.
-
-        * UserInterface/Workers/HeapSnapshot/HeapSnapshot.js:
-        (HeapSnapshot):
-        Stash the largest node identifier.
-        Create a byte-per-node list to mark it as dead or alive.
-        All snapshots start with all live nodes.
-
-        (HeapSnapshot.prototype.updateDeadNodesAndGatherCollectionData):
-        (HeapSnapshot.prototype._markDeadNodes):
-        When we get a new snapshot we can mark dead nodes in previous
-        snapshots. Determine the nodeIdentifiers of dead nodes, and
-        mark them as dead if they existed in previous snapshots.
-
-        (HeapSnapshot.buildCategories):
-        (HeapSnapshot.prototype.updateCategories):
-        (HeapSnapshotDiff.prototype.updateCategories):
-        Include a "deadCount" in category data. And provide a method
-        to return an updated category list.
-
-        (HeapSnapshot.prototype.serializeNode):
-        Include a "dead" property on nodes when they are first fetched.
-
-        * UserInterface/Proxies/HeapSnapshotDiffProxy.js:
-        (WebInspector.HeapSnapshotDiffProxy.prototype.updateForCollectionEvent):
-        (WebInspector.HeapSnapshotDiffProxy.prototype.updateCategories):
-        * UserInterface/Proxies/HeapSnapshotNodeProxy.js:
-        (WebInspector.HeapSnapshotNodeProxy):
-        (WebInspector.HeapSnapshotNodeProxy.deserialize):
-        * UserInterface/Proxies/HeapSnapshotProxy.js:
-        (WebInspector.HeapSnapshotProxy.prototype.updateForCollectionEvent):
-        (WebInspector.HeapSnapshotProxy.prototype.updateCategories):
-        Update snapshot proxies from a collection event by updating properties
-        and dispatching an event from the model object.
-
-        * UserInterface/Proxies/HeapSnapshotWorkerProxy.js:
-        (WebInspector.HeapSnapshotWorkerProxy):
-        (WebInspector.HeapSnapshotWorkerProxy.prototype.clearSnapshots):
-        (WebInspector.HeapSnapshotWorkerProxy.prototype._mainResourceDidChange):
-        Clear the session snapshot list when the main resource changes.
-        However we can't yet clear the HeapSnapshot objects on the worker
-        because we may still have UI that interact with them.
-
-        * UserInterface/Views/HeapAllocationsTimelineView.js:
-        (WebInspector.HeapAllocationsTimelineView):
-        (WebInspector.HeapAllocationsTimelineView.prototype.closed):
-        Register and unregister for HeapSnapshot collection events.
-
-        (WebInspector.HeapAllocationsTimelineView.prototype._heapSnapshotCollectionEvent.updateHeapSnapshotForEvent):
-        (WebInspector.HeapAllocationsTimelineView.prototype._heapSnapshotCollectionEvent):
-        Update all the snapshots we know about when a collection event happens.
-
-        * UserInterface/Views/HeapSnapshotClassDataGridNode.js:
-        (WebInspector.HeapSnapshotClassDataGridNode.prototype.removeCollectedNodes):
-        (WebInspector.HeapSnapshotClassDataGridNode.prototype.updateCount):
-        (WebInspector.HeapSnapshotClassDataGridNode.prototype._populate):
-        (WebInspector.HeapSnapshotClassDataGridNode.prototype._fetchBatch):
-        * UserInterface/Views/HeapSnapshotContentView.js:
-        (WebInspector.HeapSnapshotContentView.prototype._heapSnapshotDataGridTreeDidPopulate):
-        (WebInspector.HeapSnapshotContentView):
-        * UserInterface/Views/HeapSnapshotDataGridTree.js:
-        (WebInspector.HeapSnapshotDataGridTree):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.removeChild):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.removeCollectedNodes):
-        (WebInspector.HeapSnapshotDataGridTree.prototype._heapSnapshotCollectedNodes):
-        (WebInspector.HeapSnapshotInstancesDataGridTree.prototype.populateTopLevel):
-        (WebInspector.HeapSnapshotInstancesDataGridTree.prototype.removeCollectedNodes):
-        (WebInspector.HeapSnapshotInstancesDataGridTree):
-        Update the Instances DataGridTree UI when a collection event happens.
-        Remove any top level InstanceDataGridNodes that may be showing for collected nodes.
-        Update the category counts on the ClassDataGridNodes.
-        Update FetchMoreDataGridNodes to have updated counts (and replace removed nodes).
-
-2016-05-19  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: REGRESSION: Search magnifying glass shifted in Search tab input field
-        https://bugs.webkit.org/show_bug.cgi?id=157913
-        rdar://problem/26374424
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Views/SearchSidebarPanel.css:
-        (.sidebar > .panel.navigation.search > .search-bar > input[type="search"]): Removed padding-left.
-        (.sidebar > .panel.navigation.search > .search-bar > input[type="search"]::-webkit-search-results-button):
-        Added. Add margin-right here instead.
-
-2016-05-19  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: Timelines "Edit" button should be right-aligned
-        https://bugs.webkit.org/show_bug.cgi?id=157909
-        rdar://problem/26373969
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Views/ButtonNavigationItem.css:
-        (.navigation-bar .item.button.text-only): Deleted height: auto. Now inherited.
-        * UserInterface/Views/NavigationBar.css:
-        (.navigation-bar .item): Change height to auto to support any NavigationBar height.
-        This is needed since the Timelines tab has a shorter NavigationBar height, and
-        flexible items were overflowing.
-        * UserInterface/Views/TextNavigationItem.css:
-        (.navigation-bar .item.text): Deleted height: auto. Now inherited.
-        * UserInterface/Views/TimelineOverview.js:
-        (WebInspector.TimelineOverview): Add a FlexibleSpaceNavigationItem before the Edit button.
-
-2016-05-19  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: timelines should not update via requestAnimationFrame unless Web Inspector is visible
-        https://bugs.webkit.org/show_bug.cgi?id=157897
-        <rdar://problem/26330802>
-
-        Reviewed by Timothy Hatcher.
-
-        The timelines overview tries to animate using requestAnimationFrame, even if the
-        inspector frontend is not really visible. When it does this, requestAnimationFrame
-        simply stalls out until the inspector becomes visible. If a recording is started
-        while the inspector is not visible, then when it is shown again, the timeline will
-        start to animate from 0s instead of the current time. This happens because the
-        requestAnimationFrame was requested when the current time actually was 0, and it
-        finally executes some time later, when the current time is no longer accurate.
-        Since the timelines animate by calculating time elapsed since the previous frame
-        rather than using event timestamps, there is no way for the timelines to skip forward
-        in their animations in scenarios where the current time becomes arbitrarily skewed.
-
-        To fix this, consider the visibility state of the frontend as reported by the UIProcess.
-        Fire a global notification when visibility state changes, and start or stop updating
-        the current time as the frontend becomes visible or not shown.
-
-        This does not affect most other uses of requestAnimationFrame, which are used as
-        timers to call updateLayout at an appropriate time. The timelines case is different
-        because the current time is fixed prior to requesting an animation frame, and
-        later animation frames are only triggered by earlier requests, so there's nothing to
-        coalesce.
-
-        * UserInterface/Base/Main.js:
-        (WebInspector.loaded): Initialize WebInspector.visible.
-
-        * UserInterface/Base/Object.js: Add new event.
-
-        * UserInterface/Protocol/InspectorFrontendAPI.js:
-        (InspectorFrontendAPI.setIsVisible): Added.
-
-        * UserInterface/Test/Test.js:
-        (WebInspector.updateVisibilityState): Add a stub.
-
-        * UserInterface/Views/TimelineRecordingContentView.js:
-        (WebInspector.TimelineRecordingContentView):
-        (WebInspector.TimelineRecordingContentView.prototype._inspectorVisibilityStateChanged):
-        If visibility state changes while capturing, then start or stop updating the
-        current time as appropriate. Otherwise, refresh the timelines with updated
-        times so that they know about the recording's updated start/current/end time.
-
-        (WebInspector.TimelineRecordingContentView.prototype._startUpdatingCurrentTime):
-        Bail out if the Web Inspector frontend is not visible to the user and won't be
-        able to service requestAnimationFrames immediately.
-
-2016-05-18  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: Classes toggle wraps in some localizations
-        https://bugs.webkit.org/show_bug.cgi?id=157878
-        rdar://problem/26108859
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Views/CSSStyleDetailsSidebarPanel.css:
-        (.sidebar > .panel.details.css-style > .content ~ .options-container > .toggle-class-toggle):
-        Add white-space: nowrap.
-
-2016-05-18  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: unable to switch between navigation tree outlines using up/down arrow keys
-        https://bugs.webkit.org/show_bug.cgi?id=157713
-        <rdar://problem/26287086>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/NavigationSidebarPanel.js:
-        (WebInspector.NavigationSidebarPanel.prototype.createContentTreeOutline):
-        Listen for TreeOutline focus changes, and associate trees and their DOM
-        elements for quick lookup when handling focus events.
-
-        (WebInspector.NavigationSidebarPanel.prototype._contentTreeOutlineDidFocus):
-        (WebInspector.NavigationSidebarPanel.prototype._contentTreeOutlineTreeSelectionDidChange):
-        When selecting a tree element causes an element in a different tree outline
-        to be deselected, remember the old selection so that it can be restored
-        the next time the tree outline get the focus.
-
-2016-05-18  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Checkbox disappears when unchecking CSS property with value containing a semicolon
-        https://bugs.webkit.org/show_bug.cgi?id=157862
-        <rdar://problem/16214480>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
-        (WebInspector.CSSStyleDeclarationTextEditor.prototype._createCommentedCheckboxMarker):
-        Modify regex to match CSS properties with url() and quoted values,
-        which can contain semicolons.
-
-2016-05-18  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: ugly gaps in Call Trees data grid when expanding more than one level
-        https://bugs.webkit.org/show_bug.cgi?id=157829
-        <rdar://problem/26339922>
-
-        Reviewed by Timothy Hatcher.
-
-        Make a more specific CSS selector to avoid style conflicts.
-
-        * UserInterface/Views/DataGrid.css:
-        (.data-grid:not(.variable-height-rows) > .data-container > table.data > tbody > tr > td > div): Deleted.
-        (.data-grid:not(.variable-height-rows) > .data-container > table.data > tbody > tr > td > .cell-content):
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGridNode.prototype.createCell):
-
-2016-05-18  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: InspectorFrontendAPI.setTimelineProfilingEnabled should not implicitly show Timelines tab
-        https://bugs.webkit.org/show_bug.cgi?id=157846
-
-        Reviewed by Timothy Hatcher.
-
-        Currently, if the Web Inspector opens for an in-progress or finished automation session,
-        it will always show the Timelines tab, disregarding any previous user view state. This
-        is annoying and is a bad user experience when trying to debug the same test repeatedly.
-
-        * UserInterface/Protocol/InspectorFrontendAPI.js:
-        (InspectorFrontendAPI.setTimelineProfilingEnabled): Don't implicitly show Timelines tab.
-        (InspectorFrontendAPI.showTimelines): Added. This is called explicitly when desired.
-
-2016-05-18  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: DebuggerSidebarPanel doesn't need to help manage temporarily disabling breakpoints while capturing
-        https://bugs.webkit.org/show_bug.cgi?id=157854
-
-        Reviewed by Timothy Hatcher.
-
-        Duplicate the event listeners in DebuggerManager and move non-view-related
-        state updates out of DebuggerSidebarPanel's listeners into DebuggerManager's listeners.
-        This allows a test to exercise the temporary-disablement code paths during capturing.
-
-        * UserInterface/Controllers/DebuggerManager.js:
-        (WebInspector.DebuggerManager.prototype.get breakpointsDisabledTemporarily):
-        Use this to make the code a bit more readable.
-
-        (WebInspector.DebuggerManager.prototype._startDisablingBreakpointsTemporarily):
-        (WebInspector.DebuggerManager.prototype._stopDisablingBreakpointsTemporarily):
-        (WebInspector.DebuggerManager.prototype.startDisablingBreakpointsTemporarily): Deleted.
-        (WebInspector.DebuggerManager.prototype.stopDisablingBreakpointsTemporarily): Deleted.
-        Make this private since it's not used by other classes anymore.
-
-        (WebInspector.DebuggerManager.prototype._timelineCapturingWillStart): Added.
-        (WebInspector.DebuggerManager.prototype._timelineCapturingStopped): Added.
-
-        * UserInterface/Views/DebuggerSidebarPanel.js:
-        (WebInspector.DebuggerSidebarPanel.prototype._timelineRecordingWillStart): Deleted.
-        (WebInspector.DebuggerSidebarPanel.prototype._timelineRecordingStopped): Deleted.
-        (WebInspector.DebuggerSidebarPanel.prototype._timelineCapturingWillStart): Added.
-        (WebInspector.DebuggerSidebarPanel.prototype._timelineCapturingStopped): Added.
-        Make the listener names consistent with TimelineManager: timelineCapturing{WillStart,Stopped}.
-
-2016-05-18  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Improve console.takeHeapSnapshot documentation in console
-        https://bugs.webkit.org/show_bug.cgi?id=157853
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Models/NativeFunctionParameters.js:
-        Mention optional label argument.
-
-2016-05-18  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: race between frontend and backend both starting timeline recordings causes console assert
-        https://bugs.webkit.org/show_bug.cgi?id=157850
-        <rdar://problem/26349229>
-
-        Reviewed by Joseph Pecoraro.
-
-        If TimelineManager has created a fresh recording and the Timeline.autoCaptureStarted
-        event comes before Timeline.recordingStarted, then the manager will try to start the
-        same recording twice. In this scenario, the manager should just wait until the
-        Timeline.recordingStarted event comes, since it causes TimelineMangare to set up
-        the isCapturing flag and other state.
-
-        * UserInterface/Controllers/TimelineManager.js:
-        (WebInspector.TimelineManager):
-        (WebInspector.TimelineManager.prototype.startCapturing):
-        (WebInspector.TimelineManager.prototype.capturingStarted):
-        (WebInspector.TimelineManager.prototype.autoCaptureStarted):
-        Add a new flag, this._waitingForCapturingStartedEvent. If true, don't start the
-        recording in response to this event.
-
-2016-05-18  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: REGRESSION(r197488): Incorrect start time in Rendering Frames timeline grid
-        https://bugs.webkit.org/show_bug.cgi?id=157840
-        <rdar://problem/26344937>
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Views/TimelineRecordingContentView.js:
-        (WebInspector.TimelineRecordingContentView.prototype._updateTimes):
-        The Rendering Frames timeline view needs a valid zero time.
-        (WebInspector.TimelineRecordingContentView.prototype._timeRangeSelectionChanged):
-        Adjust ruler selection path component values by the zero time unless
-        the current view is the Rendering Frames timeline view.
-
-2016-05-17  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: NavigationSidebarPanel should coordinate item selection between its tree outlines
-        https://bugs.webkit.org/show_bug.cgi?id=157813
-        <rdar://problem/26331779>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/DebuggerSidebarPanel.js:
-        (WebInspector.DebuggerSidebarPanel.prototype._treeSelectionDidChange):
-        Deselecting elements in other tree outlines is now done in the base class.
-
-        * UserInterface/Views/NavigationSidebarPanel.js:
-        (WebInspector.NavigationSidebarPanel.prototype.createContentTreeOutline):
-        Listen for selection changed events on all content tree outlines.
-        (WebInspector.NavigationSidebarPanel.prototype.treeElementAddedOrChanged):
-        Moved stub from the public section to the protected section.
-        (WebInspector.NavigationSidebarPanel.prototype._contentTreeOutlineTreeSelectionDidChange):
-        Deselect tree elements in any content tree outline that is not the
-        parent of the selected element.
-
-        (WebInspector.NavigationSidebarPanel.prototype._treeSelectionDidChange): Deleted.
-        Rename _contentTreeOutlineTreeSelectionDidChange, to prevent being
-        shadowed by subclasses with _treeSelectionDidChange event handlers.
-
-2016-05-17  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Remove TimelineSidebarPanel.js as it's no longer referenced anywhere
-        https://bugs.webkit.org/show_bug.cgi?id=157819
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/TimelineSidebarPanel.js: Removed.
-        Removed unused file.
-
-2016-05-17  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: inspector tests should redirect and log console.trace() calls in test output
-        https://bugs.webkit.org/show_bug.cgi?id=157802
-        <rdar://problem/26325671>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Test/FrontendTestHarness.js:
-        (FrontendTestHarness.prototype.redirectConsoleToTestOutput.createProxyConsoleHandler):
-        Remove bind() that is now unnecessary. Also redirect console.warn.
-
-        (FrontendTestHarness.prototype.redirectConsoleToTestOutput):
-        For console.trace(), throw and catch a dummy Error to get a stack trace.
-        Do some post processing on it to remove useless frames and sanitize file paths.
-
-2016-05-17  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: Filtering huge data grids should yield occasionally so the UI remains responsive
-        https://bugs.webkit.org/show_bug.cgi?id=157702
-        <rdar://problem/26282898>
-
-        Based on a patch by Matt Baker <mattbaker@apple.com> on 2016-05-16
-        Reviewed by Timothy Hatcher.
-
-        This patch adds a new class, YieldableTask, for processing large
-        data sets without starving the runloop. A yieldable task takes a delegate,
-        an iterator that produces the items to be processed by the delegate, and
-        the "work interval" time slice and "idle interval" to wait between time slices.
-        It works by using `yield` to suspend processing when the current time
-        slice is exceeded, and setting a timeout to wait out the idle interval.
-
-        The iterator is responsible for deciding a good traversal order for items,
-        and the delegate is responsible for processing each item in turn. Tasks
-        cannot be reused once cancelled or processing completes.
-
-        Change DataGrid to use a yieldable task for filtering data grid nodes.
-        When the filtering criteria changes, cancel the task and run a new task.
-
-        * UserInterface/Base/YieldableTask.js: Added.
-        (WebInspector.YieldableTask.prototype.get processing):
-        (WebInspector.YieldableTask.prototype.get cancelled):
-        (WebInspector.YieldableTask.prototype.get idleInterval):
-        (WebInspector.YieldableTask.prototype.get workInterval):
-        Add getters.
-
-        (WebInspector.YieldableTask.prototype.start.createIteratorForProcessingItems):
-        (WebInspector.YieldableTask.prototype.start):
-        Set up an iterator that cranks through items to be processed until the
-        time slice is exceeded. Check to see if the task is cancelled before and
-        after calling out to the delegate to perform processing on the item.
-
-        (WebInspector.YieldableTask.prototype.cancel):
-        Set the cancel flag. Tell the delegate the task is finished soon.
-
-        (WebInspector.YieldableTask.prototype._processPendingItems):
-        Request the next item from the cranking iterator so it tries to process
-        more items. If it yields but still has more items to process, set a timeout
-        and continue processing more items after the idle interval.
-
-        (WebInspector.YieldableTask.prototype._willYield): Notify the delegate.
-        (WebInspector.YieldableTask.prototype._didFinish): Clear state and notify.
-        (WebInspector.YieldableTask):
-
-        * UserInterface/Main.html:
-        * UserInterface/Test.html: Add new file.
-
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGrid):
-        (WebInspector.DataGrid.prototype.filterDidChange):
-        Cancel the currently running filter task, if any exists.
-
-        (WebInspector.DataGrid.prototype._updateFilter.createIteratorForNodesToBeFiltered):
-        (WebInspector.DataGrid.prototype._updateFilter):
-        Set up and start a new filtering task when the filter updates.
-
-        (WebInspector.DataGrid.prototype.yieldableTaskWillProcessItem):
-        (WebInspector.DataGrid.prototype.yieldableTaskDidYield):
-        (WebInspector.DataGrid.prototype.yieldableTaskDidFinish):
-        Batch up notifications about filtered nodes changing since this can
-        cause a lot of unnecessary work by event listeners.
-
-2016-05-17  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: breakpoints in sourceURL named scripts are not persisted
-        https://bugs.webkit.org/show_bug.cgi?id=157714
-        <rdar://problem/26287099>
-
-        Reviewed by Joseph Pecoraro.
-
-        The Inspector frontend doesn't try to persist a breakpoint that
-        lacks a URL, even if the breakpoint has a sourceURL. Similarly, for
-        breakpoints without a URL, the frontend asks the backend to create
-        the breakpoint for a specific script identifier rather than a
-        URL-based breakpoint. This prevents breakpoints in injected scripts
-        from being resolved if the page is reloaded.
-
-        The Inspector backend knows how to resolve URL-based breakpoints
-        by matching against the script's URL or sourceURL, so we just need
-        to teach the frontend when either is appropriate to use.
-
-        This patch adds SourceCode.contentIdentifier, which is roughly
-        `url || sourceURL` for content that is not emphemeral, such as
-        console evaluations. Change breakpoint and debugger code to use
-        `contentIdentifier` rather than `url`, and pass contentIdentifier
-        to the backend when setting a breakpoint by URL.
-
-        * UserInterface/Controllers/DebuggerManager.js:
-        (WebInspector.DebuggerManager.prototype.breakpointsForSourceCode):
-        (WebInspector.DebuggerManager.prototype.scriptsForURL):
-        (WebInspector.DebuggerManager.prototype.get searchableScripts):
-        (WebInspector.DebuggerManager.prototype.removeBreakpoint):
-        (WebInspector.DebuggerManager.prototype.reset):
-        (WebInspector.DebuggerManager.prototype.scriptDidParse):
-        (WebInspector.DebuggerManager.prototype._setBreakpoint):
-        (WebInspector.DebuggerManager.prototype._saveBreakpoints):
-        (WebInspector.DebuggerManager.prototype._associateBreakpointsWithSourceCode):
-
-        * UserInterface/Models/Breakpoint.js:
-        (WebInspector.Breakpoint):
-        (WebInspector.Breakpoint.prototype.get contentIdentifier):
-        (WebInspector.Breakpoint.prototype.get info):
-        (WebInspector.Breakpoint.prototype.saveIdentityToCookie):
-        (WebInspector.Breakpoint.prototype.get url): Deleted.
-        Replace uses of Breakpoint.prototype.get url with
-        contentIdentifier inside the class and at all callsites.
-
-        * UserInterface/Models/Script.js:
-        (WebInspector.Script.prototype.get contentIdentifier):
-        Added. Use the URL, or the sourceURL unless the script is
-        ephemeral and only run once, like as a console evaluation.
-
-        * UserInterface/Models/SourceCode.js:
-        (WebInspector.SourceCode.prototype.get url): Added.
-        All subclasses already override this getter. Add it here so that
-        the default implementation of contentIdentifier can use it.
-
-        (WebInspector.SourceCode.prototype.get contentIdentifier): Added.
-
-        * UserInterface/Views/BreakpointTreeElement.js:
-        (WebInspector.BreakpointTreeElement.prototype.get filterableData):
-        * UserInterface/Views/ProbeSetDetailsSection.js:
-        (WebInspector.ProbeSetDetailsSection.prototype._updateLinkElement):
-        * UserInterface/Views/SourceCodeTextEditor.js:
-        (WebInspector.SourceCodeTextEditor.prototype._matchesBreakpoint):
-        * UserInterface/Views/TextResourceContentView.js:
-        (WebInspector.TextResourceContentView.prototype.get supplementalRepresentedObjects):
-
-2016-05-16  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Uncaught Exception: TypeError: null is not an object (evaluating 'event.data.pathComponent.domTreeElement')
-        https://bugs.webkit.org/show_bug.cgi?id=157759
-        <rdar://problem/26309427>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/DOMTreeContentView.js:
-        (WebInspector.DOMTreeContentView.prototype._pathComponentSelected):
-        Handle possible null path components.
-
-        * UserInterface/Views/HierarchicalPathComponent.js:
-        (WebInspector.HierarchicalPathComponent.prototype.get selectedPathComponent):
-        When there is a list of just one that is triggered, the Clicked
-        event should produce that one, to be consistent with clicking
-        on a list of multiple elements and selecting the same value.
-
-2016-05-16  Saam barati  <sbarati@apple.com>
-
-        Hook up ShadowChicken to the debugger to show tail deleted frames
-        https://bugs.webkit.org/show_bug.cgi?id=156685
-        <rdar://problem/25770521>
-
-        Reviewed by Filip Pizlo and Mark Lam and Joseph Pecoraro.
-
-        This patch makes the WebInspector display tail deleted frames.
-        We show tail deleted frames with a gray [f] instead of a green
-        [f]. We also put text in the tooltip to indicate that the frame
-        is tail deleted. Other than that, tail deleted frames behave like
-        normal frames. You can evaluate in them, inspect their scope, etc.
-
-        * Localizations/en.lproj/localizedStrings.js:
-        * UserInterface/Images/TailDeletedFunction.svg: Added.
-        * UserInterface/Images/gtk/TailDeletedFunction.svg: Added.
-        * UserInterface/Models/CallFrame.js:
-        * UserInterface/Views/CallFrameIcons.css:
-        * UserInterface/Views/CallFrameTreeElement.js:
-        * UserInterface/Views/CallFrameView.js:
-
-2016-05-16  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Contents of Duration column are covered by always on (legacy) scroll bars
-        https://bugs.webkit.org/show_bug.cgi?id=157590
-
-        Reviewed by Timothy Hatcher.
-
-        Set the right padding of the DataGrid header to match the scrollbar width.
-
-        * UserInterface/Views/DataGrid.css:
-        (.data-grid .data-container):
-        (.data-grid.inline .data-container):
-        Don't show scrollbars for inline data grids.
-
-        (.data-grid > .header-wrapper):
-        (.data-grid.no-header > .header-wrapper > table.header):
-        (.data-grid.no-header > table.header): Deleted.
-        (.data-grid th): Deleted.
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGrid):
-        We can't add padding-rigth to a table. Wrap the table in div.header-wrapper.
-
-        (WebInspector.DataGrid.prototype._updateScrollbarPadding):
-        (WebInspector.DataGrid.prototype.layout):
-
-2016-05-16  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Background stripes don't span the width of Network sidebar
-        https://bugs.webkit.org/show_bug.cgi?id=157744
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/NetworkSidebarPanel.css:
-        (.sidebar > .panel.navigation.network.network-grid-content-view-showing > .content):
-
-2016-05-16  Antoine Quint  <graouts@apple.com>
-
-        Web Inspector: Computed style shows both prefixed and unprefixed variants of properties
-        https://bugs.webkit.org/show_bug.cgi?id=157674
-        <rdar://problem/24339756>
-
-        Reviewed by Timothy Hatcher.
-
-        We make the CSSProperty `implicit` property read-write, and in the case where a computed style
-        has a property marked as explicit, we also check that it's found in matching rules to consider
-        it non-implicit. This correctly filters out variants of properties set explicitly.
-
-        * UserInterface/Models/CSSProperty.js:
-        (WebInspector.CSSProperty.prototype.set implicit):
-        * UserInterface/Models/DOMNodeStyles.js:
-        (WebInspector.DOMNodeStyles.prototype.refresh.fetchedComputedStyle):
-        (WebInspector.DOMNodeStyles.prototype.refresh):
-        (WebInspector.DOMNodeStyles.prototype._isPropertyFoundInMatchingRules):
-        (WebInspector.DOMNodeStyles):
-
-2016-05-14  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: DataGrid _updateVisibleRows dominates profiles of timeline recordings when data grid (Overview or TimelineDataGrids) is showing
-        https://bugs.webkit.org/show_bug.cgi?id=157664
-        rdar://problem/26262219
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGrid): Added new members.
-        (WebInspector.DataGrid.prototype.layout): Reset _cachedScrollTop and _cachedScrollHeight on resize.
-        (WebInspector.DataGrid.prototype._noteScrollPositionChanged): Added.
-        (WebInspector.DataGrid.prototype._updateVisibleRows): Cache sizes and positions when possible.
-        (WebInspector.DataGridNode.prototype.set hidden): Added call to _noteRowsChanged.
-        (WebInspector.DataGridNode.prototype.collapse): Call _noteRowsChanged instead of needsLayout.
-        (WebInspector.DataGridNode.prototype.expand): Call _noteRowsChanged instead of needsLayout.
-        (WebInspector.DataGrid.prototype._updateFilter): Removed direct call to _updateVisibleRows, this is
-        better handled by DataGridNode's hidden setter.
-
-2016-05-14  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: Many DataGrid instances do not save/restore their scroll position
-        https://bugs.webkit.org/show_bug.cgi?id=157709
-        rdar://problem/26286090
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Models/BackForwardEntry.js:
-        (WebInspector.BackForwardEntry.prototype.makeCopy): Added.
-        * UserInterface/Views/ContentViewContainer.js:
-        (WebInspector.ContentViewContainer.prototype.showContentView): Copy the last entry for the view.
-        * UserInterface/Views/DOMStorageContentView.js:
-        (WebInspector.DOMStorageContentView.prototype.get scrollableElements): Added.
-        * UserInterface/Views/HeapSnapshotContentView.js:
-        (WebInspector.HeapSnapshotContentView.prototype.get scrollableElements): Added.
-        * UserInterface/Views/IndexedDatabaseObjectStoreContentView.js:
-        (WebInspector.IndexedDatabaseObjectStoreContentView.prototype.get scrollableElements): Added.
-        * UserInterface/Views/MemoryTimelineView.js:
-        (WebInspector.MemoryTimelineView.prototype.get scrollableElements): Added.
-        * UserInterface/Views/ProfileView.js:
-        (WebInspector.ProfileView.prototype.get scrollableElements): Added.
-        (WebInspector.ProfileView.prototype._repopulateDataGridFromTree): Removed unused skipRefresh argument.
-        * UserInterface/Views/ScriptClusterTimelineView.js:
-        (WebInspector.ScriptClusterTimelineView.prototype.get scrollableElements): Added.
-        * UserInterface/Views/ScriptProfileTimelineView.js:
-        (WebInspector.ScriptProfileTimelineView.prototype.get scrollableElements): Added.
-        * UserInterface/Views/TimelineView.js:
-        (WebInspector.TimelineView.prototype.get scrollableElements): Added.
-
-2016-05-14  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Empty line shows arrow when hovering over Animation Frame Requested in timeline recording
-        https://bugs.webkit.org/show_bug.cgi?id=157707
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/DataGrid.css:
-        (.data-grid:not(.variable-height-rows) > .data-container > table.data > tbody > tr > td > div):
-
-2016-05-13  Simon Fraser  <simon.fraser@apple.com>
-
-        Unprefix -webkit-cross-fade()
-        https://bugs.webkit.org/show_bug.cgi?id=157632
-
-        Reviewed by Darin Adler.
-
-        * UserInterface/Models/CSSKeywordCompletions.js:
-
-2016-05-13  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Typing "layout" in filter for Layout and Rendering Timeline matches everything
-        https://bugs.webkit.org/show_bug.cgi?id=157684
-        <rdar://problem/26276588>
-
-        Reviewed by Joseph Pecoraro.
-
-        Hidden columns should not participate in built-in grid filtering
-        using DataGrid.filterText. Hidden columns can still be custom filtered,
-        which is how TimelineDataGrid filters scopebar columns.
-
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGridNode.prototype.get filterableData):
-        Skip hidden columns.
-
-2016-05-13  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Script ProfileViews should be searchable
-        https://bugs.webkit.org/show_bug.cgi?id=157581
-        <rdar://problem/26228530>
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGrid.prototype.get filterText):
-        Make filterText readable.
-
-        * UserInterface/Views/ProfileDataGridNode.js:
-        (WebInspector.ProfileDataGridNode.prototype.get callingContextTreeNode):
-        (WebInspector.ProfileDataGridNode.prototype.filterableDataForColumn):
-        Add filterable data for the "function" column.
-        (WebInspector.ProfileDataGridNode.prototype._updateChildrenForModifiers):
-        (WebInspector.ProfileDataGridNode.prototype.get node): Deleted.
-        Renamed callingContextTreeNode to be less ambiguous.
-
-        * UserInterface/Views/ProfileDataGridTree.js:
-        (WebInspector.ProfileDataGridTree.prototype._updateCurrentFocusDetails):
-
-        * UserInterface/Views/ProfileView.js:
-        (WebInspector.ProfileView.prototype.get dataGrid):
-        Expose data grid for use in parent view.
-
-        * UserInterface/Views/ScriptClusterTimelineView.js:
-        (WebInspector.ScriptClusterTimelineView.prototype.selectRecord):
-        Drive-by fix: forward property to current child TimelineView.
-
-        * UserInterface/Views/ScriptProfileTimelineView.js:
-        (WebInspector.ScriptProfileTimelineView):
-        (WebInspector.ScriptProfileTimelineView.prototype._scopeBarSelectionDidChange):
-        (WebInspector.ScriptProfileTimelineView.prototype._showProfileViewForOrientation):
-        Helper function to switch profile views. Persist filter text when
-        switching to the new profile view.
-
-        (WebInspector.ScriptProfileTimelineView.prototype.get showsFilterBar): Deleted.
-        Remove FIXME and show filter bar.
-
-        * UserInterface/Views/TimelineView.js:
-        (WebInspector.TimelineView.prototype.setupDataGrid):
-        Support switching to a new data grid.
-        (WebInspector.TimelineView.prototype.dataGridMatchNodeAgainstCustomFilters):
-        Hooking up filtering causes data grid nodes to be filtered based on the
-        ruler selection. Although ScriptProfileTimelineView performs its own
-        time-based filtering, this is necessary to prevent an assert.
-
-        (WebInspector.TimelineView.prototype._timelineDataGridSelectedNodeChanged):
-        (WebInspector.TimelineView.prototype._timelineDataGridNodeWasFiltered):
-        Converted arrow functions to member functions to allow unregistering
-        event listeners on outgoing data grid when swapping grids.
-
-2016-05-12  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Remove "Extra Scripts" folder from Resources sidebar if all children removed
-        https://bugs.webkit.org/show_bug.cgi?id=157656
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/ResourceSidebarPanel.js:
-        (WebInspector.ResourceSidebarPanel.prototype._scriptWasRemoved):
-        Remove parent folder after last script tree element removed.
-
-2016-05-12  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Can't filter Rendering Frames by duration
-        https://bugs.webkit.org/show_bug.cgi?id=157654
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/RenderingFrameTimelineView.js:
-        (WebInspector.RenderingFrameTimelineView.prototype._scopeBarSelectionDidChange):
-        Call filterDidChange on the grid, not the base class.
-        TimelineView.filterDidChange exists to let TimelineViews perform
-        additional work when the grid filter changes (see LayoutTimelineView).
-        (WebInspector.RenderingFrameTimelineView):
-
-2016-05-12  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Deleting nodes in DOM Tree sometimes changes selection to parent instead of sibling
-        https://bugs.webkit.org/show_bug.cgi?id=157649
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/DOMTreeElement.js:
-        (WebInspector.DOMTreeElement.prototype._updateChildren): Deleted.
-        When pressing delete, we remove the node via DOM.removeNode()
-        and remove the DOMTreeElement when we receive a successful response.
-        However, the backend could send a DOM.childNodeRemoved event before
-        the response from DOM.removeNode, and the frontend would have a race
-        between DOMTreeUpdater's timeout and the removeNode callback.
-
-        In DOMTreeUpdater's path, DOMTreeElement updateChildren would notice
-        a removed node and set the selection to the parent node.
-
-        In the DOM.removeNode path, TreeOutline would update the selection
-        based on availability of a previousSibling/nextSibling/parent.
-
-        Remove the custom code in DOMTreeElement updateChildren, so that it
-        can just do the normal TreeOutline behavior via removeChildAtIndex.
-
-2016-05-12  Joseph Pecoraro  <pecoraro@apple.com>
-
-        REGRESSION: Web Inspector: Fails to load sourceMappingURL with relative URL
-        https://bugs.webkit.org/show_bug.cgi?id=157650
-        <rdar://problem/26133763>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Controllers/SourceMapManager.js:
-        Wrong order of arguments. The intent was to pass the incoming
-        baseURL as the partialURL, because if it was not absolute by
-        that point we could make it relative to the main resource.
-        However we accidentally put the main resource as the partial
-        portion, which would just always return the main resource url.
-        Swap the order, so that if the incoming base is absolute
-        (such as a resource.url) that will be used, but if the
-        incoming base is relative (e.g. an incomplete sourceURL) we
-        can make it absolute with the main resource.
-
-2016-05-12  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Uncaught exception when removing selected Timeline instrument
-        https://bugs.webkit.org/show_bug.cgi?id=157639
-        <rdar://problem/26252938>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/TimelineOverview.js:
-        (WebInspector.TimelineOverview.prototype._instrumentRemoved):
-        Remove timeline tree element before modifying state. Removing the tree
-        element triggers a SelectionDidChange event, which can have side effects.
-
-2016-05-12  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Timeline Reset button only resets the one active Script TimelineView
-        https://bugs.webkit.org/show_bug.cgi?id=157638
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/ScriptClusterTimelineView.js:
-        (WebInspector.ScriptClusterTimelineView.prototype.reset):
-        Reset should reset all the views.
-
-        (WebInspector.ScriptClusterTimelineView.prototype.get navigationSidebarTreeOutline): Deleted.
-        * UserInterface/Views/NetworkGridContentView.js:
-        (WebInspector.NetworkGridContentView.prototype.get navigationSidebarTreeOutline): Deleted.
-        * UserInterface/Views/TimelineView.js:
-        (WebInspector.TimelineView.prototype.get navigationSidebarTreeOutlineScopeBar): Deleted.
-        Remove dead code. Nobody calls these getters.
-
-2016-05-12  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Layout timeline popovers are inconsistently shown
-        https://bugs.webkit.org/show_bug.cgi?id=157640
-        <rdar://problem/26253394>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/TimelineDataGrid.js:
-        (WebInspector.TimelineDataGrid.prototype._showPopoverForSelectedNodeSoon):
-        Fix the bug by clearing _showPopoverTimeout when we show the popover.
-
-        (WebInspector.TimelineDataGrid.prototype._hidePopover):
-        Modernize the code to use arrow functions and avoid binds.
-
-        (WebInspector.TimelineDataGrid.prototype._updatePopoverForSelectedNode):
-        Updating with presentNewContentWithFrame animates the popover to the correct
-        position instead of jumping and ending up at the wrong location.
-
-2016-05-12  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Remove forced layouts caused by DOMTreeElement during Timeline recording
-        https://bugs.webkit.org/show_bug.cgi?id=157641
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/DOMTreeElement.js:
-        (WebInspector.DOMTreeElement.prototype.updateSelection): Deleted.
-        This triggers forced layout and I could never actually get it to trigger anyways.
-        Its history is from the original import, so I don't know why it was added to begin with.
-        Just remove it.
-
-2016-05-12  Commit Queue  <commit-queue@webkit.org>
-
-        Unreviewed, rolling out r200718.
-        https://bugs.webkit.org/show_bug.cgi?id=157637
-
-        Data grid column dividers are misaligned (Requested by NVI on
-        #webkit).
-
-        Reverted changeset:
-
-        "Web Inspector: Contents of Duration column are covered by
-        always on (legacy) scroll bars"
-        https://bugs.webkit.org/show_bug.cgi?id=157590
-        http://trac.webkit.org/changeset/200718
-
-2016-05-12  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: 11% of time in TimelineRecording spent updating DataGrid that is not visible
-        https://bugs.webkit.org/show_bug.cgi?id=157612
-        <rdar://problem/26239051>
-
-        Reviewed by Timothy Hatcher.
-
-        During recording, a timeline view is constantly having its cached time
-        values updated. These updates should only trigger forced layouts if the
-        view supports live data.
-
-        * UserInterface/Views/TimelineView.js:
-        (WebInspector.TimelineView.prototype.set zeroTime):
-        Drive-by fix, add call to _filterTimesDidChange.
-        (WebInspector.TimelineView.prototype.set startTime):
-        (WebInspector.TimelineView.prototype.set endTime):
-        (WebInspector.TimelineView.prototype.set currentTime):
-        Don't update layout directly.
-        (WebInspector.TimelineView.prototype._timesDidChange):
-        Force a layout if the view supports live data. When not recording,
-        a layout is always performed.
-        (WebInspector.TimelineView):
-        (WebInspector.TimelineView.prototype._filterTimesDidChange.delayedWork): Deleted.
-        Changed to an arrow function.
-        (WebInspector.TimelineView.prototype._filterTimesDidChange): Deleted.
-        Renamed _timesDidChange, since the method now does more than throttle
-        a filterDidChange call.
-
-2016-05-12  Fujii Hironori  <Hironori.Fujii@sony.com>
-
-        Web Inspector: Windows Perl fails to run copy-user-interface-resources.pl
-        https://bugs.webkit.org/show_bug.cgi?id=157620
-        <rdar://problem/26241548>
-
-        Reviewed by Timothy Hatcher.
-
-        There are two problems on Windows platform. 'cat' command is
-        missing and can not execute shebang.
-
-        * Scripts/copy-user-interface-resources.pl: Invoke Perl scripts
-        with explicitly specifying Perl command instead of relying on
-        shebang.  Add a new subroutine 'appendFile' to concatenate files
-        instread of 'cat' command.
-
-2016-05-12  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: 3.8% of timeline recording spent in NavigationSidebarPanel _updateContentOverflowShadowVisibility for background tab
-        https://bugs.webkit.org/show_bug.cgi?id=157616
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/NavigationSidebarPanel.js:
-        (WebInspector.NavigationSidebarPanel.prototype._updateContentOverflowShadowVisibility):
-        (WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged):
-        Don't update or schedule and update if we aren't visible.
-        When we are shown we will force an update.
-
-2016-05-12  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Reduce rAF churn in DefaultDashboardView on pages with lots of resources
-        https://bugs.webkit.org/show_bug.cgi?id=157618
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/DefaultDashboardView.js:
-        (WebInspector.DefaultDashboardView):
-        (WebInspector.DefaultDashboardView.prototype._updateDisplaySoon):
-        (WebInspector.DefaultDashboardView.prototype._updateDisplay):
-        Previously we were scheduling multiple rAFs that would all fire with
-        the same data, each time a resource was added. Coalesce into one.
-
-2016-05-12  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Improve snapshot selection in heap allocations overview graph
-        https://bugs.webkit.org/show_bug.cgi?id=157588
-        <rdar://problem/26231245>
-
-        Reviewed by Joseph Pecoraro.
-
-        Heap snapshot icon selection now uses the built-in record selection
-        behavior provided by TimelineOverview/TimelineOverviewGraph. The marker
-        representing the selected heap snapshot now has a "selected" style, and
-        clicking an icon when the HeapAllocationsTimeline is not selected causes
-        the timeline to become selected.
-
-        * UserInterface/Images/HeapSnapshotSelected.svg: Added.
-        New art for selected snapshot icon.
-
-        * UserInterface/Views/HeapAllocationsTimelineOverviewGraph.css:
-        (.timeline-overview-graph.heap-allocations > img.snapshot.selected):
-        (.timeline-overview-graph.heap-allocations:not(.selected) > img.snapshot.selected):
-        Selected icon styles for selected/unselected overview graph.
-
-        * UserInterface/Views/HeapAllocationsTimelineOverviewGraph.js:
-        (WebInspector.HeapAllocationsTimelineOverviewGraph):
-        Track selected image element.
-
-        (WebInspector.HeapAllocationsTimelineOverviewGraph.prototype.layout):
-        Associate image elements with their snapshot record, and reuse image
-        elements between layouts. Image element click handler can just set the
-        selectedRecord in the TimelineOverviewGraph base class.
-
-        (WebInspector.HeapAllocationsTimelineOverviewGraph.prototype.updateSelectedRecord):
-        (WebInspector.HeapAllocationsTimelineOverviewGraph.prototype._updateSnapshotMarkers):
-        Refresh snapshot icon styles when selected record changes.
-
-        * UserInterface/Views/HeapAllocationsTimelineView.js:
-        (WebInspector.HeapAllocationsTimelineView.prototype.selectRecord):
-        Show snapshot list if no record selected.
-        (WebInspector.HeapAllocationsTimelineView.prototype.userSelectedRecordFromOverview): Deleted.
-        No longer needed.
-
-        * UserInterface/Views/RenderingFrameTimelineOverviewGraph.js:
-        (WebInspector.RenderingFrameTimelineOverviewGraph.prototype._updateFrameMarker):
-        No need to call dispatchSelectedRecordChangedEvent manually anymore,
-        method has been removed from base class.
-
-        * UserInterface/Views/TimelineOverviewGraph.js:
-        (WebInspector.TimelineOverviewGraph.prototype._needsSelectedRecordLayout):
-        (WebInspector.TimelineOverviewGraph):
-        (WebInspector.TimelineOverviewGraph.prototype.dispatchSelectedRecordChangedEvent): Deleted.
-        No longer needed. Event dispatched automatically by the rAF callback.
-
-        * UserInterface/Views/TimelineRecordingContentView.js:
-        (WebInspector.TimelineRecordingContentView.prototype._recordSelected):
-        Allow switching to another timeline, if the selected record does not
-        belong to the current timeline.
-
-2016-05-12  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: 3.5% of time in toFixed in TimelineRecordBar updating element positions
-        https://bugs.webkit.org/show_bug.cgi?id=157608
-
-        Reviewed by Timothy Hatcher.
-
-        Avoid using toFixed to do an approximation comparison of two floating point numbers.
-        Instead keep in Numbers by just doing the approximation with Math.round(num * 100).
-        Since toFixed was doing stringification it was very expensive.
-
-        * UserInterface/Views/TimelineRecordBar.js:
-        (WebInspector.TimelineRecordBar.prototype._updateElementPosition):
-        (WebInspector.TimelineRecordBar):
-        * UserInterface/Views/TimelineRecordFrame.js:
-        (WebInspector.TimelineRecordFrame.prototype._updateElementPosition):
-        (WebInspector.TimelineRecordFrame):
-        * UserInterface/Views/TimelineRuler.js:
-        (WebInspector.TimelineRuler.prototype._updatePositionOfElement):
-
-2016-05-11  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: 4% of time in TimelineOverviewGraph adding/removing classList styles on TimelineRecordBar
-        https://bugs.webkit.org/show_bug.cgi?id=157607
-
-        Reviewed by Brian Burg.
-
-        This gets us down to about 0.5% of time.
-
-        * UserInterface/Views/TimelineRecordBar.js:
-        (WebInspector.TimelineRecordBar.prototype.set records):
-        Only modify the classLists when the record changes.
-
-        (WebInspector.TimelineRecordBar.prototype.refresh):
-        Set unfinished once for either the uses active or not uses active cases.
-
-2016-05-11  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Unexpected unread notification icon next to Log after clearing via clear()
-        https://bugs.webkit.org/show_bug.cgi?id=157598
-
-        Reviewed by Timothy Hatcher.
-
-        We always show ConsoleCommand and ConsoleCommandResult messages no matter
-        what the filter is. So it doesn't make sense to mark the "log" filter
-        as having an unread notification for a ConsoleCommandResult when we can
-        see the result.
-
-        * UserInterface/Views/LogContentView.js:
-        (WebInspector.LogContentView.prototype.didAppendConsoleMessageView):
-        (WebInspector.LogContentView.prototype._markScopeBarItemUnread):
-
-2016-05-11  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Console unread indicators should be cleared however the console clears
-        https://bugs.webkit.org/show_bug.cgi?id=157594
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/LogContentView.js:
-        (WebInspector.LogContentView.prototype._logCleared):
-        (WebInspector.LogContentView.prototype._clearLog):
-        Move code that clears unread indicators from clearLog to logCleared
-        to handle all possible clear cases.
-
-2016-05-11  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Contents of Duration column are covered by always on (legacy) scroll bars
-        https://bugs.webkit.org/show_bug.cgi?id=157590
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/DataGrid.css:
-        (.data-grid .data-container):
-        Always show vertical scrollbars.
-
-        (.data-grid > .header-wrapper):
-        (.data-grid > .header-wrapper::-webkit-scrollbar):
-        Show invisible scrollbar for DataGrid's header to align the header table with the content.
-
-        (.data-grid.no-header > .header-wrapper > table.header):
-        (.data-grid.no-header > table.header): Deleted.
-        (.data-grid th): Deleted.
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGrid):
-        `overflow-y: scroll` doesn't work on a table element. Wrap table in a div.
-
-2016-05-11  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Make it possible to do special styling on selected TimelineOverviewGraphs
-        https://bugs.webkit.org/show_bug.cgi?id=157593
-        <rdar://problem/26232886>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/TimelineOverview.js:
-        (WebInspector.TimelineOverview.prototype._timelinesTreeSelectionDidChange.updateGraphSelectedState):
-        (WebInspector.TimelineOverview.prototype._timelinesTreeSelectionDidChange):
-        Select the new overview graph and deselect the old one.
-
-        * UserInterface/Views/TimelineOverviewGraph.js:
-        (WebInspector.TimelineOverviewGraph):
-        (WebInspector.TimelineOverviewGraph.prototype.get selected):
-        (WebInspector.TimelineOverviewGraph.prototype.set selected):
-        New property, toggles "selected" class on the graph element.
-
-2016-05-11  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: "Selected Element" is hard to read when searching for "Element"
-        https://bugs.webkit.org/show_bug.cgi?id=157542
-        <rdar://problem/26207464>
-
-        Reviewed by Timothy Hatcher.
-
-        Change the style of highlighted text to match Xcode.
-
-        * UserInterface/Views/LogContentView.css:
-        (.search-in-progress .console-item:not(.filtered-out-by-search).special-user-log .console-message-text .highlighted):
-        * UserInterface/Views/OpenResourceDialog.css:
-        (.open-resource-dialog > .tree-outline .item.selected .highlighted):
-        * UserInterface/Views/Variables.css:
-        (:root):
-
-2016-05-11  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Hide filter bar in TimelineViews where it is not needed or not yet working
-        https://bugs.webkit.org/show_bug.cgi?id=157583
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/HeapAllocationsTimelineView.js:
-        (WebInspector.HeapAllocationsTimelineView.prototype.get showsFilterBar):
-        (WebInspector.HeapAllocationsTimelineView.prototype.layout):
-        (WebInspector.HeapAllocationsTimelineView.prototype.updateFilter):
-        Filter bar not yet hooked up for HeapSnapshot views.
-        Make filtering work for the main timeline grid.
-        It doesn't use the normal TimelineView filter based on selected range.
-        This is intentional because it may be the case that a snapshot happens
-        outside the selected time range (via the navigation bar button) and
-        we want to show it. Otherwise a user might be confused why it is not
-        showing up in the list.
-
-        * UserInterface/Views/MemoryTimelineView.js:
-        (WebInspector.MemoryTimelineView.prototype.get showsFilterBar):
-        Filter bar not needed in the Memory timeline view.
-
-        * UserInterface/Views/ScriptClusterTimelineView.js:
-        (WebInspector.ScriptClusterTimelineView.prototype.get showsFilterBar):
-        Filter bar works for the Events timeline view.
-
-        * UserInterface/Views/ScriptProfileTimelineView.js:
-        (WebInspector.ScriptProfileTimelineView.prototype.get showsFilterBar):
-        Filter bar not yet hooked up for Profile views.
-
-        * UserInterface/Views/TimelineRecordingContentView.js:
-        (WebInspector.TimelineRecordingContentView.prototype._currentContentViewDidChange):
-        (WebInspector.TimelineRecordingContentView.prototype._contentViewSelectionPathComponentDidChange):
-        (WebInspector.TimelineRecordingContentView.prototype._updateFilterBar):
-        Update the filter bar when the selection path components change, since
-        that triggers when arbitrarily deep sub-content-views change.
-
-        * UserInterface/Views/TimelineView.js:
-        (WebInspector.TimelineView.prototype.get showsFilterBar):
-        Default is yes.
-
-2016-05-10  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Avoid unnecessary timeout identifier churn in TimelineManager
-        https://bugs.webkit.org/show_bug.cgi?id=157535
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Controllers/TimelineManager.js:
-        (WebInspector.TimelineManager):
-        (WebInspector.TimelineManager.prototype.capturingStarted):
-        (WebInspector.TimelineManager.prototype._resetAutoRecordingDeadTimeTimeout):
-        Don't re-tickle if we tickled in the last 10ms.
-
-2016-05-10  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Can't select record bar in Frames timeline
-        https://bugs.webkit.org/show_bug.cgi?id=156963
-        <rdar://problem/25898256>
-
-        Reviewed by Timothy Hatcher.
-
-        Sync record selection between the Rendering Frames grid and overview graph.
-
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGridNode.prototype.hasAncestor):
-        Add helper function needed by TimelineView.
-
-        * UserInterface/Views/RenderingFrameTimelineOverviewGraph.js:
-        (WebInspector.RenderingFrameTimelineOverviewGraph.prototype._mouseClicked):
-        Don't deselect the selected record when clicked. Initially this seemed
-        like a good idea but it complicates the UI for no added value.
-
-        * UserInterface/Views/TimelineRecordingContentView.js:
-        (WebInspector.TimelineRecordingContentView.prototype._contentViewSelectionPathComponentDidChange):
-        Get path components from the current TimelineView instead of the
-        TimelineRecordingContentView, now that the selected record appears
-        in the bottom ContentBrowser's navigation bar.
-
-2016-05-10  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Backend should initiate timeline recordings on page navigations to ensure nothing is missed
-        https://bugs.webkit.org/show_bug.cgi?id=157504
-        <rdar://problem/26188642>
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Controllers/TimelineManager.js:
-        (WebInspector.TimelineManager):
-        (WebInspector.TimelineManager.prototype.set autoCaptureOnPageLoad):
-        (WebInspector.TimelineManager.prototype.set enabledTimelineTypes):
-        (WebInspector.TimelineManager.prototype._updateAutoCaptureInstruments):
-        For backends that support it, enable/disable auto capture and the instruments to use.
-
-        (WebInspector.TimelineManager.prototype.autoCaptureStarted):
-        New event, stop and start a new recording. Set a flag that we should
-        detect the auto capturing resource so we know when the stop the
-        auto capture.
-
-        (WebInspector.TimelineManager.prototype._loadNewRecording):
-        (WebInspector.TimelineManager.prototype._addRecord):
-        (WebInspector.TimelineManager.prototype._startAutoCapturing): Renamed.
-        (WebInspector.TimelineManager.prototype._attemptAutoCapturingForFrame):
-        (WebInspector.TimelineManager.prototype._legacyAttemptStartAutoCapturingForFrame):
-        (WebInspector.TimelineManager.prototype._stopAutoRecordingSoon):
-        (WebInspector.TimelineManager.prototype._resetAutoRecordingMaxTimeTimeout):
-        (WebInspector.TimelineManager.prototype._resetAutoRecordingDeadTimeTimeout):
-        (WebInspector.TimelineManager.prototype._mainResourceDidChange):
-        (WebInspector.TimelineManager.prototype._mergeScriptProfileRecords):
-        Factor out the new path, old path, and shared code for auto capturing.
-        Renamed _startAutoCapturing to _attemptAutoCapturingForFrame which
-        better matches what it tries to do.
-
-        * UserInterface/Protocol/TimelineObserver.js:
-        (WebInspector.TimelineObserver.prototype.autoCaptureStarted):
-        Inform TimelineManager.
-
-2016-05-10  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Debugger sidebar should refresh when Debug UI enabled/disabled
-        https://bugs.webkit.org/show_bug.cgi?id=157540
-        <rdar://problem/26207064>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/DebuggerSidebarPanel.js:
-        (WebInspector.DebuggerSidebarPanel.prototype._scriptRemoved.removeScript):
-        (WebInspector.DebuggerSidebarPanel.prototype._scriptRemoved):
-        Remove element from both tree outlines, if it exists.
-
-2016-05-10  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: TimelineOverview assertion failed: Missing overview graph for timeline type undefined
-        https://bugs.webkit.org/show_bug.cgi?id=157533
-        <rdar://problem/26204033>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/TimelineRecordingContentView.js:
-        (WebInspector.TimelineRecordingContentView.prototype._recordWasFiltered):
-        The OverviewTimelineView's represented object is the entire recording,
-        and TimelineOverview.recordWasFiltered expects a timeline. Return early
-        since no graph in the overview needs updating.
-
-2016-05-10  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Call Trees and Memory view blank
-        https://bugs.webkit.org/show_bug.cgi?id=157486
-        <rdar://problem/26178404>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/TimelineRecordingContentView.js:
-        (WebInspector.TimelineRecordingContentView.prototype._currentContentViewDidChange):
-        (WebInspector.TimelineRecordingContentView.prototype._updateTimes):
-        Setting current time now handled by _updateTimelineViewTimes.
-        (WebInspector.TimelineRecordingContentView.prototype._capturingStopped):
-        Update times for the current TimelineView when the recording ends.
-        This ensures that views that don't call TimelineView.setupDataGrid are
-        able to update state that depends on the ruler selection.
-
-        (WebInspector.TimelineRecordingContentView.prototype._timeRangeSelectionChanged):
-        (WebInspector.TimelineRecordingContentView.prototype._updateTimelineViewTimes):
-        Renamed from _updateTimelineViewSelection. Sets start, end, and current times.
-
-2016-05-10  Devin Rousso  <dcrousso+webkit@gmail.com>
-
-        Web Inspector: Cleanup super getter/setter now that underlying issue is fixed
-        https://bugs.webkit.org/show_bug.cgi?id=157488
-        <rdar://problem/26179120>
-
-        Reviewed by Brian Burg.
-
-        Addressed FIXMEs for bug 147064:
-        <https://webkit.org/b/147064> Getter and setter on super are called with wrong "this" object
-
-        * UserInterface/Views/VisualStyleKeywordPicker.js:
-        (WebInspector.VisualStyleKeywordPicker.prototype.get value):
-        (WebInspector.VisualStyleKeywordPicker.prototype.set value):
-        (WebInspector.VisualStyleKeywordPicker.prototype.get synthesizedValue):
-        (WebInspector.VisualStyleKeywordPicker.prototype._getValue): Deleted.
-        (WebInspector.VisualStyleKeywordPicker.prototype._setValue): Deleted.
-        (WebInspector.VisualStyleKeywordPicker.prototype._generateSynthesizedValue): Deleted.
-
-        * UserInterface/Views/VisualStyleNumberInputBox.js:
-        (WebInspector.VisualStyleNumberInputBox.prototype.set specialPropertyPlaceholderElementText):
-
-        * UserInterface/Views/VisualStyleTimingEditor.js:
-        (WebInspector.VisualStyleTimingEditor.prototype.get value):
-        (WebInspector.VisualStyleTimingEditor.prototype.set value):
-        (WebInspector.VisualStyleTimingEditor.prototype.get synthesizedValue):
-        (WebInspector.VisualStyleTimingEditor.prototype._getValue): Deleted.
-        (WebInspector.VisualStyleTimingEditor.prototype._setValue): Deleted.
-        (WebInspector.VisualStyleTimingEditor.prototype._generateSynthesizedValue): Deleted.
-
-2016-05-09  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Filtering by Errors/Warnings should not filter Breakpoints list
-        https://bugs.webkit.org/show_bug.cgi?id=157481
-        <rdar://problem/26177346>
-
-        Reviewed by Timothy Hatcher.
-
-        * Localizations/en.lproj/localizedStrings.js:
-        New UI strings.
-
-        * UserInterface/Views/DebuggerSidebarPanel.js:
-        (WebInspector.DebuggerSidebarPanel.showResourcesWithIssuesOnlyFilterFunction):
-        Only filter tree elements belonging to the scripts tree outline.
-        (WebInspector.DebuggerSidebarPanel):
-        Drive-by cleanup of Issues filter button tooltips.
-
-2016-05-09  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        REGRESSION: Web Inspector: DOM path bar blinks when modifying inline styles
-        https://bugs.webkit.org/show_bug.cgi?id=149258
-        <rdar://problem/22737843>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Base/Utilities.js:
-        (Array.shallowEqual):
-        * UserInterface/Views/ContentBrowser.js:
-        (WebInspector.ContentBrowser.prototype._updateContentViewNavigationItems):
-        (WebInspector.ContentBrowser.prototype._removeAllNavigationItems):
-        Don't re-render the navigation bar when all new navigation items match the previous ones.
-
-        * UserInterface/Views/HierarchicalPathNavigationItem.js:
-        (WebInspector.HierarchicalPathNavigationItem.set components.let.componentsEqual):
-        (WebInspector.HierarchicalPathNavigationItem.prototype.set components):
-        Don't re-render HierarchicalPathComponent when all new path components match the previous ones.
-
-2016-05-09  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Remove Global Breakpoints folder
-        https://bugs.webkit.org/show_bug.cgi?id=157478
-        <rdar://problem/26176524>
-
-        Reviewed by Timothy Hatcher.
-
-        * Localizations/en.lproj/localizedStrings.js:
-        Remove UI string.
-
-        * UserInterface/Views/DebuggerSidebarPanel.js:
-        (WebInspector.DebuggerSidebarPanel):
-        (WebInspector.DebuggerSidebarPanel.prototype._breakpointTreeOutlineContextMenuTreeElement):
-        (WebInspector.DebuggerSidebarPanel.prototype._treeSelectionDidChange):
-        Remove references to folder tree element.
-
-        (WebInspector.DebuggerSidebarPanel.prototype._compareTopLevelTreeElements.isSpecialBreakpoint):
-        (WebInspector.DebuggerSidebarPanel.prototype._compareTopLevelTreeElements):
-        Top level comparison should check for "special" breakpoints.
-
-2016-05-09  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Heap Snapshot Timeline view can be live
-        https://bugs.webkit.org/show_bug.cgi?id=157487
-        <rdar://problem/26178439>
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Views/HeapAllocationsTimelineView.js:
-        (WebInspector.HeapAllocationsTimelineView.prototype.get showsLiveRecordingData): Deleted.
-        Don't override, should return true.
-
-2016-05-09  Manuel Rego Casasnovas  <rego@igalia.com>
-
-        [css-grid] Update Grid Layout properties in CSSKeywordCompletions.js
-        https://bugs.webkit.org/show_bug.cgi?id=157166
-
-        Reviewed by Timothy Hatcher.
-
-        The CSS Grid Layout properties have been changing on the spec,
-        however they haven't been updated in CSSKeywordCompletions for a long time.
-        Update them using the last spec draft:
-        https://drafts.csswg.org/css-grid/#property-index
-
-        * UserInterface/Models/CSSKeywordCompletions.js:
-
-2016-05-09  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Cleanup issue tree elements in the Debugger sidebar
-        https://bugs.webkit.org/show_bug.cgi?id=157469
-        <rdar://problem/26162999>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/DebuggerSidebarPanel.js:
-        (WebInspector.DebuggerSidebarPanel):
-        (WebInspector.DebuggerSidebarPanel.prototype._addIssue):
-        Don't add duplicate issue tree elements.
-        (WebInspector.DebuggerSidebarPanel.prototype._handleIssuesCleared):
-        Remove issues from the correct tree outline.
-
-        * UserInterface/Views/IssueTreeElement.css:
-        (.issue .icon):
-        (.issue.warning .icon):
-        (.issue.error .icon):
-        Match dashboard icons.
-
-2016-05-09  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Show in progress message in Timeline views that do not show data until the recording finishes
-        https://bugs.webkit.org/show_bug.cgi?id=156761
-        <rdar://problem/25970771>
-
-        Reviewed by Timothy Hatcher.
-
-        * Localizations/en.lproj/localizedStrings.js:
-        New UI strings.
-
-        * UserInterface/Main.html:
-        New view class.
-
-        * UserInterface/Views/HeapAllocationsTimelineView.js:
-        (WebInspector.HeapAllocationsTimelineView.prototype.get showsLiveRecordingData):
-        * UserInterface/Views/RenderingFrameTimelineView.js:
-        (WebInspector.RenderingFrameTimelineView.prototype.get showsLiveRecordingData):
-        * UserInterface/Views/ScriptDetailsTimelineView.js:
-        (WebInspector.ScriptDetailsTimelineView.prototype.get showsLiveRecordingData):
-        * UserInterface/Views/ScriptProfileTimelineView.js:
-        (WebInspector.ScriptProfileTimelineView.prototype.get showsLiveRecordingData):
-        Don't show live recording data.
-
-        * UserInterface/Views/ScriptClusterTimelineView.js:
-        (WebInspector.ScriptClusterTimelineView.prototype.get showsLiveRecordingData):
-        Forward property to current child TimelineView.
-
-        * UserInterface/Views/TimelineRecordingContentView.css:
-        (.content-view.timeline-recording > .content-browser .recording-progress):
-        (.content-view.timeline-recording > .content-browser .recording-progress > .status):
-        (.content-view.timeline-recording > .content-browser .recording-progress > .status > .indeterminate-progress-spinner):
-        New progress view styles.
-
-        * UserInterface/Views/TimelineRecordingContentView.js:
-        (WebInspector.TimelineRecordingContentView):
-        (WebInspector.TimelineRecordingContentView.prototype._currentContentViewDidChange):
-        (WebInspector.TimelineRecordingContentView.prototype._capturingStarted):
-        (WebInspector.TimelineRecordingContentView.prototype._capturingStopped):
-        Refresh progress view visibility.
-
-        (WebInspector.TimelineRecordingContentView.prototype._updateProgressView):
-        Show the progress view if we're currently capturing, and showing a view
-        that doesn't support showing live data.
-
-        * UserInterface/Views/TimelineRecordingProgressView.js:
-        (WebInspector.TimelineRecordingProgressView):
-        (WebInspector.TimelineRecordingProgressView.prototype.get visible):
-        (WebInspector.TimelineRecordingProgressView.prototype.set visible):
-        Show a status message, indeterminate progress spinner, and Stop Recording
-        button while timeline data is being recorded.
-
-        * UserInterface/Views/TimelineView.js:
-        (WebInspector.TimelineView.prototype.get showsLiveRecordingData):
-        Implemented by TimelineViews that don't support showing data while recording.
-
-        * UserInterface/Views/Variables.css:
-        (:root):
-        Add --panel-background-color-light for the progress view.
-
-2016-05-08  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Add Breakpoints and Scripts folders to Debugger sidebar
-        https://bugs.webkit.org/show_bug.cgi?id=151119
-        <rdar://problem/23488916>
-
-        Reviewed by Timothy Hatcher.
-
-        Add a collapsible Sources section to the Debugger beneath the existing
-        Breakpoints section.
-
-        * UserInterface/Views/DebuggerSidebarPanel.css:
-        Remove unused CSS class names.
-
-        (.sidebar > .panel.navigation.debugger .details-section.scripts:not(.collapsed)):
-        Hide scripts section bottom border when expanded. As the last
-        section, a border only adds visual clutter.
-
-        (.sidebar > .panel.navigation.debugger .details-section.scripts): Deleted.
-        (.sidebar > .panel.navigation.debugger.paused .details-section.scripts): Deleted.
-        (.sidebar > .panel.navigation.debugger .details-section.scripts .header): Deleted.
-        (.sidebar > .panel.navigation.debugger.paused .details-section.scripts .header): Deleted.
-        (.sidebar > .panel.navigation.debugger .details-section.scripts.collapsed > .content): Deleted.
-        (.sidebar > .panel.navigation.debugger.paused .details-section.scripts.collapsed > .content): Deleted.
-        No longer needed.
-
-        * UserInterface/Views/DebuggerSidebarPanel.js:
-        (WebInspector.DebuggerSidebarPanel):
-        Create separate "Breakpoints" and "Sources" sections, and make filter
-        placeholder text generic. Remove unused class from breakpoints tree.
-
-        (WebInspector.DebuggerSidebarPanel.prototype.treeElementForRepresentedObject):
-        Check both breakpoint and scripts tree outlines.
-
-        (WebInspector.DebuggerSidebarPanel.prototype._addBreakpoint):
-        (WebInspector.DebuggerSidebarPanel.prototype._addTreeElementForSourceCodeToTreeOutline):
-        Make helper function generic.
-
-        (WebInspector.DebuggerSidebarPanel.prototype._addResource):
-        (WebInspector.DebuggerSidebarPanel.prototype._mainResourceDidChange):
-        (WebInspector.DebuggerSidebarPanel.prototype._addScript):
-        Add resources to the scripts tree.
-
-        (WebInspector.DebuggerSidebarPanel.prototype._scriptsCleared):
-        Clear the scripts tree.
-
-        (WebInspector.DebuggerSidebarPanel.prototype._removeDebuggerTreeElement):
-        Remove script element when last breakpoint is removed.
-
-        (WebInspector.DebuggerSidebarPanel.prototype._addIssue):
-        (WebInspector.DebuggerSidebarPanel.prototype._addTreeElementForSourceCodeToContentTreeOutline): Deleted.
-        Renamed _addTreeElementForSourceCodeToTreeOutline.
-
-2016-05-08  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: SourceCodeTextEditor issue widgets/line styles should reset when log is cleared
-        https://bugs.webkit.org/show_bug.cgi?id=157460
-        <rdar://problem/26159633>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/SourceCodeTextEditor.js:
-        (WebInspector.SourceCodeTextEditor):
-        (WebInspector.SourceCodeTextEditor.prototype._logCleared):
-        Clear issue widgets and CodeMirror line class names when log cleared.
-
-2016-05-06  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Inspect Element and Element Selection searching should work with Shadow DOM Nodes
-        https://bugs.webkit.org/show_bug.cgi?id=157446
-        <rdar://problem/24688447>
-
-        Reviewed by Ryosuke Niwa.
-
-        * UserInterface/Models/DOMNode.js:
-        (WebInspector.DOMNode):
-        Shadow DOM nodes did not have a parent, and so when attempting
-        to create DOM Tree elements up the chain, we were failing at
-        shadow boundaries. Create the parent relationship, the parent
-        already treats it as a child.
-
-        * UserInterface/Views/DOMTreeOutline.js:
-        (WebInspector.DOMTreeOutline.prototype._revealAndSelectNode):
-        Whenever we try to reveal and select an element in a shadow tree
-        but the setting to show shadow DOM is disabled, walk up until
-        we are out of the shadow tree.
-
-2016-05-06  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Unexpected white border at the bottom of Debugger filter bar
-        https://bugs.webkit.org/show_bug.cgi?id=157430
-        <rdar://problem/26146602>
-
-        Reviewed by Timothy Hatcher.
-
-        Remove the semi-transparent white borders.
-
-        * UserInterface/Views/NavigationBar.css:
-        (.navigation-bar): Deleted.
-        * UserInterface/Views/SearchSidebarPanel.css:
-        (.sidebar > .panel.navigation.search > .search-bar): Deleted.
-
-2016-05-06  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Remove HeapSnapshot Summary View
-        https://bugs.webkit.org/show_bug.cgi?id=157385
-
-        Reviewed by Timothy Hatcher.
-
-        * Localizations/en.lproj/localizedStrings.js:
-        * UserInterface/Main.html:
-        * UserInterface/Views/HeapSnapshotClusterContentView.js:
-        (WebInspector.HeapSnapshotClusterContentView):
-        (WebInspector.HeapSnapshotClusterContentView.prototype.get summaryContentView): Deleted.
-        (WebInspector.HeapSnapshotClusterContentView.prototype.showSummary): Deleted.
-        (WebInspector.HeapSnapshotClusterContentView.prototype._pathComponentForContentView):
-        (WebInspector.HeapSnapshotClusterContentView.prototype._identifierForContentView):
-        (WebInspector.HeapSnapshotClusterContentView.prototype._showContentViewForIdentifier):
-        * UserInterface/Views/HeapSnapshotSummaryContentView.css: Removed.
-        * UserInterface/Views/HeapSnapshotSummaryContentView.js: Removed.
-        * UserInterface/Views/Variables.css:
-        (:root):
-
-2016-05-06  Manuel Rego Casasnovas  <rego@igalia.com>
-
-        [css-grid] Unprefix CSS Grid Layout properties
-        https://bugs.webkit.org/show_bug.cgi?id=157137
-
-        Reviewed by Simon Fraser.
-
-        Remove "-webkit" prefix from all the grid layout properties,
-        including the display value.
-        Update the source code to remove the prefix where it was used too.
-
-        * UserInterface/Models/CSSKeywordCompletions.js:
-
-2016-05-05  Joseph Pecoraro  <pecoraro@apple.com>
-
-        REGRESSION(r200474): Exception in autocompletion - `getCompletions` not found
-        https://bugs.webkit.org/show_bug.cgi?id=157408
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Controllers/JavaScriptRuntimeCompletionProvider.js:
-        (WebInspector.JavaScriptRuntimeCompletionProvider.prototype.completionControllerCompletionsNeeded.evaluated):
-        This function was renamed, but this instance was missed.
-
-2016-05-05  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Provide go-to links next to Functions in GC Root Path popover
-        https://bugs.webkit.org/show_bug.cgi?id=157381
-        <rdar://problem/26122531>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/HeapSnapshotInstanceDataGridNode.js:
-        (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._mouseoverHandler.appendPathRow):
-        For functions, create a go-to-link. Insert a placeholder to replace
-        so that the popover sizes itself with a potential go-to arrow, as
-        it won't resize when the go-to arrows get inserted.
-
-        * UserInterface/Views/HeapSnapshotInstancesContentView.css:
-        (.heap-snapshot-instance-popover-content .node .go-to-link):
-        Move down 1px to align better with the text.
-
-2016-05-05  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: HeapSnapshot should exploratory Object Graph view
-        https://bugs.webkit.org/show_bug.cgi?id=157371
-        <rdar://problem/26107304>
-
-        Reviewed by Timothy Hatcher.
-
-        HeapSnapshots now have two ContentViews for viewing the graph.
-
-        HeapSnapshotInstancesContentView:
-          - top level are Class Categories nodes
-          - categories expand to Instances
-          - instances expand to show what they retain
-          - retained sizes only shown for dominated nodes of the instance
-
-        HeapSnapshotObjectGraphContentView:
-          - top level are GlobalObject or Window nodes
-          - expand to show what they retain
-          - retained sizes are shown for all nodes, everything is shown
-
-        This also provides a custom preview for Window instances. Instead of
-        showing an ObjectPreview, it just shows the `window.location.href`
-        for that instance, which is useful when there are multiple Window
-        instances for different frames.
-
-        * Localizations/en.lproj/localizedStrings.js:
-        * UserInterface/Main.html:
-        New "Object Graph" string and new files.
-
-        * UserInterface/Images/HeapSnapshotObjectGraph.svg: Added.
-        * UserInterface/Images/gtk/HeapSnapshotObjectGraph.svg: Added.
-        * UserInterface/Views/PathComponentIcons.css:
-        (.heap-snapshot-object-graph-icon .icon):
-        Copy the red [{}] icon from Style Rules.
-
-        * UserInterface/Views/HeapSnapshotClusterContentView.js:
-        (WebInspector.HeapSnapshotClusterContentView):
-        (WebInspector.HeapSnapshotClusterContentView.prototype.get objectGraphContentView):
-        (WebInspector.HeapSnapshotClusterContentView.prototype.showObjectGraph):
-        (WebInspector.HeapSnapshotClusterContentView.prototype._supportsObjectGraph):
-        (WebInspector.HeapSnapshotClusterContentView.prototype._pathComponentForContentView):
-        (WebInspector.HeapSnapshotClusterContentView.prototype._identifierForContentView):
-        (WebInspector.HeapSnapshotClusterContentView.prototype._showContentViewForIdentifier):
-        Include an "Object Graph" content view. This is unavailable in Diff views
-        but is available for individual HeapSnapshots.
-
-        * UserInterface/Views/HeapSnapshotContentView.js: Renamed from Source/WebInspectorUI/UserInterface/Views/HeapSnapshotInstancesContentView.js.
-        (WebInspector.HeapSnapshotContentView):
-        (WebInspector.HeapSnapshotContentView.prototype.shown):
-        (WebInspector.HeapSnapshotContentView.prototype.hidden):
-        (WebInspector.HeapSnapshotContentView.prototype._sortDataGrid):
-        (WebInspector.HeapSnapshotContentView.prototype._heapSnapshotDataGridTreeDidPopulate):
-        (WebInspector.HeapSnapshotInstancesContentView):
-        (WebInspector.HeapSnapshotObjectGraphContentView):
-        Share and generalize a HeapSnapshot ContentView. The only differences are
-        the DataGrid columns, DataGridTree class, and identifier prefix for settings.
-
-        * UserInterface/Views/HeapSnapshotDataGridTree.js: Renamed from Source/WebInspectorUI/UserInterface/Views/HeapSnapshotInstancesDataGridTree.js.
-        (WebInspector.HeapSnapshotDataGridTree):
-        (WebInspector.HeapSnapshotDataGridTree.buildSortComparator):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.get heapSnapshot):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.get visible):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.get popover):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.get popoverNode):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.set popoverNode):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.get children):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.appendChild):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.insertChild):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.removeChildren):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.set sortComparator):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.sort):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.shown):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.hidden):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.willDismissPopover):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.get alwaysShowRetainedSize):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.populateTopLevel):
-        (WebInspector.HeapSnapshotDataGridTree.prototype.didPopulate):
-        (WebInspector.HeapSnapshotInstancesDataGridTree.prototype.get alwaysShowRetainedSize):
-        (WebInspector.HeapSnapshotInstancesDataGridTree.prototype.populateTopLevel):
-        (WebInspector.HeapSnapshotInstancesDataGridTree):
-        (WebInspector.HeapSnapshotObjectGraphDataGridTree.prototype.get alwaysShowRetainedSize):
-        (WebInspector.HeapSnapshotObjectGraphDataGridTree.prototype.populateTopLevel):
-        (WebInspector.HeapSnapshotObjectGraphDataGridTree):
-
-        * UserInterface/Views/HeapSnapshotInstanceDataGridNode.js:
-        (WebInspector.HeapSnapshotInstanceDataGridNode.prototype.createCellContent):
-        Start using different previews based on instance type.
-
-        (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._populateError):
-        Common preview error logic. Also, don't output "Internal object" next to things
-        like Structure, InferredType, etc. Just don't output anything. Eventually, if
-        we provide preview data, something will show, but for now nothing is fine.
-
-        (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._populateWindowPreview.inspectedPage_window_getLocationHref):
-        (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._populateWindowPreview):
-        Custom preview logic for Window's gets `window.location.href` on the instance if it is alive.
-
-        (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._populatePreview):
-        Normal preview logic.
-
-        * UserInterface/Views/HeapSnapshotInstancesContentView.css:
-        (.heap-snapshot > .data-grid tr:not(.selected) td .preview-error): Deleted.
-        The red text for errors was standing out too much. Make it the default black.
-
-        * UserInterface/Views/HeapAllocationsTimelineView.js:
-        (WebInspector.HeapAllocationsTimelineView.prototype.showHeapSnapshotTimelineRecord):
-        Better variable name.
-
-        * UserInterface/Controllers/JavaScriptRuntimeCompletionProvider.js:
-        (WebInspector.JavaScriptRuntimeCompletionProvider.prototype.completionControllerCompletionsNeeded.inspectedPage_evalResult_getArrayCompletions):
-        (WebInspector.JavaScriptRuntimeCompletionProvider.prototype.completionControllerCompletionsNeeded.inspectedPage_evalResult_getCompletions):
-        (WebInspector.JavaScriptRuntimeCompletionProvider.prototype.completionControllerCompletionsNeeded.getArrayCompletions): Deleted.
-        (WebInspector.JavaScriptRuntimeCompletionProvider.prototype.completionControllerCompletionsNeeded.getCompletions): Deleted.
-        (WebInspector.JavaScriptRuntimeCompletionProvider.prototype.completionControllerCompletionsNeeded.evaluated):
-        Try to be clearer about functions that run on the inspected page
-        by using the pattern with inspectedPage_<thisObject>_functionName.
-
-2016-05-05  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Console is unresponsive for >10 seconds when it tries to render 10,000 messages
-        https://bugs.webkit.org/show_bug.cgi?id=157368
-        <rdar://problem/26103657>
-
-        Reviewed by Timothy Hatcher.
-
-        Render only up to 100 messages per animation frame to keep the Inspector's UI responsive.
-
-        * UserInterface/Controllers/JavaScriptLogViewController.js:
-        (WebInspector.JavaScriptLogViewController.prototype.renderPendingMessages):
-
-2016-05-05  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Crash if you type "debugger" in the console and continue
-        https://bugs.webkit.org/show_bug.cgi?id=156924
-        <rdar://problem/25884189>
-
-        Reviewed by Mark Lam.
-
-        * UserInterface/Test/InspectorProtocol.js:
-        (InspectorProtocol.sendCommand):
-        Simplify sending a command with no parameters.
-
-2016-05-04  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        REGRESSION (r200401): Web Inspector: TypeError: undefined is not an object (evaluating 'messageElement.classList')
-        https://bugs.webkit.org/show_bug.cgi?id=157356
-        <rdar://problem/26097424>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/LogContentView.js:
-        (WebInspector.LogContentView.prototype._reappendProvisionalMessages):
-        Don't filter messages since we already do that in didAppendConsoleMessageView.
-
-2016-05-04  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: GC Root Path sometimes does not go up to Window
-        https://bugs.webkit.org/show_bug.cgi?id=156768
-        <rdar://problem/25816131>
-
-        Reviewed by Geoffrey Garen.
-
-        * UserInterface/Proxies/HeapSnapshotNodeProxy.js:
-        (WebInspector.HeapSnapshotNodeProxy.prototype.retainers):
-        Include paths for debugging.
-
-        * UserInterface/Workers/HeapSnapshot/HeapSnapshot.js:
-        (HeapSnapshot.prototype.shortestGCRootPath):
-        (HeapSnapshot.prototype._isNodeGlobalObject):
-        Prefer the shortest GC Root Path that contains a known
-        global object, otherwise fallback to the shortest.
-
-        (HeapSnapshot.prototype.retainers):
-        Include paths for debugging.
-
-2016-05-03  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Adding a new console message shouldn't modify DOM when the console log is hidden
-        https://bugs.webkit.org/show_bug.cgi?id=155629
-        <rdar://problem/25235470>
-
-        Reviewed by Timothy Hatcher.
-
-        Instead of rendering console messages right away, store them (in _pendingMessages)
-        and render only when the console tab or the split console is visible.
-        Also, batch rendering operations using requestAnimationFrame.
-
-        * UserInterface/Controllers/JavaScriptLogViewController.js:
-        (WebInspector.JavaScriptLogViewController):
-        Store console message views in _pendingMessages.
-
-        (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessageView):
-        (WebInspector.JavaScriptLogViewController.prototype.renderPendingMessages):
-        Use requestAnimationFrame batching. Run isScrolledToBottom() at most only once
-        per batch.
-
-        (WebInspector.JavaScriptLogViewController.prototype.renderPendingMessagesSoon):
-        (WebInspector.JavaScriptLogViewController.prototype._didRenderConsoleMessageView):
-        There is no need to run scrollToBottom again.
-
-        * UserInterface/Views/ConsoleCommandView.js:
-        (WebInspector.ConsoleCommandView):
-        Move all DOM operations to a new render method.
-
-        (WebInspector.ConsoleCommandView.prototype.render):
-        * UserInterface/Views/ConsoleMessageView.js:
-        (WebInspector.ConsoleMessageView):
-        (WebInspector.ConsoleMessageView.prototype.render):
-        (WebInspector.ConsoleMessageView.prototype.set repeatCount):
-        (WebInspector.ConsoleMessageView.prototype._renderRepeatCount):
-        * UserInterface/Views/LogContentView.js:
-        (WebInspector.LogContentView.prototype.shown):
-        When the console tab or the split console is opened render all pending messages.
-
-        (WebInspector.LogContentView.prototype.didAppendConsoleMessageView):
-        Don't call needsLayout on every added console message. Call it only once per
-        requestAnimationFrame. Also, no need to scrollToBottom once again.
-
-        (WebInspector.LogContentView.prototype._messageAdded):
-        (WebInspector.LogContentView.prototype._previousMessageRepeatCountUpdated):
-        (WebInspector.LogContentView.prototype._scopeFromMessageLevel): Deleted.
-        (WebInspector.LogContentView.prototype._markScopeBarItemUnread): Added.
-        Rename _pulseScopeBarItemBorder. In the very first version the border was pulsing,
-        but now we use small colored circles instead.
-
-2016-05-03  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Give console.time/timeEnd a default label and warnings
-        https://bugs.webkit.org/show_bug.cgi?id=157325
-        <rdar://problem/26073290>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Models/NativeFunctionParameters.js:
-        Update the convenience signature.
-
-2016-05-03  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Update window.console function API description strings in Console
-        https://bugs.webkit.org/show_bug.cgi?id=157298
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Models/NativeFunctionParameters.js:
-        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
-        (WebInspector.ObjectTreePropertyTreeElement.prototype._functionParameterString):
-        The Console object changed how it works. Work with the new
-        structure, and the older structure for legacy backends.
-
-2016-05-03  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Allow format specifiers in console.assert and console.trace
-        https://bugs.webkit.org/show_bug.cgi?id=157295
-        <rdar://problem/26056039>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/ConsoleMessageView.js:
-        (WebInspector.ConsoleMessageView.prototype._appendMessageTextAndArguments):
-        Treat the first argument as a format specifier.
-
-2016-05-02  Commit Queue  <commit-queue@webkit.org>
-
-        Unreviewed, rolling out r200337.
-        https://bugs.webkit.org/show_bug.cgi?id=157294
-
-        Console hangs when evaluating expresisons (Requested by
-        JoePeck on #webkit).
-
-        Reverted changeset:
-
-        "Web Inspector: Adding a new console message shouldn't modify
-        DOM when the console log is hidden"
-        https://bugs.webkit.org/show_bug.cgi?id=155629
-        http://trac.webkit.org/changeset/200337
-
-2016-05-02  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Unexpected "Script Element #" resources in Debugger Sidebar
-        https://bugs.webkit.org/show_bug.cgi?id=157280
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/DebuggerSidebarPanel.js:
-        (WebInspector.DebuggerSidebarPanel.prototype._addScript):
-        Don't include Script Element resources in the debugger sidebar by default.
-
-2016-05-02  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Prefer "Console Evaluation" to "Eval Code" if we know it was a console evaluation
-        https://bugs.webkit.org/show_bug.cgi?id=157278
-
-        Reviewed by Timothy Hatcher.
-
-        * Localizations/en.lproj/localizedStrings.js:
-        "Console Evaluation" string.
-
-        * UserInterface/Controllers/DebuggerManager.js:
-        (WebInspector.DebuggerManager.prototype._sourceCodeLocationFromPayload): Deleted.
-        Delete an assert that would throw when the location is noSourceID:-1:-1.
-
-        * UserInterface/Models/CallFrame.js:
-        (WebInspector.CallFrame.fromDebuggerPayload):
-        (WebInspector.CallFrame.fromPayload):
-        (WebInspector.CallFrame):
-        When this is in a Console Evalution provide better values.
-
-        * UserInterface/Models/GarbageCollection.js:
-        (WebInspector.GarbageCollection):
-        Drive-by address a common assertions seen while paused.
-
-2016-05-02  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Adding a new console message shouldn't modify DOM when the console log is hidden
-        https://bugs.webkit.org/show_bug.cgi?id=155629
-        <rdar://problem/25235470>
-
-        Reviewed by Timothy Hatcher.
-
-        Instead of rendering console messages right away, store them (in _pendingMessages)
-        and render only when the console tab or the split console is visible.
-        Also, batch rendering operations using requestAnimationFrame.
-
-        * UserInterface/Controllers/JavaScriptLogViewController.js:
-        (WebInspector.JavaScriptLogViewController):
-        Store console message views in _pendingMessages.
-
-        (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessageView):
-        (WebInspector.JavaScriptLogViewController.prototype.renderPendingMessages):
-        Use requestAnimationFrame batching. Run isScrolledToBottom() at most only once
-        per batch.
-
-        (WebInspector.JavaScriptLogViewController.prototype.renderPendingMessagesSoon):
-        (WebInspector.JavaScriptLogViewController.prototype._didRenderConsoleMessageView):
-        There is no need to run scrollToBottom again.
-
-        * UserInterface/Views/ConsoleCommandView.js:
-        (WebInspector.ConsoleCommandView):
-        Move all DOM operations to a new render method.
-
-        (WebInspector.ConsoleCommandView.prototype.render):
-        * UserInterface/Views/ConsoleMessageView.js:
-        (WebInspector.ConsoleMessageView):
-        (WebInspector.ConsoleMessageView.prototype.render):
-        (WebInspector.ConsoleMessageView.prototype.set repeatCount):
-        (WebInspector.ConsoleMessageView.prototype._renderRepeatCount):
-        * UserInterface/Views/LogContentView.js:
-        (WebInspector.LogContentView.prototype.shown):
-        When the console tab or the split console is opened render all pending messages.
-
-        (WebInspector.LogContentView.prototype.didAppendConsoleMessageView):
-        No need to scrollToBottom once again.
-
-        (WebInspector.LogContentView.prototype._messageAdded):
-        (WebInspector.LogContentView.prototype._previousMessageRepeatCountUpdated):
-        (WebInspector.LogContentView.prototype._scopeFromMessageLevel): Deleted.
-        (WebInspector.LogContentView.prototype._markScopeBarItemUnread): Added.
-        Rename _pulseScopeBarItemBorder. In the very first version the border was pulsing,
-        but now we use small colored circles instead.
-
-2016-05-02  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Uncaught Exception: TypeError: null is not an object (evaluating 'sourceCodeLocation.formattedLineNumber')
-        https://bugs.webkit.org/show_bug.cgi?id=157239
-        <rdar://problem/26030791>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Controllers/IssueManager.js:
-        (WebInspector.IssueManager.issueMatchSourceCode):
-        Require a sourceCodeLocation for Script errors.
-
-        * UserInterface/Views/SourceCodeTextEditor.js:
-        (WebInspector.SourceCodeTextEditor.prototype._addIssue):
-        Be safe against a missing sourceCodeLocation.
-
-        * UserInterface/Views/SourceCodeTextEditor.css:
-        (.source-code.text-editor > .CodeMirror .issue-widget.inline > .arrow):
-        (@media (-webkit-min-device-pixel-ratio: 2)):
-        Adjust the style, on non-Retina the inline message arrow would sometimes
-        be detached from the warning message.
-
-2016-05-02  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: Zooming of docked Web Inspector affects the webpage, but reset to 0 does not
-        https://bugs.webkit.org/show_bug.cgi?id=157234
-        rdar://problem/26027177
-
-        Always prevent default for the zoom keyboard shortcuts to avoid passing the event back to
-        Safari to handle and add explicit beeps when max/min is hit.
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Base/Main.js:
-        (WebInspector.contentLoaded): Removed setting implicitlyPreventsDefault on zoom keyboard shortcuts.
-        (WebInspector._increaseZoom): Add explicit beep and remove preventDefault call.
-        (WebInspector._decreaseZoom): Ditto.
-
-2016-05-01  Dan Bernstein  <mitz@apple.com>
-
-        WebInspectorUI.framework/Versions/A/Resources/Images/Legacy is empty
-        https://bugs.webkit.org/show_bug.cgi?id=157248
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Images/Legacy: Removed.
-
-2016-04-29  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Issues inspecting the inspector, pausing on breakpoints causes content to not load
-        https://bugs.webkit.org/show_bug.cgi?id=157198
-        <rdar://problem/26011049>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Protocol/InspectorBackend.js:
-        (InspectorBackendClass.prototype._sendCommandToBackendWithCallback):
-        (InspectorBackendClass.prototype._sendCommandToBackendExpectingPromise):
-        While auditing, use simpler check.
-
-        * UserInterface/Proxies/FormatterWorkerProxy.js:
-        (WebInspector.FormatterWorkerProxy.canFormat): Deleted.
-        While auditing, remove dead code.
-
-2016-04-29  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: Scrolling in Timelines causes flashing of the DataGrid
-        https://bugs.webkit.org/show_bug.cgi?id=157212
-        rdar://problem/25994717
-
-        Listen for mousewheel events too so we can update the visible rows sooner.
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGrid): Call _updateScrollListeners.
-        (WebInspector.DataGrid.prototype.set inline): Use _updateScrollListeners.
-        (WebInspector.DataGrid.prototype.set variableHeightRows): Use _updateScrollListeners.
-        (WebInspector.DataGrid.prototype._updateScrollListeners): Added. Listen for mousewheel too.
-
-2016-04-29  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Jump to Line in auto formatted JavaScript does not work the first time
-        https://bugs.webkit.org/show_bug.cgi?id=157194
-        <rdar://problem/26008471>
-
-        Reviewed by Timothy Hatcher.
-
-        When doing asynchronous formatting we set the content of the editor
-        twice. First to prime the editors back/foward list with the original
-        content, and then again after we get the formatted content from the
-        Worker, and then display the content.
-
-        The TextEditor attempts to reveal a position when the initial string
-        has been set. Back when autoformatting was synchronous this was fine.
-        Asynchronously however, this ends up happening between the original
-        and formatted value. Also, the TextEditor has no idea that the
-        SourceCodeTextEditor is going to format / defer displaying the
-        contents. Add a "defer" property to the TextEditor that the
-        SourceCodeTextEditor can use in this circumstance.
-
-        * UserInterface/Views/SourceCodeTextEditor.js:
-        (WebInspector.SourceCodeTextEditor.prototype._populateWithContent):
-        Avoid revealing a position when setting the original content. We will
-        be formatting and we will want to reveal the position afterwards.
-
-        * UserInterface/Views/TextEditor.js:
-        (WebInspector.TextEditor):
-        (WebInspector.TextEditor.prototype.set deferReveal):
-        Provide another reason to defer revealing.
-
-2016-04-28  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: FormatterWorker fails to find "External/Esprima.js" in Production builds
-        https://bugs.webkit.org/show_bug.cgi?id=157162
-        <rdar://problem/25996556>
-
-        Reviewed by Timothy Hatcher.
-
-        Workers have relative include paths. FormatterWorker has an includes
-        that looks like:
-
-            importScripts(...[
-                "../../External/Esprima/esprima.js",
-                ...
-            ]);
-
-        In optimized builds (Production) the esprima resources are combined
-        and moved out of an External directory to "Esprima.js". We need to
-        update the path of this include in optimized builds.
-
-        This adds a script to do some basic rewrites of paths. It will also
-        produce a build error if there are any other External paths that
-        may have been unhandled.
-
-        * Scripts/copy-user-interface-resources.pl:
-        Run a new script to fix up the Worker imports for new pathes.
-
-        * Scripts/fix-worker-imports-for-optimized-builds.pl: Added.
-        (fixWorkerImportsInFile):
-        (fixWorkerImportsInDirectory):
-        Replace "/External/Esprima/esprima.js" with "/Esprima.js" in imports.
-        Fatal error for any unhandled "/External" lines that were not replaced.
-
-2016-04-27  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Missing CSS autocompletion suggestions for -webkit-user-select
-        https://bugs.webkit.org/show_bug.cgi?id=157104
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Models/CSSKeywordCompletions.js:
-
-2016-04-26  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Clarify Heap Snapshot instance Retained Size by hiding retained size of non-dominated children
-        https://bugs.webkit.org/show_bug.cgi?id=157018
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Proxies/HeapSnapshotNodeProxy.js:
-        (WebInspector.HeapSnapshotNodeProxy):
-        (WebInspector.HeapSnapshotNodeProxy.deserialize):
-        * UserInterface/Workers/HeapSnapshot/HeapSnapshot.js:
-        (HeapSnapshot.prototype.serializeNode):
-        Include dominatorNodeIdentifier in the default proxy properties.
-
-        * UserInterface/Views/HeapSnapshotInstanceDataGridNode.js:
-        (WebInspector.HeapSnapshotInstanceDataGridNode):
-        (WebInspector.HeapSnapshotInstanceDataGridNode.prototype.get node):
-        (WebInspector.HeapSnapshotInstanceDataGridNode.prototype.createCellContent):
-        (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._isDominatedByBase):
-        (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._isDominatedByNonBaseParent):
-        (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._populate):
-        * UserInterface/Views/HeapSnapshotInstancesContentView.css:
-        (.heap-snapshot > .data-grid td .sub-retained):
-        Save the base HeapSnapshotInstanceDataGridNode so that it can be referenced by
-        children. When expanding an instance, hide the retained size for children
-        that are not dominated by the base object. Show the retained size for children
-        for children that are dominated. If dominated directly, show the size in the
-        normal black. If dominated transitively, show the size in a dimmed gray.
-
-2016-04-25  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: hook up grid row filtering in the new Timelines UI
-        https://bugs.webkit.org/show_bug.cgi?id=154924
-        <rdar://problem/24934607>
-
-        Reviewed by Timothy Hatcher.
-
-        Re-implement timeline data grid filtering that previously existed in the
-        navigation sidebar. This patch adds support for filter text, scope bars,
-        and filtering based on ruler selection.
-
-        Multi-column filter support is now part of DataGrid. The grid checks compares
-        filter text against cell data of type string. DataGridNode subclasses may
-        provide custom string data for columns that format complex objects (such
-        as SourceCodeLocations). Cells containing data of type number are not
-        considered for filtering at this time.
-
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGrid):
-        (WebInspector.DataGrid.prototype.set filterText):
-        (WebInspector.DataGrid.prototype.get filterDelegate):
-        (WebInspector.DataGrid.prototype.set filterDelegate):
-        (WebInspector.DataGrid.prototype.filterDidChange):
-        Called internally by the grid whenever the filter text or delegate changes.
-        Also called by clients that implement a filter delegate, to inform the
-        grid that a custom filter has changed.
-
-        (WebInspector.DataGrid.prototype.hasCustomFilters):
-        (WebInspector.DataGrid.prototype.matchNodeAgainstCustomFilters):
-        Calls the filter delegate, if it exists, and provides a hook for
-        subclasses to provide custom filtering.
-
-        (WebInspector.DataGrid.prototype._applyFiltersToNode.matchTextFilter):
-        (WebInspector.DataGrid.prototype._applyFiltersToNode.makeVisible):
-        (WebInspector.DataGrid.prototype._applyFiltersToNode):
-        Filters data grid nodes and fires filter events as needed.
-        (WebInspector.DataGrid.prototype._hasFilterDelegate):
-        Helper function.
-        (WebInspector.DataGrid.prototype._updateVisibleRows):
-        Exclude hidden nodes from revealed rows.
-        (WebInspector.DataGrid.prototype._updateFilter):
-        Filtering entry point, called on an animation frame. Updates visible
-        rows if any node was filtered/unfiltered.
-
-        (WebInspector.DataGridNode):
-        (WebInspector.DataGridNode.prototype.get filterableData):
-        Gets an array of filterable strings for the node.
-        (WebInspector.DataGridNode.prototype.refresh):
-        Resets cached filterable strings.
-        (WebInspector.DataGridNode.prototype.filterableDataForColumn):
-        Can be overridden by subclasses to provide filterable text for complex
-        cell data, like as objects formatted as document fragments.
-
-        * UserInterface/Views/LayoutTimelineDataGridNode.js:
-        (WebInspector.LayoutTimelineDataGridNode.prototype.get data):
-
-        * UserInterface/Views/LayoutTimelineView.js:
-        (WebInspector.LayoutTimelineView):
-        Register grid and remove logic that has been moved to the base class.
-        (WebInspector.LayoutTimelineView.prototype.filterDidChange):
-        Update highlight after grid filter change.
-        (WebInspector.LayoutTimelineView.prototype._dataGridSelectedNodeChanged):
-        Update highlight when selection changes.
-        (WebInspector.LayoutTimelineView.prototype.matchTreeElementAgainstCustomFilters): Deleted.
-        (WebInspector.LayoutTimelineView.prototype.treeElementDeselected): Deleted.
-        (WebInspector.LayoutTimelineView.prototype._dataGridFiltersDidChange): Deleted.
-        (WebInspector.LayoutTimelineView.prototype._dataGridNodeSelected): Deleted.
-        No longer needed.
-
-        * UserInterface/Views/NetworkTimelineView.js:
-        (WebInspector.NetworkTimelineView):
-        Register grid and remove logic that has been moved to the base class.
-        (WebInspector.NetworkTimelineView.prototype.matchTreeElementAgainstCustomFilters): Deleted.
-        (WebInspector.NetworkTimelineView.prototype._dataGridFiltersDidChange): Deleted.
-        (WebInspector.NetworkTimelineView.prototype._dataGridNodeSelected): Deleted.
-        No longer needed.
-
-        * UserInterface/Views/OverviewTimelineView.js:
-        (WebInspector.OverviewTimelineView):
-        Register grid and remove logic that has been moved to the base class.
-        (WebInspector.OverviewTimelineView.prototype._dataGridNodeSelected): Deleted.
-        No longer needed.
-
-        * UserInterface/Views/RenderingFrameTimelineView.js:
-        (WebInspector.RenderingFrameTimelineView):
-        Register grid and remove logic that has been moved to the base class.
-        (WebInspector.RenderingFrameTimelineView.prototype.get filterStartTime):
-        (WebInspector.RenderingFrameTimelineView.prototype.get filterEndTime):
-        Convert selection indices into filter start and end times.
-        (WebInspector.RenderingFrameTimelineView.prototype.matchDataGridNodeAgainstCustomFilters):
-        Perform custom filtering on rendering frame duration.
-        (WebInspector.RenderingFrameTimelineView.prototype._scopeBarSelectionDidChange):
-        Inform grid of custom filter change.
-        (WebInspector.RenderingFrameTimelineView.prototype.matchTreeElementAgainstCustomFilters): Deleted.
-        (WebInspector.RenderingFrameTimelineView.prototype._dataGridNodeSelected): Deleted.
-        No longer needed.
-
-        * UserInterface/Views/ResourceTimelineDataGridNode.js:
-        (WebInspector.ResourceTimelineDataGridNode.prototype.filterableDataForColumn):
-        Use URL string for filtering "name" column.
-
-        * UserInterface/Views/ScriptClusterTimelineView.js:
-        (WebInspector.ScriptClusterTimelineView.prototype.updateFilter):
-        Forwarding for TimelineView API.
-        (WebInspector.ScriptClusterTimelineView.prototype.matchDataGridNodeAgainstCustomFilters):
-        (WebInspector.ScriptClusterTimelineView.prototype.matchTreeElementAgainstCustomFilters): Deleted.
-        Renamed to matchDataGridNodeAgainstCustomFilters.
-        (WebInspector.ScriptClusterTimelineView.prototype._scriptClusterViewCurrentContentViewDidChange): Deleted.
-        Removed FIXME comment. Updating TimelineView times is sufficient to trigger filtering.
-
-        * UserInterface/Views/ScriptDetailsTimelineView.js:
-        (WebInspector.ScriptDetailsTimelineView):
-        Register grid and remove logic that has been moved to the base class.
-        (WebInspector.ScriptDetailsTimelineView.prototype._dataGridFiltersDidChange): Deleted.
-        (WebInspector.ScriptDetailsTimelineView.prototype._dataGridNodeSelected): Deleted.
-        No longer needed.
-
-        * UserInterface/Views/ScriptTimelineDataGridNode.js:
-        (WebInspector.ScriptTimelineDataGridNode.prototype.filterableDataForColumn):
-        Use main title and subtitle strings for filtering "name" column.
-        (WebInspector.ScriptTimelineDataGridNode.prototype._createNameCellDocumentFragment):
-        (WebInspector.ScriptTimelineDataGridNode.prototype._subtitle):
-        Break out for use in filterableDataForColumn.
-
-        * UserInterface/Views/TimelineDataGrid.js:
-        (WebInspector.TimelineDataGrid):
-        Cleanup variable names.
-        (WebInspector.TimelineDataGrid.prototype.hasCustomFilters):
-        Always true because filtering on ruler selection always occurs.
-        (WebInspector.TimelineDataGrid.prototype.matchNodeAgainstCustomFilters):
-        Match nodes against scope bar filters.
-        (WebInspector.TimelineDataGrid.prototype._scopeBarSelectedItemsDidChange):
-        Inform grid of custom filter change.
-        (WebInspector.TimelineDataGrid.prototype.treeElementMatchesActiveScopeFilters): Deleted.
-        Re-implemented as _nodeMatchesActiveScopeFilters.
-        (WebInspector.TimelineDataGrid.prototype._updateScopeBarForcedVisibility): Deleted.
-        Old UI. No longer needed.
-
-        * UserInterface/Views/TimelineDataGridNode.js:
-        (WebInspector.TimelineDataGridNode.prototype.filterableDataForColumn):
-        Filter strings for SourceCodeLocation and CallFrame objects.
-
-        * UserInterface/Views/TimelineRecordingContentView.js:
-        (WebInspector.TimelineRecordingContentView):
-        Listen for FilterBar changes and TimelineView record filtering.
-        (WebInspector.TimelineRecordingContentView.prototype._filterDidChange):
-        Update grid filters when filter bar changes.
-        (WebInspector.TimelineRecordingContentView.prototype._recordWasFiltered):
-        Update overview when records are filtered/unfiltered.
-        (WebInspector.TimelineRecordingContentView.prototype.filterDidChange): Deleted.
-        (WebInspector.TimelineRecordingContentView.prototype.recordWasFiltered): Deleted.
-        (WebInspector.TimelineRecordingContentView.prototype.matchTreeElementAgainstCustomFilters.checkTimeBounds): Deleted.
-        (WebInspector.TimelineRecordingContentView.prototype.matchTreeElementAgainstCustomFilters): Deleted.
-        Re-implemented in DataGrid.
-        (WebInspector.TimelineRecordingContentView.prototype._updateTimes): Deleted.
-        FIXME comment removed. Filtering occurs when TimelineView times are updated.
-        (WebInspector.TimelineRecordingContentView.prototype._timeRangeSelectionChanged): Deleted.
-
-        * UserInterface/Views/TimelineView.js:
-        (WebInspector.TimelineView):
-        (WebInspector.TimelineView.prototype.get navigationItems):
-        Used by TimelineRecordingContentView to add scope bar items to the
-        lower content browser's navigation bar.
-
-        (WebInspector.TimelineView.prototype.set startTime):
-        (WebInspector.TimelineView.prototype.set endTime):
-        (WebInspector.TimelineView.prototype.set currentTime):
-        Update grid filter when recording times change.
-        (WebInspector.TimelineView.prototype.get filterStartTime):
-        (WebInspector.TimelineView.prototype.get filterEndTime):
-        Let subclasses (RenderingFrameTimelineView) provide filter start/end times.
-        (WebInspector.TimelineView.prototype.setupDataGrid):
-        Register the grid used by the TimelineView subclass, allowing the base
-        class to hook into common event listeners and provide boilerplate functionality.
-
-        (WebInspector.TimelineView.prototype.updateFilter):
-        For data grid views, updates grid filters and sets new filter text.
-        (WebInspector.TimelineView.prototype.matchDataGridNodeAgainstCustomFilters):
-        (WebInspector.TimelineView.prototype.dataGridMatchNodeAgainstCustomFilters.checkTimeBounds):
-        (WebInspector.TimelineView.prototype.dataGridMatchNodeAgainstCustomFilters):
-        DataGrid filter delegate. Lets subclasses apply custom filters first,
-        then filters based on ruler selection if needed.
-
-        (WebInspector.TimelineView.prototype.filterDidChange):
-        Hook for subclasses to respond to filter changes.
-        (WebInspector.TimelineView.prototype._filterTimesDidChange.delayedWork):
-        (WebInspector.TimelineView.prototype._filterTimesDidChange):
-        Helper function for coalescing ruler selection updates into a single
-        filter update.
-
-        (WebInspector.TimelineView.prototype.matchTreeElementAgainstCustomFilters): Deleted.
-        (WebInspector.TimelineView.prototype.filterUpdated): Deleted.
-        No longer needed.
-
-2016-04-25  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: React.js JSXTransformer produces bogus error locations
-        https://bugs.webkit.org/show_bug.cgi?id=150010
-        <rdar://problem/23062233>
-
-        Reviewed by Timothy Hatcher.
-
-        Show dynamically added <script> elements added to a frame as resources.
-        For cases where the scripts had source map resources or error messages
-        we have a root from which to associate them to.
-
-        * Localizations/en.lproj/localizedStrings.js:
-        "Script Element %d" tree element title.
-
-        * UserInterface/Models/Frame.js:
-        (WebInspector.Frame.prototype.commitProvisionalLoad):
-        (WebInspector.Frame.prototype.get extraScripts):
-        (WebInspector.Frame.prototype.addExtraScript):
-        Have a frame keep a list of its extra scripts.
-
-        * UserInterface/Models/Script.js:
-        (WebInspector.Script):
-        (WebInspector.Script.prototype.get displayName):
-        (WebInspector.Script.prototype.get dynamicallyAddedScriptElement):
-        Identify dynamically added script elements and associate them
-        with the frame, instead of the frame's main resource.
-
-        * UserInterface/Views/FrameTreeElement.js:
-        (WebInspector.FrameTreeElement.prototype.onpopulate):
-        (WebInspector.FrameTreeElement.prototype._extraScriptAdded):
-        Show named / source mapped dynamic script elements under a frame.
-
-        * UserInterface/Views/ResourceSidebarPanel.js:
-        (WebInspector.ResourceSidebarPanel.prototype._scriptWasAdded):
-        Dynamically added script element Scripts will be added by the frame that
-        owns them.
-
-        * UserInterface/Views/ScriptTreeElement.js:
-        (WebInspector.ScriptTreeElement):
-        Don't include a subtitle for dynamicallyAddedScriptElement, details match
-        the frame that owns them.
-
-2016-04-25  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Line error widget showed in the wrong resource
-        https://bugs.webkit.org/show_bug.cgi?id=150009
-        <rdar://problem/23062199>
-
-        Reviewed by Timothy Hatcher.
-
-        This addresses a few long standing issues:
-
-            - IssueMessage and ConsoleMessage should not fight eachother
-            - Displayed issue messages now correctly have format string formatting, e.g. console.error("Foo %s", str)
-            - IssueMessage wraps a ConsoleMessage, so we don't duplicate everything
-            - Gives ConsoleMessage a sourceCodeLocation (lazy)
-                - Since a sourceCodeLocation can have the exact SourceCode, if it was a Script
-                  without a Resource, we can only show the error in the Script's editor.            
-
-        * UserInterface/Models/CallFrame.js:
-        (WebInspector.CallFrame.fromPayload):
-        Prefer the script identifier lookup first. And from the Script go
-        to a resource if possible. This allows us to distinguish a location
-        that should be in a Script that doesn't have a Resource when there
-        exists a Resource with the same URL. This will soon be the case
-        for dyanamic <script> elements append to a document.
-
-        * UserInterface/Controllers/IssueManager.js:
-        (WebInspector.IssueManager.issueMatchSourceCode):
-        Consolidate all the different checks to this one function.
-
-        (WebInspector.IssueManager.prototype.issueWasAdded):
-        Create IssueMessages with ConsoleMessages.
-
-        (WebInspector.IssueManager.prototype.issuesForSourceCode):
-        Simplify now that we have the better check.
-
-        * UserInterface/Controllers/LogManager.js:
-        (WebInspector.LogManager.prototype.messageWasAdded):
-        Once a ConsoleMessage has been created (and modified `parameters` for us)
-        create the IssueMessage if it was an issue.
-
-        * UserInterface/Models/ConsoleMessage.js:
-        (WebInspector.ConsoleMessage.prototype.get sourceCodeLocation):
-        Lazily create a source code from the best possible location. This can
-        be the top call frame or the url/line/column combination.
-
-        * UserInterface/Models/IssueMessage.js:
-        (WebInspector.IssueMessage):
-        Creation and most properties just call through to a ConsoleMessage.
-        The `type` and `text` are Issue specific. Anything that uses location
-        data should use the sourceCodeLocation.
-        
-        (WebInspector.IssueMessage.prototype.saveIdentityToCookie):
-        Fix implementation that didn't account for a null sourceCodeLocation.
-
-        (WebInspector.IssueMessage.prototype._formatTextIfNecessary):
-        Basic text format message formatting.
-
-        * UserInterface/Protocol/ConsoleObserver.js:
-        (WebInspector.ConsoleObserver.prototype.messageAdded):
-        No longer call IssueMessage from the observer. Let LogManager trigger issues.
-
-        * UserInterface/Views/ContentView.js:
-        (WebInspector.ContentView.createFromRepresentedObject):
-        (WebInspector.ContentView.resolvedRepresentedObjectForRepresentedObject):
-        (WebInspector.ContentView.isViewable):
-        An IssueMessage represented object for an IssueMessageTreeElement should be
-        restorable by just going to the sourceCodeLocation it references. This is
-        identical to a Breakpoint.
-
-        * UserInterface/Views/IssueTreeElement.js:
-        (WebInspector.IssueTreeElement.prototype._updateTitles):
-        (WebInspector.IssueTreeElement):
-        * UserInterface/Views/ResourceContentView.js:
-        (WebInspector.ResourceContentView.prototype._issueWasAdded):
-        * UserInterface/Views/SourceCodeTextEditor.js:
-        (WebInspector.SourceCodeTextEditor.prototype._issueWasAdded):
-        (WebInspector.SourceCodeTextEditor.prototype._addIssue):
-        (WebInspector.SourceCodeTextEditor.prototype._reinsertAllIssues):
-        (WebInspector.SourceCodeTextEditor.prototype._matchesIssue): Deleted.
-        Update to use Issue's sourceCodeLocation or IssueManager's new APIs.
-
-2016-04-24  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Can't sort by name/source code location columns in Timeline data grids
-        https://bugs.webkit.org/show_bug.cgi?id=156965
-        <rdar://problem/25898716>
-
-        Reviewed by Timothy Hatcher.
-
-        Add support for sorting SourceCodeLocation objects to TimelineDataGrid,
-        and include a grid delegate so that views can extend sorting logic for
-        other document fragment columns.
-
-        * UserInterface/Views/NetworkTimelineView.js:
-        (WebInspector.NetworkTimelineView):
-        (WebInspector.NetworkTimelineView.prototype.dataGridSortComparator):
-        Sort "name" column by display name first, then resource URL.
-
-        * UserInterface/Views/ScriptDetailsTimelineView.js:
-        (WebInspector.ScriptDetailsTimelineView):
-        (WebInspector.ScriptDetailsTimelineView.prototype.dataGridSortComparator):
-        Sort "name" column by display name first, then subtitle.
-
-        * UserInterface/Views/ScriptTimelineDataGridNode.js:
-        (WebInspector.ScriptTimelineDataGridNode.prototype.get subtitle):
-        Make subtitle accessible externally for sorting.
-        (WebInspector.ScriptTimelineDataGridNode.prototype._createNameCellDocumentFragment):
-        (WebInspector.ScriptTimelineDataGridNode):
-
-        * UserInterface/Views/TimelineDataGrid.js:
-        (WebInspector.TimelineDataGrid):
-        (WebInspector.TimelineDataGrid.prototype.get sortDelegate):
-        (WebInspector.TimelineDataGrid.prototype.set sortDelegate):
-        Fire a SortChanged event if the delegate changed and the grid is sorted.
-        (WebInspector.TimelineDataGrid.prototype._sort):
-        If a sort delegate exists, and it returns a numeric value, skip the
-        default compare.
-
-        (WebInspector.TimelineDataGrid.prototype._sortComparator):
-        Add support for sorting SourceCodeLocation columns.
-
-2016-04-24  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Error when selecting a bar in the Frames timeline
-        https://bugs.webkit.org/show_bug.cgi?id=156960
-        <rdar://problem/25897955>
-
-        Reviewed by Timothy Hatcher.
-
-        Fixes timeline grid node selection when record selected in the overview.
-        Adds general purpose `findNode` method to DataGrid.
-
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGrid.prototype.findNode):
-        Basic find function for locating a grid node in linear time.
-
-        * UserInterface/Views/TimelineRecordingContentView.js:
-        (WebInspector.TimelineRecordingContentView.prototype._recordSelected):
-        Remove tree outline references, call generic select method.
-
-        * UserInterface/Views/TimelineView.js:
-        (WebInspector.TimelineView.prototype.selectRecord):
-        If a data grid was set, deselect current selection and select the node
-        associated with the timeline record.
-
-2016-04-24  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Events in JavaScript & Events timeline have no profile children
-        https://bugs.webkit.org/show_bug.cgi?id=156627
-        <rdar://problem/25749740>
-
-        Reviewed by Timothy Hatcher.
-
-        ProfileNodeDataGridNode should handle `populate` events when expanded.
-        This was previously done by ProfileNodeTreeElement, which is no longer
-        used in the Timelines tab.
-
-        * UserInterface/Views/ProfileDataGridNode.js:
-        (WebInspector.ProfileDataGridNode.prototype._updateChildrenForModifiers):
-        (WebInspector.ProfileDataGridNode.prototype._populate):
-        (WebInspector.ProfileDataGridNode):
-        DataGridNode sets `shouldRefreshChildren` to false after populating
-        child nodes. No need to track with a separate flag.
-
-        * UserInterface/Views/ProfileNodeDataGridNode.js:
-        (WebInspector.ProfileNodeDataGridNode):
-        (WebInspector.ProfileNodeDataGridNode.prototype._populate):
-
-2016-04-22  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: HeapAllocationsTimeline grid should use built-in grid column icons
-        https://bugs.webkit.org/show_bug.cgi?id=156934
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/HeapAllocationsTimelineDataGridNode.js:
-        (WebInspector.HeapAllocationsTimelineDataGridNode):
-        Use existing base class helper function to create main title text.
-        (WebInspector.HeapAllocationsTimelineDataGridNode.prototype.createCellContent):
-        Add icon class names to cell, remove icon element.
-
-        * UserInterface/Views/HeapAllocationsTimelineView.js:
-        (WebInspector.HeapAllocationsTimelineView):
-        Turn on icons for the column.
-
-2016-04-22  Timothy Hatcher  <timothy@apple.com>
-
-        Change an assert to a warn based on post review feedback.
-
-        https://bugs.webkit.org/show_bug.cgi?id=156919
-        rdar://problem/25857118
-
-        Rubber-stamped by Joseph Pecoraro.
-
-        * UserInterface/Controllers/DebuggerManager.js:
-        (WebInspector.DebuggerManager.prototype.debuggerDidPause):
-
-2016-04-22  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: Debugger statement in console does not provide any call frames and debugger UI is confused
-
-        https://bugs.webkit.org/show_bug.cgi?id=156919
-        rdar://problem/25857118
-
-        This makes console expressions show up in the Debugger tab sidebar if a ScriptContentView is shown for them.
-        We now also show call frames that originate from a console expression, so the call frames in the sidebar is not empty.
-        Also fix a bug where when there are no call frames we auto resume the debugger and don't leave it in a broken state.
-
-        Reviewed by Joseph Pecoraro.
-
-        * Localizations/en.lproj/localizedStrings.js: Updated.
-
-        * UserInterface/Base/Utilities.js:
-        (appendWebInspectorSourceURL): Don't append if another sourceURL is already added.
-        (appendWebInspectorConsoleEvaluationSourceURL): Added.
-        (isWebInspectorConsoleEvaluationScript): Added.
-        (isWebKitInternalScript): Return false for isWebInspectorConsoleEvaluationScript().
-
-        * UserInterface/Controllers/DebuggerManager.js:
-        (WebInspector.DebuggerManager.prototype.debuggerDidPause): Resume if call frames is empty. This is not as common now
-        since console expression call frames are not skipped.
-        (WebInspector.DebuggerManager.prototype.scriptDidParse): Change an early return for isWebInspectorInternalScript() that
-        was skipping adding internal scripts to the known script lists, but it should only do that when the debug UI is disabled.
-
-        * UserInterface/Controllers/JavaScriptLogViewController.js:
-        (WebInspector.JavaScriptLogViewController.prototype.consolePromptTextCommitted):
-        Call appendWebInspectorConsoleEvaluationSourceURL so the console expressions are tagged before evaluateInInspectedWindow
-        added the internal sourceURL name.
-
-        * UserInterface/Models/Script.js:
-        (WebInspector.Script): Assign unique identifiers to console scripts so they are named correctly.
-        (WebInspector.Script.resetUniqueDisplayNameNumbers): Reset _nextUniqueConsoleDisplayNameNumber.
-        (WebInspector.Script.prototype.get displayName): Special case console expressions with a better name.
-
-        * UserInterface/Views/DebuggerSidebarPanel.js:
-        (WebInspector.DebuggerSidebarPanel.prototype.treeElementForRepresentedObject): Add a script tree element on demand
-        like the ResourceSidebarPanel does for anonymous scripts.
-        (WebInspector.DebuggerSidebarPanel.prototype._addScript): Return treeElement so treeElementForRepresentedObject can use it.
-
-2016-04-21  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: sourceMappingURL not loaded in generated script
-        https://bugs.webkit.org/show_bug.cgi?id=156022
-        <rdar://problem/25438595>
-
-        Reviewed by Geoffrey Garen.
-
-        * UserInterface/Controllers/SourceMapManager.js:
-        (WebInspector.SourceMapManager.prototype.downloadSourceMap):
-        If the sourceMapURL is a dataURL at this point, we can just pass it on,
-        otherwise we would have returned and skipped it.
-        
-        * UserInterface/Models/CallFrame.js:
-        (WebInspector.CallFrame.fromPayload):
-        Add handling for "scriptId" if it is available in the Console.CallFrame.
-        Don't automatically mark CallFrames that didn't have a "url" as native,
-        instead try to get a SourceCode.
-
-        * UserInterface/Models/Script.js:
-        (WebInspector.Script.prototype.get displayURL):
-        Used by SourceCodeLocation formatting, so behave more like Resources
-        when we have only have a sourceURL name. This produces output like:
-        "foo.js:#:#" instead of "foo.js (line #:#)"
-
-        (WebInspector.Script.prototype.get anonymous):
-        Easy accessor to see if this would be treated as anonymous or not.
-
-        * UserInterface/Models/SourceMap.js:
-        (WebInspector.SourceMap.prototype.get sourceMappingBasePathURLComponents):
-        Gracefully handle no path.
-
-        * UserInterface/Models/StackTrace.js:
-        (WebInspector.StackTrace.prototype.get firstNonNativeCallFrame):
-        (WebInspector.StackTrace.prototype.get firstNonNativeNonAnonymousCallFrame):
-        * UserInterface/Views/ConsoleMessageView.js:
-        (WebInspector.ConsoleMessageView.prototype._appendLocationLink):
-        Now that "Eval Code" with a sourceURL is no longer native, we still don't
-        want to show it in the Web Inspector if it is anonymous. So include a stricter
-        version that skips native and anonymous call frames.
-
-2016-04-21  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Debugger statement gets a space after it when pretty printed
-        https://bugs.webkit.org/show_bug.cgi?id=156867
-        <rdar://problem/25862308>
-
-        Reviewed by Geoffrey Garen.
-
-        * Tools/Formatting/index.html:
-        * UserInterface/Workers/Formatter/EsprimaFormatter.js:
-        (EsprimaFormatter.prototype._handleTokenAtNode):
-        Handle the unhandled DebuggerStatement node type.
-
-2016-04-20  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: console.table(navigator) throws exception about `rowPreview.propertyPreviews.length`
-        https://bugs.webkit.org/show_bug.cgi?id=156698
-        <rdar://problem/25778244>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/ConsoleMessageView.js:
-        (WebInspector.ConsoleMessageView.prototype._formatParameterAsTable):
-        Handle a row with a value preview but no sub-property previews (a function).
-
-2016-04-19  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: Use debounce proxies in a couple more places
-
-        https://bugs.webkit.org/show_bug.cgi?id=156759
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Views/ContentBrowser.js:
-        (WebInspector.ContentBrowser.prototype._dispatchCurrentRepresentedObjectsDidChangeEvent):
-        (WebInspector.ContentBrowser.prototype._contentViewSelectionPathComponentDidChange):
-        (WebInspector.ContentBrowser.prototype._contentViewSupplementalRepresentedObjectsDidChange):
-        (WebInspector.ContentBrowser.prototype._dispatchCurrentRepresentedObjectsDidChangeEventSoon): Deleted.
-        * UserInterface/Views/DOMTreeUpdater.js:
-        (WebInspector.DOMTreeUpdater.prototype._attributesUpdated):
-        (WebInspector.DOMTreeUpdater.prototype._characterDataModified):
-        (WebInspector.DOMTreeUpdater.prototype._nodeInserted):
-        (WebInspector.DOMTreeUpdater.prototype._nodeRemoved):
-        (WebInspector.DOMTreeUpdater.prototype._updateModifiedNodes):
-        (WebInspector.DOMTreeUpdater.prototype._updateModifiedNodesSoon): Deleted.
-        * UserInterface/Views/NavigationSidebarPanel.js:
-        (WebInspector.NavigationSidebarPanel):
-        (WebInspector.NavigationSidebarPanel.prototype._updateContentOverflowShadowVisibility):
-        (WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged):
-        (WebInspector.NavigationSidebarPanel.prototype._treeElementDisclosureDidChange):
-        (WebInspector.NavigationSidebarPanel.prototype._updateContentOverflowShadowVisibilitySoon): Deleted.
-
-2016-04-19  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: Make debounce use an ES6 Proxy
-
-        https://bugs.webkit.org/show_bug.cgi?id=156756
-        rdar://problem/25809771
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Base/Utilities.js:
-        (Object.prototype.soon): Added.
-        (Object.prototype.debounce): Added.
-        (Function.prototype.debounce): Deleted.
-        (Function.prototype.cancelDebounce): Added.
-
-        * UserInterface/Views/BezierEditor.js:
-        (WebInspector.BezierEditor.createBezierInput): Use new debounce proxy.
-        * UserInterface/Views/VisualStyleBackgroundPicker.js:
-        (WebInspector.VisualStyleBackgroundPicker): Ditto.
-        * UserInterface/Views/VisualStyleURLInput.js:
-        (WebInspector.VisualStyleURLInput): Ditto.
-
-2016-04-19  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Picking Snapshot from navigation bar popup does to switch views
-        https://bugs.webkit.org/show_bug.cgi?id=156762
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/TimelineDataGridNodePathComponent.js:
-        (WebInspector.TimelineDataGridNodePathComponent.prototype.get previousSibling):
-        (WebInspector.TimelineDataGridNodePathComponent.prototype.get nextSibling):
-        Wrong represented object provided by TimelineDataGridNodePathComponent.
-
-2016-04-18  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: DataGrid should be virtualized so it only renders visible rows
-
-        https://bugs.webkit.org/show_bug.cgi?id=156663
-        rdar://problem/25765256
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Views/ComputedStyleDetailsPanel.js:
-        (WebInspector.ComputedStyleDetailsPanel.prototype.set containerRegions):
-        Call updateLayoutIfNeeded since we don't use views here.
-
-        * UserInterface/Views/ConsoleMessageView.js:
-        (WebInspector.ConsoleMessageView.prototype._formatParameterAsTable):
-        Set inline and variableHeightRows to true, remove direct classList add. Call updateLayoutIfNeeded since we don't use views here.
-
-        * UserInterface/Views/DOMTreeDataGrid.js:
-        (WebInspector.DOMTreeDataGrid):
-        Set inline to true, remove direct classList add.
-
-        * UserInterface/Views/DataGrid.css:
-        (.data-grid td):
-        (.data-grid table.data):
-        (.data-grid:not(.variable-height-rows) table.data):
-        (.data-grid:not(.variable-height-rows) table.data.odd-first-zebra-stripe):
-        (.data-grid.variable-height-rows table.data tr:nth-child(odd)):
-        (.data-grid.variable-height-rows table.data tr:nth-child(even)):
-        (.data-grid.variable-height-rows.odd-first-zebra-stripe table.data tr:nth-child(odd)):
-        (.data-grid.variable-height-rows.odd-first-zebra-stripe table.data tr:nth-child(even)):
-        (.data-grid.variable-height-rows table.data tr.filler):
-        Updated styles to support variable height rows directly and flipping the order of the stripes
-        when the virtual table starts at an odd row.
-
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGrid): Added rowHeight and rows.
-        (WebInspector.DataGrid.prototype.get inline): Added.
-        (WebInspector.DataGrid.prototype.set inline): Added.
-        (WebInspector.DataGrid.prototype.get variableHeightRows): Added.
-        (WebInspector.DataGrid.prototype.set variableHeightRows): Added.
-        (WebInspector.DataGrid.prototype.layout): Call _updateVisibleRows.
-        (WebInspector.DataGrid.prototype._noteRowsChanged): Added.
-        (WebInspector.DataGrid.prototype._updateVisibleRows): Added.
-        (WebInspector.DataGrid.prototype._sortNodesCallback): Update to not use the DOM.
-        (WebInspector.DataGridNode.prototype.set hasChildren): Call needsLayout.
-        (WebInspector.DataGridNode.prototype.collapse): Call needsLayout.
-        (WebInspector.DataGridNode.prototype.expand): Call needsLayout.
-        (WebInspector.DataGridNode.prototype._attach): Call _noteRowsChanged.
-        (WebInspector.DataGridNode.prototype._detach): Call _noteRowsChanged.
-
-        * UserInterface/Views/DatabaseUserQuerySuccessView.js:
-        (WebInspector.DatabaseUserQuerySuccessView):
-        Set inline to true, remove direct classList add. Call updateLayoutIfNeeded since we don't use views here.
-
-        * UserInterface/Views/DetailsSection.css:
-        (.details-section > .content .data-grid td.value-column):
-        (.details-section > .content .data-grid table.data): Deleted.
-        (.details-section > .content .data-grid tr:nth-child(even)): Deleted.
-        (.details-section > .content .data-grid tr:nth-child(odd)): Deleted.
-        Now handled by DataGrid.css directly.
-
-        * UserInterface/Views/DetailsSectionDataGridRow.js:
-        (WebInspector.DetailsSectionDataGridRow.prototype.set dataGrid):
-        Set inline and variableHeightRows to true, remove direct classList add. Call updateLayoutIfNeeded since we don't use views here.
-
-        * UserInterface/Views/HeapSnapshotInstancesContentView.css:
-        (.heap-snapshot > .data-grid tr:matches(.selected, :hover) td .go-to-arrow):
-        (.heap-snapshot .icon):
-        Remove margin-top to fit inside 20px row instead of 21px.
-
-        * UserInterface/Views/IndexedDatabaseObjectStoreContentView.css:
-        (.content-view.indexed-database-object-store > .data-grid table.data): Deleted.
-        (.content-view.indexed-database-object-store > .data-grid table.data tr:nth-child(even)): Deleted.
-        (.content-view.indexed-database-object-store > .data-grid table.data tr:nth-child(odd)): Deleted.
-        (.content-view.indexed-database-object-store > .data-grid table.data tr.filler): Deleted.
-        Now handled by DataGrid.css directly.
-
-        * UserInterface/Views/IndexedDatabaseObjectStoreContentView.js:
-        (WebInspector.IndexedDatabaseObjectStoreContentView):
-        Set variableHeightRows to true.
-
-        * UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
-        (WebInspector.LayerTreeDetailsSidebarPanel.prototype._buildDataGridSection):
-        Set inline to true, remove direct classList add. Call updateLayoutIfNeeded since we don't use views here.
-
-        * UserInterface/Views/LogContentView.css:
-        (.console-item .data-grid table.data): Deleted.
-        (.console-item .data-grid table.data tr:nth-child(even)): Deleted.
-        Now handled by DataGrid.css directly.
-
-        * UserInterface/Views/NetworkGridContentView.css:
-        (.content-view.network-grid > .data-grid td): Deleted.
-        (.content-view.network-grid > .data-grid table.data): Deleted.
-        Now handled by DataGrid.css directly.
-
-        * UserInterface/Views/ProbeSetDataGrid.js:
-        (WebInspector.ProbeSetDataGrid):
-        Set inline to true, remove direct classList add.
-
-        * UserInterface/Views/ProfileView.css:
-        (.profile > .data-grid td .icon):
-        (.profile > .data-grid tr:matches(.selected, :hover) .go-to-arrow):
-        Remove margin-top to fit inside 20px row instead of 21px.
-
-        * UserInterface/Views/TimelineRecordingContentView.css:
-        (.content-view.timeline-recording > .content-browser > .content-view-container > .timeline-view > .data-grid td): Deleted.
-        (.content-view.timeline-recording > .content-browser > .content-view-container > .timeline-view > .data-grid table.data): Deleted.
-        Now handled by DataGrid.css directly.
-
-        * UserInterface/Views/Variables.css:
-        (:root): Added zebra stripe colors.
-
-2016-04-19  Joseph Pecoraro  <pecoraro@apple.com>
-
-        REGRESSION (r199635) Web Inspector: Percentages in Heap Allocations view are too large
-        https://bugs.webkit.org/show_bug.cgi?id=156729
-        <rdar://problem/25796002>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/HeapSnapshotInstanceDataGridNode.js:
-        (WebInspector.HeapSnapshotInstanceDataGridNode.prototype.createCellContent):
-        Fix callsite that failed to be updated once percentageString
-        required 0..1 input instead of 0..100.
-
-2016-04-18  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: NavigationSidebarPanel does a lot of style recalc and layout on busy sites
-
-        https://bugs.webkit.org/show_bug.cgi?id=156704
-        rdar://problem/25778744
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Views/NavigationSidebarPanel.js:
-        (WebInspector.NavigationSidebarPanel):
-        (WebInspector.NavigationSidebarPanel.prototype._treeElementDisclosureDidChange):
-        Use _updateContentOverflowShadowVisibilitySoon in more places so the style recalc
-        and layout changes are coalesced into one action after all rapid fire calls.
-
-2016-04-18  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: Database query result DataGrids have misaligned header columns
-
-        https://bugs.webkit.org/show_bug.cgi?id=156701
-        rdar://problem/25778310
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGrid.prototype.autoSizeColumns): Set the width on the <col> element
-        for the body table to match the <col> in the header.
-
-2016-04-18  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: Fix the debounce function
-
-        https://bugs.webkit.org/show_bug.cgi?id=156696
-        rdar://problem/25778133
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Base/Utilities.js:
-        (Function.prototype.debounce): Store the timeout on the original function instead
-        of the bound function. Also simplify the implementation with arrow functions
-        and eliminate the bind altogether.
-
-2016-04-16  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Adopt Number.prototype.toLocaleString For All Sizes and Times
-        https://bugs.webkit.org/show_bug.cgi?id=152033
-        <rdar://problem/23815589>
-
-        Reviewed by Timothy Hatcher.
-
-        Update string formatters to localize float and percentage strings. Hook up
-        console message formatters to use String.standardFormatters so that console
-        statements (e.g. console.log("%.3f", 3.14159)) are properly formatted.
-
-        * Localizations/en.lproj/localizedStrings.js:
-        * UserInterface/Base/Utilities.js:
-        (value):
-        tokenizeFormatString should default to 6 digits when no precision
-        sub-specifier is provided.
-
-        percentageString should localize formatting, and take a fraction value
-        (0 to 1) instead of a percentage.
-
-        secondsToString should perform special-case formatting for zero values
-        ("0ms") instead of the general purpose float formatter.
-
-        (value.d):
-        Switch to parseInt to floor floating point values and support numeric strings.
-        Return NaN instead of zero when passed a value that can't be converted to integer.
-
-        (value.f):
-        Switch to parseFloat to support numeric strings, and localize formatting.
-        Remove precision check, as it will never be less than zero. Return NaN
-        instead of zero when passed a value that can't be converted to float.
-
-        (prettyFunctionName):
-        Convert substitutions (an arguments object) to an array before calling join.
-
-        * UserInterface/Views/ConsoleMessageView.js:
-        (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString.floatFormatter):
-        Use String.standardFormatters.f.
-
-        (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString.integerFormatter):
-        Use String.standardFormatters.d.
-
-        * UserInterface/Views/LayoutTimelineDataGridNode.js:
-        (WebInspector.LayoutTimelineDataGridNode.prototype.createCellContent):
-        (WebInspector.LayoutTimelineDataGridNode):
-        Use integer formatting for pixel values.
-
-        * UserInterface/Views/ProfileDataGridNode.js:
-        (WebInspector.ProfileDataGridNode.prototype._recalculateData):
-        (WebInspector.ProfileDataGridNode.prototype._totalTimeContent):
-        Treat percentage as a fraction from 0 to 1.
-
-        * UserInterface/Views/ResourceDetailsSidebarPanel.js:
-        (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshImageSizeSection):
-        Use integer formatting for pixel values.
-
-2016-04-16  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Network timeline grid nodes aren't refreshed on LoadingFinished
-        https://bugs.webkit.org/show_bug.cgi?id=156666
-        <rdar://problem/25765811>
-
-        Reviewed by Timothy Hatcher.
-
-        Fix a regression caused by the recent Timelines UI redesign, and
-        reorder TimelineDataGrid's constructor arguments now that most
-        timeline views no longer have an associated tree outline.
-
-        * UserInterface/Views/HeapAllocationsTimelineView.js:
-        (WebInspector.HeapAllocationsTimelineView):
-        * UserInterface/Views/LayoutTimelineView.js:
-        (WebInspector.LayoutTimelineView):
-        * UserInterface/Views/NetworkGridContentView.js:
-        (WebInspector.NetworkGridContentView):
-        * UserInterface/Views/NetworkTimelineView.js:
-        (WebInspector.NetworkTimelineView):
-        * UserInterface/Views/RenderingFrameTimelineView.js:
-        (WebInspector.RenderingFrameTimelineView):
-        * UserInterface/Views/ScriptDetailsTimelineView.js:
-        (WebInspector.ScriptDetailsTimelineView):
-        Reorder constructor parameters and omit optional treeOutline and
-        synchronizerDelegate arguments when they aren't needed.
-
-        * UserInterface/Views/TimelineDataGrid.js:
-        (WebInspector.TimelineDataGrid):
-        Reorder constructor arguments so that treeOutline can be optional.
-        (WebInspector.TimelineDataGrid.prototype._refreshDirtyDataGridNodes):
-        Nodes should be refreshed and re-inserted in the data grid without
-        requiring a grid synchronizer. If a synchronizer exists, re-insert
-        the tree element for the node. Since the syncronizer is disabled the
-        order of grid/tree operations doesn't matter.
-
-2016-04-15  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: sourceMappingURL not used when sourceURL is set
-        https://bugs.webkit.org/show_bug.cgi?id=156021
-        <rdar://problem/25438417>
-
-        Reviewed by Timothy Hatcher.
-
-        Previously Debugger.sourceParsed only providing the sourceURL, and
-        wiping out the resourceURL, meant that a Script from a Resource that
-        set a sourceURL directive would fail to be associated with its Resource.
-
-        This would result in duplicated tree elements in the Resources Sidebar,
-        one for the Resource, and one for the Script. With the Script getting
-        ultimately getting the SourceMap resources. However, since the frontend
-        prefers Resources over Scripts when possible, an error that generated
-        from the script would point to a location in the Resource, not following
-        source maps.
-
-        By always providing the resource URL in Debugger.sourceParsed, a Script
-        can better be associated with its Resource. The result is now a single
-        shared tree element in the Resources Sidebar, and the Resource getting
-        the SourceMap resources. Now the script error goes through the Resource
-        to its SourceMap resources as we would expect.
-
-        * UserInterface/Protocol/DebuggerObserver.js:
-        (WebInspector.DebuggerObserver):
-        (WebInspector.DebuggerObserver.prototype.scriptParsed):
-        We now have to handle two different signatures of scriptParsed. One
-        for legacy, and one for non-legacy. Cache that value early on, since
-        scriptParsed happens a lot.
-
-        * UserInterface/Protocol/InspectorBackend.js:
-        (InspectorBackend.Agent.prototype.hasEventParameter):
-        Runtime check a protocol event to see if it has a parameter. This
-        is used to check if Debugger.sourceParsed is legacy or not based
-        on if it has the legacy "hasSourceURL" parameter.
-
-        * UserInterface/Models/Script.js:
-        (WebInspector.Script):
-        (WebInspector.Script.prototype.get sourceURL):
-        Treat sourceURL and url separately.
-
-        (WebInspector.Script.prototype.get displayName):
-        Handle both the url and sourceURL in displayName.
-
-        * UserInterface/Controllers/DebuggerManager.js:
-        (WebInspector.DebuggerManager.prototype.get knownNonResourceScripts):
-        (WebInspector.DebuggerManager.prototype.debuggerDidPause):
-        (WebInspector.DebuggerManager.prototype.scriptDidParse):
-        * UserInterface/Protocol/RemoteObject.js:
-        (WebInspector.RemoteObject.prototype.findFunctionSourceCodeLocation):
-        Update code that checks the sourceURL to explicitly use sourceURL.
-
-        * UserInterface/Controllers/SourceMapManager.js:
-        (WebInspector.SourceMapManager.prototype.downloadSourceMap):
-        For legacy backends, or in case we get a resource that has an incomplete
-        baseURL, attempt to get an absolute URL based on the main resource.
-
-        * UserInterface/Views/DebuggerSidebarPanel.js:
-        (WebInspector.DebuggerSidebarPanel.prototype._addScript):
-        * UserInterface/Views/ResourceSidebarPanel.js:
-        (WebInspector.ResourceSidebarPanel.prototype._scriptWasAdded):
-        Ignore scripts without a url or sourceURL.
-
-2016-04-14  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Cleanup inspector/debugger tests
-        https://bugs.webkit.org/show_bug.cgi?id=156619
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Base/Main.js:
-        (WebInspector.loaded):
-        * UserInterface/Controllers/DebuggerManager.js:
-        Remove agent checks for agents that are always available.
-
-2016-04-14  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Add a JavaScript Formatting test for template strings
-        https://bugs.webkit.org/show_bug.cgi?id=156600
-
-        Reviewed by Brian Burg.
-
-        * Tools/Formatting/index.html:
-
-2016-04-14  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        REGRESSION: Web Inspector: Remote inspector doesn't work
-        https://bugs.webkit.org/show_bug.cgi?id=156543
-
-        Reviewed by Timothy Hatcher.
-
-        WebSocket connection is blocked by CSP, but needed by the remote web inspector to work, so allow connect to ws
-        URLs from the web inspector. Also add stubs for zoomFactor and setZoomFactor to InspectorFrontendHostStub,
-        required after r199396.
-
-        * UserInterface/Base/InspectorFrontendHostStub.js:
-        (window.InspectorFrontendHost.WebInspector.InspectorFrontendHostStub.prototype.setZoomFactor):
-        (window.InspectorFrontendHost.WebInspector.InspectorFrontendHostStub.prototype.zoomFactor):
-        * UserInterface/Main.html:
-
-2016-04-12  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: save inspector's zoom factor as a persistent setting across sessions
-        https://bugs.webkit.org/show_bug.cgi?id=156522
-        <rdar://problem/25635774>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Base/Main.js:
-        (WebInspector.loaded):
-        Initialize the setting and immediately set the zoom before the frontend page loads.
-
-        (WebInspector._increaseZoom):
-        (WebInspector._decreaseZoom):
-        (WebInspector._resetZoom):
-        Use the internal get/set method which updates the WebInspector.Setting.
-
-        (WebInspector._setZoomFactor):
-        Added. Round-trip through the frontend host method in case it further clamps the value.
-
-        (WebInspector._zoomFactor):
-        Added. Just return the setting, since there's no other way for zoom to have changed.
-
-2016-04-12  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Show the normal Native icon for all Internal objects in Heap Snapshots
-        https://bugs.webkit.org/show_bug.cgi?id=156513
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/HeapSnapshotClusterContentView.js:
-        (WebInspector.HeapSnapshotClusterContentView.iconStyleClassNameForClassName):
-        Show the native icon for internal objects.
-
-2016-04-12  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Keyboard shortcut for "Inspect Element" only works when Web Inspector is open.
-        https://bugs.webkit.org/show_bug.cgi?id=111193
-        <rdar://problem/13325889>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Controllers/DOMTreeManager.js:
-        (WebInspector.DOMTreeManager.prototype.set inspectModeEnabled):
-        (WebInspector.DOMTreeManager.set inspectModeEnabled.callback):
-        * UserInterface/Protocol/InspectorFrontendAPI.js:
-        (InspectorFrontendAPI.setElementSelectionEnabled):
-        Frontend API to enable element selection.
-
-2016-04-12  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Should be able to expand Objects in Heap Allocations View to see exactly what it retains
-        https://bugs.webkit.org/show_bug.cgi?id=156419
-        <rdar://problem/25633863>
-
-        Reviewed by Timothy Hatcher.
-
-        * Localizations/en.lproj/localizedStrings.js:
-        * UserInterface/Main.html:
-        Remove strings, and fix sort.
-
-        * UserInterface/Models/HeapSnapshotRootPath.js:
-        (WebInspector.HeapSnapshotRootPath.pathComponentForIndividualEdge):
-        (WebInspector.HeapSnapshotRootPath.canPropertyNameBeDotAccess):
-        (WebInspector.HeapSnapshotRootPath.prototype.appendPropertyName):
-        (WebInspector.HeapSnapshotRootPath.prototype._canPropertyNameBeDotAccess):
-        Provide a helper to get an path component string for an individual edge.
-
-        * UserInterface/Models/PropertyPreview.js:
-        (WebInspector.PropertyPreview):
-        Fix an assert that may have errantly fired for an empty string name.
-
-        * UserInterface/Proxies/HeapSnapshotNodeProxy.js:
-        (WebInspector.HeapSnapshotNodeProxy):
-        (WebInspector.HeapSnapshotNodeProxy.deserialize):
-        Include "hasChildren" property in the original proxy message.
-
-        (WebInspector.HeapSnapshotNodeProxy.prototype.retainedNodes):
-        The method now also returns a list of edges for each of the retained nodes.
-
-        * UserInterface/Views/HeapSnapshotInstanceDataGridNode.js:
-        (WebInspector.HeapSnapshotInstanceDataGridNode):
-        (WebInspector.HeapSnapshotInstanceDataGridNode.prototype.createCellContent):
-        (WebInspector.HeapSnapshotInstanceDataGridNode.prototype.sort):
-        (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._populate):
-        An instance DataGrid node can now show children. It can expand to show
-        its retained node graph.
-
-        * UserInterface/Workers/HeapSnapshot/HeapSnapshot.js:
-        (HeapSnapshot.instancesWithClassName):
-        (HeapSnapshot.prototype.dominatedNodes):
-        (HeapSnapshot.prototype.retainers):
-        (HeapSnapshot.prototype.serializeNode):
-        Remove unnecessary calls to bind in favor of using the `thisObject` argument.
-
-        (HeapSnapshot.prototype.retainedNodes):
-        Return a parallel list of edges for each of the nodes.
-
-        * UserInterface/Views/HeapSnapshotClassDataGridNode.js:
-        (WebInspector.HeapSnapshotClassDataGridNode.prototype.createCellContent):
-        (WebInspector.HeapSnapshotClassDataGridNode.prototype._populate):
-        * UserInterface/Views/HeapSnapshotClusterContentView.js:
-        (WebInspector.HeapSnapshotClusterContentView.prototype.get summaryContentView):
-        (WebInspector.HeapSnapshotClusterContentView.prototype.get instancesContentView):
-        (WebInspector.HeapSnapshotClusterContentView.prototype.shown):
-        (WebInspector.HeapSnapshotClusterContentView):
-        (WebInspector.HeapSnapshotClusterContentView.prototype.get navigationItems): Deleted.
-        (WebInspector.HeapSnapshotClusterContentView.prototype._contentViewExtraArguments): Deleted.
-        (WebInspector.HeapSnapshotClusterContentView.prototype._toggleShowInternalObjectsSetting): Deleted.
-        (WebInspector.HeapSnapshotClusterContentView.prototype._updateViewsForShowInternalObjectsSettingValue): Deleted.
-        (WebInspector.HeapSnapshotClusterContentView.prototype._updateShowInternalObjectsButtonNavigationItem): Deleted.
-        * UserInterface/Views/HeapSnapshotInstancesContentView.js:
-        (WebInspector.HeapSnapshotInstancesContentView):
-        (WebInspector.HeapSnapshotInstancesContentView.prototype.get showInternalObjects): Deleted.
-        (WebInspector.HeapSnapshotInstancesContentView.prototype.set showInternalObjects): Deleted.
-        * UserInterface/Views/HeapSnapshotInstancesDataGridTree.js:
-        (WebInspector.HeapSnapshotInstancesDataGridTree.prototype._populateTopLevel):
-        (WebInspector.HeapSnapshotInstancesDataGridTree):
-        (WebInspector.HeapSnapshotInstancesDataGridTree.prototype.get includeInternalObjects): Deleted.
-        (WebInspector.HeapSnapshotInstancesDataGridTree.prototype.set includeInternalObjects): Deleted.
-        * UserInterface/Views/HeapSnapshotSummaryContentView.js:
-        Remove the show/hide internal objects button. In the Instances view we will
-        only show non-Internal objects at the top level, and show internal objects
-        when those instances are expanded.
-
-2016-04-12  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: clearing the console should exit all console groups
-        https://bugs.webkit.org/show_bug.cgi?id=156496
-        <rdar://problem/25676416>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/LogContentView.js:
-        (WebInspector.LogContentView.prototype._logCleared):
-        Reset nesting level to zero.
-
-2016-04-11  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Tab Bar items get unreadable at narrow window widths, should collapse earlier
-        https://bugs.webkit.org/show_bug.cgi?id=156477
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/TabBar.js:
-        (WebInspector.TabBar.prototype.layout):
-        Hide-titles sooner since a width of 60 results in only a few characters
-        and looks poor.
-
-2016-04-11  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Unstyled nodes in ObjectTree previews look poor
-        https://bugs.webkit.org/show_bug.cgi?id=156475
-        <rdar://problem/25667351>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/ObjectPreviewView.js:
-        (WebInspector.ObjectPreviewView.prototype._appendPreview):
-        Treat nodes as simple values.
-
-        (WebInspector.ObjectPreviewView.prototype._initTitleElement):
-        (WebInspector.ObjectPreviewView.prototype._appendValuePreview):
-        Format nodes nicely, and treat them as lossy since they have properties.
-
-2016-04-11  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: HeapSnapshot instance property path popover should include a descriptive header
-        https://bugs.webkit.org/show_bug.cgi?id=156431
-        <rdar://problem/25633594>
-
-        Reviewed by Timothy Hatcher.
-
-        * Localizations/en.lproj/localizedStrings.js:
-        * UserInterface/Views/HeapSnapshotInstanceDataGridNode.js:
-        (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._mouseoverHandler.appendTitle):
-        Title for the popover. Because localization may change the location of the @1234
-        in the string, localize first with a placeholder, and then replace the placeholder
-        with the @1234 link.
-
-        (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._mouseoverHandler.appendPath):
-        Give the table a container for extra padding.
-
-        (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._mouseoverHandler.appendPathRow):
-        Do not include the space before @1234 as part of the clickable link.
-
-        (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._mouseoverHandler):
-        Include a title when the popover shows a root path.
-
-        * UserInterface/Views/HeapSnapshotInstancesContentView.css:
-        (.heap-snapshot-instance-popover-content > .title):
-        (.heap-snapshot-instance-popover-content):
-        (.heap-snapshot-instance-popover-content > .table-container):
-        (.heap-snapshot-instance-popover-content table):
-        Provide styles for the title. Let the title extend across the entire
-        popover horizontally, but pad the table so that it appears more
-        centered under the title. Because the table has border collapse we have
-        to wrap it in a container to give it back the padding we want.
-
-2016-04-08  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: XHRs and Web Worker scripts are not searchable
-        https://bugs.webkit.org/show_bug.cgi?id=154214
-        <rdar://problem/24643587>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/SearchSidebarPanel.js:
-        (WebInspector.SearchSidebarPanel.prototype.performSearch.resourceCallback):
-        (WebInspector.SearchSidebarPanel.prototype.performSearch.resourcesCallback):
-        Carry forward the requestId property if it is available.
-
-2016-04-08  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Allocation snapshot hover persists after switching tabs
-        https://bugs.webkit.org/show_bug.cgi?id=156430
-        <rdar://problem/25633800>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/HeapSnapshotInstanceDataGridNode.js:
-        (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._mouseoverHandler):
-        Don't show the popover if the tree is no longer visible.
-
-        * UserInterface/Views/HeapSnapshotInstancesContentView.js:
-        (WebInspector.HeapSnapshotInstancesContentView.prototype.shown):
-        * UserInterface/Views/HeapSnapshotInstancesDataGridTree.js:
-        (WebInspector.HeapSnapshotInstancesDataGridTree):
-        (WebInspector.HeapSnapshotInstancesDataGridTree.prototype.get visible):
-        (WebInspector.HeapSnapshotInstancesDataGridTree.prototype.shown):
-        (WebInspector.HeapSnapshotInstancesDataGridTree.prototype.hidden):
-        Give the tree a visible state and have its containing ContentView
-        update it with normal ContentView shown/hidden.
-
-        * UserInterface/Views/Popover.js:
-        We are presenting while we were dismissing, so completely clear the
-        dismissing state.
-
-2016-04-08  Joseph Pecoraro  <pecoraro@apple.com>
-
-        JSContext Inspector: Fix asserts and uncaught exception showing Timeline Tab
-        https://bugs.webkit.org/show_bug.cgi?id=156411
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/OverviewTimelineView.js:
-        (WebInspector.OverviewTimelineView):
-        (WebInspector.OverviewTimelineView.prototype.closed):
-        Gracefully handle if we do not have a Network Timeline.
-
-        * UserInterface/Views/TimelineTabContentView.js:
-        (WebInspector.TimelineTabContentView.prototype._changeViewMode):
-        This function is always called by the constructor, so the assert
-        is not useful since it can be called when FPS is not supported.
-
-2016-04-08  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Attempting to dismiss a popover that is already being dismissed causes an error
-        https://bugs.webkit.org/show_bug.cgi?id=156385
-        <rdar://problem/25617962>
-
-        Reviewed by Timothy Hatcher.
-
-        The Popover element is removed from the DOM once it's fade-out transition
-        completes. Since Popover.dismiss proceeds as long as it's element has a
-        parent, successive calls to dismiss can run before the popover is removed.
-
-        Rather than rely on the presence of the popover in the DOM, set a "dismissing"
-        flag the first time dismiss is called, before the fade-out animation begins.
-
-        * UserInterface/Controllers/BreakpointPopoverController.js:
-        (WebInspector.BreakpointPopoverController.prototype._conditionCodeMirrorEscapeOrEnterKey):
-        Check for null popover.
-
-        * UserInterface/Views/Popover.js:
-        (WebInspector.Popover):
-        (WebInspector.Popover.prototype.dismiss):
-        Do nothing if already dismissing.
-
-        (WebInspector.Popover.prototype.handleEvent):
-        Reset dismissing flag after style transition completes.
-
-2016-04-08  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Quick Open fails to match pattern "bB" in file "abBc"
-        https://bugs.webkit.org/show_bug.cgi?id=156398
-
-        Reviewed by Timothy Hatcher.
-
-        Correct an off-by-one error in the backtrack routine that set the dead
-        branch index to the character just before the match that was popped.
-        The dead branch index should equal the index of the popped match.
-
-        * UserInterface/Controllers/ResourceQueryController.js:
-        (WebInspector.ResourceQueryController.prototype._findQueryMatches.backtrack):
-        (WebInspector.ResourceQueryController.prototype._findQueryMatches):
-
-2016-04-07  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: OpenResourceDialog should keep its resources list up-to-date
-        https://bugs.webkit.org/show_bug.cgi?id=155321
-        <rdar://problem/25093890>
-
-        Reviewed by Timothy Hatcher.
-
-        The Quick Open dialog should listen for resource change events, refreshing
-        the resource list and current query results as needed.
-
-        * UserInterface/Views/OpenResourceDialog.js:
-        (WebInspector.OpenResourceDialog):
-        (WebInspector.OpenResourceDialog.prototype.didDismissDialog):
-        Unregister resource event handlers.
-
-        (WebInspector.OpenResourceDialog.prototype.didPresentDialog):
-        Register resource event handlers and add main frame resources.
-
-        (WebInspector.OpenResourceDialog.prototype._addResource):
-        Add resource to the query controller, if valid. Optionally suppress
-        the potentially expensive filter update, which is useful when adding
-        multiple resources at once.
-
-        (WebInspector.OpenResourceDialog.prototype._addResourcesForFrame):
-        Add the entire frame resource tree and update dialog filter.
-
-        (WebInspector.OpenResourceDialog.prototype._mainResourceDidChange):
-        (WebInspector.OpenResourceDialog.prototype._resourceWasAdded):
-
-2016-04-07  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: ProfileView source links are off by 1 line, worse in pretty printed code
-        https://bugs.webkit.org/show_bug.cgi?id=156371
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/ProfileDataGridNode.js:
-        (WebInspector.ProfileDataGridNode.prototype._displayContent):
-        Switch the 1-based locations in the CCT data structure to 0-based for SourceCodeLocation.
-
-2016-04-07  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Uncaught Exception: No resource with given URL found
-        https://bugs.webkit.org/show_bug.cgi?id=156259
-        <rdar://problem/25564749>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/SourceCodeTextEditor.js:
-        (WebInspector.SourceCodeTextEditor):
-        SourceCode.prototype.requestContent will reject if it cannot load
-        content for the given resource. In that case, we already have an
-        earlier catch handler that displays an error message in the
-        ContentView, so we shouldn't show an Uncaught Exception page.
-        Really, we should not reject the original promise here, and
-        instead resolve it with an object describing the error, but
-        short term we should remove the uncaught exception handler for
-        this case.
-
-2016-04-07  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Take snapshot navigation button should match navigation button styles
-        https://bugs.webkit.org/show_bug.cgi?id=156355
-        <rdar://problem/25325172>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Images/Camera.svg: Added.
-        * UserInterface/Views/HeapAllocationsTimelineView.js:
-        (WebInspector.HeapAllocationsTimelineView):
-        Use the new image for the navigation bar button.
-
-2016-04-07  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Inspector hangs when trying to view a large XHR resource
-        https://bugs.webkit.org/show_bug.cgi?id=144107
-        <rdar://problem/20669463>
-
-        Reviewed by Timothy Hatcher.
-
-        Previously auto formatting (initial pretty print of source code) in TextEditor
-        was done synchronously in this order:
-        
-          (1) revealing the Editor as soon as we have content
-          (2) set the CodeMirror value
-          (3) pretty print with the CodeMirror editor
-          (4) set the CodeMirror value
-              => Layout
-          
-        At the end, CodeMirror would layout once with the new content. This approach
-        performs very poorly when step (3) is an asynchronous action, because it would
-        mean CodeMirror would layout for both (2) and at the end (4) and the layout
-        itself can be very costly if the content is minified and so has very long
-        lines at the top of the file that need to be syntax highlighted and visible
-        since we do not wrap.
-
-        This patch changes the order of operations to benefit asynchronous formatting.
-        When SourceCodeTextEditor determines that it can autoformat it:
-
-          (1) set the CodeMirror value
-          (2) pretty print to source text
-          (3) reveal the Editor when pretty printing is done
-          (4) set the CodeMirror value
-              => Layout
-
-        This maintains the fact that to undo pretty printing we can just "undo" the
-        editor to get the original text. This also means we only do a single
-        CodeMirror layout, with the pretty printed and therefore more manageable
-        source text for highlighting. It also means we continue to show a loading
-        indicator in the editor while we are pretty printing. If this is truely
-        done asynchronously, which is the case for JavaScript with FormatterWorker,
-        then the loading indicator will animate smoothly.
-
-        This sequence also works with the traditional synchronous formatters,
-        which we still have for CSS.
-
-        * UserInterface/Views/ContentView.js:
-        (WebInspector.ContentView.contentViewForRepresentedObject):
-        * UserInterface/Views/NavigationSidebarPanel.js:
-        (WebInspector.NavigationSidebarPanel.prototype.showDefaultContentViewForTreeElement):
-        (WebInspector.NavigationSidebarPanel.prototype._checkElementsForPendingViewStateCookie):
-        BreakpointTreeElements can now be restored and reselected when its
-        source code is null. Avoid deleting the pending cookie data if a
-        ContentView was not shown for the resource. When the Breakpoint
-        and SourceCode get hooked up, this code will run again and work.
-
-        * UserInterface/Views/ScriptContentView.js:
-        (WebInspector.ScriptContentView.prototype._togglePrettyPrint):
-        * UserInterface/Views/TextResourceContentView.js:
-        (WebInspector.TextResourceContentView.prototype._togglePrettyPrint):
-        * UserInterface/Views/TextContentView.js:
-        (WebInspector.TextContentView.prototype._togglePrettyPrint):
-        New API for toggling formatting, now that it is an async operation.
-
-        * UserInterface/Views/SourceCodeTextEditor.js:
-        (WebInspector.SourceCodeTextEditor):
-        (WebInspector.SourceCodeTextEditor.prototype.toggleTypeAnnotations):
-        (WebInspector.SourceCodeTextEditor.prototype.prettyPrint):
-        (WebInspector.SourceCodeTextEditor.prototype._populateWithContent):
-        (WebInspector.SourceCodeTextEditor.prototype._proceedPopulateWithContent):
-        (WebInspector.SourceCodeTextEditor.prototype._prepareEditorForInitialContent):
-        (WebInspector.SourceCodeTextEditor.prototype._populateWithInlineScriptContent.scriptContentAvailable):
-        (WebInspector.SourceCodeTextEditor.prototype._populateWithInlineScriptContent):
-        (WebInspector.SourceCodeTextEditor.prototype._populateWithScriptContent):
-        (WebInspector.SourceCodeTextEditor.prototype.textEditorUpdatedFormatting):
-        (WebInspector.SourceCodeTextEditor.prototype._contentWillPopulate): Deleted.
-        Move auto formatting logic into SourceCodeTextEditor, because it
-        determines if content should be auto formatted, and it loads the
-        initial content so it can determine when to show the editor for
-        the first time.
-
-        When we get the initial content and determine we have to autoformat,
-        setup the TextEditor, but don't proceed with WillPopulate/DidPopulate
-        until after we have formatted text.
-
-        * UserInterface/Views/TextEditor.js:
-        (WebInspector.TextEditor):
-        (WebInspector.TextEditor.set string.update):
-        (WebInspector.TextEditor.prototype.set string):
-        (WebInspector.TextEditor.prototype.updateFormattedState):
-        (WebInspector.TextEditor.prototype.hasFormatter):
-        (WebInspector.TextEditor.prototype._format):
-        (WebInspector.TextEditor.prototype.prettyPrint):
-        (WebInspector.TextEditor.prototype._canUseFormatterWorker):
-        (WebInspector.TextEditor.prototype._startWorkerPrettyPrint):
-        (WebInspector.TextEditor.prototype._startCodeMirrorPrettyPrint):
-        (WebInspector.TextEditor.prototype._finishPrettyPrint):
-        (WebInspector.TextEditor.prototype._undoFormatting):
-        (WebInspector.TextEditor.prototype._updateAfterFormatting):
-        Break up the synchronous pretty printing code into multiple steps.
-        One path can be asynchronous formatting via FormatterWorker, another
-        path may be synchronous formatting using the CodeMirror formatters.
-
-        (WebInspector.TextEditor.prototype.set formatted): Deleted.
-        Remove the synchronous `set formatted` setter. Replace with
-        updateFormattedState().
-
-        (WebInspector.TextEditor.prototype.set autoFormat): Deleted.
-        Remove the TextEditor's autoformat. Since formatting can be async, having
-        the TextEditor showing and asynchronously format its initial contents is
-        a recipe for poor performance causing multiple layouts of different content.
-        Instead, autoformatting is handled by SourceCodeTextEditor, and TextEditor
-        can then be shown when it has the right data.
-
-2016-04-07  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Improve JavaScript pretty printing
-        https://bugs.webkit.org/show_bug.cgi?id=156178
-        <rdar://problem/25535719>
-
-        Reviewed by Timothy Hatcher.
-
-        Add a new EsprimaFormatter which pretty prints JavaScript source text
-        using the Esprima AST and Tokens. Currently we use CodeMirror's
-        tokenizer for pretty printing. By moving to Esprima for pretty
-        printing we get a few advantages: (1) can be used within a Worker
-        as there are no dependencies on DOM objects, (2) a full featured AST
-        gives more context to handling individual tokens. One disadvantage
-        is that Esprima requires valid input, so scripts with syntax errors
-        will not work.
-
-        EsprimaFormatter works by:
-        - Getting the Esprima AST and token stream.
-        - Walk all AST nodes:
-          - when entering an AST node, handle any tokens before the start of this node
-          - when leaving an AST node, handle any tokens that were inside the node
-        - Whenever we handle a new node or token check if we should preserve any
-          newlines or comments that do not show up in the AST or token stream.
-
-        This allows us to handle any token based on its context. Currently the
-        formatter prefers to operate on tokens based on their context. So the
-        formatter has a case for each AST node type and handles the tokens
-        within that AST node. A small exception is made to special case the
-        handling of semicolons.
-
-        * Scripts/copy-user-interface-resources-dryrun.rb:
-        Add a generic check for -h, -help, --help to print usage.
-
-        * Tools/Formatting/EsprimaFormatterDebug.js: Added.
-        (EsprimaFormatterDebug):
-        (EsprimaFormatterDebug.prototype.get debugText):
-        (EsprimaFormatterDebug.prototype._pad):
-        (EsprimaFormatterDebug.prototype._debugHeader):
-        (EsprimaFormatterDebug.prototype._debugFooter):
-        (EsprimaFormatterDebug.prototype._debug):
-        (EsprimaFormatterDebug.prototype._debugComments):
-        (EsprimaFormatterDebug.prototype._debugAfterProgramNode):
-        (EsprimaFormatterDebug.prototype._before):
-        (EsprimaFormatterDebug.prototype._after):
-        * Tools/Formatting/codemirror-additions.css: Copied from Source/WebInspectorUI/Tools/PrettyPrinting/codemirror-additions.css.
-        * Tools/Formatting/index.html: Added.
-        * Tools/PrettyPrinting/codemirror-additions.css:
-        (pre): Deleted.
-        (a.download): Deleted.
-        * Tools/PrettyPrinting/index.html:
-        * Tools/PrettyPrinting/populate/jquery.min.js: Removed.
-        Add a Formatter tool that is similiar to the PrettyPrinting tool but
-        outputs debug information for Esprima tokens. This is useful for
-        iterating on tests, performance measurements, and general debugging
-        of token stream for any input.
-
-        * UserInterface/Controllers/FormatterSourceMap.js:
-        (WebInspector.FormatterSourceMap.fromSourceMapData):
-        (WebInspector.FormatterSourceMap.fromBuilder): Deleted.
-        Switch to constructing with a common data objects, instead of a Builder.
-
-        * UserInterface/Main.html:
-        * UserInterface/Test.html:
-        New files and moved files.
-
-        * UserInterface/Proxies/FormatterWorkerProxy.js: Added.
-        (WebInspector.FormatterWorkerProxy):
-        (WebInspector.FormatterWorkerProxy.singleton):
-        (WebInspector.FormatterWorkerProxy.canFormat):
-        (WebInspector.FormatterWorkerProxy.prototype.formatJavaScript):
-        (WebInspector.FormatterWorkerProxy.prototype.performAction):
-        (WebInspector.FormatterWorkerProxy.prototype._postMessage):
-        (WebInspector.FormatterWorkerProxy.prototype._handleMessage):
-        Main world object which provides a static formatJavaScript action.
-
-        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
-        (WebInspector.CSSStyleDeclarationTextEditor.prototype._formattedContentFromEditor):
-        * UserInterface/Views/TextEditor.js:
-        (WebInspector.TextEditor.prototype.prettyPrint.prettyPrintAndUpdateEditor):
-        (WebInspector.TextEditor.prototype.prettyPrint):
-        * UserInterface/Workers/Formatter/FormatterContentBuilder.js: Renamed from Source/WebInspectorUI/UserInterface/Controllers/FormatterContentBuilder.js.
-        (FormatterContentBuilder):
-        Simplify construction of a Builder. The constructor objects were always
-        the same and often unnecessary. Also move out of the WebInspector
-        namespace signifying it can be used within a Worker.
-
-        (FormatterContentBuilder.prototype.get originalContent): Deleted.
-        (FormatterContentBuilder.prototype.get formattedContent): Deleted.
-        (FormatterContentBuilder.prototype.get sourceMapData): Added.
-        Simplify getting all the data needed for SourceMaps.
-
-        (FormatterContentBuilder.prototype.setOriginalLineEndings):
-        A client may wish to pre-fill line endings instead of filling
-        while building.
-
-        (FormatterContentBuilder.prototype.appendNewline):
-        Auto-clear trailing whitespace on the previous line.
-
-        * UserInterface/Workers/Formatter/ESTreeWalker.js: Added.
-        (ESTreeWalker):
-        (ESTreeWalker.prototype.walk):
-        (ESTreeWalker.prototype._walk):
-        (ESTreeWalker.prototype._walkArray):
-        (ESTreeWalker.prototype._walkChildren):
-        Walk AST nodes in an ESTree format. Due to the spec's incompleteness
-        this is essentially Esprima's ESTree.
-
-        * UserInterface/Workers/Formatter/EsprimaFormatter.js: Added.
-        (EsprimaFormatter):
-        (EsprimaFormatter.isWhitespace):
-        (EsprimaFormatter.prototype.get formattedText):
-        (EsprimaFormatter.prototype.get sourceMapData):
-        (EsprimaFormatter.prototype._insertNewlinesBeforeToken):
-        (EsprimaFormatter.prototype._insertComment):
-        (EsprimaFormatter.prototype._insertSameLineTrailingComments):
-        (EsprimaFormatter.prototype._insertCommentsAndNewlines):
-        (EsprimaFormatter.prototype._before):
-        (EsprimaFormatter.prototype._after):
-        (EsprimaFormatter.prototype._isInForHeader):
-        (EsprimaFormatter.prototype._isRangeWhitespace):
-        (EsprimaFormatter.prototype._handleTokenAtNode):
-        (EsprimaFormatter.prototype._exitNode):
-        (EsprimaFormatter.prototype._afterProgram):
-        Pretty print source text.
-
-        * UserInterface/Workers/Formatter/FormatterUtilities.js: Added.
-        (Array.prototype.lastValue):
-        (String.prototype.lineEndings):
-        (isECMAScriptWhitespace):
-        (isECMAScriptLineTerminator):
-        Helpers used by the classes in the Worker code.
-        
-        * UserInterface/Workers/Formatter/FormatterWorker.js: Added.
-        (FormatterWorker):
-        (FormatterWorker.prototype.formatJavaScript):
-        (FormatterWorker.prototype._handleMessage):
-        Handle the formatJavaScript action.
-
-2016-04-06  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Improve filtering in OpenResourceDialog
-        https://bugs.webkit.org/show_bug.cgi?id=155324
-        <rdar://problem/25094504>
-
-        Reviewed by Joseph Pecoraro and Timothy Hatcher.
-
-        * UserInterface/Base/Utilities.js:
-        (value):
-        Added String methods isLowerCase, isUpperCase, removeWhitespace.
-
-        * UserInterface/Controllers/ResourceQueryController.js: Added.
-        (WebInspector.ResourceQueryController):
-        (WebInspector.ResourceQueryController.prototype.addResource):
-        (WebInspector.ResourceQueryController.prototype.removeResource):
-        Add and remove the resources to be queried.
-
-        (WebInspector.ResourceQueryController.prototype.reset):
-        Reset controller state. Current just clears resources.
-
-        (WebInspector.ResourceQueryController.prototype.executeQuery):
-        Executes a query against the list of resources and returns a list of
-        QueryResult objects, with at most one result per resource, ordered by
-        descending rank.
-
-        The query string is stripped of whitespace characters and lowercased
-        before use. Prior to running the query, resources undergo a one-time
-        pre-processing step to locate special characters.
-
-        (WebInspector.ResourceQueryController.prototype._findQueryMatches.pushMatch):
-        (WebInspector.ResourceQueryController.prototype._findQueryMatches.matchNextSpecialCharacter):
-        (WebInspector.ResourceQueryController.prototype._findQueryMatches.backtrack):
-        (WebInspector.ResourceQueryController.prototype._findQueryMatches):
-        Returns a list of query matches for a single resource, along with metadata
-        which is used to rank the matches. The algorithm attempts to match the
-        entire query, first comparing each query character against "special" characters
-        in the resource (commonly used filename separators, the first character,
-        and camel-case word boundaries).
-
-        If there are remaining query characters after exhausting special characters,
-        regular characters are matched starting from the last matched special
-        character. Failing that, the algorithm attempts to find a match by backtracking.
-        To backtrack, the last match is discarded and the query position decremented.
-        If a special match is now the last match, matching starts again from the
-        next character in the filename after the match. If a normal match is now
-        the last match, keep discarding until a special match is found or no matches
-        remain. The query fails if no matches remain. For example, consider:
-
-           Query: "abcd"
-           Filename: "AxBcdCx"
-
-        The capital A, B, and C are all special characters, and are successfully
-        matched with the first three query characters. Having exhausted the special
-        characters the "d" at the end of the query is compared with the "x" at
-        the end of the filename, and fails to match. Backtracking then kicks in.
-        The last match, "C", is discarded and the search position in the query
-        decremented. The search resumes after the next to last match, "B", and now
-        matches the non-special characters "cd", yielding the following: "A Bcd  ".
-
-        (WebInspector.ResourceQueryController.prototype._findSpecialCharacterIndices):
-        Pre-processing step for resources. Locates the positions of special
-        characters in the resource filename. Special characters are defined as:
-
-           1. The first character
-           2. Common filename separators, and the character immediately following.
-           3. A capital letter that follows a lowercase character.
-
-        * UserInterface/Models/ResourceQueryMatch.js: Added.
-        Helper class used internally by the controller and QueryResult classes.
-        (WebInspector.ResourceQueryMatch):
-        (WebInspector.ResourceQueryMatch.prototype.get type):
-        (WebInspector.ResourceQueryMatch.prototype.get index):
-        (WebInspector.ResourceQueryMatch.prototype.get queryIndex):
-
-        * UserInterface/Models/ResourceQueryResult.js: Added.
-        Holds a resource that matched the executed query.
-        (WebInspector.ResourceQueryResult):
-        (WebInspector.ResourceQueryResult.prototype.get resource):
-        (WebInspector.ResourceQueryResult.prototype.get rank):
-        Ranking relative to other results returned by the query. Used by
-        the ResourceQueryController to sort results.
-
-        (WebInspector.ResourceQueryResult.prototype.get matchingTextRanges):
-        Get TextRanges for matching substrings in the resource display name.
-
-        (WebInspector.ResourceQueryResult.prototype._calculateRank):
-        Calculate the rank of the result. Matches are scored based on the type
-        of match (Special vs. Normal), the location of the match within the filename
-        (matches closer to the beginning are scored higher), and whether the match
-        is adjacent to the previous match.
-
-        Values assigned to each ranking criteria are somewhat arbitrary, and may
-        be fine-tuned over time to produce better results.
-
-        (WebInspector.ResourceQueryResult.prototype._createMatchingTextRanges):
-        (WebInspector.ResourceQueryResult.prototype.__test_createMatchesMask):
-        Test API for visualizing matches. For a result returned from the query
-        "abce", run against a filename "abcde", the mask is "a c e".
-
-        * UserInterface/Main.html:
-        * UserInterface/Test.html:
-        New files.
-
-        * UserInterface/Views/Dialog.js:
-        (WebInspector.Dialog.prototype.dismiss):
-        (WebInspector.Dialog.prototype.didDismissDialog):
-        Add hook for subclasses to perform actions after on dialog dismissal.
-
-        * UserInterface/Views/OpenResourceDialog.js:
-        (WebInspector.OpenResourceDialog):
-        (WebInspector.OpenResourceDialog.prototype._populateResourceTreeOutline.createHighlightedTitleFragment):
-        (WebInspector.OpenResourceDialog.prototype._populateResourceTreeOutline):
-        Add tree elements for each QueryResult returned by the last query, creating
-        titles with contiguous matching query characters wrapped in highlight spans.
-
-        (WebInspector.OpenResourceDialog.prototype.didDismissDialog):
-        Clear resources from the ResourceQueryController.
-        (WebInspector.OpenResourceDialog.prototype.didPresentDialog):
-        Add resources to the ResourceQueryController.
-        (WebInspector.OpenResourceDialog.prototype._updateFilter):
-        Execute the filter text as a resource query.
-
-        * UserInterface/Views/TreeOutline.css:
-        (.tree-outline.large .item .titles): Deleted.
-        Line height too small, hid the bottom border of highlighted matches in
-        tree element title spans. Removing the style had no negative visual impact
-        on the Quick Open or Timelines tree outlines (the only "large" trees).
-
-2016-04-05  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Do not create CodeMirror color/gradient markers in JavaScript resources
-        https://bugs.webkit.org/show_bug.cgi?id=156278
-        <rdar://problem/25570404>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/SourceCodeTextEditor.js:
-        (WebInspector.SourceCodeTextEditor.prototype._hasStyleSheetContents):
-        (WebInspector.SourceCodeTextEditor.prototype._updateEditableMarkers):
-        Only spend the time to create style markers for style sheet contents.
-
-2016-04-05  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: Make the Timelines sidebar wider
-
-        https://bugs.webkit.org/show_bug.cgi?id=156257
-        rdar://problem/25564218
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Views/TimelineOverview.css:
-        (.timeline-overview): Added. Set define --timeline-sidebar-width.
-        (.timeline-overview > .navigation-bar.timelines): Use --timeline-sidebar-width.
-        (.timeline-overview > .tree-outline.timelines): Ditto.
-        (.timeline-overview > .scroll-container): Ditto.
-        (.timeline-overview > .timeline-ruler): Ditto.
-        (.timeline-overview > .graphs-container): Ditto.
-
-2016-04-05  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: Command-Option-R opens Inspector details sidebar or Responsive Design Mode, should only do one
-
-        https://bugs.webkit.org/show_bug.cgi?id=156258
-        rdar://problem/25483871
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Base/Main.js:
-        (WebInspector.contentLoaded): Change shortcuts to Command-Option-0 and Command-Shift-0.
-
-2016-04-05  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Should not allow selecting no Timelines when editing in Timeline tab
-        https://bugs.webkit.org/show_bug.cgi?id=156223
-        <rdar://problem/25552221>
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Views/TimelineOverview.js:
-        (WebInspector.TimelineOverview):
-        (WebInspector.TimelineOverview.prototype._startEditingInstruments):
-        Register EnabledDidChange event handler for all tree elements.
-
-        (WebInspector.TimelineOverview.prototype._stopEditingInstruments):
-        Unregister event handler for enabled tree elements. The rest are removed
-        from the tree outline once editing has completed.
-
-        (WebInspector.TimelineOverview.prototype._timelineTreeElementEnabledDidChange):
-        Enable "Done" button if at least one timeline is enabled.
-
-        * UserInterface/Views/TimelineTreeElement.js:
-        Dispatch a new event, EnabledDidChange, when the checkbox state changes.
-
-        (WebInspector.TimelineTreeElement.prototype._showCheckbox):
-        (WebInspector.TimelineTreeElement.prototype._clickHandler):
-        (WebInspector.TimelineTreeElement.prototype._dispatchEnabledDidChangeEvent):
-        (WebInspector.TimelineTreeElement):
-
-2016-04-04  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Uncaught Exception: Error: Can't make a ContentView for an unknown representedObject (ApplicationCacheManifest)
-        https://bugs.webkit.org/show_bug.cgi?id=156139
-        <rdar://problem/25511926>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/ContentView.js:
-        (WebInspector.ContentView.createFromRepresentedObject):
-        Improve the error message to get the name of the represented object.
-
-        * UserInterface/Views/NavigationSidebarPanel.js:
-        (WebInspector.NavigationSidebarPanel.prototype._isTreeElementWithoutRepresentedObject):
-        Treat ApplicationCacheManifestTreeElement like other Host elements. Nothing to save/show.
-
-        * UserInterface/Views/ApplicationCacheManifestTreeElement.js:
-        (WebInspector.ApplicationCacheManifestTreeElement):
-        * UserInterface/Views/DatabaseHostTreeElement.js:
-        (WebInspector.DatabaseHostTreeElement):
-        * UserInterface/Views/IndexedDatabaseHostTreeElement.js:
-        (WebInspector.IndexedDatabaseHostTreeElement):
-        Auto-expand these folders, as they are not useful when collapsed.
-
-2016-04-04  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Uncaught exception in CSS with string "constructor" (WebInspector.Color.fromString())
-        https://bugs.webkit.org/show_bug.cgi?id=156183
-        <rdar://problem/25539279>
-
-        Reviewed by Brian Burg.
-
-        * UserInterface/Models/Color.js:
-        (WebInspector.Color.fromString):
-        Fix the uncaught exception issue. Only look at own properties of
-        our keyword map to avoid values like "toString" and "constructor".
-
-        * UserInterface/Debug/UncaughtExceptionReporter.js:
-        (handleError):
-        (handleUncaughtException):
-        (handleUncaughtExceptionRecord):
-        Generalize uncaught exception handler error sheet to get
-        exception records from both uncaught exceptions (window.onerror)
-        and general Runtime Error objects (TypeError, etc).
-
-        * UserInterface/Base/Utilities.js:
-        (window.promiseLogError.window.promiseLogError):
-        Add a fallback log exception helper.
-
-        * UserInterface/Controllers/AnalyzerManager.js:
-        (WebInspector.AnalyzerManager.prototype.getAnalyzerMessagesForSourceCode):
-        * UserInterface/Views/SourceCodeTextEditor.js:
-        (WebInspector.SourceCodeTextEditor):
-        Add catch handlers to Promises to log exceptions.
-
-2016-04-01  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Unreviewed follow-up to r198968. Remove debug statements.
-
-        * Scripts/remove-console-asserts.pl:
-        (removeConsoleAssertsInFile):
-
-2016-04-01  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Remove console.asserts from Worker code in optimized builds
-        https://bugs.webkit.org/show_bug.cgi?id=156124
-        <rdar://problem/25505031>
-
-        Reviewed by Timothy Hatcher.
-
-        * Scripts/copy-user-interface-resources.pl:
-        Remove console asserts on the Worker results directory.
-
-        * Scripts/remove-console-asserts.pl:
-        (removeConsoleAssertsInFile):
-        (removeConsoleAssertsInDirectory):
-        Refactor into functions for a file and a file for
-        recursing through directories.
-
-2016-03-31  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: ScriptSyntaxTree doesn't handle RestElement AST nodes
-        https://bugs.webkit.org/show_bug.cgi?id=156085
-
-        Reviewed by Saam Barati.
-
-        * UserInterface/Models/ScriptSyntaxTree.js:
-        (WebInspector.ScriptSyntaxTree.prototype._gatherIdentifiersInDeclaration.gatherIdentifiers):
-        (WebInspector.ScriptSyntaxTree.prototype._gatherIdentifiersInDeclaration):
-        When searching for identifiers in Function parameters, pass
-        through the RestElement to its argument.
-
-        (WebInspector.ScriptSyntaxTree.prototype._recurse):
-        (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):
-        Create a ScriptSyntaxTree RestElement node.
-        Also, every case in recurse visits the current
-        node, so simplify the code!
-
-2016-03-30  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Remove unused ScriptProfiler.Samples.totalTime
-        https://bugs.webkit.org/show_bug.cgi?id=156002
-
-        Reviewed by Saam Barati.
-
-        * UserInterface/Controllers/TimelineManager.js:
-        (WebInspector.TimelineManager.prototype.scriptProfilerTrackingCompleted):
-        * UserInterface/Models/CallingContextTree.js:
-        (WebInspector.CallingContextTree.prototype.get totalExecutionTime): Deleted.
-        (WebInspector.CallingContextTree.prototype.reset): Deleted.
-        (WebInspector.CallingContextTree.prototype.increaseExecutionTime): Deleted.
-        Remove unused totalExecutionTime.
-
-2016-03-30  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Calculate more accurate time per-sample instead of assuming 1ms
-        https://bugs.webkit.org/show_bug.cgi?id=155961
-        <rdar://problem/25404505>
-
-        Reviewed by Geoffrey Garen.
-
-        Give each sample a duration based on the best time bounds we have available.
-        Script Profiler Events give us time bounds for (nearly) all script evaluations.
-        The only evaluations that are missed are Inspector scripts.
-
-        The duration per-sample is computed per-event:
-
-            durationPerSample = (event.endTime - event.startTime) / numSamplesInTimeRange.
-
-        If a 10ms Script Event contains 5 samples, they would each get a 2ms duration.
-        If a 0.5ms Script Event contains 1 sample, it would get a 0.5ms duration.
-
-        We were seeing an average of 1.6-1.8ms per sample for events that had more
-        than 3 samples.
-
-        * UserInterface/Controllers/TimelineManager.js:
-        (WebInspector.TimelineManager.prototype.scriptProfilerTrackingCompleted):
-        Associate a time duration per sample. For each Script Event we compute
-        an average time for all the samples in the event and assign it to the sample.
-
-        * UserInterface/Models/CallingContextTree.js:
-        (WebInspector.CallingContextTree.prototype.totalDurationInTimeRange):
-        (WebInspector.CallingContextTree.prototype.numberOfSamplesInTimeRange): Deleted.
-        Accumulate the duration by checking each sample. Number of samples
-        is now meaningless.
-        
-        (WebInspector.CallingContextTree.prototype.updateTreeWithStackTrace):
-        (WebInspector.CCTNode):
-        (WebInspector.CCTNode.prototype.addTimestampAndExpressionLocation):
-        Give CCTNodes a list of durations and leafDurations that parallels
-        the timestamps and leafTimestamps lists of individual samples.
-
-        (WebInspector.CCTNode.prototype.filteredTimestampsAndDuration):
-        (WebInspector.CCTNode.prototype.filteredLeafTimestampsAndDuration):
-        (WebInspector.CCTNode.prototype.filteredTimestamps): Deleted.
-        (WebInspector.CCTNode.prototype.numberOfLeafTimestamps): Deleted.
-        Whenever we get a list of timestamps, also compute the duration
-        of those timestamps at the same time.
-
-        * UserInterface/Views/ProfileDataGridNode.js:
-        (WebInspector.ProfileDataGridNode):
-        (WebInspector.ProfileDataGridNode.prototype._updateChildrenForModifiers):
-        (WebInspector.ProfileDataGridNode.prototype._recalculateData):
-        * UserInterface/Views/ProfileDataGridTree.js:
-        (WebInspector.ProfileDataGridTree):
-        (WebInspector.ProfileDataGridTree.prototype.get totalSampleTime):
-        (WebInspector.ProfileDataGridTree.prototype._updateCurrentFocusDetails):
-        (WebInspector.ProfileDataGridTree.prototype.get sampleInterval): Deleted.
-        (WebInspector.ProfileDataGridTree.prototype.get numberOfSamples): Deleted.
-        Instead of computing total time from (samples * sampleInterval),
-        accumulate it by adding up the duration of each individual sample.
-        Update the Profile Data Grid nodes to use the new calculations.
-
-2016-03-29  Dana Burkart and Matthew Hanson  <dburkart@apple.com>
-
-        Web Inspector: JS PrettyPrinting in do/while loops, "while" should be on the same line as "}" if there was a closing brace
-        https://bugs.webkit.org/show_bug.cgi?id=117616
-        <rdar://problem/15796884>
-
-        Reviewed by Joseph Pecoraro.
-
-        This patch fixes the formatting of do / while loops in the WebInspector CodeFormatter.
-
-        Before:
-            do {
-              "x"
-            }
-            while (0);
-
-        After:
-            do {
-              "x"
-            } while (0);
-
-        * UserInterface/Views/CodeMirrorFormatters.js:
-        (shouldHaveSpaceBeforeToken):
-        If we encounter a while token and the last token was a closing brace, we *should* add a space if that closing
-        brace was closing a do block.
-
-        (removeLastNewline):
-        If we encounter a while token and the last token was a closing brace, we *should not* add a newline if that closing
-        brace closes a do block.
-
-        (modifyStateForTokenPre):
-        We should keep track of the last token that we encountered before entering into a block. We do this by setting
-        a lastContentBeforeBlock property on openBraceStartMarker / state objects.
-
-        In addition, this fixes a bug where we do not pop a state object off of openBraceStartMarkers if our indentCount
-        is 0. Without doing this, we cannot reliably determine whether or not our while token needs to be inline or not.
-
-2016-03-29  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: REGRESSION: ⌘E and ⌘G text searching does not work
-        https://bugs.webkit.org/show_bug.cgi?id=155981
-        <rdar://problem/25418983>
-
-        Reviewed by Timothy Hatcher.
-
-        Disable the unused find banner in the RecordingContentView's
-        ContentBrowser. This is a workaround for the background tab
-        thinking it is visible, but still useful since the find
-        banner wouldn't be used in the TimelineContentView anyways so
-        can avoid being created.
-
-        * UserInterface/Views/ContentBrowser.js:
-        (WebInspector.ContentBrowser):
-        Add a construction option to not create a FindBanner.
-        
-        (WebInspector.ContentBrowser.prototype.handleFindEvent):
-        (WebInspector.ContentBrowser.prototype.shown):
-        (WebInspector.ContentBrowser.prototype.hidden):
-        (WebInspector.ContentBrowser.prototype._contentViewNumberOfSearchResultsDidChange):
-        (WebInspector.ContentBrowser.prototype._updateFindBanner):
-        Handle when we don't have a find banner.
-
-        * UserInterface/Views/TimelineRecordingContentView.js:
-        (WebInspector.TimelineRecordingContentView):
-        Do not create a FindBanner in the RecordingContentView.
-
-        * UserInterface/Base/Main.js:
-        (WebInspector.contentLoaded):
-        This global content browser can also avoid creating a FindBanner.
-
-2016-03-29  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: We should have a way to capture heap snapshots programatically.
-        https://bugs.webkit.org/show_bug.cgi?id=154407
-        <rdar://problem/24726292>
-
-        Reviewed by Timothy Hatcher.
-
-        * Localizations/en.lproj/localizedStrings.js:
-        * UserInterface/Protocol/ConsoleObserver.js:
-        (WebInspector.ConsoleObserver.prototype.heapSnapshot):
-        (WebInspector.ConsoleObserver):
-        Create a HeapSnapshot with an optional title and add to the timeline.
-
-        (WebInspector.HeapAllocationsTimelineDataGridNode):
-        * UserInterface/Views/TimelineTabContentView.js:
-        (WebInspector.TimelineTabContentView.displayNameForRecord):
-        Share code for snapshot display names which may now include a title.
-
-        * UserInterface/Proxies/HeapSnapshotProxy.js:
-        (WebInspector.HeapSnapshotProxy):
-        (WebInspector.HeapSnapshotProxy.deserialize):
-        (WebInspector.HeapSnapshotProxy.prototype.get title):
-        * UserInterface/Views/HeapAllocationsTimelineDataGridNode.js:
-        * UserInterface/Workers/HeapSnapshot/HeapSnapshot.js:
-        (HeapSnapshot):
-        (HeapSnapshot.prototype.serialize):
-        * UserInterface/Workers/HeapSnapshot/HeapSnapshotWorker.js:
-        (HeapSnapshotWorker.prototype.createSnapshot):
-        Include an optional title in a HeapSnapshot.
-
-2016-03-28  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Ensure maximum accuracy while profiling
-        https://bugs.webkit.org/show_bug.cgi?id=155809
-        <rdar://problem/25325035>
-
-        Reviewed by Timothy Hatcher.
-
-        * Localizations/en.lproj/localizedStrings.js:
-        New strings.
-
-        * UserInterface/Controllers/DebuggerManager.js:
-        (WebInspector.DebuggerManager):
-        When starting the inspector, if it was previously closed while
-        breakpoints were temporarily disabled, restore the correct
-        breakpoints enabled state.
-
-        (WebInspector.DebuggerManager.prototype.set breakpointsEnabled):
-        Warn if we ever try to enable breakpoints during timeline recordings.
-
-        (WebInspector.DebuggerManager.prototype.get breakpointsDisabledTemporarily):
-        (WebInspector.DebuggerManager.prototype.startDisablingBreakpointsTemporarily):
-        (WebInspector.DebuggerManager.prototype.stopDisablingBreakpointsTemporarily):
-        Method to start/stop temporarily disabling breakpoints.
-
-        (WebInspector.DebuggerManager.prototype._breakpointDisabledStateDidChange):
-        (WebInspector.DebuggerManager.prototype._setBreakpoint):
-        When temporarily disabling breakpoints avoid the convenience behavior of
-        enabling all breakpoints when enabling or setting a single breakpoint.
-
-        * UserInterface/Controllers/TimelineManager.js:
-        (WebInspector.TimelineManager.prototype.startCapturing):
-        Emit a will start capturing event to do work before enabling instruments.
-
-        * UserInterface/Views/DebuggerSidebarPanel.css:
-        (.sidebar > .panel.navigation.debugger .timeline-recording-warning):
-        (.sidebar > .panel.navigation.debugger .timeline-recording-warning > a):
-        Styles for a warning section in the Debugger Sidebar when the Debugger
-        is temporarily disabled due to a Timeline recording.
-
-        * UserInterface/Views/DebuggerSidebarPanel.js:
-        (WebInspector.DebuggerSidebarPanel.prototype._timelineRecordingWillStart):
-        (WebInspector.DebuggerSidebarPanel.prototype._timelineRecordingStopped):
-        Modify the Debugger state and UI before and after a Timeline recording.
-
-2016-03-28  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Use font-variant-numeric: tabular-nums instead of -apple-system-monospaced-numbers
-        https://bugs.webkit.org/show_bug.cgi?id=155826
-        <rdar://problem/25330631>
-
-        Reviewed by Myles C. Maxfield.
-
-        * UserInterface/Views/CodeMirrorOverrides.css:
-        (.CodeMirror .CodeMirror-linenumber):
-        * UserInterface/Views/DataGrid.css:
-        (.data-grid td):
-        * UserInterface/Views/DefaultDashboardView.css:
-        (.toolbar .dashboard.default > .item):
-        * UserInterface/Views/ObjectTreeArrayIndexTreeElement.css:
-        (.object-tree-array-index .index-name):
-
-2016-03-28  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Add font-variant-numeric to CSS autocompletions
-        https://bugs.webkit.org/show_bug.cgi?id=155941
-        <rdar://problem/25381735>
-
-        Reviewed by Timothy Hatcher.
-
-        Also, remove -apple-system-monospaced-numbers.
-        `font-variant-numeric: tabular-nuns` should be used instead.
-
-        * UserInterface/Models/CSSKeywordCompletions.js:
-
-2016-03-28  Matt Baker  <mattbaker@apple.com>
-
-        REGRESSION (r195303): Web Inspector: Wrong indentation in the type coverage profiler popovers
-        https://bugs.webkit.org/show_bug.cgi?id=155930
-        <rdar://problem/25377042>
-
-        Reviewed by Timothy Hatcher.
-
-        Increased specificity of TypeTreeView CSS selectors, and added new
-        overrides for rules made global by r195303, which don't apply to the
-        TypeTreeView's or its tree elements.
-
-        * UserInterface/Views/TypeTreeElement.css:
-        (.item.type-tree-element):
-        (.item.type-tree-element > .titles):
-        (.item.type-tree-element > .disclosure-button):
-        (.item.type-tree-element.parent > .disclosure-button):
-        (.item.type-tree-element.parent.expanded > .disclosure-button):
-        (.item.type-tree-element > .icon):
-        (.item.type-tree-element.prototype):
-        (.item.type-tree-element.prototype:focus):
-        (.item.type-tree-element.prototype + ol):
-        (.type-tree-element): Deleted.
-        (.type-tree-element > .titles): Deleted.
-        (.type-tree-element > .disclosure-button): Deleted.
-        (.type-tree-element.parent > .disclosure-button): Deleted.
-        (.type-tree-element.parent.expanded > .disclosure-button): Deleted.
-        (.type-tree-element > .icon): Deleted.
-        (.type-tree-element.prototype): Deleted.
-        (.type-tree-element.prototype:focus): Deleted.
-        (.type-tree-element.prototype + ol): Deleted.
-
-        * UserInterface/Views/TypeTreeView.css:
-        (.tree-outline.type li):
-
-        * UserInterface/Views/TypeTreeView.js:
-        (WebInspector.TypeTreeView):
-        Use custom indentation.
-
-2016-03-28  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Large repaints while typing in the console tab
-        https://bugs.webkit.org/show_bug.cgi?id=155627
-        <rdar://problem/25234875>
-
-        Reviewed by Timothy Hatcher.
-
-        Specify the height of flexbox elements to reduce repaint areas.
-
-        * UserInterface/Views/Main.css:
-        (#navigation-sidebar):
-        (#content): z-index doesn't affect repaint areas once the height is set.
-        (#details-sidebar):
-
-2016-03-25  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Sometimes clearing focused nodes in ProfileView leaves a dangling call stack that can never be removed
-        https://bugs.webkit.org/show_bug.cgi?id=155915
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/ProfileDataGridTree.js:
-        (WebInspector.ProfileDataGridTree.prototype.addFocusNode):
-        (WebInspector.ProfileDataGridTree.prototype.rollbackFocusNode):
-        (WebInspector.ProfileDataGridTree.prototype.clearFocusNodes):
-        (WebInspector.ProfileDataGridTree.prototype._focusChanged):
-        (WebInspector.ProfileDataGridTree.prototype._saveFocusedNodeOriginalParent):
-        (WebInspector.ProfileDataGridTree.prototype._restoreFocusedNodeToOriginalParent):
-        Be a little more explicit about saving and resotring nodes.
-        When restoring, work around a DataGrid issue by temporarily
-        collapsing and expanding the part of the node we are being
-        reattached to. This is a cheap workaround for an otherwise
-        complex DataGrid / DataGridTree issue.
-
-2016-03-25  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Clicking a result in Quick Open dialog dismisses the dialog, does nothing
-        https://bugs.webkit.org/show_bug.cgi?id=155892
-        <rdar://problem/25361220>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/OpenResourceDialog.js:
-        (WebInspector.OpenResourceDialog):
-        Allow repeat selection so clicking a selected element makes a selection
-        and dismisses the dialog.
-
-        (WebInspector.OpenResourceDialog.prototype._populateResourceTreeOutline):
-        Suppress select and deselect. Only user clicks should cause a selection event.
-
-        (WebInspector.OpenResourceDialog.prototype._handleBlurEvent):
-        Prevent the dialog from being dismissed before tree item selection occurs.
-
-        (WebInspector.OpenResourceDialog.prototype._treeSelectionDidChange):
-        Set the represented object (dialog result) and dismiss.
-
-2016-03-25  Commit Queue  <commit-queue@webkit.org>
-
-        Unreviewed, rolling out r198619.
-        https://bugs.webkit.org/show_bug.cgi?id=155902
-
-        Switching to Console tab sometimes results in blank tab.
-        (Requested by JoePeck on #webkit).
-
-        Reverted changeset:
-
-        "Web Inspector: Large repaints while typing in the console
-        tab"
-        https://bugs.webkit.org/show_bug.cgi?id=155627
-        http://trac.webkit.org/changeset/198619
-
-2016-03-25  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Scrolling/selection is broken in Quick Open dialog resource tree
-        https://bugs.webkit.org/show_bug.cgi?id=155877
-        <rdar://problem/25356149>
-
-        Reviewed by Timothy Hatcher.
-
-        Dialog and tree outline now use "display: flex", causing the height of the
-        tree outline to be based on the height of the dialog. Overflow scrolling
-        in the tree outline now has the expected behavior.
-
-        * UserInterface/Views/OpenResourceDialog.css:
-        (.open-resource-dialog):
-        (.open-resource-dialog > .tree-outline):
-
-2016-03-24  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Reduce forced layouts
-        https://bugs.webkit.org/show_bug.cgi?id=155852
-        <rdar://problem/25345197>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGrid.prototype.layout):
-        (WebInspector.DataGrid.prototype._positionResizerElements):
-        (WebInspector.DataGrid.prototype._positionHeaderViews):
-        In loops, force layout once, calculate values, then set styles.
-
-        * UserInterface/Views/RadioButtonNavigationItem.js:
-        (WebInspector.RadioButtonNavigationItem):
-        (WebInspector.RadioButtonNavigationItem.prototype.updateLayout):
-        Force layout once to calculate the min-width, then never again.
-
-2016-03-24  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Open Resource Dialog should not system beep when using Enter to select an item
-        https://bugs.webkit.org/show_bug.cgi?id=155853
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/OpenResourceDialog.js:
-        (WebInspector.OpenResourceDialog.prototype._handleKeydownEvent):
-        Prevent default when handling Enter with a selected result.
-
-2016-03-24  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Miscellaneous performance fixes in Timeline recording
-        https://bugs.webkit.org/show_bug.cgi?id=155832
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Models/CallingContextTree.js:
-        (WebInspector.CCTNode.prototype.hasChildren):
-        No need to allocate an array with all of the properties, we can just
-        check if there is at least one property using a short circuit for..in.
-        Performance was always faster for empty, small, and large objects
-        in micro benchmarks.
-
-        * UserInterface/Views/DataGrid.js:
-        (WebInspector.DataGrid.prototype.layout):
-        Avoid causing DOM layout when positioning resizers. They only need
-        a layout if we are resizing the DataGrid, or the initial layout.
-
-        * UserInterface/Views/NavigationBar.js:
-        (WebInspector.NavigationBar):
-        (WebInspector.NavigationBar.prototype.needsLayout):
-        (WebInspector.NavigationBar.prototype.layout):
-        Avoid causing DOM layout every View layout. In fact, only do a
-        DOM layout when someone has triggered a needsLayout on this
-        navigation bar. A basic dirty layout (triggered by a parent)
-        should not have caused us to resize.
-
-        * UserInterface/Views/HeapAllocationsTimelineOverviewGraph.js:
-        * UserInterface/Views/LayoutTimelineOverviewGraph.js:
-        (WebInspector.LayoutTimelineOverviewGraph.prototype.layout):
-        * UserInterface/Views/MemoryTimelineOverviewGraph.js:
-        (WebInspector.MemoryTimelineOverviewGraph.prototype.reset):
-        (WebInspector.MemoryTimelineOverviewGraph.prototype._updateLegend):
-        * UserInterface/Views/NetworkTimelineOverviewGraph.js:
-        * UserInterface/Views/RenderingFrameTimelineOverviewGraph.js:
-        (WebInspector.RenderingFrameTimelineOverviewGraph.prototype.layout):
-        * UserInterface/Views/ScriptTimelineOverviewGraph.js:
-        Avoid doing any work in non-visible graphs. This was very common
-        because the RenderingFrameTimelineOverviewGraph is never visible
-        when the other timeline graphs are, but was performing lots of work.
-
-        * UserInterface/Views/MemoryCategoryView.js:
-        (WebInspector.MemoryCategoryView.prototype.clear):
-        (WebInspector.MemoryCategoryView.prototype._updateDetails):
-        (WebInspector.MemoryCategoryView):
-        * UserInterface/Views/MemoryTimelineView.js:
-        (WebInspector.MemoryTimelineView.prototype.reset):
-        (WebInspector.MemoryTimelineView.prototype._updateUsageLegend):
-        (WebInspector.MemoryTimelineView.prototype._updateMaxComparisonLegend):
-        Cache values to avoid textContent calls even if the content did not change.
-        This reduces unnecessary work when the values wouldn't change.
-
-        * UserInterface/Views/TimelineRecordBar.js:
-        (WebInspector.TimelineRecordBar.createCombinedBars):
-        (WebInspector.TimelineRecordBar.prototype.set records):
-        Revert to fast loop and as this code path is very hot and for..of iteration
-        was showing up in profiles. Remove assert which seems rather pointless but
-        showed up in profiles.
-
-2016-03-24  Nikita Vasilyev  <nvasilyev@apple.com>
-
-        Web Inspector: Large repaints while typing in the console tab
-        https://bugs.webkit.org/show_bug.cgi?id=155627
-        <rdar://problem/25234875>
-
-        Reviewed by Timothy Hatcher.
-
-        Use a `position: absolute` workaround to reduce large repaint areas caused by flexbox.
-
-        * UserInterface/Views/LogContentView.css:
-        (body.selected-tab-console #content):
-        This selector must only affect the console tab as it breaks sidebars in other tabs.
-
-        * UserInterface/Base/Main.js:
-        (WebInspector.contentLoaded):
-        (WebInspector._tabBarItemSelected):
-        * UserInterface/Views/TabBar.js:
-        (WebInspector.TabBar.prototype.set selectedTabBarItem):
-        Add "selected-tab-console" class to <body> when the console tab is selected.
-
-2016-03-23  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Timeline range selection changes with ProfileView should not cause navigation bar items to flicker
-        https://bugs.webkit.org/show_bug.cgi?id=155834
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/ProfileView.js:
-        (WebInspector.ProfileView.prototype._recreate):
-        The only reason our selection path components would change is if we
-        had focus nodes before and do not anymore.
-
-2016-03-23  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Allow clicking the Timeline in Editing Mode to toggle the checkbox
-        https://bugs.webkit.org/show_bug.cgi?id=155815
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/TimelineOverview.js:
-        (WebInspector.TimelineOverview.prototype._startEditingInstruments):
-        Remove unused variable.
-        
-        * UserInterface/Views/TimelineTreeElement.js:
-        (WebInspector.TimelineTreeElement.prototype.onattach):
-        (WebInspector.TimelineTreeElement.prototype._clickHandler):
-        Make clicking on the tree element toggle the checkbox.
-
-2016-03-23  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Timeline Tab sometimes restores as blank
-        https://bugs.webkit.org/show_bug.cgi?id=155811
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/TimelineTabContentView.js:
-        (WebInspector.TimelineTabContentView.prototype.restoreFromCookie):
-        When early bailing in restore, if there is no content view to restore,
-        then at least fallback to showing the Overview.
-
-2016-03-23  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: REGRESSION: Timeline Reset does not clear datagrids
-        https://bugs.webkit.org/show_bug.cgi?id=155804
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/HeapAllocationsTimelineView.js:
-        (WebInspector.HeapAllocationsTimelineView.prototype.shown):
-        (WebInspector.HeapAllocationsTimelineView.prototype.hidden):
-        (WebInspector.HeapAllocationsTimelineView.prototype.closed):
-        (WebInspector.HeapAllocationsTimelineView.prototype.reset):
-        Although we don't use the popover features of TimelineDataGrid,
-        be a good citizen and call methods on the datagrid.
-
-        * UserInterface/Views/OverviewTimelineView.js:
-        (WebInspector.OverviewTimelineView.prototype.reset):
-        Clear the datagrid on reset.
-
-        * UserInterface/Views/TimelineDataGrid.js:
-        (WebInspector.TimelineDataGrid.prototype.reset):
-        Clear the datagrid on reset.
-
-2016-03-23  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Uncaught exceptions closing Timeline tab
-        https://bugs.webkit.org/show_bug.cgi?id=155805
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/ScriptClusterTimelineView.js:
-        (WebInspector.ScriptClusterTimelineView.prototype._scriptClusterViewCurrentContentViewDidChange):
-        Gracefully handle if there is no content view.
-
-        * UserInterface/Views/TimelineRecordingContentView.js:
-        (WebInspector.TimelineRecordingContentView.prototype.closed): Deleted.
-        Fix typo.
-
-2016-03-23  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Quick Open dialog has fuzzy icons at 1x
-        https://bugs.webkit.org/show_bug.cgi?id=155557
-        <rdar://problem/25200217>
-
-        Reviewed by Timothy Hatcher.
-
-        New resource icons (documents and clippings) for large  tree items,
-        for use in the Quick Open dialog's tree outline.
-
-        * UserInterface/Images/ClippingCSSLarge.png: Added.
-        * UserInterface/Images/ClippingCSSLarge@2x.png: Added.
-        * UserInterface/Images/ClippingGenericLarge.png: Added.
-        * UserInterface/Images/ClippingGenericLarge@2x.png: Added.
-        * UserInterface/Images/ClippingJSLarge.png: Added.
-        * UserInterface/Images/ClippingJSLarge@2x.png: Added.
-        * UserInterface/Images/DocumentCSSLarge.png: Added.
-        * UserInterface/Images/DocumentCSSLarge@2x.png: Added.
-        * UserInterface/Images/DocumentFontLarge.png: Added.
-        * UserInterface/Images/DocumentFontLarge@2x.png: Added.
-        * UserInterface/Images/DocumentGenericLarge.png: Added.
-        * UserInterface/Images/DocumentGenericLarge@2x.png: Added.
-        * UserInterface/Images/DocumentImageLarge.png: Added.
-        * UserInterface/Images/DocumentImageLarge@2x.png: Added.
-        * UserInterface/Images/DocumentJSLarge.png: Added.
-        * UserInterface/Images/DocumentJSLarge@2x.png: Added.
-        * UserInterface/Images/DocumentMarkupLarge.png: Added.
-        * UserInterface/Images/DocumentMarkupLarge@2x.png: Added.
-        32px icons at 1x and 2x.
-
-        * UserInterface/Views/ResourceIcons.css:
-        (.large .resource-icon .icon):
-        (.large .resource-icon.resource-type-document .icon):
-        (.large .resource-icon.resource-type-image .icon):
-        (.large .resource-icon.resource-type-font .icon):
-        (.large .resource-icon.resource-type-stylesheet .icon):
-        (.large .resource-icon.resource-type-script .icon):
-        (.large .anonymous-script-icon .icon):
-        (.large .source-map-resource.resource-icon .icon):
-        (.large .source-map-resource.resource-icon.resource-type-stylesheet .icon):
-        (.large .source-map-resource.resource-icon.resource-type-script .icon):
-        Large icon styles.
-
-2016-03-22  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: String double quoting in the console and elsewhere needs to escape backslash too
-
-        https://bugs.webkit.org/show_bug.cgi?id=155752
-        rdar://problem/25293141
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Base/Utilities.js:
-        (doubleQuotedString): Escape backslashes too.
-        * UserInterface/Views/FormattedValue.js:
-        (WebInspector.FormattedValue.createLinkifiedElementString): Ditto.
-
-2016-03-22  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: REGRESSION: Switching Timelines via Path Component does not work
-        https://bugs.webkit.org/show_bug.cgi?id=155767
-        <rdar://problem/25298945>
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/TimelineRecordingContentView.js:
-        (WebInspector.TimelineRecordingContentView.prototype._timelinePathComponentSelected):
-        (WebInspector.TimelineRecordingContentView.prototype._instrumentAdded):
-
-2016-03-22  Timothy Hatcher  <timothy@apple.com>
-
-        Web Inspector: Consider Automation script names as internal and hide them
-
-        https://bugs.webkit.org/show_bug.cgi?id=155753
-        rdar://problem/25293310
-
-        Reviewed by Joseph Pecoraro.
-
-        * UserInterface/Base/Utilities.js:
-        (isWebKitInternalScript): Renamed from isWebInspectorDebugScript.
-        Check for "__Web" prefix and "__" suffix.
-
-        * UserInterface/Controllers/DebuggerManager.js:
-        (WebInspector.DebuggerManager):
-        (WebInspector.DebuggerManager.prototype.get knownNonResourceScripts):
-        (WebInspector.DebuggerManager.prototype.reset):
-        (WebInspector.DebuggerManager.prototype.debuggerDidPause):
-        (WebInspector.DebuggerManager.prototype.scriptDidParse):
-        (WebInspector.DebuggerManager.prototype._debugUIEnabledDidChange):
-        Renamed _inspectorDebugScripts to _internalWebKitScripts. And renamed
-        isWebInspectorDebugScript to isWebKitInternalScript.
-
-        * UserInterface/Protocol/RemoteObject.js:
-        (WebInspector.RemoteObject.prototype.findFunctionSourceCodeLocation):
-        Renamed isWebInspectorDebugScript to isWebKitInternalScript.
-
-2016-03-22  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: REGRESSION: Shift + Click on record button should create a new recording
-        https://bugs.webkit.org/show_bug.cgi?id=155763
-
-        Reviewed by Timothy Hatcher.
-
-        * UserInterface/Views/TimelineTabContentView.js:
-        (WebInspector.TimelineTabContentView.prototype._recordButtonClicked):
-        Use the shiftKey from the DOM Event.
-
-2016-03-22  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: Switching Away and Back to Timelines Tab may select a different Timeline
-        https://bugs.webkit.org/show_bug.cgi?id=155742
-        <rdar://problem/25284330>
-
-        Reviewed by Timothy Hatcher.
-
-        When switching to the Timeline tab, or switching recordings within the
-        the Timeline tab, the TimelineTabContentView does work to correctly
-        save/restore its view state.
-
-        When switching to the Timeline tab, the TimelineTabContentView correctly
-        restores the state of the tab, but when showing the RecordingContentView
-        the RecordingContentView restores its state from a stale cookie.
-
-        Since TimelineTabContentView already seems to handle correctly restoring
-        RecordingContentViews on its own. Removing the RecordingContentView's
-        implementation of save/restore made everything work as expected.
-
-        * UserInterface/Views/TimelineRecordingContentView.js:
-        (WebInspector.TimelineRecordingContentView.prototype.saveToCookie): Deleted.
-        (WebInspector.TimelineRecordingContentView.prototype.restoreFromCookie): Deleted.
-
-2016-03-22  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: remove the remaining TimelineSidebarPanel references
-        https://bugs.webkit.org/show_bug.cgi?id=155765
-        <rdar://problem/25296980>
-
-        Reviewed by Timothy Hatcher.
-
-        Remove dead code from TimelineView and TimelineTabContentView.
-
-        * UserInterface/Views/OverviewTimelineView.js:
-        (WebInspector.OverviewTimelineView.prototype.canShowContentViewForTreeElement): Deleted.
-        (WebInspector.OverviewTimelineView.prototype.showContentViewForTreeElement): Deleted.
-
-        * UserInterface/Views/RenderingFrameTimelineView.js:
-        (WebInspector.RenderingFrameTimelineView.prototype.canShowContentViewForTreeElement): Deleted.
-        (WebInspector.RenderingFrameTimelineView.prototype.showContentViewForTreeElement): Deleted.
-
-        * UserInterface/Views/ScriptDetailsTimelineView.js:
-        (WebInspector.ScriptDetailsTimelineView.prototype.canShowContentViewForTreeElement): Deleted.
-        (WebInspector.ScriptDetailsTimelineView.prototype.showContentViewForTreeElement): Deleted.
-
-        * UserInterface/Views/TimelineTabContentView.js:
-        (WebInspector.TimelineTabContentView):
-
-        * UserInterface/Views/TimelineView.js:
-        (WebInspector.TimelineView.prototype.canShowContentViewForTreeElement): Deleted.
-        (WebInspector.TimelineView.prototype.showContentViewForTreeElement): Deleted.
-
-2016-03-22  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: Timelines UI redesign: Provide a way to configure which instruments to use
-        https://bugs.webkit.org/show_bug.cgi?id=153672
-        <rdar://problem/24417575>
-
-        Reviewed by Timothy Hatcher.
-
-        Adds UI for configuring a timeline recording's instrument list. TimelineManager
-        maintains the list of supported timeline types, and tracks the subset
-        of user-configured timelines which are used to create the instrument list
-        that is passed to new recordings.
-
-        * Localizations/en.lproj/localizedStrings.js:
-        New strings for "Edit" Timelines button.
-
-        * UserInterface/Controllers/TimelineManager.js:
-        (WebInspector.TimelineManager):
-        Added setting for user-configured (enabled) timeline types.
-        Initialized to the default timeline types.
-
-        (WebInspector.TimelineManager.defaultTimelineTypes):
-        (WebInspector.TimelineManager.availableTimelineTypes):
-        Get the list of all supported timeline types, which is a superset
-        of the list of default timeline types.
-
-        (WebInspector.TimelineManager.prototype.get enabledTimelineTypes):
-        (WebInspector.TimelineManager.prototype.set enabledTimelineTypes):
-        List of user-configured timeline types, backed by a Setting.
-        (WebInspector.TimelineManager.prototype._loadNewRecording):
-        Create new recordings with the current user-configured instrument list.
-        (WebInspector.TimelineManager.defaultInstruments): Deleted.
-        Renamed defaultTimelineTypes.
-
-        * UserInterface/Main.html:
-        New class, TimelineTreeElement.
-
-        * UserInterface/Models/Instrument.js:
-        (WebInspector.Instrument.createForTimelineType):
-        Factory method for creating Instruments.
-
-        * UserInterface/Models/TimelineRecording.js:
-        (WebInspector.TimelineRecording):
-        Replace fixed instrument list with TimelineManager's list.
-        (WebInspector.TimelineRecording.prototype.instrumentForTimeline):
-        Get the instrument in the recording for a given timeline.
-        (WebInspector.TimelineRecording.prototype.addInstrument):
-        (WebInspector.TimelineRecording.prototype.removeInstrument):
-        Drive-by syntax error fixes: Array.prototype.contains doesn't exist.
-
-        * UserInterface/Views/TimelineOverview.css:
-        (.timeline-overview > .navigation-bar.timelines):
-        (.navigation-bar.timelines .item.button.toggle-edit-instruments:not(.disabled):matches(:focus, .activate.activated, .radio.selected)):
-        (.navigation-bar.timelines .item.button.toggle-edit-instruments:not(.disabled):active:matches(:focus, .activate.activated, .radio.selected)):
-        (.navigation-bar.timelines .item.button.toggle-edit-instruments.disabled):
-        (.navigation-bar.timelines .toggle-edit-instruments:not(.disabled):active):
-        (.timeline-overview > .tree-outline.timelines):
-        (.timeline-overview.edit-instruments > .tree-outline.timelines):
-        (.timeline-overview.edit-instruments > .tree-outline.timelines .item.selected):
-        (.timeline-overview > .tree-outline.timelines input[type=checkbox].status-button):
-        (.timeline-overview.frames > :matches(.tree-outline.timelines, .navigation-bar.timelines)):
-        (.timeline-overview > .tree-outline.timelines::before): Deleted.
-        (.timeline-overview.frames > .tree-outline.timelines): Deleted.
-        Styles for the "Edit" navigation bar above the timelines tree outline,
-        and tree element styles for showing checkboxes and hiding the current
-        selection while in edit mode.
-
-        * UserInterface/Views/TimelineOverview.js:
-        (WebInspector.TimelineOverview):
-        Create "Edit" button and navigation bar and add event handlers for
-        capturing events, so that timeline editing can be closed and
-        disabled when capturing begins.
-
-        (WebInspector.TimelineOverview.prototype.set selectedTimeline):
-        Prevent timeline selection while in edit mode.
-        (WebInspector.TimelineOverview.prototype.get editingInstruments):
-        (WebInspector.TimelineOverview.prototype.set viewMode):
-        Prevent view mode change while in edit mode.
-
-        (WebInspector.TimelineOverview.prototype._instrumentAdded):
-        Create a TimelineTreeElement, and insert into the tree outline and graph
-        container in sorted order instead of appending timeline elements.
-
-        (WebInspector.TimelineOverview.prototype._toggleEditingInstruments):
-        Handler for Edit button click event.
-        (WebInspector.TimelineOverview.prototype._editingInstrumentsDidChange):
-        Update UI in response to editing mode change: toggle CSS, enable/disable
-        the timeline ruler and wheel/gesture events, and update Edit button appearance.
-
-        (WebInspector.TimelineOverview.prototype._updateEditInstrumentsButton):
-        Update label text and button state.
-        (WebInspector.TimelineOverview.prototype._updateWheelAndGestureHandlers):
-        Add/remove event handlers based on editing state.
-
-        (WebInspector.TimelineOverview.prototype._startEditingInstruments):
-        Enable edit mode UI. Placeholder elements are added for timelines that
-        aren't included in the recording, and all tree elements have checkboxes
-        for toggling their associated timelines.
-
-        (WebInspector.TimelineOverview.prototype._stopEditingInstruments):
-        Disable edit mode UI. Unchecked instruments are first removed from the
-        recording, then placeholder tree elements are removed, and their instruments
-        added, as needed. TimelineManager's list of user-configured timeline types
-        is then updated.
-
-        (WebInspector.TimelineOverview.prototype._capturingStarted):
-        (WebInspector.TimelineOverview.prototype._capturingStopped):
-        Enable/disable the Edit button. Quit editing mode when capturing starts.
-        (WebInspector.TimelineOverview.prototype._compareTimelineTreeElements):
-        Special sorting for the timelines tree outline. The sort order is:
-            1. Instruments that are in the recording, except Rendering Frames.
-            2. Instruments that aren't in the recording (placeholders).
-            3. Rendering Frames.
-
-        Timelines in groups 1 & 2 are sorted based on the order of the list returned
-        by TimelineManager.availableTimelineTypes(). The Rendering Frames tree
-        element must be last, since it's always hidden and would otherwise interfere
-        with the alternating tree element CSS styles.
-
-        * UserInterface/Views/TimelineRecordingContentView.css:
-        (.content-view.timeline-recording.edit-instruments > .timeline-overview):
-        (.content-view.timeline-recording.edit-instruments > .content-browser):
-        Hide lower content browser and extend timelines tree height in edit mode.
-
-        * UserInterface/Views/TimelineRecordingContentView.js:
-        (WebInspector.TimelineRecordingContentView):
-        Listen for edit mode changes on TimelineOverview.
-        (WebInspector.TimelineRecordingContentView.prototype.contentBrowserTreeElementForRepresentedObject):
-        (WebInspector.TimelineRecordingContentView.prototype._updateTimelineOverviewHeight):
-        When in edit mode, remove inline style rule for TimelineOverview height.
-        (WebInspector.TimelineRecordingContentView.prototype._instrumentAdded):
-        (WebInspector.TimelineRecordingContentView.prototype._editingInstrumentsDidChange):
-        Update CSS and TimelineOverview height when edit mode changes.
-        (WebInspector.TimelineRecordingContentView.prototype.get timelineOverviewHeight): Deleted.
-        No longer used.
-
-        * UserInterface/Views/TimelineTabContentView.js:
-        (WebInspector.TimelineTabContentView.displayNameForTimelineType):
-        (WebInspector.TimelineTabContentView.iconClassNameForTimelineType):
-        (WebInspector.TimelineTabContentView.genericClassNameForTimelineType):
-        (WebInspector.TimelineTabContentView.displayNameForTimeline): Deleted.
-        (WebInspector.TimelineTabContentView.iconClassNameForTimeline): Deleted.
-        (WebInspector.TimelineTabContentView.genericClassNameForTimeline): Deleted.
-        Helper functions now take a timeline type instead of a timeline object.
-
-        * UserInterface/Views/TimelineTreeElement.js: Added.
-        New tree element class to encapsulate behavior specific to the timelines
-        tree outline, such as status element changes and disabling selection
-        when editing.
-
-        (WebInspector.TimelineTreeElement):
-        (WebInspector.TimelineTreeElement.prototype.get placeholder):
-        (WebInspector.TimelineTreeElement.prototype.get editing):
-        (WebInspector.TimelineTreeElement.prototype.set editing):
-        (WebInspector.TimelineTreeElement.prototype._showCloseButton):
-        (WebInspector.TimelineTreeElement.prototype._showCheckbox):
-        (WebInspector.TimelineTreeElement.prototype._updateStatusButton):
-
-2016-03-21  Matt Baker  <mattbaker@apple.com>
-
-        Web Inspector: New icon for Heap Allocations timeline
-        https://bugs.webkit.org/show_bug.cgi?id=155731
-        <rdar://problem/25275494>
-
-        Reviewed by Joseph Pecoraro and Timothy Hatcher.
-
-        * UserInterface/Images/HeapAllocationsInstrument.svg: Added.
-        New artwork from Jon Davis.
-
-        * UserInterface/Views/TimelineIcons.css:
-        (.heap-allocations-icon .icon):
-        (body:not(.mac-platform, .windows-platform) .memory-icon .icon):
-        (body:not(.mac-platform, .windows-platform) .heap-allocations-icon .icon):
-        New icon styles/fallbacks for GTK.
-
- &nb