ChangeLog   [plain text]


2015-10-19  Matthew Hanson  <matthew_hanson@apple.com>

        Merge r190437. rdar://problem/23166302

    2015-10-01  Joseph Pecoraro  <pecoraro@apple.com>

            Web Inspector: Do not immediately create all ProfileNodeTreeElements when showing JavaScript and Events timeline
            https://bugs.webkit.org/show_bug.cgi?id=149726

            Reviewed by Timothy Hatcher.

            * UserInterface/Views/NavigationSidebarPanel.js:
            (WebInspector.NavigationSidebarPanel.prototype.shouldFilterPopulate):
            (WebInspector.NavigationSidebarPanel.prototype._updateFilter):
            (WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged):
            We were populating during filtering if there were any custom filters.
            However the TimelineSidebarPanel has custom filters (based on time and type)
            but those don't need to trigger population. Delay population until it
            would actually be needed (like a text search).

            * UserInterface/Views/TimelineSidebarPanel.js:
            (WebInspector.TimelineSidebarPanel.prototype.shouldFilterPopulate):
            Do not populate on filter via this custom filters.

2015-10-16  Matthew Hanson  <matthew_hanson@apple.com>

        Follow-up fix for r190246. rdar://problem/22939682

        Unreviewed.

        In merging r190246, I neglected to change two consts to vars, as per Joe's merge instructions.

        * UserInterface/Views/ResourceSidebarPanel.js:
        (WebInspector.ResourceSidebarPanel.prototype._scriptsCleared):
        const -> var

2015-10-13  Matthew Hanson  <matthew_hanson@apple.com>

        Merge r190246. rdar://problem/22939682

    2015-09-25  Joseph Pecoraro  <pecoraro@apple.com>

            Web Inspector: Reloading the page causes the inspector tab to switch back to "Resources" tab
            https://bugs.webkit.org/show_bug.cgi?id=148732

            Reviewed by Darin Adler.

            * UserInterface/Views/ResourceSidebarPanel.js:
            (WebInspector.ResourceSidebarPanel.prototype._scriptsCleared):
            Suppress selection of sibiling tree elements when removing extra folders.

2015-10-08  Lucas Forschler  <lforschler@apple.com>

        Merge r189011. rdar://problem/22801999

    2015-08-26  Nikita Vasilyev  <nvasilyev@apple.com>

            Web Inspector: [Regression] [Mavericks]: Undocked Web Inspector toolbar is two different colors and has extra space
            https://bugs.webkit.org/show_bug.cgi?id=148510

            Make body element transparent and remove extra padding above the toolbar only for OS X Mavericks.

            Reviewed by Timothy Hatcher.

            * UserInterface/Base/Main.js:
            (WebInspector.contentLoaded):
            * UserInterface/Views/Main.css:
            (body:not(.mavericks)):
            (body): Deleted.
            * UserInterface/Views/Toolbar.css:
            (body:not(.mavericks) .toolbar):
            (body.window-inactive:not(.mavericks) .toolbar):
            (body.mac-platform:not(.docked, .mavericks) .toolbar):
            (.toolbar): Deleted.
            (body.window-inactive .toolbar): Deleted.
            (body.mac-platform:not(.docked) .toolbar): Deleted.

2015-10-08  Lucas Forschler  <lforschler@apple.com>

        Merge r188173. rdar://problem/22801999

    2015-08-07  Nikita Vasilyev  <nvasilyev@apple.com>

            Web Inspector: Simplify OS-specific CSS class names
            https://bugs.webkit.org/show_bug.cgi?id=147794

            Replace "body:not(.el-capitan)" with ".legacy-mac".
            Replace "body.el-capitan" with ".latest-mac".

            Reviewed by Timothy Hatcher.

            * UserInterface/Base/Main.js:
            (WebInspector.contentLoaded):
            * UserInterface/Views/Toolbar.css:
            (body.legacy-mac .toolbar .dashboard-container):
            (body.legacy-mac .toolbar .search-bar > input[type="search"]):
            (body.legacy-mac .toolbar .search-bar > input[type="search"]:focus):
            (body.legacy-mac .toolbar .item.button:active):
            (body.window-inactive.legacy-mac .toolbar .dashboard-container):
            (body.latest-mac .toolbar .dashboard-container):
            (body.latest-mac .toolbar .search-bar > input[type="search"]):
            (body.latest-mac .toolbar .search-bar > input[type="search"]:focus):
            (@media (-webkit-min-device-pixel-ratio: 2)):
            (body.latest-mac .toolbar .item.button:active):
            (body.latest-mac.window-inactive .toolbar .dashboard-container):
            (body:not(.el-capitan) .toolbar .dashboard-container): Deleted.
            (body:not(.el-capitan) .toolbar .search-bar > input[type="search"]): Deleted.
            (body:not(.el-capitan) .toolbar .search-bar > input[type="search"]:focus): Deleted.
            (body:not(.el-capitan) .toolbar .item.button:active): Deleted.
            (body.window-inactive:not(.el-capitan) .toolbar .dashboard-container): Deleted.
            (body.el-capitan .toolbar .dashboard-container): Deleted.
            (body.el-capitan .toolbar .search-bar > input[type="search"]): Deleted.
            (body.el-capitan .toolbar .search-bar > input[type="search"]:focus): Deleted.
            (body.el-capitan .toolbar .item.button:active): Deleted.
            (body.el-capitan.window-inactive .toolbar .dashboard-container): Deleted.

2015-10-08  Lucas Forschler  <lforschler@apple.com>

        Merge r187715. rdar://problem/22801999

    2015-08-01  Nikita Vasilyev  <nvasilyev@apple.com>

            Web Inspector: Replace "unknown-mac" CSS class with "el-capitan"
            https://bugs.webkit.org/show_bug.cgi?id=147524

            Reviewed by Timothy Hatcher.

            * UserInterface/Base/Platform.js:
            No need to repeat WebInspector.Platform.version.release for every possible case.

            * UserInterface/Views/Toolbar.css:
            (body:not(.el-capitan) .toolbar .dashboard-container):
            (body:not(.el-capitan) .toolbar .search-bar > input[type="search"]):
            (body:not(.el-capitan) .toolbar .search-bar > input[type="search"]:focus):
            (body:not(.el-capitan) .toolbar .item.button:active):
            (body.window-inactive:not(.el-capitan) .toolbar .dashboard-container):
            (body.el-capitan .toolbar .dashboard-container):
            (body.el-capitan .toolbar .search-bar > input[type="search"]):
            (body.el-capitan .toolbar .search-bar > input[type="search"]:focus):
            (@media (-webkit-min-device-pixel-ratio: 2)):
            (body.el-capitan .toolbar .item.button:active):
            (body.el-capitan.window-inactive .toolbar .dashboard-container):
            (body:not(.unknown-mac) .toolbar .dashboard-container): Deleted.
            (body:not(.unknown-mac) .toolbar .search-bar > input[type="search"]): Deleted.
            (body:not(.unknown-mac) .toolbar .search-bar > input[type="search"]:focus): Deleted.
            (body:not(.unknown-mac) .toolbar .item.button:active): Deleted.
            (body.window-inactive:not(.unknown-mac) .toolbar .dashboard-container): Deleted.
            (body.unknown-mac .toolbar .dashboard-container): Deleted.
            (body.unknown-mac .toolbar .search-bar > input[type="search"]): Deleted.
            (body.unknown-mac .toolbar .search-bar > input[type="search"]:focus): Deleted.
            (body.unknown-mac .toolbar .item.button:active): Deleted.
            (body.unknown-mac.window-inactive .toolbar .dashboard-container): Deleted.

2015-10-08  Lucas Forschler  <lforschler@apple.com>

        Merge r188378. rdar://problem/22801980

    2015-08-12  Joseph Pecoraro  <pecoraro@apple.com>

            Web Inspector: Sometimes CSS resources don't update after editing via Styles panel
            https://bugs.webkit.org/show_bug.cgi?id=143244

            Reviewed by Timothy Hatcher.

            * UserInterface/Models/SourceCode.js:
            (WebInspector.SourceCode.prototype._processContent):
            This code is brittle and we should move off of putting the
            possibly stale content in the Promise result.

            * UserInterface/Views/ResourceContentView.js:
            (WebInspector.ResourceContentView.prototype._contentAvailable):
            * UserInterface/Views/SourceCodeTextEditor.js:
            (WebInspector.SourceCodeTextEditor.prototype._contentAvailable):
            * UserInterface/Models/Script.js:
            (WebInspector.Script.prototype.requestScriptSyntaxTree):
            Use the current source code's content.

2015-10-08  Lucas Forschler  <lforschler@apple.com>

        Merge r187052. rdar://problem/22801992

    2015-07-20  Joseph Pecoraro  <pecoraro@apple.com>

            Web Inspector: console.assert(false, "Message") message is not visible in console
            https://bugs.webkit.org/show_bug.cgi?id=147130

            Reviewed by Timothy Hatcher.

            * Localizations/en.lproj/localizedStrings.js:
            * UserInterface/Views/ConsoleMessageView.js:
            (WebInspector.ConsoleMessageView.prototype._appendMessageTextAndArguments):
            We were forgetting to assign the result of args.concat back into args.
            In re-addressing this, improve the formatting of output if there is
            a string message or not as the second argument to console.assert(), as
            that is the common usage.

2015-10-02  Matthew Hanson  <matthew_hanson@apple.com>

        Merge r188748. rdar://problem/22802023

    2015-08-20  Joseph Pecoraro  <pecoraro@apple.com>

            JSContext Inspector: Uncaught Exception opening Search Tab
            https://bugs.webkit.org/show_bug.cgi?id=148284

            Reviewed by Timothy Hatcher.

            * UserInterface/Views/SearchSidebarPanel.js:
            (WebInspector.SearchSidebarPanel):
            This is copied / pasted code that shouldn't apply to the Search tab.
            We want to show results under Resources in the Search tab.

2015-07-24  Matthew Hanson  <matthew_hanson@apple.com>

        Merge r187209. rdar://problem/21946519

    2015-07-22  Joseph Pecoraro  <pecoraro@apple.com>

            Web Inspector: Timeline's Current Time does not jump forward to new start time when starting a new recording, causes timeline to appear delayed and broken
            https://bugs.webkit.org/show_bug.cgi?id=147204

            Reviewed by Timothy Hatcher.

            * UserInterface/Views/TimelineRecordingContentView.js:
            (WebInspector.TimelineRecordingContentView.prototype._recordingTimesUpdated):
            We were skipping a timeline, but it might have a new event record with
            a new start time. This ensures we get an updated current time which makes
            sense, and we jump forward to that time in the main timeline.

2015-07-23  Lucas Forschler  <lforschler@apple.com>

        Merge r187123

    2015-07-21  Joseph Pecoraro  <pecoraro@apple.com>

            Web Inspector: Total download size doesn't update soon after loading
            https://bugs.webkit.org/show_bug.cgi?id=147161

            Reviewed by Timothy Hatcher.

            * UserInterface/Models/DefaultDashboard.js:
            (WebInspector.DefaultDashboard.prototype._mainResourceDidChange):
            Previously autorecording would always have made us start capturing,
            however we only autorecord if users are on the Timeline tab. Just
            reset the time always, a navigation happened and start the timer.

            (WebInspector.DefaultDashboard.prototype._resourceSizeDidChange):
            Move to a better location within the file.

2015-07-16  Matthew Hanson  <matthew_hanson@apple.com>

        Merge r186926. rdar://problem/21868062

    2015-07-16  Joseph Pecoraro  <pecoraro@apple.com>

            Web Inspector: REGRESSION (r186218) ScriptTimelineRecord attempts to access null property
            https://bugs.webkit.org/show_bug.cgi?id=147025

            Reviewed by Timothy Hatcher.

            The issue here was two ScriptTimelineRecord's were created for the same
            profile payload. When the first ScriptTimelineRecord processed the
            payload to create a Profile we modified the payload, then when the
            second ScriptTimelineRecord tries to process the payload the data is
            in an unexpected state and it crashes.

            The solution here is to stash the result on the payload, so when the
            payload is shared we can just immediately jump to the resulting Profile.
            The longer term solution will be to share higher level objects and not
            attempt to process the payload multiple times. That is tracked by:
            <https://webkit.org/b/147029> Web Inspector: Better share objects generated from timeline events (Records)

            * UserInterface/Models/ScriptTimelineRecord.js:
            (WebInspector.ScriptTimelineRecord.prototype._initializeProfileFromPayload):
            When processing the profile payload, store the Profile on the payload
            so if another ScriptTimelineRecord has that payload they can avoid
            re-processing it.

2015-07-16  Matthew Hanson  <matthew_hanson@apple.com>

        Merge r186925. rdar://problem/21868413

    2015-07-16  Joseph Pecoraro  <pecoraro@apple.com>

            Web Inspector: Total Size of Resources number in dashboard is wrong (does not update during load)
            https://bugs.webkit.org/show_bug.cgi?id=147027

            Reviewed by Timothy Hatcher.

            * UserInterface/Models/DefaultDashboard.js:
            (WebInspector.DefaultDashboard.prototype._resourceSizeDidChange):
            Restore implementation of callback from r183328 to update total resource
            size as resources are downloaded.

2015-07-09  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Storage tab should have a scope bar in the sidebar
        https://bugs.webkit.org/show_bug.cgi?id=146799

        Reviewed by Mark Lam.

        * Localizations/en.lproj/localizedStrings.js: Updated.
        * UserInterface/Main.html: Added StorageSidebarPanel.css.
        * UserInterface/Views/StorageSidebarPanel.css: Added.
        * UserInterface/Views/StorageSidebarPanel.js:
        (WebInspector.StorageSidebarPanel):
        (WebInspector.StorageSidebarPanel.prototype.hasCustomFilters):
        (WebInspector.StorageSidebarPanel.prototype.matchTreeElementAgainstCustomFilters.match):
        (WebInspector.StorageSidebarPanel.prototype.matchTreeElementAgainstCustomFilters):
        (WebInspector.StorageSidebarPanel.prototype._scopeBarSelectionDidChange):

2015-07-09  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Make the TabBar work better with AX
        https://bugs.webkit.org/show_bug.cgi?id=146806

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/TabBar.js:
        (WebInspector.TabBar): Set role to tablist and drop tabIndex.
        * UserInterface/Views/TabBarItem.js:
        (WebInspector.TabBarItem): Set role to tab and tabIndex.
        (WebInspector.TabBarItem.prototype.set selected): Toggle aria-selected.

2015-07-09  Devin Rousso  <drousso@apple.com>

        Web Inspector: Don't clear the console when navigating to a different page
        https://bugs.webkit.org/show_bug.cgi?id=142751

        Reviewed by Timothy Hatcher.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Controllers/LogManager.js:
        (WebInspector.LogManager): No longer distinguishes from page refreshes and page navigations for console clearing.
        (WebInspector.LogManager.prototype._delayedMessagesCleared):
        (WebInspector.LogManager.prototype._mainResourceDidChange):
        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype._sessionStarted):
        (WebInspector.LogContentView.prototype._handleContextMenuEvent): Changed context menu keep/clear log text.
        (WebInspector.LogContentView.prototype._toggleClearLogOnNavigateSetting):
        (WebInspector.LogContentView.prototype._toggleClearLogOnReloadSetting): Deleted.

2015-07-09  Devin Rousso  <drousso@apple.com>

        Web Inspector: Pseudo-element style ordering is wrong for pseudo-styles on unique selectors
        https://bugs.webkit.org/show_bug.cgi?id=146804

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/CSSRule.js:
        (WebInspector.CSSRule.prototype.selectorIsGreater):
        Loops through the selectors in a rule to check if their specificity is greater than a given selector's specificity.
        * UserInterface/Models/CSSSelector.js:
        (WebInspector.CSSSelector.prototype.isGreaterThan):
        Determines if the given selector's specificity is greater than this selector's specificity.
        (WebInspector.CSSSelector):
        * UserInterface/Views/RulesStyleDetailsPanel.js:
        (WebInspector.RulesStyleDetailsPanel.prototype.refresh):
        If the pseudo-element selector's specificity is greater than the current selector's
        specificity, create the pseudo-element's section and add it before the current style.

2015-07-09  Devin Rousso  <drousso@apple.com>

        Web Inspector: Special Logs to Console that do not have an expression should be styled differently, looks like code
        https://bugs.webkit.org/show_bug.cgi?id=143840

        Reviewed by Timothy Hatcher.

        * UserInterface/Controllers/JavaScriptLogViewController.js:
        (WebInspector.WebInspector.JavaScriptLogViewController.appendImmediateExecutionWithResult):
        Now applies a class to special logs initiated by the user (log element, log object, etc).
        * UserInterface/Views/ConsoleCommandView.js:
        (WebInspector.ConsoleCommandView): Added className parameter.
        * UserInterface/Views/ConsoleMessageView.css:
        (.console-user-command.selected-element-log):
        (.console-user-command.special-user-log > .console-message-text):
        * UserInterface/Views/DOMTreeOutline.js:
        (WebInspector.DOMTreeOutline.prototype._populateContextMenu.logElement):
        (WebInspector.DOMTreeOutline.prototype._populateContextMenu):
        * UserInterface/Views/ObjectPreviewView.js:
        (WebInspector.ObjectPreviewView.prototype._contextMenuHandler):
        * UserInterface/Views/ObjectTreeBaseTreeElement.js:
        (WebInspector.ObjectTreeBaseTreeElement.prototype._logSymbolProperty):
        (WebInspector.ObjectTreeBaseTreeElement.prototype._logValue):

2015-07-09  Devin Rousso  <drousso@apple.com>

        Web Inspector: Checkbox disappears when unchecking CSS background style
        https://bugs.webkit.org/show_bug.cgi?id=146776

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._updateTextMarkers.update):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._updateTextMarkers): Now uses _createCommentedCheckboxMarker.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._createCommentedCheckboxMarker):
        Scans the content of the given lineHandle for any commented text and adds an unselected checkbox to
        the beginning of that lineHandle's line.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent.update):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent): Now adds commented checkbox markers.

2015-07-09  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Align slider knobs in the color picker
        https://bugs.webkit.org/show_bug.cgi?id=146778

        Also:
        - Use half pixel borders on retina
        - Remove one pixel white outline to match native OS X color picker more closely

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ColorPicker.css:
        (.color-picker > .slider > img):
        * UserInterface/Views/Slider.css:
        (.slider):
        (@media (-webkit-min-device-pixel-ratio: 2)):

2015-07-09  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Rendering Frame segment colors should match those used in original Timelines graph
        https://bugs.webkit.org/show_bug.cgi?id=146777

        Reviewed by Brian Burg.

        * UserInterface/Views/TimelineRecordFrame.css:
        (.timeline-record-frame > .frame > .duration):
        (.timeline-record-frame > .frame > .duration:last-child):
        (.timeline-record-frame > .frame > .duration.rendering-frame-timeline-record-script):
        (.timeline-record-frame > .frame > .duration.rendering-frame-timeline-record-layout):
        (.timeline-record-frame > .frame > .duration.rendering-frame-timeline-record-paint):
        Use same RGB values as TimelineRecordBar.

2015-07-09  Matt Baker  <mattbaker@apple.com>

        Web Inspector: New JavaScript/Probe breakpoint action disappears when clicking continue checkbox
        https://bugs.webkit.org/show_bug.cgi?id=146688

        Reviewed by Brian Burg.

        Delay removal of empty Evaluate and Probe actions until after the breakpoint popover has been dismissed. This
        will make the breakpoint editing experience less jarring, by preventing actions from disappearing when clicking
        other controls in the popover.

        * UserInterface/Models/Breakpoint.js:
        (WebInspector.Breakpoint.prototype.didDismissPopover):
        Clear empty Evaluate and Probe actions on popover dismissal.

        * UserInterface/Views/BreakpointActionView.js:
        (WebInspector.BreakpointActionView.prototype._codeMirrorBlurred):
        Don't remove actions with empty data on CodeMirror blur.

2015-07-09  Matt Baker  <mattbaker@apple.com>

        Web Inspector: new breakpoint action dialog should reuse same action type
        https://bugs.webkit.org/show_bug.cgi?id=137255

        Reviewed by Brian Burg.

        * UserInterface/Views/BreakpointActionView.js:
        (WebInspector.BreakpointActionView.prototype._appendActionButtonClicked):
        Use the view's action type instead of the default.

2015-07-08  Devin Rousso  <drousso@apple.com>

        Web Inspector: Copy Rule in the context menu copies hidden properties in the rule
        https://bugs.webkit.org/show_bug.cgi?id=146775

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDeclarationSection.js:
        (WebInspector.CSSStyleDeclarationSection.prototype._generateCSSRuleString):
        Now only uses properties from the rule's visibleProperties list.

2015-07-08  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Add page weight and time back to the toolbar dashboard
        https://bugs.webkit.org/show_bug.cgi?id=146755

        Revert r183328 which removed the page weight and load time from the dashboard. We have space
        in the dashboard, we can put these back since we didn't find a better home for them.

        Reviewed by Joseph Pecoraro.

        * Localizations/en.lproj/localizedStrings.js: Updated.
        * UserInterface/Base/Main.js:
        (WebInspector.showNetworkTab):
        * UserInterface/Images/Time.svg: Added.
        * UserInterface/Images/Weight.svg: Added.
        * UserInterface/Images/gtk/Time.svg: Added.
        * UserInterface/Images/gtk/Weight.svg: Added.
        * UserInterface/Models/DefaultDashboard.js:
        (WebInspector.DefaultDashboard):
        (WebInspector.DefaultDashboard.prototype.get resourcesSize):
        (WebInspector.DefaultDashboard.prototype.set resourcesSize):
        (WebInspector.DefaultDashboard.prototype.get time):
        (WebInspector.DefaultDashboard.prototype.set time):
        (WebInspector.DefaultDashboard.prototype._mainResourceDidChange):
        (WebInspector.DefaultDashboard.prototype._capturingStopped):
        (WebInspector.DefaultDashboard.prototype._startUpdatingTime):
        (WebInspector.DefaultDashboard.prototype._stopUpdatingTime):
        (WebInspector.DefaultDashboard.prototype._updateTime):
        * UserInterface/Views/DashboardContainerView.css:
        (body.web .toolbar .dashboard-container):
        (body.javascript .toolbar .dashboard-container):
        (.toolbar.collapsed .dashboard-container):
        (.toolbar .dashboard-container): Deleted.
        * UserInterface/Views/DefaultDashboardView.css:
        (body.web .toolbar.collapsed .dashboard.default > :matches(.resourcesSize, .time, .logs)):
        (body.javascript .toolbar .dashboard.default > :matches(.resourcesCount, .resourcesSize, .time)):
        (.toolbar .dashboard.default > .resourcesSize):
        (.toolbar .dashboard.default > .time > img):
        (.toolbar .dashboard.default > .resourcesSize > img):
        (body.web .toolbar.collapsed .dashboard.default > .item.resourcesCount): Deleted.
        (body.javascript .toolbar .dashboard.default > .item.resourcesCount): Deleted.
        * UserInterface/Views/DefaultDashboardView.js:
        (WebInspector.DefaultDashboardView):
        (WebInspector.DefaultDashboardView.prototype._updateDisplay):
        (WebInspector.DefaultDashboardView.prototype._networkItemWasClicked):
        (WebInspector.DefaultDashboardView.prototype._timelineItemWasClicked):

2015-07-08  Devin Rousso  <drousso@apple.com>

        Web Inspector: Style sidebar is showing incorrect strikethroughs
        https://bugs.webkit.org/show_bug.cgi?id=146768

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/DOMNodeStyles.js:
        (WebInspector.DOMNodeStyles.prototype._markOverriddenProperties):
        No longer sets the effective property as overridden if the overriding property is anonymous (not visible).

2015-07-08  Devin Rousso  <drousso@apple.com>

        Web Inspector: Color swatches show up in color names in comments
        https://bugs.webkit.org/show_bug.cgi?id=146757

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CodeMirrorAdditions.js: Color markers now only appear if the color is in a keyword.

2015-07-08  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Only record a timeline when the Timelines tab is showing
        https://bugs.webkit.org/show_bug.cgi?id=146759

        Reviewed by Joseph Pecoraro.

        * UserInterface/Controllers/TimelineManager.js:
        (WebInspector.TimelineManager.prototype.get autoCaptureOnPageLoad):
        (WebInspector.TimelineManager.prototype.set autoCaptureOnPageLoad):
        (WebInspector.TimelineManager.prototype._startAutoCapturing):
        * UserInterface/Views/TimelineTabContentView.js:
        (WebInspector.TimelineTabContentView.prototype.shown):
        (WebInspector.TimelineTabContentView.prototype.hidden):

2015-07-08  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Details sidebar doesn't activate on first selected resource in Network tab
        https://bugs.webkit.org/show_bug.cgi?id=146691

        Make sure the SelectionPathComponentsDidChange event is dispatched when the tree elements are selected.
        Selecting in the DataGrid selects the TreeElements, but onselect is not fired to avoid an inifinte loop.

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/NetworkGridContentView.js:
        (WebInspector.NetworkGridContentView): Hook up _treeElementSelected.
        (WebInspector.NetworkGridContentView.prototype._treeElementSelected): Added. Moved from
        NetworkSidebarPanel and added dispatch of SelectionPathComponentsDidChange event.

        * UserInterface/Views/NetworkSidebarPanel.js:
        (WebInspector.NetworkSidebarPanel): Removed _treeElementSelected.
        (WebInspector.NetworkSidebarPanel.prototype.canShowDifferentContentView): Renamed from _canShowDifferentContentView.
        (WebInspector.NetworkSidebarPanel.prototype._canShowDifferentContentView): Deleted.
        (WebInspector.NetworkSidebarPanel.prototype._treeElementSelected): Moved to NetworkGridContentView.

        * UserInterface/Views/TimelineView.js:
        (WebInspector.TimelineView.prototype.treeElementSelected): Dispatch SelectionPathComponentsDidChange event.

2015-07-08  Devin Rousso  <drousso@apple.com>

        Web Inspector: Confusingly crossed out properties in .sidebar > .panel.navigation.timeline > .title-bar
        https://bugs.webkit.org/show_bug.cgi?id=146727

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent.update):
        The properties map used for refreshing each property now holds a list of properties for each line to ensure that
        if a duplicate property exists, it also gets refreshed.

2015-07-08  Devin Rousso  <drousso@apple.com>

        Web Inspector: Can't select last row in the timeline because it's covered by filter selector
        https://bugs.webkit.org/show_bug.cgi?id=146603

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ScopeBar.js: Now adds a class to the scope bar if the default item is selected.
        * UserInterface/Views/LayoutTimelineView.js:
        * UserInterface/Views/NetworkTimelineView.js:
        * UserInterface/Views/TimelineDataGrid.css:
        (.data-grid.timeline > .navigation-bar-container): Deleted.
        (.data-grid.timeline.has-non-default-filter > .navigation-bar-container): Deleted.
        (.data-grid.timeline:hover > .navigation-bar-container): Deleted.
        (.data-grid.timeline > .navigation-bar-container > .navigation-bar): Deleted.
        (body.window-inactive .data-grid.timeline > .navigation-bar-container > .navigation-bar): Deleted.
        * UserInterface/Views/TimelineDataGrid.js:
        (WebInspector.TimelineDataGrid):
        (WebInspector.TimelineDataGrid.createColumnScopeBar):
        (WebInspector.TimelineDataGrid.prototype.updateLayout): Deleted.
        * UserInterface/Views/TimelineRecordingContentView.js:
        (WebInspector.TimelineRecordingContentView.prototype._currentContentViewDidChange):
        * UserInterface/Views/TimelineSidebarPanel.css:
        (.sidebar > .panel.navigation.timeline > .title-bar.timeline-events):
        (.sidebar > .panel.navigation.timeline > .title-bar.timeline-events > .title-bar-scope-bar):
        (.sidebar > .panel.navigation.timeline > .title-bar.timeline-events > .title-bar-scope-bar > .default-item-selected > .multiple):
        (.sidebar > .panel.navigation.timeline > .title-bar.timeline-events > .title-bar-scope-bar > .default-item-selected > .multiple path):
        * UserInterface/Views/TimelineSidebarPanel.js:
        (WebInspector.TimelineSidebarPanel.set contentTreeOutlineScopeBar):
        Clears the title bar scope element and adds the given element as a child node.
        * UserInterface/Views/TimelineView.js:
        (WebInspector.TimelineView.prototype.get navigationSidebarTreeOutlineScopeBar):
        Returns the scope bar element of the current object if it exists.

2015-07-08  Devin Rousso  <drousso@apple.com>

        Web Inspector: Clicking style checkbox selects the property name while mouse down
        https://bugs.webkit.org/show_bug.cgi?id=146728

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleMouseDown):
        Now returns if the click was not at the end of the line.

2015-07-08  Timothy Hatcher  <timothy@apple.com>

        REGRESSION (r185629): Web Inspector: Filtering doesn't display any items if folders are used to organize the web page resources
        https://bugs.webkit.org/show_bug.cgi?id=146675

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/TreeOutline.js:
        (WebInspector.TreeElement.prototype.revealed): Added ignoreHidden parameter.
        (WebInspector.TreeElement.prototype.traverseNextTreeElement.shouldSkip): Pass true to ignore hidden elements.
        (WebInspector.TreeElement.prototype.traverseNextTreeElement): Populate up front like the old traverseNextTreeElement.
        This is needed to traverse into lazy populated tree elements. Don't call shouldSkip in the loop.
        (WebInspector.TreeElement.prototype.traversePreviousTreeElement.shouldSkip): Pass true to ignore hidden elements.
        (WebInspector.TreeElement.prototype.traversePreviousTreeElement): Add some newlines.

2015-07-08  Devin Rousso  <drousso@apple.com>

        Web Inspector: Pressing delete in the styles sidebar with no text causes text to become misaligned
        https://bugs.webkit.org/show_bug.cgi?id=146715

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleBeforeChange):
        Now returns if the change was in the first character of the first line.

2015-07-07  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Use "hairline" borders on retina screen
        https://bugs.webkit.org/show_bug.cgi?id=146619

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDeclarationSection.css:
        (.style-declaration-section):
        (.style-declaration-section.locked):
        (.style-declaration-section:not(.locked)):
        (.style-declaration-section.last-in-group):
        (.style-declaration-section + .style-declaration-section):
        (.style-declaration-section.last-in-group + .style-declaration-section):
        (@media (-webkit-min-device-pixel-ratio: 2)):
        * UserInterface/Views/DetailsSection.css:
        (.details-section .details-section):
        (.details-section > .content > .group:nth-child(even)):
        (@media (-webkit-min-device-pixel-ratio: 2)):
        * UserInterface/Views/DividerNavigationItem.css:
        (@media (-webkit-min-device-pixel-ratio: 2)):
        * UserInterface/Views/RulesStyleDetailsPanel.css:
        (.sidebar > .panel.details.css-style .rules .label + .style-declaration-section):
        (.sidebar > .panel.details.css-style > .content.filter-in-progress .label.filter-matching-label):
        (.sidebar > .panel.details.css-style > .content:not(.filter-in-progress) > .rules > .new-rule + .style-declaration-section):
        (.sidebar > .panel.details.css-style > .content:not(.filter-in-progress) > .rules > .new-rule + .label):
        (@media (-webkit-min-device-pixel-ratio: 2)):

2015-07-07  Devin Rousso  <drousso@apple.com>

        Web Inspector: Pressing tab on a comment in the styles sidebar doesn't highlight the comment
        https://bugs.webkit.org/show_bug.cgi?id=146709

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor.prototype.selectFirstProperty):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype.selectLastProperty):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._textAtCursorIsComment):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._highlightNextNameOrValue):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleMouseUp):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleEnterKey):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._insertNewlineAfterCurrentLine):
        Determines if the text at the given cursor position in the given line is a comment.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleShiftTabKey):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleTabKey):

2015-07-07  Devin Rousso  <drousso@apple.com>

        Web Inspector: spacebar should pause/resume timeline recording when timelines are open
        https://bugs.webkit.org/show_bug.cgi?id=143267

        Reviewed by Timothy Hatcher.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Views/TimelineTabContentView.js:
        (WebInspector.TimelineSidebarPanel): Added two new keyboard shortcuts: space and shift-space.
        (WebInspector.TimelineSidebarPanel.prototype.shown): Enables the keyboard shortcuts.
        (WebInspector.TimelineSidebarPanel.prototype.hidden): Disables the keyboard shortcuts.
        (WebInspector.TimelineSidebarPanel.prototype._toggleRecordingOnSpacebar):
        (WebInspector.TimelineSidebarPanel.prototype._toggleNewRecordingOnSpacebar):
        (WebInspector.TimelineSidebarPanel.prototype._toggleRecording): Starts/stops recording.

2015-07-07  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Improve names for unprefixed animation events
        https://bugs.webkit.org/show_bug.cgi?id=146708

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/ScriptTimelineRecord.js:

2015-07-07  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Timeline record bars are not white when the row is selected from the sidebar
        https://bugs.webkit.org/show_bug.cgi?id=146694

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/TimelineRecordBar.css:
        (:matches(:focus, .force-focus) .selected .timeline-record-bar > .segment):
        (:matches(:focus, .force-focus) .selected .timeline-record-bar > .segment.inactive):
        (:matches(:focus, .force-focus) .selected .timeline-record-bar.has-inactive-segment > .segment:not(.inactive)):

2015-07-07  Devin Rousso  <drousso@apple.com>

        Web Inspector: Unnecessary space added after -webkit- prefixed property values
        https://bugs.webkit.org/show_bug.cgi?id=146671

        Reviewed by Joseph Pecoraro.

        * Tools/PrettyPrinting/css-rule-tests/do-not-add-whitespace-before-prefixed-property-value-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/do-not-add-whitespace-before-prefixed-property-value.css: Added.
        * Tools/PrettyPrinting/index.html:
        * UserInterface/Views/CodeMirrorFormatters.js: Now only adds a space if both the current and previous
        tokens are a property, value, or atom.

2015-07-07  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Pad ruler selection area by 1px in the Rendering Frames timeline overview
        https://bugs.webkit.org/show_bug.cgi?id=146248

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/RenderingFrameTimelineOverview.js:
        Enable duration pixel alignment.

        * UserInterface/Views/TimelineOverview.css:
        (.timeline-overview.frames > .timeline-ruler > .header > .divider):
        (.timeline-overview.frames > .timeline-ruler > .selection-handle.right):
        (.timeline-overview.frames > .timeline-ruler > .shaded-area.right):
        Shift ruler elements 1 pixel to the right, so that selection boundaries and dividers are
        positioned inside the gap between frame elements.

        * UserInterface/Views/TimelineOverview.js:
        (WebInspector.TimelineOverview):
        (WebInspector.TimelineOverview.prototype.set secondsPerPixel):
        (WebInspector.TimelineOverview.prototype.get pixelAlignDuration):
        (WebInspector.TimelineOverview.prototype.set pixelAlignDuration):
        (WebInspector.TimelineOverview.prototype._handleWheelEvent):
        Added a property to force the overview graph to align duration units on the y-axis to pixel boundaries.
        When enabled, frame elements are displayed in integer widths while zooming, preventing subpixel blurring
        and maintaining a consistent 1 pixel gap between frames.

2015-07-07  Devin Rousso  <drousso@apple.com>

        Web Inspector: Tabbing in the styles sidebar doesn't highlight the next section of text
        https://bugs.webkit.org/show_bug.cgi?id=146676

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._highlightNextNameOrValue): Modified the logic to only search the
        remaining text after the current cursor position.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleShiftTabKey): Now only searches for matches before the colon.

2015-07-07  Devin Rousso  <drousso@apple.com>

        Web Inspector: Option+Click not jumping to resource
        https://bugs.webkit.org/show_bug.cgi?id=146498

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/Main.js: Always show the tab which contains the represented object.
        (WebInspector._domNodeWasInspected):
        (WebInspector._frameWasAdded):
        (WebInspector.showConsoleTab):
        (WebInspector.showRepresentedObject): Removed forceShowTab parameter.
        (WebInspector.showMainFrameDOMTree):
        (WebInspector.showContentFlowDOMTree):
        (WebInspector.showSourceCodeForFrame):
        (WebInspector.showSourceCode):
        (WebInspector.showSourceCodeLocation):
        (WebInspector.showOriginalUnformattedSourceCodeLocation):
        (WebInspector.showOriginalOrFormattedSourceCodeLocation):
        (WebInspector.showOriginalOrFormattedSourceCodeTextRange):
        (WebInspector.showResourceRequest):
        * UserInterface/Controllers/CodeMirrorTokenTrackingController.js:
        (WebInspector.CodeMirrorTokenTrackingController.prototype._mouseButtonWasReleasedOverEditor):
        * UserInterface/Protocol/InspectorFrontendAPI.js:
        (InspectorFrontendAPI.showMainResourceForFrame):
        * UserInterface/Views/ComputedStyleDetailsPanel.js:
        (WebInspector.ComputedStyleDetailsPanel.prototype._goToContentFlowArrowWasClicked):
        (WebInspector.ComputedStyleDetailsPanel):
        * UserInterface/Views/ObjectTreeBaseTreeElement.js:
        (WebInspector.ObjectTreeBaseTreeElement.prototype._appendMenusItemsForObject):
        (WebInspector.ObjectTreeBaseTreeElement):

2015-07-07  Devin Rousso  <drousso@apple.com>

        Web Inspector: Regression: CSS autocompletion suggestion applies on pressing delete
        https://bugs.webkit.org/show_bug.cgi?id=146672

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleBeforeChange): Now returns if completions are showing.

2015-07-07  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Properly align checkboxes in the styles sidebar
        https://bugs.webkit.org/show_bug.cgi?id=146673

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDeclarationTextEditor.css:
        (.css-style-text-editor > .CodeMirror .CodeMirror-lines input[type=checkbox]):

2015-07-06  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Rendering Frame bars appear misaligned and contain gaps when displaying small task segments
        https://bugs.webkit.org/show_bug.cgi?id=146475

        Reviewed by Timothy Hatcher.

        Displaying all task segments within a frame in the Rendering Frames graph is impossible, as very short tasks
        would result in a bar with a height of less than 1 pixel. Consecutive small tasks, each less than a visible
        pixel, appear as gaps in the frame bar. This patch addresses these shortcomings by introducing a minimum
        displayable frame height (3 pixels), and setting the height of every frame to a multiple of the minimum height.

        * UserInterface/Base/Utilities.js:
        (.value):
        Added Math.roundTo to simplify rounding to arbitrary intervals.

        * UserInterface/Views/TimelineRecordFrame.css:
        (.timeline-record-frame):
        (.timeline-record-frame > .frame > .duration):
        Enforce 3px min height for frames & segments. TimelineRenderingFrame's segment height calculator
        creates segments that are always at least 3px, this is just a precaution.

        * UserInterface/Views/TimelineRecordFrame.js:
        (WebInspector.TimelineRecordFrame.prototype._calculateFrameDisplayData.updateDurationRemainder):
        (WebInspector.TimelineRecordFrame.prototype._calculateFrameDisplayData.pushCurrentSegment):
        (WebInspector.TimelineRecordFrame.prototype._calculateFrameDisplayData.invisibleSegments.forEach):
        (WebInspector.TimelineRecordFrame.prototype._updateChildElements.createDurationElement): Deleted.
        Added algorithm for calculating frame segment heights, rather than simply dividing each task's
        duration by the frame duration. Results are cached so the segment heights aren't needlessly
        recalculated on every scroll/zoom.

2015-07-06  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Force show Console tab when supportsSplitContentBrowser is false
        https://bugs.webkit.org/show_bug.cgi?id=146661

        Reviewed by Joseph Pecoraro.

        * UserInterface/Base/Main.js:
        (WebInspector.showConsoleTab):

2015-07-06  Devin Rousso  <drousso@apple.com>

        Web Inspector: Clearing the console does not remove the unread message icon
        https://bugs.webkit.org/show_bug.cgi?id=146649

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype._clearLog): Removes the "unread" class from all scope bar items.

2015-07-02  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Add a dedicated Network tab that is always live
        https://bugs.webkit.org/show_bug.cgi?id=146568

        Reviewed by Joseph Pecoraro.

        * Localizations/en.lproj/localizedStrings.js: Updated.

        * UserInterface/Base/Main.js:
        (WebInspector.loaded):
        (WebInspector.isTabTypeAllowed):
        (WebInspector._tabContentViewForType):
        (WebInspector._updateNewTabButtonState):
        Add NetworkTabContentView to the right places.

        * UserInterface/Controllers/TimelineManager.js:
        (WebInspector.TimelineManager):
        (WebInspector.TimelineManager.prototype.get persistentNetworkTimeline):
        (WebInspector.TimelineManager.prototype._mainResourceDidChange):
        (WebInspector.TimelineManager.prototype._resourceWasAdded):
        Add a persistent network timeline that always has all resources.

        * UserInterface/Images/Network.svg: Added.

        * UserInterface/Main.html: Added new files.

        * UserInterface/Views/NavigationSidebarPanel.css:
        (.sidebar > .panel.navigation > .content):
        Drive-by fix. The bottom was off by one. This caused misalignment between sidebar and content view when
        scrolled all the way to the bottom of the content view.

        * UserInterface/Views/NetworkGridContentView.css: Added.
        (.content-view.network-grid > .data-grid):
        (.content-view.network-grid > .data-grid th):
        (.content-view.network-grid > .data-grid td):
        (.content-view.network-grid > .data-grid table.data):
        Mostly copied from TimelineView.css and NetworkTimelineView.css.

        * UserInterface/Views/NetworkGridContentView.js: Added.
        (WebInspector.NetworkGridContentView):
        (WebInspector.NetworkGridContentView.prototype.get navigationSidebarTreeOutline):
        (WebInspector.NetworkGridContentView.prototype.get selectionPathComponents):
        (WebInspector.NetworkGridContentView.prototype.get zeroTime):
        (WebInspector.NetworkGridContentView.prototype.shown):
        (WebInspector.NetworkGridContentView.prototype.hidden):
        (WebInspector.NetworkGridContentView.prototype.closed):
        (WebInspector.NetworkGridContentView.prototype.updateLayout):
        (WebInspector.NetworkGridContentView.prototype.needsLayout):
        (WebInspector.NetworkGridContentView.prototype.reset):
        (WebInspector.NetworkGridContentView.prototype._processPendingRecords):
        (WebInspector.NetworkGridContentView.prototype._networkTimelineReset):
        (WebInspector.NetworkGridContentView.prototype._networkTimelineRecordAdded):
        (WebInspector.NetworkGridContentView.prototype._treeElementPathComponentSelected):
        (WebInspector.NetworkGridContentView.prototype._dataGridNodeSelected):
        Mostly copied from NetworkTimelineView.

        * UserInterface/Views/NetworkSidebarPanel.css: Added.
        (.sidebar > .panel.navigation.network > :matches(.content, .empty-content-placeholder)):
        (.sidebar > .panel.navigation.network > .navigation-bar):
        (.sidebar > .panel.navigation.network > .title-bar):
        (.sidebar > .panel.navigation.network.network-grid-content-view-showing > .content):
        (.sidebar > .panel.navigation.network .item:hover:not(.selected) .status .close.status-button):
        (.sidebar > .panel.navigation.network:not(.network-grid-content-view-showing) .status .go-to-arrow.status-button):
        (.sidebar > .panel.navigation.network.network-grid-content-view-showing .status .close.status-button):
        (.sidebar > .panel.navigation.network.network-grid-content-view-showing .navigation-sidebar-panel-content-tree-outline.network-grid .item .subtitle):
        (.sidebar > .panel.navigation.network > .content > .navigation-sidebar-panel-content-tree-outline):
        (.sidebar > .panel.navigation.network.network-grid-content-view-showing > .content > .navigation-sidebar-panel-content-tree-outline):
        Mostly copied from TimelineSidebarPanel.css and NetworkTimelineView.css.

        * UserInterface/Views/NetworkSidebarPanel.js: Added.
        (WebInspector.NetworkSidebarPanel):
        (WebInspector.NetworkSidebarPanel.prototype.closed):
        (WebInspector.NetworkSidebarPanel.prototype.showDefaultContentView):
        (WebInspector.NetworkSidebarPanel.prototype.saveStateToCookie):
        (WebInspector.NetworkSidebarPanel.prototype.restoreStateFromCookie):
        (WebInspector.NetworkSidebarPanel.prototype.hasCustomFilters):
        (WebInspector.NetworkSidebarPanel.prototype.matchTreeElementAgainstCustomFilters.match):
        (WebInspector.NetworkSidebarPanel.prototype.matchTreeElementAgainstCustomFilters):
        (WebInspector.NetworkSidebarPanel.prototype.treeElementAddedOrChanged):
        (WebInspector.NetworkSidebarPanel.prototype._networkTimelineReset):
        (WebInspector.NetworkSidebarPanel.prototype._contentBrowserCurrentContentViewDidChange):
        (WebInspector.NetworkSidebarPanel.prototype._treeElementGoToArrowWasClicked):
        (WebInspector.NetworkSidebarPanel.prototype._treeElementCloseButtonClicked):
        (WebInspector.NetworkSidebarPanel.prototype._canShowDifferentContentView):
        (WebInspector.NetworkSidebarPanel.prototype._treeElementSelected):
        (WebInspector.NetworkSidebarPanel.prototype._scopeBarSelectionDidChange):
        A hybrid of ResourceSidebarPanel and TimelineSidebarPanel.

        * UserInterface/Views/NetworkTabContentView.js: Added.
        (WebInspector.NetworkTabContentView):
        (WebInspector.NetworkTabContentView.prototype.get type):
        (WebInspector.NetworkTabContentView.prototype.canShowRepresentedObject):

        * UserInterface/Views/NewTabContentView.js:
        (WebInspector.NewTabContentView): Add Network tab and sort the tabs by their localized name.

        * UserInterface/Views/TabBar.js:
        (WebInspector.TabBar.prototype._handleNewTabClick):
        Drive-by fix. Don't fire the click event if the new tab button is disabled.

2015-07-06  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Mark console filters that have unseen messages by colored dots
        https://bugs.webkit.org/show_bug.cgi?id=146616

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/LogContentView.css:
        (.log-scope-bar > li.unread::before):
        (.log-scope-bar > li.unread:hover::before):
        (.log-scope-bar > li.unread.errors::before):
        (.log-scope-bar > li.unread.warnings::before):
        (.log-scope-bar > li.unread.logs::before):
        (@keyframes unread-background-pulse):

2015-07-06  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Exceptions in Network timeline when resource updates and filters are applied
        https://bugs.webkit.org/show_bug.cgi?id=146609

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/DataGrid.js:
        (WebInspector.DataGrid.prototype.insertChild):
        (WebInspector.DataGrid.prototype.removeChild):
        (WebInspector.DataGridNode.prototype.savePosition):
        Convert exceptions to asserts and early returns.

        * UserInterface/Views/TimelineDataGrid.js:
        (WebInspector.TimelineDataGrid.prototype._refreshDirtyDataGridNodes): Add some asserts and checks.

        * UserInterface/Views/TreeOutline.js:
        (WebInspector.TreeOutline.prototype.appendChild):
        (WebInspector.TreeOutline.prototype.insertChild):
        (WebInspector.TreeOutline.prototype.removeChildAtIndex):
        (WebInspector.TreeOutline.prototype.removeChild):
        Convert exceptions to asserts and early returns.

2015-07-05  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Cached resources are missing startTime and size in Network timeline
        https://bugs.webkit.org/show_bug.cgi?id=146607

        Reviewed by Joseph Pecoraro.

        * UserInterface/Controllers/FrameResourceManager.js:
        (WebInspector.FrameResourceManager.prototype.resourceRequestWasServedFromMemoryCache): Pass elapsedTime in the right argument order.
        Add missing calls to Resource.increaseSize and Resource.increaseTransferSize.
        (WebInspector.FrameResourceManager.prototype.resourceRequestDidReceiveResponse): Pass elapsedTime in the right argument order.

2015-07-05  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Dim more borders when the window is inactive
        https://bugs.webkit.org/show_bug.cgi?id=146608

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/DataGrid.css:
        (body.window-inactive .data-grid th):
        (body.window-inactive .data-grid :matches(th, td):not(:last-child)):
        * UserInterface/Views/NavigationSidebarPanel.css:
        (body.window-inactive .sidebar > .panel.navigation > .overflow-shadow):
        * UserInterface/Views/OverviewTimelineView.css:
        (body.window-inactive .timeline-view.overview > .timeline-ruler > .header):
        * UserInterface/Views/TimelineDataGrid.css:
        (body.window-inactive .data-grid.timeline th):
        (body.window-inactive .data-grid.timeline > .navigation-bar-container > .navigation-bar):
        * UserInterface/Views/TimelineRuler.css:
        (body.window-inactive .timeline-ruler > .header):
        (body.window-inactive .timeline-ruler > .header > .divider):
        * UserInterface/Views/TimelineSidebarPanel.css:
        (body.window-inactive .sidebar > .panel.navigation.timeline > .status-bar):
        (body.window-inactive .sidebar > .panel.navigation.timeline > .title-bar):
        (body.window-inactive .sidebar > .panel.navigation.timeline > .title-bar.timeline-events):

2015-07-05  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Timeline row selection should have same background color in sidebar and data grid
        https://bugs.webkit.org/show_bug.cgi?id=146606

        Support a force-focus class name that TreeOutlineDataGridSynchronizer applies when one of the
        elements is focused, so the other can look focused too.

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/DataGrid.css:
        (.data-grid:matches(:focus, .force-focus) tr.selected td:not(:last-child)):
        (.data-grid:matches(:focus, .force-focus) tr.parent.selected td.disclosure::before):
        (.data-grid:matches(:focus, .force-focus) tr.parent.expanded.selected td.disclosure::before):
        (.data-grid:matches(:focus, .force-focus) tr.selected):
        (.data-grid:matches(:focus, .force-focus) tr.selected td .subtitle):

        * UserInterface/Views/Main.css:
        (:matches(:focus, .force-focus) .selected .go-to-arrow):
        (:matches(:focus, .force-focus) .selected .go-to-arrow:active):

        * UserInterface/Views/NavigationSidebarPanel.css:
        (.navigation-sidebar-panel-content-tree-outline:matches(:focus, .force-focus) .item.selected .disclosure-button):
        (.navigation-sidebar-panel-content-tree-outline:matches(:focus, .force-focus) .item.selected.expanded .disclosure-button):
        (.navigation-sidebar-panel-content-tree-outline:matches(:focus, .force-focus) .item.selected):
        (.navigation-sidebar-panel-content-tree-outline:matches(:focus, .force-focus) .item.selected .subtitle):

        * UserInterface/Views/TreeElementStatusButton.css:
        (:matches(:focus, .force-focus) .item.selected > .status > .status-button > svg .filled):
        (:matches(:focus, .force-focus) .item.selected > .status > .status-button > svg .stroked):

        * UserInterface/Views/TreeOutlineDataGridSynchronizer.js:
        (WebInspector.TreeOutlineDataGridSynchronizer):
        (WebInspector.TreeOutlineDataGridSynchronizer.prototype._dataGridGainedFocus): Added.
        (WebInspector.TreeOutlineDataGridSynchronizer.prototype._dataGridLostFocus): Added.
        (WebInspector.TreeOutlineDataGridSynchronizer.prototype._treeOutlineGainedFocus): Added.
        (WebInspector.TreeOutlineDataGridSynchronizer.prototype._treeOutlineLostFocus): Added.

2015-07-05  Devin Rousso  <drousso@apple.com>

        Web Inspector: Deleting in the CSS sidebar causes the warning icon to appear mid-word
        https://bugs.webkit.org/show_bug.cgi?id=146617

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleBeforeChange): Now removes all marks whenever the user deletes.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded): The invalid marker now calculates
        it's position based off of where the semicolon is in the property text.

2015-07-05  Devin Rousso  <drousso@apple.com>

        Web Inspector: CSS rule with 2 pseudo-selectors appears twice
        https://bugs.webkit.org/show_bug.cgi?id=146576

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/RulesStyleDetailsPanel.js:
        (WebInspector.RulesStyleDetailsPanel.prototype.refresh):
        Only adds pseudo-elements if the previous pseudo-element has a different selector.

2015-07-04  Devin Rousso  <drousso@apple.com>

        Web Inspector: Wrong cursor position in styles panel when deleting a line break
        https://bugs.webkit.org/show_bug.cgi?id=146577

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleBeforeChange): If the change is a deletion at the beginning of a line,
        remove all markers on that line to ensure that there is no blank space on the previous line after deleting.

2015-07-04  Devin Rousso  <drousso@apple.com>

        Web Inspector: Pressing tab on a newline in the console should insert a tab character
        https://bugs.webkit.org/show_bug.cgi?id=146612

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ConsolePrompt.js:
        (WebInspector.ConsolePrompt.prototype._handleTabKey): Tabs can now be inserted at the beginning of newlines and before the first
        non-space character on any other line.

2015-07-04  Devin Rousso  <drousso@apple.com>

        Web Inspector: Pressing enter on a newline in the styles sidebar inserts a semicolon
        https://bugs.webkit.org/show_bug.cgi?id=146611

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleEnterKey): Now returns if the line is empty.

2015-07-04  Devin Rousso  <drousso@apple.com>

        Web Inspector: Console should indicate if you have unseen messages in console due to filters
        https://bugs.webkit.org/show_bug.cgi?id=143166

        Reviewed by Timothy Hatcher.

        * UserInterface/Controllers/JavaScriptLogViewController.js:
        (WebInspector.JavaScriptLogViewController.prototype.updatePreviousMessageRepeatCount): Now returns true/false depending on if
        the message count was actually updated.
        * UserInterface/Views/LogContentView.css:
        (.log-scope-bar > li.unread): Applies the unread-border-pulse keyframe animation.
        (.log-scope-bar > li.unread.errors): The pulsing border is colored red.
        (.log-scope-bar > li.unread.warnings): The pulsing border is colored yellow(ish).
        (.log-scope-bar > li.unread.logs): The pulsing border is colored grey.
        (@keyframes unread-border-pulse): Changes the color of the border from transparent to whatever is specificed.
        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView):
        (WebInspector.LogContentView.prototype._determineMessageLevel):
        (WebInspector.LogContentView.prototype._pulseScopeBarItemBorder): Adds the class "unread" to the scope bar item whose panel
        the newest message belongs to, but only if that panel or the All panel is not visible.
        (WebInspector.LogContentView.prototype._messageAdded):
        (WebInspector.LogContentView.prototype._previousMessageRepeatCountUpdated):
        (WebInspector.LogContentView.prototype._scopeBarSelectionDidChange): Clears the "unread" class on the selected scope bar item.
        (WebInspector.LogContentView.prototype._filterMessageElements):
        * UserInterface/Views/ScopeBar.js:
        (WebInspector.ScopeBar.prototype.get items): Returns a list of all the items in the scope bar.
        * UserInterface/Views/ScopeBarItem.js:
        (WebInspector.ScopeBarItem): Added another parameter to allow for a custom class name.

2015-07-04  Devin Rousso  <drousso@apple.com>

        Web Inspector: Pseudo Styles Ordering and Media Queries
        https://bugs.webkit.org/show_bug.cgi?id=145979

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/RulesStyleDetailsPanel.css:
        (.sidebar > .panel.details.css-style > .content.filter-in-progress .label:not(.filter-section-non-matching) + .label.filter-matching-label:not(.filter-section-non-matching)):
        Fix filter label styling with pseudo selectors.
        * UserInterface/Views/RulesStyleDetailsPanel.js:
        (WebInspector.RulesStyleDetailsPanel.prototype.refresh): Pseudo-selector rules will now order directly after the last style that
        matches the pseudo-selector without the pseudo-element.  If no rules match, place the pseudo-selector rules above the first
        inherited or UserAgent rule (whichever comes first).

2015-07-04  Devin Rousso  <drousso@apple.com>

        REGRESSION(r184000): Web Inspector: Multiline CSS in Styles Sidebar is marked as invalid
        https://bugs.webkit.org/show_bug.cgi?id=146178

        Reviewed by Timothy Hatcher.

        First changes made by Tobias Reiss  <tobi+webkit@basecode.de>

        * Tools/PrettyPrinting/css-rule-tests/add-whitespace-between-values-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/add-whitespace-between-values.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/add-whitespace-between-rules-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/add-whitespace-between-rules.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/remove-newline-between-values-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/remove-newline-between-values.css: Added.
        * Tools/PrettyPrinting/index.html:
        Add regression tests.
        * UserInterface/Views/CodeMirrorFormatters.js:
        Remove newlines before values that belong in one line and add whitespace between values. 

2015-07-04  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: The arrow that appears for Web Inspector Layout & Rendering records overlaps the category switcher
        https://bugs.webkit.org/show_bug.cgi?id=146605

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/TimelineDataGrid.css:
        (.data-grid.timeline > .navigation-bar-container):

2015-07-03  Dan Bernstein  <mitz@apple.com>

        [Xcode] Update some build settings as recommended by Xcode 7
        https://bugs.webkit.org/show_bug.cgi?id=146597

        Reviewed by Sam Weinig.

        * Configurations/Base.xcconfig: Enabled CLANG_WARN_UNREACHABLE_CODE and
        GCC_NO_COMMON_BLOCKS.
        * WebInspectorUI.xcodeproj/project.pbxproj: Updated LastUpgradeCheck.

2015-07-02  Devin Rousso  <drousso@apple.com>

        Web Inspector: Show suggest popover on Tab press even if it wasn't showing before
        https://bugs.webkit.org/show_bug.cgi?id=146496

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleTabKey): Pressing tab will try to autocomplete before trying
        to add an ending colon/semicolon or highlight the next section of text.

2015-07-01  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Aggregate profile call information on the backend to drastically reduce profile sizes
        https://bugs.webkit.org/show_bug.cgi?id=146536

        Reviewed by Timothy Hatcher.

        Since we still support legacy backends, the frontend documents where
        it is handling legacy backends with compatibility comments.

        * UserInterface/Models/ProfileNode.js:
        (WebInspector.ProfileNode):
        (WebInspector.ProfileNode.prototype.get callInfo):
        Handle a ProfileNode created with callInfo or calls. They are mutually exclusive.

        * UserInterface/Models/ScriptTimelineRecord.js:
        (WebInspector.ScriptTimelineRecord.prototype._initializeProfileFromPayload.profileNodeFromPayload):
        If the profile has per-call information, construct ProfileNodeCall objects, otherwise
        just construct the ProfileNode with the aggregate callInfo value.

        * UserInterface/Views/ScriptTimelineDataGridNode.js:
        (WebInspector.ScriptTimelineDataGridNode.prototype.get data):
        When we have aggregate call information we cannot easily partition a script,
        so we instead treat the entire script as one large atomic unit in the timeline.
        If the timeline range has any portion of the script, show the entire script.
        Users used to be able to select a portion of a script and view the relevant
        functions called in just that sliver, but this doesn't appear to be a well
        known feature or commonly used. In fact, given the small ranges of time it
        could be confusing for users.

        * UserInterface/Views/TimelineRecordingContentView.js:
        (WebInspector.TimelineRecordingContentView.prototype.matchTreeElementAgainstCustomFilters):
        Treat as a discrete unit.

2015-07-01  Devin Rousso  <drousso@apple.com>

        Web Inspector: When autocompleting, pressing tab twice shouldn't insert a tab character
        https://bugs.webkit.org/show_bug.cgi?id=145885

        Reviewed by Timothy Hatcher.

        * UserInterface/Controllers/CodeMirrorCompletionController.js:
        (WebInspector.CodeMirrorCompletionController):
        (WebInspector.CodeMirrorCompletionController.prototype.updateCompletions): Resolves the promise as having completions.
        (WebInspector.CodeMirrorCompletionController.prototype.hideCompletions): Resolves the promise as not having completions.
        (WebInspector.CodeMirrorCompletionController.prototype.completeAtCurrentPositionIfNeeded): Returns a WrappedPromise that allows
        callers of this function to determine if the autocomplete had any values or was instead not shown.
        (WebInspector.CodeMirrorCompletionController.prototype._resolveUpdatePromise):
        * UserInterface/Main.html: Added WrappedPromise class.
        * UserInterface/Models/WrappedPromise.js: Added WrappedPromise object to expose resolve and reject functions.
        * UserInterface/Views/ConsolePrompt.js:
        (WebInspector.ConsolePrompt.prototype._handleTabKey): Attempts to find completions for current text.  If there are none, beep.

2015-07-01  Devin Rousso  <drousso@apple.com>

        Make the first click on a rule section create a newline for easy property addition
        https://bugs.webkit.org/show_bug.cgi?id=146490

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._highlightNextNameOrValue):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleEnterKey): Inserts a semicolon if the line is missing one.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleMouseDown): If the user clicks on a property with the editor being
        unfocused, the name/value containing the cursor will be highlighted.  If instead the user clicks at the end of a line, the
        cursor's position is saved for mouseUp.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleMouseUp): If the mouseDown cursor position was saved and is equal
        to the current cursor's position (the user did not drag), add a newline after the current line and place the cursor on that line.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleTabKey):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleTabKey.highlightNextNameOrValue): Deleted.

2015-06-30  Devin Rousso  <drousso@apple.com>

        Web Inspector: add " = $0" hint after selected element in main DOMTreeOutline
        https://bugs.webkit.org/show_bug.cgi?id=145739

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/DOMTreeOutline.css: Adds a semi-opaque " = $0" to the selected element in the DOM tree.
        (.dom-tree-outline li.selected > span::after):
        (.dom-tree-outline:focus li.selected > span::after):

2015-06-30  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: ProfileNode cleanup
        https://bugs.webkit.org/show_bug.cgi?id=146472

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/ProfileNode.js:
        (WebInspector.ProfileNode):
        Use Array.prototype.every instead of reduce.
        Correct the name of a function to be what callers expect!

2015-06-30  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: iOS 8: Profile Nodes not showing in JavaScript Timeline
        https://bugs.webkit.org/show_bug.cgi?id=146471

        Reviewed by Brian Burg.

        * UserInterface/Models/ScriptTimelineRecord.js:
        (WebInspector.ScriptTimelineRecord.prototype._initializeProfileFromPayload.profileNodeCallFromPayload):
        For legacy backends, convert the startTime to the proper timestamp type.

2015-06-30  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Reduce rendering frames "Other" time by instrumenting compositing
        https://bugs.webkit.org/show_bug.cgi?id=146168

        Reviewed by Brian Burg.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Controllers/TimelineManager.js:
        (WebInspector.TimelineManager.prototype._processRecord):
        Added handling for new Composite record type. Paint records with a parent Composite record
        are flagged to simplify processing after the event hierarchy is unpacked.

        * UserInterface/Images/TimelineRecordComposite.svg: Added.
        New composite record icon.

        * UserInterface/Models/LayoutTimelineRecord.js:
        (WebInspector.LayoutTimelineRecord):
        (WebInspector.LayoutTimelineRecord.displayNameForEventType):
        (WebInspector.LayoutTimelineRecord.prototype.get duringComposite): Added
        Composite record support.

        * UserInterface/Models/RenderingFrameTimelineRecord.js:
        (WebInspector.RenderingFrameTimelineRecord.prototype.durationForTask.get validRecordForTaskType):
        Add compositing time when bucketing runloop tasks, ignoring Paint events that are
        contained within a Composite event.

        * UserInterface/Views/LayoutTimelineOverviewGraph.js:
        (WebInspector.LayoutTimelineOverviewGraph.prototype._layoutTimelineRecordAdded):
        Add Composite records to paint timeline row.

        * UserInterface/Views/RenderingFrameTimelineView.js:
        (WebInspector.RenderingFrameTimelineView.prototype._processPendingRecords):
        Small unrelated fix.

        * UserInterface/Views/TimelineIcons.css:
        (.composite-record .icon):
        * UserInterface/Views/TimelineRecordBar.css:
        (.timeline-record-bar.timeline-record-type-layout.layout-timeline-record-composite > .segment):
        * UserInterface/Views/TimelineRecordTreeElement.js:
        (WebInspector.TimelineRecordTreeElement):
        New styles and tree element icon.

2015-06-30  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: iOS 8: Uncaught Exception expanding Object Prototype
        https://bugs.webkit.org/show_bug.cgi?id=146427

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateProperties):
        * UserInterface/Views/ObjectTreeView.js:
        (WebInspector.ObjectTreeView.prototype._updateProperties):
        We are supposed to receive value properties for __proto__ properties
        so that we can immediately start showing information about the property.
        When that is not the case, which appeared to only be on legacy
        backends for the top level prototype, just ignore it.

2015-06-30  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Misc. Timeline cleanup
        https://bugs.webkit.org/show_bug.cgi?id=146430

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/Timeline.js:
        (WebInspector.Timeline.prototype.reset):
        Nobody listens for this event. Just remove it.

        * UserInterface/Models/TimelineRecording.js:
        Avoiding doing multiple lookups.

        * UserInterface/Views/TimelineDataGridNode.js:
        * UserInterface/Views/TimelineRecordingContentView.js:
        (WebInspector.TimelineRecordingContentView.prototype._updateTimes):
        * UserInterface/Views/TimelineView.js:
        (WebInspector.TimelineView.prototype.updateLayout):
        Eliminate some unnecessary deletes.

2015-06-29  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Unable to select the text of an inline error message
        https://bugs.webkit.org/show_bug.cgi?id=145813

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CodeMirrorOverrides.css:
        (.CodeMirror-linewidget):
        * UserInterface/Views/TextEditor.js:
        (WebInspector.TextEditor.prototype.createWidgetForLine):

2015-06-29  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Remove harmless error for not getting named flows
        https://bugs.webkit.org/show_bug.cgi?id=146417

        Reviewed by Darin Adler.

        * UserInterface/Controllers/DOMTreeManager.js:

2015-06-29  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Network errors (404) are missing location link in console messages
        https://bugs.webkit.org/show_bug.cgi?id=146442

        Reviewed by Darin Adler.

        * UserInterface/Views/ConsoleMessageView.js:
        (WebInspector.ConsoleMessageView.prototype._appendLocationLink):
        Restore behavior of adding a location link for network messages with urls.

2015-06-29  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: iOS 8: Resources Timeline Data does not show up
        https://bugs.webkit.org/show_bug.cgi?id=146433

        Reviewed by Timothy Hatcher.

        There were a couple issues with initializing the legacy base timestamp
        for attempting to dynamically compute monotonically increasing timestamps
        for timeline events for legacy backends.

            * Sometimes legacy timestamps were in seconds since epochs,
              sometimes milliseconds. The frontend did not handle both.

            * On navigations, even while resetting the base timestamp for
              the first new record received, the main resource still had
              a will send request time computed from the previous page's
              time system. This patch re-uses the original timestamp for
              this main resource as the new base and all future records
              are computed relative to this.

        * UserInterface/Controllers/FrameResourceManager.js:
        (WebInspector.FrameResourceManager.prototype.resourceRequestWillBeSent):
        (WebInspector.FrameResourceManager.prototype._addNewResourceToFrame):
        * UserInterface/Models/Resource.js:
        (WebInspector.Resource):
        (WebInspector.Resource.prototype.get originalRequestWillBeSentTimestamp):
        For legacy timestamp calculations, save the original request will be sent
        timestamp on the Resource in case it is needed.

        * UserInterface/Controllers/TimelineManager.js:
        (WebInspector.TimelineManager.prototype._loadNewRecording):
        When auto-starting a new recording for a navigation / reload, use the
        main resource's request will be sent timestamp as the new base.

        * UserInterface/Models/TimelineRecording.js:
        Address legacy timeline timestamps by handling both legacy timestamps
        that may be seconds / milliseconds.

2015-06-29  Joseph Pecoraro  <pecoraro@apple.com>

        REGRESSION: Web Inspector: Jump to Definition is broken
        https://bugs.webkit.org/show_bug.cgi?id=146376

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ObjectTreeBaseTreeElement.js:
        (WebInspector.ObjectTreeBaseTreeElement.prototype._appendMenusItemsForObject):
        Allow changing tabs when jumping to function definition.

2015-06-28  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Wrong border color of console messages when filters are enabled
        https://bugs.webkit.org/show_bug.cgi?id=146392

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/LogContentView.css:
        (.console-error-level:not(.filtered-out, .filtered-out-by-search) + .console-item):
        (.console-warning-level:not(.filtered-out, .filtered-out-by-search) + .console-item):

2015-06-25  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Wrong timeline selected after switching from Rendering Frames to Timelines
        https://bugs.webkit.org/show_bug.cgi?id=146331

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/TimelineSidebarPanel.js:
        Set previously selected timeline type to null if no tree element is selected when switching
        view mode to Rendering Frames.

2015-06-25  Joseph Pecoraro  <pecoraro@apple.com>

        [Mac] Web Inspector: Window dragging on toolbar should behave more like native window dragging
        https://bugs.webkit.org/show_bug.cgi?id=146324

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/Main.js:
        On Mac 10.11 transition to using InspectorFrontendHost.startWindowDrag.
        For older Macs continue to use InspectorFrontendHost.moveWindowBy.
        
        * UserInterface/Protocol/InspectorFrontendHostStub.js:
        (WebInspector.InspectorFrontendHostStub.prototype.startWindowDrag):
        Add the stub for InspectorFrontendHostStub.

2015-06-24  Devin Rousso  <drousso@apple.com>

        Web Inspector: Pressing tab in the styles sidebar shouldn't insert a tab character
        https://bugs.webkit.org/show_bug.cgi?id=146189

        Reviewed by Timothy Hatcher.

        * UserInterface/Controllers/CodeMirrorCompletionController.js: Added variable to control whether semicolons are added to the end of autocompleted css values.
        (WebInspector.CodeMirrorCompletionController):
        (WebInspector.CodeMirrorCompletionController.prototype.set noEndingSemicolon):
        (WebInspector.CodeMirrorCompletionController.prototype._generateCSSCompletions):
        * UserInterface/Views/CSSStyleDeclarationSection.js:
        (WebInspector.CSSStyleDeclarationSection):
        (WebInspector.CSSStyleDeclarationSection.prototype.cssStyleDeclarationTextEditorSwitchRule):
        (WebInspector.CSSStyleDeclarationSection.prototype.focusRuleSelector):
        (WebInspector.CSSStyleDeclarationSection.prototype.selectLastProperty):
        (WebInspector.CSSStyleDeclarationSection.prototype.get selectorLocked):
        (WebInspector.CSSStyleDeclarationSection.prototype.get locked):
        (WebInspector.CSSStyleDeclarationSection.prototype._handleKeyDown):
        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor): Added functions for "Tab", "Shift-Tab", and "Shift-Enter" keypresses to improve usability.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype.selectFirstProperty): Highlights the first property.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype.selectLastProperty): Highlights the last property.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._insertNewlineAfterCurrentLine): Inserts a newline after the currently selected line.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleShiftTabKey.switchRule):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleShiftTabKey): Pressing shift-tab will move the cursor to the previous non-word character that is immediately after a word character.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleTabKey.switchRule):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleTabKey.highlightNextNameOrValue):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleTabKey): Pressing tab will move the cursor to each space character until the end of the line is reached, at
        which point the cursor will move to the beginning of the next line.  Once the cursor is at the last line, pressing tab again will insert a newline.
        * UserInterface/Views/RulesStyleDetailsPanel.js:
        (WebInspector.RulesStyleDetailsPanel.prototype.cssStyleDeclarationSectionEditorNextRule): Switches the focused rule to the next section.
        (WebInspector.RulesStyleDetailsPanel.prototype.cssStyleDeclarationSectionEditorPrevRule): Switches the focused rule to the previous section.

2015-06-24  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: console.group looks poor in console
        https://bugs.webkit.org/show_bug.cgi?id=146295

        Reviewed by Timothy Hatcher.

        * Localizations/en.lproj/localizedStrings.js:
        String for the default group name if you use console.group() without a name parameter.

        * UserInterface/Views/LogContentView.css:
        (.console-group-title::before):
        Tweak the positioning and eliminate the log level ::before image.

        * UserInterface/Views/ConsoleMessageView.js:
        (WebInspector.ConsoleMessageView):
        Reorder a bit to reduce a couple branches.

        (WebInspector.ConsoleMessageView.prototype._appendMessageTextAndArguments):
        Take a very straightforward approach for group names.

2015-06-24  Devin Rousso  <drousso@apple.com>

        Web Inspector: Show warning icon for invalid CSS properties and/or values
        https://bugs.webkit.org/show_bug.cgi?id=145657

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/CSSCompletions.js:
        (WebInspector.CSSCompletions.prototype.getClosestPropertyName): Calculates the levenshtein distance between a given property and every existing property name.  Returns the property name with the smallest distance or, in the case of multiple properties having the same distance, the first property in alphabetical order.
        (WebInspector.CSSCompletions.prototype.propertyRequiresWebkitPrefix): Retruns if the property name exists only with a '-webkit-' prefix.
        (WebInspector.CSSCompletions):
        * UserInterface/Views/CSSStyleDeclarationTextEditor.css:
        (.css-style-text-editor > .CodeMirror .CodeMirror-lines .invalid-warning-marker):
        (.css-style-text-editor > .CodeMirror .CodeMirror-lines .invalid-warning-marker.clickable:hover):
        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded.duplicatePropertyExistsBelow): Determines if there exists a property below (visually) the given property that has the same name.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded.generateInvalidMarker): Creates a warning icon marker at the given position with the given title.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded.instancesOfProperty): Returns the number of properties in the rule that have the same name.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded): A button with a warning icon is now added to the beginning of an invalid property.  If this button is clicked, the property is replaced with the closest matching property and the autocomplete menu is opened.

2015-06-24  Devin Rousso  <drousso@apple.com>

        Web Inspector: Background of Computed Styles is missing
        https://bugs.webkit.org/show_bug.cgi?id=146209

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ComputedStyleDetailsPanel.css:
        (.computed-style-properties.details-section): Added white background.

2015-06-24  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Right/Left arrow no longer works in console to expand/collapse ObjectTrees
        https://bugs.webkit.org/show_bug.cgi?id=141949

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ConsoleMessageView.js:
        (WebInspector.ConsoleMessageView):
        (WebInspector.ConsoleMessageView.prototype.get expandable):
        (WebInspector.ConsoleMessageView.prototype.set expandable): Deleted.
        (WebInspector.ConsoleMessageView.prototype._appendExtraParameters):
        (WebInspector.ConsoleMessageView.prototype._appendStackTrace):
        (WebInspector.ConsoleMessageView.prototype._makeExpandable):
        Clarify what makes a ConsoleMessageView expandable or not.

        (WebInspector.ConsoleMessageView.prototype.expand):
        (WebInspector.ConsoleMessageView.prototype.collapse):
        Handle the expand/collapse cases which could apply to the
        ConsoleMessageView itself or an inner ObjectTreeView if that is all we contain.

        (WebInspector.ConsoleMessageView.prototype._formatParameterAsObject):
        Delete out of date comment. A console.log("message", obj) will want the
        object tree member variable to handle auto expanding/collapsing of the
        single object in the message.

        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype._leftArrowWasPressed):
        (WebInspector.LogContentView.prototype._rightArrowWasPressed):
        Use the higher level ConsoleMessageView objects accessible from the element
        to call through to expand/collapse.

2015-06-23  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Reduce QuickConsole DidResize events if it did not change
        https://bugs.webkit.org/show_bug.cgi?id=146258

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/QuickConsole.js:
        (WebInspector.QuickConsole.prototype.consoleLogVisibilityChanged):
        Do not trigger the event unless there was a change in visibility.

2015-06-23  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: TextEditor scroll position not correctly restored when switching tabs
        https://bugs.webkit.org/show_bug.cgi?id=146254

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/TextEditor.js:
        (WebInspector.TextEditor.prototype.updateLayout):
        Workaround a larger issue with ContentView restoration so that
        TextEditors restore their scroll position as expected.

2015-06-23  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Some brief previews are incorrectly treated as lossless
        https://bugs.webkit.org/show_bug.cgi?id=146247

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ObjectPreviewView.js:
        (WebInspector.ObjectPreviewView.prototype._appendEntryPreviews):
        (WebInspector.ObjectPreviewView.prototype._appendPropertyPreviews):
        When we have a brief preview we may need to override lossless / overflow
        if the preview view itself shows less properties than were in the preview.

2015-06-23  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Layout & Rendering timeline should show paint and layout records in separate rows
        https://bugs.webkit.org/show_bug.cgi?id=146119

        Reviewed by Timothy Hatcher.

        This patch makes the original Layout & Rendering timeline visually consistent with the Rendering Frames
        timeline, which uses green to distinguish Paint from Layout. In order to support having record bars with
        different colors in the same overview graph, the timeline has been split into two rows.

        * UserInterface/Views/LayoutTimelineOverviewGraph.css:
        (.timeline-overview-graph.layout > .graph-row):
        (.timeline-overview-graph.layout > .graph-row > .timeline-record-bar):
        (.timeline-overview-graph.layout > .graph-row > .timeline-record-bar > .segment):
        New row styles.

        * UserInterface/Views/LayoutTimelineOverviewGraph.js:
        (WebInspector.LayoutTimelineOverviewGraph.prototype.reset.createRecordRow):
        (WebInspector.LayoutTimelineOverviewGraph.prototype.reset):
        (WebInspector.LayoutTimelineOverviewGraph.prototype.updateLayout):
        (WebInspector.LayoutTimelineOverviewGraph.prototype._updateRowLayout.createBar):
        (WebInspector.LayoutTimelineOverviewGraph.prototype._updateRowLayout):
        (WebInspector.LayoutTimelineOverviewGraph.prototype._layoutTimelineRecordAdded):
        (WebInspector.LayoutTimelineOverviewGraph): Deleted.
        Added bookkeeping objects for timeline row elements and their associated records.

        * UserInterface/Views/TimelineRecordBar.css:
        (.timeline-record-bar.timeline-record-type-layout.layout-timeline-record-paint > .segment):
        New style for layout record event types.

        * UserInterface/Views/TimelineRecordBar.js:
        (WebInspector.TimelineRecordBar.prototype.set records):
        Add style class for eventType, if present.

2015-06-22  Devin Rousso  <drousso@apple.com>

        Web Inspector: gaps between sections of the styles sidebar rules tab confusing, should say "Media: all"
        https://bugs.webkit.org/show_bug.cgi?id=142918

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/RulesStyleDetailsPanel.css:
        (.sidebar > .panel.details.css-style > .content.filter-in-progress .label:not(.filter-section-non-matching) ~ .label):
        Now properly adds padding to filtered labels.
        (.sidebar > .panel.details.css-style > .content.filter-in-progress .label ~ .label): Deleted.
        * UserInterface/Views/RulesStyleDetailsPanel.js:
        (WebInspector.RulesStyleDetailsPanel.prototype.refresh): If a section of CSS rules has no media or inheritance, add
        a label that says "Media: all" above the section.

2015-06-22  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Consider making read-only style rules have a darker background
        https://bugs.webkit.org/show_bug.cgi?id=145983

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDeclarationSection.css:
        (.style-declaration-section:not(.locked)):
        (.style-declaration-section): Deleted.
        * UserInterface/Views/CSSStyleDeclarationTextEditor.css:
        (.css-style-text-editor.read-only > .CodeMirror):

2015-06-22  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Unable to select text of user input messages in the console
        https://bugs.webkit.org/show_bug.cgi?id=145888

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ConsoleMessageView.css:
        (.console-user-command > .console-message-text):

2015-06-20  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Unable to select parent element in the DOM tree path bar
        https://bugs.webkit.org/show_bug.cgi?id=145810

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/DOMTreeContentView.js:
        (WebInspector.DOMTreeContentView.prototype.get selectionPathComponents):
        * UserInterface/Views/HierarchicalPathComponent.js:
        (WebInspector.HierarchicalPathComponent.prototype.get selectedPathComponent):
        (WebInspector.HierarchicalPathComponent.prototype._selectElementMouseUp):
        (WebInspector.HierarchicalPathComponent.prototype._selectElementSelectionChanged):
        (WebInspector.HierarchicalPathComponent):
        (WebInspector.HierarchicalPathComponent.prototype._selectElementMouseDown): Deleted.

2015-06-19  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Duplication of style attribute in rules panel for shadow content
        https://bugs.webkit.org/show_bug.cgi?id=146176

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        The styleText can be non-empty for a readonly editor if the editor is for
        the style attribute of a shadow dom node. Instead of assuming it is empty
        we can just clear the editor ourselves and regenerate from properties.

2015-06-19  Devin Rousso  <drousso@apple.com>

        Web Inspector: Highlight currently edited CSS selector
        https://bugs.webkit.org/show_bug.cgi?id=145658

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/CSSStyleDeclarationSection.js:
        (WebInspector.CSSStyleDeclarationSection): Added event listeners on the selector text for mouseover and mouseout.
        (WebInspector.CSSStyleDeclarationSection.prototype._highlightNodesWithSelector): Selector text mouseover action that highlights all nodes that match the selector string in the corresponding frame.
        (WebInspector.CSSStyleDeclarationSection.prototype._hideHighlightOnNodesWithSelector): Selector text mouseout action that clears all highlights on matching nodes.
        * UserInterface/Views/DOMNode.js:
        (WebInspector.DOMNode): If the payload contains a frameId, then save it.
        (WebInspector.DOMNode.frameIdentifier):

2015-06-19  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Overlapping dashboard views causing lots of layers in source view
        https://bugs.webkit.org/show_bug.cgi?id=146153

        Reviewed by Darin Adler.

        * UserInterface/Views/DashboardContainerView.css:
        (.toolbar .dashboard:not(.visible)):
        Hide non-visible dashboard views. The !important is used
        to override more specific toolbar .dashboard.foo styles.

2015-06-19  Devin Rousso  <drousso@apple.com>

        Web Inspector: Make rule icon toggle all properties for that selector on and off
        https://bugs.webkit.org/show_bug.cgi?id=146031

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDeclarationSection.css:
        (.style-declaration-section > .header > .icon.toggle-able:hover):
        (.style-declaration-section.rule-disabled > .header > .icon):
        * UserInterface/Views/CSSStyleDeclarationSection.js:
        (WebInspector.CSSStyleDeclarationSection): Added event listener to selector icon to toggle commenting of all properties for that rule.
        (WebInspector.CSSStyleDeclarationSection.prototype._toggleRuleOnOff): Adds or removes comments to all properties for that rule.
        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor.prototype.uncommentAllProperties.uncommentProperties):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype.uncommentAllProperties): Uncomments all properties.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype.commentAllProperties): Comments out all properties.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._propertyCheckboxChanged): Moved comment logic to its own function.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._propertyCommentCheckboxChanged): Moved uncomment logic to its own function.

2015-06-19  Jon Lee  <jonlee@apple.com>

        Update font and font-family keyword completions
        https://bugs.webkit.org/show_bug.cgi?id=144558
        <rdar://problem/20795292>

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/CSSKeywordCompletions.js: Replace -webkit-system-font and
        -apple-system-font with -apple-system, which is the recommended token for getting the
        system font. Also add -title{1,2,3} for font, as they were missing, but already exist
        in font-family.

2015-06-19  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Avoid getOwnPropertyNames/Symbols on very large lists
        https://bugs.webkit.org/show_bug.cgi?id=146141

        Reviewed by Timothy Hatcher.

        * UserInterface/Controllers/JavaScriptRuntimeCompletionProvider.js:
        (WebInspector.JavaScriptRuntimeCompletionProvider.prototype.completionControllerCompletionsNeeded):
        When building completions for a large array, instead of building a list of all the indices
        just send a single number back to the frontend and let it generate a list for completion.
        We should do even better and avoid building a lookup table here for completion of an index.

2015-06-18  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Rendering Frames timeline selection should snap to frame boundaries
        https://bugs.webkit.org/show_bug.cgi?id=146120

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/RenderingFrameTimelineOverview.js:
        Enable snapping to frame boundaries.

        * UserInterface/Views/TimelineRecordingContentView.js:
        (WebInspector.TimelineRecordingContentView.prototype._updateFrameSelection):
        Updated filtering to account for ruler snapping.

        * UserInterface/Views/TimelineRuler.js:
        (WebInspector.TimelineRuler.prototype.get snapInterval):
        (WebInspector.TimelineRuler.prototype.set snapInterval):
        (WebInspector.TimelineRuler.prototype.set selectionStartTime):
        (WebInspector.TimelineRuler.prototype.set selectionEndTime):
        (WebInspector.TimelineRuler.prototype._snapValue):
        (WebInspector.TimelineRuler.prototype._handleMouseMove):
        Added support for snapping to a specified interval.

        * UserInterface/Views/TimelineSidebarPanel.js:
        Removed unnecessary code.

2015-06-18  Devin Rousso  <drousso@apple.com>

        Web Inspector: Add a filter for CSS properties in the Styles sidebar
        https://bugs.webkit.org/show_bug.cgi?id=145536

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/Utilities.js: Added function to Strings that returns an array of all matching indexes of a given string.
        (.value):
        * UserInterface/Views/CSSStyleDeclarationSection.js:
        (WebInspector.CSSStyleDeclarationSection):
        (WebInspector.CSSStyleDeclarationSection.prototype.refresh.appendSelector):
        (WebInspector.CSSStyleDeclarationSection.prototype.findMatchingPropertiesAndSelectors): Loops through the property list and selectors of each section to find matches to the filtered text.
        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor.prototype.findMatchingProperties): Searches through the properties list to find and highlight all matching properties.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype.removeNonMatchingProperties): Removes all properties that do not match and highlights the specific matched text in matching properties.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype.resetFilteredProperties): Restores all properties to full visibility and removes any highlighting.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded): Classes are added to selections of the text editor of that partiular selection contains text which matches the filter (see CSSStyleDetailsSidebarPanel.css for different classes).
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._iterateOverProperties): If a filter is active, find properties matching the filter instead of all properties.
        * UserInterface/Views/CSSStyleDetailsSidebarPanel.css:
        (.sidebar > .panel.details.css-style > .content.has-filter-bar + .filter-bar):
        (.sidebar > .panel.details.css-style > .content:not(.has-filter-bar) + .filter-bar):
        * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
        (WebInspector.CSSStyleDetailsSidebarPanel): Added a filter bar to the CSS sidebar.
        (WebInspector.CSSStyleDetailsSidebarPanel.prototype._switchPanels): Switching panels preserves and applies filter bar text.
        (WebInspector.CSSStyleDetailsSidebarPanel.prototype._filterDidChange): Function called when the filter bar text changes that calls the current panel's filterDidChange function if it exists.
        * UserInterface/Views/FilterBar.js: Added function and variable to check if the text in the filter bar had changed.
        * UserInterface/Views/MetricsStyleDetailsPanel.js:
        (WebInspector.MetricsStyleDetailsPanel.prototype.refresh): Now calls superclass refresh.
        (WebInspector.MetricsStyleDetailsPanel): Added delegate variable to constructor.
        * UserInterface/Views/RulesStyleDetailsPanel.css:
        (.sidebar > .panel.details.css-style > .content.filter-in-progress .label):
        (.sidebar > .panel.details.css-style > .content.filter-in-progress .label ~ .label):
        (.sidebar > .panel.details.css-style > .content.filter-in-progress .label.filter-matching-label):
        (.sidebar > .panel.details.css-style > .content.filter-in-progress .new-rule):
        (.sidebar > .panel.details.css-style > .content.filter-in-progress .style-declaration-section:not(.filter-section-non-matching) ~ .label:not(.filter-section-non-matching)):
        (.sidebar > .panel.details.css-style > .content:not(.filter-in-progress) > .rules > .new-rule + .style-declaration-section):
        (.sidebar > .panel.details.css-style > .content > .rules:not(.filter-non-matching) > .no-filter-results):
        (.sidebar > .panel.details.css-style > .content.filter-in-progress > .rules.filter-non-matching > .no-filter-results):
        (.sidebar > .panel.details.css-style > .content.filter-in-progress > .rules.filter-non-matching > .no-filter-results > .no-filter-results-message):
        * UserInterface/Views/RulesStyleDetailsPanel.js:
        (WebInspector.RulesStyleDetailsPanel): Added delegate variable to constructor.
        (WebInspector.RulesStyleDetailsPanel.prototype.refresh): Now calls superclass refresh.
        (WebInspector.RulesStyleDetailsPanel.prototype.filterDidChange): Function to search through the computed styles list and highlight all matched properties and selectors of the filter bar text, turning all non matching properties slightly opaque (unless a selector for that property is a match).
        (WebInspector.StyleDetailsPanel): Added delegate variable to constructor.
        (WebInspector.StyleDetailsPanel.prototype.refresh): Added event dispatch for panel refresh.

2015-06-18  Devin Rousso  <drousso@apple.com>

        Web Inspector: Ability to Copy entire CSS Rule from Styles Sidebar
        https://bugs.webkit.org/show_bug.cgi?id=138812

        Reviewed by Timothy Hatcher.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Views/CSSStyleDeclarationSection.js:
        (WebInspector.CSSStyleDeclarationSection): Right clicking on the header of a rule will replcae the default context menu to allow copying of the entire rule to the clipboard.
        (WebInspector.CSSStyleDeclarationSection.prototype._handleContextMenuEvent): Creates a new context menu to copy the entire CSS rule.
        (WebInspector.CSSStyleDeclarationSection.prototype._generateCSSRuleString): Generates a string representing the formatted CSS rule.

2015-06-18  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Improve a few more node preview types
        https://bugs.webkit.org/show_bug.cgi?id=146048

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/FormattedValue.js:
        (WebInspector.FormattedValue.createElementForNodePreview):

2015-06-18  Devin Rousso  <drousso@apple.com>

        Web Inspector: New Rule button doesn't reveal the newly added rule if not visible upon creation
        https://bugs.webkit.org/show_bug.cgi?id=117600

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/RulesStyleDetailsPanel.js: Made previousFocusedSection into a member variable of the RulesStyleDetailsPanel.  This way, when the nodeStyles is refreshed (when a new rule is added), the previousFocusedSection will be scrolled into view.
        (WebInspector.RulesStyleDetailsPanel):
        (WebInspector.RulesStyleDetailsPanel.prototype.refresh.appendStyleSection):
        (WebInspector.RulesStyleDetailsPanel.prototype.nodeStylesRefreshed):
        (WebInspector.RulesStyleDetailsPanel.prototype.refresh): Deleted.

2015-06-18  Commit Queue  <commit-queue@webkit.org>

        Unreviewed, rolling out r185671.
        https://bugs.webkit.org/show_bug.cgi?id=146114

        Caused frequent flaky failures on profiler tests (Requested by
        ap on #webkit).

        Reverted changeset:

        "Web Inspector: Improve a few more node preview types"
        https://bugs.webkit.org/show_bug.cgi?id=146048
        http://trac.webkit.org/changeset/185671

2015-06-17  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Improve a few more node preview types
        https://bugs.webkit.org/show_bug.cgi?id=146048

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/FormattedValue.js:
        (WebInspector.FormattedValue.createElementForNodePreview):

2015-06-17  Diego Pino Garcia  <dpino@igalia.com>

        Web Inspector: Show/Hide sidebar buttons have inconsistent highlighted state
        https://bugs.webkit.org/show_bug.cgi?id=145073

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/ContentBrowserTabContentView.js:
        (WebInspector.ContentBrowserTabContentView.prototype._detailsSidebarPanelSelected):

2015-06-16  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Inspector Scripts evaluated in the page should not be searchable
        https://bugs.webkit.org/show_bug.cgi?id=146040

        Reviewed by Darin Adler.

        Any script with a __WebInspector source URL will be hidden by the tools.
        There were a number of ways the inspector could evaluate script on the page
        without getting the sourceURL and therefore not getting hidden. Audit
        all cases of Runtime.evaluate, Runtime.callFunctionOn, and
        Debugger.evaluateOnCallFrame, to ensure we have an appropriate source URL.

        * UserInterface/Base/Utilities.js:
        (appendWebInspectorSourceURL):
        Helper to append a __WebInspectorInternal__ sourceURL to a string that may
        be evaluated directly on the inspected context.

        * UserInterface/Controllers/DOMTreeManager.js:
        (WebInspector.DOMTreeManager.domNodeResolved):
        * UserInterface/Controllers/JavaScriptLogViewController.js:
        (WebInspector.JavaScriptLogViewController.prototype.consolePromptTextCommitted): Deleted.
        * UserInterface/Controllers/RuntimeManager.js:
        * UserInterface/Models/DOMTree.js:
        (WebInspector.DOMTree.prototype._requestRootDOMNode):
        * UserInterface/Protocol/RemoteObject.js:
        (WebInspector.RemoteObject.):
        * UserInterface/Views/SourceCodeTextEditor.js:
        (WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedJavaScriptExpression):
        Ensure all cases that evaluate directly on the inspected page / context
        have the intenral source URL.

2015-06-16  Matt Baker  <mattbaker@apple.com>

        Web Inspector: REGRESSION (r171645): up/down key navigation of timeline sidebar tree elements is broken when scope bar filters are applied
        https://bugs.webkit.org/show_bug.cgi?id=142315

        Reviewed by Timothy Hatcher.

        TreeOutline's element traversal algorithms have been rewritten to correctly skip over unrevealed tree elements.
        Previously traversal would halt after encountering a hidden element. We now use an iterative approach, with
        each iteration producing the next (or previous) element, with respect to the last candidate element. Iteration
        begins with the current node, and halts once a valid element is found or candidate elements are exhausted.

        * UserInterface/Views/TreeOutline.js:
        (WebInspector.TreeElement.prototype.traverseNextTreeElement.shouldSkip):
        (WebInspector.TreeElement.prototype.traverseNextTreeElement):
        (WebInspector.TreeElement.prototype.traversePreviousTreeElement.shouldSkip):
        (WebInspector.TreeElement.prototype.traversePreviousTreeElement):

2015-06-15  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Stylize Node Previews
        https://bugs.webkit.org/show_bug.cgi?id=145990

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/FormattedValue.js:
        (WebInspector.FormattedValue.createElementForNodePreview):
        Style a node preview like a DOMNode. It is a simple small snippet.

        * UserInterface/Views/ObjectPreviewView.js:
        (WebInspector.ObjectPreviewView.prototype._appendPropertyPreviews):
        Use node previews in ObjectPreviewViews.

2015-06-15  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Improve some cases of "Object?" Type Annotations
        https://bugs.webkit.org/show_bug.cgi?id=145954

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/TypeTokenView.js:
        (WebInspector.TypeTokenView.prototype._displayTypeName):
        The TypeSet inclusions cover all types, so we can use the leastCommonAncestor
        name as long as the type set is just object or object and null/undefined.
        If the typeset includes other primitives then it will gracefully go down
        below to become something like Object or (many). 

2015-06-14  Andres Gomez  <agomez@igalia.com>

        [GTK] Web Inspector: Update icon so Rendering Frames timeline distinguish between layout and painting
        https://bugs.webkit.org/show_bug.cgi?id=145956

        Reviewed by Carlos Garcia Campos.

        * UserInterface/Images/gtk/TimelineRecordPaint.svg:
        Changed to use green color.

2015-06-13  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: console.table() with a list of objects no longer works
        https://bugs.webkit.org/show_bug.cgi?id=145952

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ConsoleMessageView.js:
        (WebInspector.ConsoleMessageView.prototype._appendMessageTextAndArguments):
        (WebInspector.ConsoleMessageView.prototype._formatParameterAsTable):
        Don't allow expanding a cosole.table message, and don't output the total
        object even if the table preview was lossless, as the experience is poor.

2015-06-11  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: CSS Regions not displaying DOM Trees in inspector
        https://bugs.webkit.org/show_bug.cgi?id=145903

        Reviewed by Timothy Hatcher.

        * UserInterface/Controllers/DOMTreeManager.js:
        (WebInspector.DOMTreeManager.prototype._updateContentFlowFromPayload):
        Fix function inside the assertion to actually return a value.

        * UserInterface/Views/DOMTreeOutline.js:
        (WebInspector.DOMTreeOutline.prototype.update):
        For DOMTreeOutlines without a root node, don't clear the tree on updates,
        since that will clear the nodes that have already been added explicitly.

        * UserInterface/Views/ResourceSidebarPanel.js:
        (WebInspector.ResourceSidebarPanel.prototype._treeElementSelected):
        * UserInterface/Views/ResourcesTabContentView.js:
        (WebInspector.ResourcesTabContentView.prototype.canShowRepresentedObject):
        ResourceTab and sidebar can deal with ContentFlow related views.

2015-06-11  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: IndexedDB data not showing for MDN example page
        https://bugs.webkit.org/show_bug.cgi?id=145851

        Reviewed by Anders Carlsson.

        * UserInterface/Views/StorageSidebarPanel.js:
        (WebInspector.StorageSidebarPanel.prototype._indexedDatabaseWasAdded):
        Fix typo in Storage tab refactoring that was causing an
        uncaught exception and not showing Indexed DBs.

2015-06-11  Devin Rousso  <drousso@apple.com>

        Web Inspector: font-family names interpreted as color
        https://bugs.webkit.org/show_bug.cgi?id=123468

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CodeMirrorAdditions.js: Added logic to prevent color picker buttons from appearing before colors that come after a quote character (both " and ').

2015-06-11  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Rendering Frames timeline should distinguish between layout and painting
        https://bugs.webkit.org/show_bug.cgi?id=145856

        Reviewed by Timothy Hatcher.

        This patch formalizes the runloop task concept in the frontend, adds new Paint task type to the Rendering
        Frames timeline, and reorders UI elements such as chart sections and frame "segments" to match the order in
        which tasks are executed within the runloop.

        We will need to make UI changes to the standard Timelines view in a follow up patch, since tree element icons
        for Paint records now use a different color that those of other Layout records.

        * UserInterface/Images/TimelineRecordPaint.svg:
        Changed to use green color.

        * UserInterface/Models/RenderingFrameTimelineRecord.js:
        (WebInspector.RenderingFrameTimelineRecord):
        (WebInspector.RenderingFrameTimelineRecord.displayNameForTaskType):
        (WebInspector.RenderingFrameTimelineRecord.prototype.durationForTask.get validRecordForTaskType):
        (WebInspector.RenderingFrameTimelineRecord.prototype.durationForTask.set return):
        (WebInspector.RenderingFrameTimelineRecord.prototype.durationForTask):
        (WebInspector.RenderingFrameTimelineRecord.prototype.get durationRemainder): Deleted.
        (WebInspector.RenderingFrameTimelineRecord.prototype.durationForRecords.get var): Deleted.
        Added TaskType enum to decouple runloop task types from timeline record types, and removed duration remainder
        support now that "Other" has an associated task type.

        * UserInterface/Views/RenderingFrameTimelineDataGridNode.js:
        (WebInspector.RenderingFrameTimelineDataGridNode.prototype.get data):
        (WebInspector.RenderingFrameTimelineDataGridNode.prototype.createCellContent):
        * UserInterface/Views/RenderingFrameTimelineView.js:
        (WebInspector.RenderingFrameTimelineView):
        Added new grid column for Paint task, reordered columns to be consistent with the rest of the UI.

        * UserInterface/Views/TimelineRecordFrame.css:
        (.timeline-record-frame > .frame > .duration.rendering-frame-timeline-record-script):
        (.timeline-record-frame > .frame > .duration.rendering-frame-timeline-record-layout):
        (.timeline-record-frame > .frame > .duration.rendering-frame-timeline-record-paint):
        (.timeline-record-frame > .frame > .duration): Deleted.
        (.timeline-record-frame > .frame > .duration.timeline-record-type-network): Deleted.
        (.timeline-record-frame > .frame > .duration.timeline-record-type-layout): Deleted.
        (.timeline-record-frame > .frame > .duration.timeline-record-type-script): Deleted.
        Updated styles for Render Frame tasks.

        * UserInterface/Views/TimelineRecordFrame.js:
        (WebInspector.TimelineRecordFrame.prototype._updateChildElements.createDurationElement):
        Updated to use Render Frame task types. Frame segment insertion order is now consistent with the rest of the UI.

        * UserInterface/Views/TimelineSidebarPanel.js:
        (WebInspector.TimelineSidebarPanel._refreshFrameSelectionChart.chartData.Object.keys.map):
        (WebInspector.TimelineSidebarPanel.set this):
        (WebInspector.TimelineSidebarPanel._refreshFrameSelectionChart.get this):
        (WebInspector.TimelineSidebarPanel): Deleted.
        (WebInspector.TimelineSidebarPanel.prototype._refreshFrameSelectionChart.durationForRecordType): Deleted.
        (WebInspector.TimelineSidebarPanel.prototype._refreshFrameSelectionChart): Deleted.
        Updated to use Render Frame task types.

2015-06-11  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Wrong overview graph shown after switching from Frames to Timelines
        https://bugs.webkit.org/show_bug.cgi?id=145778

        Reviewed by Timothy Hatcher.

        TimelineSidebarPanel stores a reference to the selected timeline before switching to the Rendering Frames view,
        which is used to restore the tree selection, overview graph, and content views when switching back to the
        standard Timelines view. However if another recording is created before switching, the previously selected
        timeline tracked by the sidebar cannot be restored, since it doesn't belong to the active recording.

        This is addressed by storing the previously selected timeline type, rather than the timeline object itself.
        The type is also updated whenever the selected timeline in the tree outline changes, ensuring that the correct
        timeline will always be restored.

        * UserInterface/Views/TimelineSidebarPanel.js:
        (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject.get if.get if):
        (WebInspector.TimelineSidebarPanel.get else): Deleted.
        (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject.get if): Deleted.
        (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject): Deleted.

2015-06-08  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Clearing active Timeline recording should stop capturing
        https://bugs.webkit.org/show_bug.cgi?id=145767

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/TimelineRecordingContentView.js:
        (WebInspector.TimelineRecordingContentView.prototype._clearTimeline):
        Stop capturing if necessary.

2015-06-07  Tobias Reiss  <tobi+webkit@basecode.de>

        Web Inspector: Add PrettyPrinter CSSRule tests
        https://bugs.webkit.org/show_bug.cgi?id=145740

        Reviewed by Brian Burg.

        * Tools/PrettyPrinting/css-rule-tests/add-whitespace-after-colon-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/add-whitespace-after-colon.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/add-whitespace-after-comma-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/add-whitespace-after-comma.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/do-not-append-semicolon-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/do-not-append-semicolon.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/invalid-property-is-not-removed-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/invalid-property-is-not-removed.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/keep-prefixed-value-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/keep-prefixed-value.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-colon-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-colon.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-comment-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-comment.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-invalid-property-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-invalid-property.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-prefixed-property-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-prefixed-property.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-property-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-property.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-semicolon-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-semicolon.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-comment-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-comment.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-invalid-property-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-invalid-property.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-prefixed-property-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-prefixed-property.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-property-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-property.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-comment-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-comment.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-invalid-property-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-invalid-property.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-prefixed-property-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-prefixed-property.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-property-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-property.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-comment-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-comment.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-invalid-property-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-invalid-property.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-prefixed-property-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-prefixed-property.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-property-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-property.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-property-without-semicolon-followed-by-comment-and-property-expected.css: Added.
        * Tools/PrettyPrinting/css-rule-tests/split-property-without-semicolon-followed-by-comment-and-property.css: Added.

2015-06-05  Devin Rousso  <drousso@apple.com>

        Web Inspector: Fixing code style and adding more limitations for bug 141262
        https://bugs.webkit.org/show_bug.cgi?id=145668

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/CSSCompletions.js:
        (WebInspector.CSSCompletions.prototype.isValidPropertyName): Loops through the full property list and returns true only if a property exactly matches the given property name.
        (WebInspector.CSSCompletions): Added isValidPropertyName function.
        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded): Added logic to limit the invalid class marker to only the property value if the property name is an actual property and to prevent invalid style from being applied incorrectly.

2015-06-05  Devin Rousso  <drousso@apple.com>

        Web Inspector: Highlighting a CSS section does not deselect previously highlighted CSS sections
        https://bugs.webkit.org/show_bug.cgi?id=145399

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDeclarationSection.js:
        (WebInspector.CSSStyleDeclarationSection): Added delegate variable to constructor.
        (WebInspector.CSSStyleDeclarationSection.prototype.clearSelection):
        (WebInspector.CSSStyleDeclarationSection.prototype.cssStyleDeclarationTextEditorFocused):
        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor): Added event listener to codeMirror on "focus".
        (WebInspector.CSSStyleDeclarationTextEditor.prototype.clearSelection): Sets the cursor of the codeMirror to character 0 on line 0.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._editorFocused): Function that calls the delegate function "editorFocused" when the codeMirror is focused
        * UserInterface/Views/RulesStyleDetailsPanel.js:
        (WebInspector.RulesStyleDetailsPanel.prototype.refresh.appendStyleSection):
        (WebInspector.RulesStyleDetailsPanel.prototype.cssStyleDeclarationSectionEditorFocused): Loops through all sections except for the ignoredSection (parameter) and clears the selected text in each of them.

2015-06-05  Joseph Pecoraro  <pecoraro@apple.com>

        REGRESSION (r185213): TypeError: undefined is not an object (evaluating 'WebInspector.clearLogOnReload.value')
        https://bugs.webkit.org/show_bug.cgi?id=145695

        Reviewed by Mark Lam.

        Move and rename the clear log on reload setting property from
        WebInspector (Main.js) to LogManager (shared with tests).

        * UserInterface/Base/Main.js:
        (WebInspector.loaded): Deleted.
        * UserInterface/Controllers/LogManager.js:
        (WebInspector.LogManager):
        (WebInspector.LogManager.prototype._delayedMessagesCleared):
        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype._sessionStarted):
        (WebInspector.LogContentView.prototype._handleContextMenuEvent):
        (WebInspector.LogContentView.prototype._toggleClearLogOnReloadSetting):

2015-06-05  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: [REGRESSION] Dashboard's resource count does not reset when main resource navigates
        https://bugs.webkit.org/show_bug.cgi?id=144553

        Add missing _mainResourceDidChange, which was removed after switching to the tabs UI.

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/DefaultDashboard.js:
        (WebInspector.DefaultDashboard):
        _waitingForFirstMainResourceToStartTrackingSize is not used anywhere, remove it.

        (WebInspector.DefaultDashboard.prototype._mainResourceDidChange): Added.

        (WebInspector.DefaultDashboard.prototype._resourceSizeDidChange): Removed.
        Unused.

2015-06-05  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Switch to doughnut chart and remove idle time in the Rendering Frames timeline
        https://bugs.webkit.org/show_bug.cgi?id=145671

        Reviewed by Timothy Hatcher.

        * Localizations/en.lproj/localizedStrings.js:
        "Idle" string no longer used.

        * UserInterface/Views/TimelineRecordFrame.js:
        Reduced maximum frame width by 2px.

        * UserInterface/Views/TimelineSidebarPanel.js:
        (WebInspector.TimelineSidebarPanel):
        (WebInspector.TimelineSidebarPanel.prototype._refreshFrameSelectionChart):
        Added inner radius to chart and removed "Idle" value.

2015-06-04  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Class constructor appearing as Object Tree property does not include parameters
        https://bugs.webkit.org/show_bug.cgi?id=145661

        Reviewed by Timothy Hatcher.

        * UserInterface/Protocol/RemoteObject.js:
        (WebInspector.RemoteObject):
        (WebInspector.RemoteObject.fromPrimitiveValue):
        (WebInspector.RemoteObject.fromPayload):
        (WebInspector.RemoteObject.prototype.get functionDescription):
        Include the className as only use it for "class" types to override
        the normal description string. Stash the actual function description
        in a property we can access later.

        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        (WebInspector.ObjectTreePropertyTreeElement.prototype._functionParameterString):
        Even if this property is a "class" we want to specifically parse it's
        function description string. So use functionDescription.

2015-06-04  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Close and open tabs on mouseup, not mousedown
        https://bugs.webkit.org/show_bug.cgi?id=145656

        Match Safari's behaviour.

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/TabBar.js:
        (WebInspector.TabBar):
        (WebInspector.TabBar.prototype.set newTabItem):
        (WebInspector.TabBar.prototype._handleMouseDown):
        (WebInspector.TabBar.prototype._handleClick): Added.
        (WebInspector.TabBar.prototype._handleMouseUp):
        (WebInspector.TabBar.prototype._handleNewTabClick): Added.
        (WebInspector.TabBar.prototype._handleMouseMoved):

2015-06-04  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Decrease tabs height to match Safari's tabs height
        https://bugs.webkit.org/show_bug.cgi?id=145647

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/TabBar.css:
        (.tab-bar):

2015-06-04  Tobias Reiss  <tobi+webkit@basecode.de>
        
        Web Inspector: Activity Viewer does not update on "Clear Log on reload"
        https://bugs.webkit.org/show_bug.cgi?id=145466
        
        Reviewed by Joseph Pecoraro.

        1. Isolate logic within LogManager and remove hacks/logic from all other files
        2. Within LogManager: Differentiate "messagesCleared" calls
         a) that happen as a result of a "requested clear" by Frontend (e.g. Button)
         b) that happen on page reload and install "clear/keep-on-page-reload" logic
         c) that happen on frame navigated, console.clear() or clear()
        3. Unify "ActiveLogCleared" and "Cleared" events to "Cleared"
        
        For step 2b and 2c it is important to delay the handling and wait until
        "_mainResourceDidChange" has determined whether a page reload happened or
        not.
        
        * UserInterface/Base/Main.js:
        (WebInspector.loaded):
        Store "clear-log-on-reload" setting globally.
        
        * UserInterface/Controllers/IssueManager.js:
        (WebInspector.IssueManager):
        * UserInterface/Models/DefaultDashboard.js:
        (WebInspector.DefaultDashboard): Deleted.
        * UserInterface/Views/ObjectTreeView.js:
        (WebInspector.ObjectTreeView.prototype._trackWeakEntries): Deleted.
        (WebInspector.ObjectTreeView.prototype._untrackWeakEntries): Deleted.
        (WebInspector.ObjectTreeView): Deleted.
        Remove deleted events.
        
        * UserInterface/Controllers/JavaScriptLogViewController.js:
        (WebInspector.JavaScriptLogViewController.prototype._handleClearShortcut):
        (WebInspector.JavaScriptLogViewController.prototype.clear): Deleted.
        Remove delegate function call and call LogManager directly.
        
        * UserInterface/Controllers/LogManager.js:
        (WebInspector.LogManager):
        (WebInspector.LogManager.prototype.messagesCleared):
        (WebInspector.LogManager.prototype._delayedMessagesCleared):
        (WebInspector.LogManager.prototype.requestClearMessages):
        (WebInspector.LogManager.prototype._mainResourceDidChange):
        Isolate "clear log" logic, especially clear/keep-log-on-reload logic.
        
        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView):
        (WebInspector.LogContentView.prototype._sessionStarted):
        (WebInspector.LogContentView.prototype._handleContextMenuEvent):
        (WebInspector.LogContentView.prototype._logCleared):
        (WebInspector.LogContentView.prototype._toggleClearLogOnReloadSetting):
        (WebInspector.LogContentView.prototype._clearLog):
        (WebInspector.LogContentView.prototype.didClearMessages): Deleted.
        (WebInspector.LogContentView.prototype._sessionsCleared): Deleted.
        (WebInspector.LogContentView.prototype._activeLogCleared): Deleted.
        (WebInspector.LogContentView.prototype._clearLogIgnoringClearMessages): Deleted.
        Make it a consumer of LogManager and remove special hacks. Simplify code.

2015-06-03  Devin Rousso  <drousso@apple.com>

        Web Inspector: if a known CSS property has an unsupported value, only strikethrough the value
        https://bugs.webkit.org/show_bug.cgi?id=141262

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/CSSCompletions.js:
        (WebInspector.CSSCompletions.prototype.nameMatchesValidPropertyExactly): Loops through the full property list and returns true only if a property exactly matches the given property name.
        (WebInspector.CSSCompletions): Added nameMatchesValidPropertyExactly function.
        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded): Added logic to limit the invalid class marker to only the property value if the property name is an actual property.

2015-06-03  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Search field bottom border doesn't match the rest of the toolbar
        https://bugs.webkit.org/show_bug.cgi?id=145611

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/Toolbar.css:
        (body:not(.unknown-mac) .toolbar .search-bar > input[type="search"]):

2015-06-03  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Uncaught exception starting a NavigationBar drag and mousing over a different NavigationBar
        https://bugs.webkit.org/show_bug.cgi?id=145589

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/NavigationBar.js:
        (WebInspector.NavigationBar.prototype._mouseDown):
        (WebInspector.NavigationBar.prototype._mouseUp):
        When mouse dragging for navigation bars, only match against navigation
        bar items inside this navigation bar. Also, fix horizontal detection
        of navigation bar items by scanning in the middle of the navigation
        bar instead of the top, which missed the items.

2015-06-03  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Debugger Popover for Node object should have go-to-arrow to show the node in DOM tree
        https://bugs.webkit.org/show_bug.cgi?id=145594

        Reviewed by Timothy Hatcher.

        * UserInterface/Controllers/DOMTreeManager.js:
        (WebInspector.DOMTreeManager.prototype.inspectElement):
        Previously we could get an exception later on if we tried to
        inspect an element that was not in the DOM. Bail if the node
        is not in the DOM or not.

        * UserInterface/Views/SourceCodeTextEditor.css:
        (.popover .debugger-popover-content > .title > .go-to-arrow):
        * UserInterface/Views/SourceCodeTextEditor.js:
        (WebInspector.SourceCodeTextEditor.prototype._showPopoverForObject.data.pushNodeToFrontend):
        (WebInspector.SourceCodeTextEditor.prototype._showPopoverForObject):
        For a node type, add a go-to-arrow in the popover if it is in the DOM or not.

2015-06-02  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Remove uses of delete in Sidebar related code
        https://bugs.webkit.org/show_bug.cgi?id=145592

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
        (WebInspector.CSSStyleDetailsSidebarPanel.prototype.refresh):
        Clear value instead of deleting.

        * UserInterface/Views/SearchSidebarPanel.js:
        (WebInspector.SearchSidebarPanel.prototype.performSearch):
        Just clear the search identifier. Also assert it (a required string) is always non-falsey.

        * UserInterface/Views/Sidebar.js:
        (WebInspector.Sidebar.prototype.resizerDragEnded): Deleted.
        This entire callback is unnecessary because whenever we start
        a drag we save the value.

2015-06-02  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Sidebar and sometimes ContentView scroll position is lost when switching between tabs
        https://bugs.webkit.org/show_bug.cgi?id=145591

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/Sidebar.js:
        (WebInspector.Sidebar.prototype.removeSidebarPanel):
        When removing a sidebar panel, ensure we call hidden if it was the visible panel.

        * UserInterface/Views/SidebarPanel.js:
        (WebInspector.SidebarPanel):
        (WebInspector.SidebarPanel.prototype.shown):
        (WebInspector.SidebarPanel.prototype.hidden):
        Save and restore content element scroll position when sidebar panels are shown / hidden.

        * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
        (WebInspector.CSSStyleDetailsSidebarPanel.prototype.visibilityDidChange):
        * UserInterface/Views/ComputedStyleDetailsPanel.js:
        (WebInspector.ComputedStyleDetailsPanel.prototype.shown):
        * UserInterface/Views/DetailsSidebarPanel.js:
        (WebInspector.DetailsSidebarPanel.prototype.shown):
        * UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
        (WebInspector.LayerTreeDetailsSidebarPanel.prototype.shown):
        (WebInspector.LayerTreeDetailsSidebarPanel.prototype.hidden):
        Cleanup. Since sidebar panels are using ES6 classes, have super class calls use `super`!

2015-06-02  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Use non-monospace font for the frame selector
        https://bugs.webkit.org/show_bug.cgi?id=145586

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/HierarchicalPathComponent.css:
        (.hierarchical-path-component):

2015-06-02  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Dashboard arrow icon on the right is overlapped by a long function/file name
        https://bugs.webkit.org/show_bug.cgi?id=145540

        Also, increase clickable area of the arrow icon.

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/DashboardContainerView.css:
        (.dashboard-container .advance-arrow):
        (.dashboard-container .advance-arrow.advance-forward):
        (.dashboard-container .advance-arrow.advance-backward):
        * UserInterface/Views/DebuggerDashboardView.css:
        (.dashboard.debugger > .location):
        (.toolbar .dashboard.debugger):
        Increase padding on the right so the content of the dashboard would be never be overlayed by the arrow.

2015-06-02  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Shift + Cmd + Left/Right shouldn't switch tabs while editing text
        https://bugs.webkit.org/show_bug.cgi?id=145562

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/TabBrowser.js:
        (WebInspector.TabBrowser):
        Only these keyboard shortcuts should check if we are in an editable field.
        Remove the implicit prevent default so they can fall back to system behavior
        if necessary.

        (WebInspector.TabBrowser.prototype._showNextTabCheckingForEditableField):
        (WebInspector.TabBrowser.prototype._showPreviousTabCheckingForEditableField):
        Bail if we are in an editable field. Otherwise perform the action and prevent default.

2015-06-02  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: ⌘F no longer brings up the find-in-page bar after typing in the quick console
        https://bugs.webkit.org/show_bug.cgi?id=145546

        Reviewed by Timothy Hatcher.

        Scope ContentBrowser keyboard events within the ContentBrowser instead
        of global, where they might conflict between ContentBrowsers. The scoped
        shortcuts now no longer need to be enabled/disabled.

        * UserInterface/Views/ContentBrowser.js:
        (WebInspector.ContentBrowser):
        Scope the keyboard shortcuts.

        (WebInspector.ContentBrowser.prototype.shown):
        (WebInspector.ContentBrowser.prototype.hidden):
        No longer need to control enabling / disabling these non-global shortcuts.

2015-06-01  Jono Wells  <jonowells@apple.com>

        Web Inspector: Type token text descenders touch bottom of container
        https://bugs.webkit.org/show_bug.cgi?id=145544

        Reviewed by Timothy Hatcher.

        Move 1px padding from top to bottom of token.

        * UserInterface/Views/TypeTokenView.css:
        (.type-token):

2015-06-01  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Better handle keyboard events in the quick console prompt
        https://bugs.webkit.org/show_bug.cgi?id=145548

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/Main.js:
        (WebInspector.saveDataToFile):
        Move generic InspectorFrontendHost code here.

        * UserInterface/Views/ContentBrowser.js:
        (WebInspector.ContentBrowser.prototype._save):
        (WebInspector.ContentBrowser.prototype._saveAs):
        (WebInspector.ContentBrowser.prototype._saveDataToFile): Deleted.
        Use the generic save code.

        * UserInterface/Controllers/JavaScriptLogViewController.js:
        (WebInspector.JavaScriptLogViewController):
        (WebInspector.JavaScriptLogViewController.prototype._save):
        (WebInspector.JavaScriptLogViewController.prototype._saveAs):
        Handle save keyboard shortcuts while the prompt is focused.

        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype.focusSearchBar):
        (WebInspector.LogContentView.prototype.save):
        (WebInspector.LogContentView.prototype.saveAs):
        Better handle keyboard shortcut cases in the console prompt for cases
        like a collapsed or split console view.

2015-06-01  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Pause/resume button in the debugger dashboard is vertically misaligned
        https://bugs.webkit.org/show_bug.cgi?id=145534

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ButtonNavigationItem.css:
        (.navigation-bar .item.button.suppress-emboss):
        Never show borders for the pause/resume button.

        * UserInterface/Views/DebuggerDashboardView.css:
        (.dashboard.debugger .navigation-bar .item.button):

2015-05-31  Yusuke Suzuki  <utatane.tea@gmail.com>

        Web Inspector: Drop forEach from WeakMap / WeakSet native member function maps
        https://bugs.webkit.org/show_bug.cgi?id=145497

        Reviewed by Sam Weinig.

        WeakMap / WeakSet don't have forEach method.
        This patch drops it from the native prototype function parameters map.

        * UserInterface/Models/NativeFunctionParameters.js:

2015-05-29  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Resources tab navigation sidebar should have a type filter header
        https://bugs.webkit.org/show_bug.cgi?id=145474

        Reviewed by Joseph Pecoraro.

        * Localizations/en.lproj/localizedStrings.js: Updated.

        * UserInterface/Images/UpDownArrows.svg: Make styleable.

        * UserInterface/Main.html: Added new files.

        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView): Drive-by fix. Mark All as exclusive.

        * UserInterface/Views/MultipleScopeBarItem.js: Added.
        (WebInspector.MultipleScopeBarItem):
        (WebInspector.MultipleScopeBarItem.prototype.get element):
        (WebInspector.MultipleScopeBarItem.prototype.get exclusive):
        (WebInspector.MultipleScopeBarItem.prototype.get scopeBarItems):
        (WebInspector.MultipleScopeBarItem.set scopeBarItems.createOption):
        (WebInspector.MultipleScopeBarItem.prototype.set scopeBarItems):
        (WebInspector.MultipleScopeBarItem.prototype.get selected):
        (WebInspector.MultipleScopeBarItem.prototype.set selected):
        (WebInspector.MultipleScopeBarItem.prototype.get selectedScopeBarItem):
        (WebInspector.MultipleScopeBarItem.prototype.set selectedScopeBarItem):
        (WebInspector.MultipleScopeBarItem.prototype._clicked):
        (WebInspector.MultipleScopeBarItem.prototype._selectElementSelectionChanged):
        (WebInspector.MultipleScopeBarItem.prototype._itemSelectionDidChange):

        * UserInterface/Views/NavigationSidebarPanel.js:
        (WebInspector.NavigationSidebarPanel.prototype.matchTreeElementAgainstFilterFunctions):
        (WebInspector.NavigationSidebarPanel.prototype.applyFiltersToTreeElement.matchTextFilter):
        (WebInspector.NavigationSidebarPanel.prototype.applyFiltersToTreeElement.makeVisible):
        (WebInspector.NavigationSidebarPanel.prototype.applyFiltersToTreeElement):
        (WebInspector.NavigationSidebarPanel.prototype._updateFilter):
        (WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged):
        Improve filtering so non-text filters can choose to auto-expand the tree.

        * UserInterface/Views/ResourceSidebarPanel.css: Added.
        (.sidebar > .panel.navigation.resource > :matches(.content, .empty-content-placeholder)):
        (.sidebar > .panel.navigation.resource > .navigation-bar):

        * UserInterface/Views/ResourceSidebarPanel.js:
        (WebInspector.ResourceSidebarPanel):
        (WebInspector.ResourceSidebarPanel.prototype.hasCustomFilters):
        (WebInspector.ResourceSidebarPanel.prototype.matchTreeElementAgainstCustomFilters.match):
        (WebInspector.ResourceSidebarPanel.prototype.matchTreeElementAgainstCustomFilters):
        (WebInspector.ResourceSidebarPanel.prototype._scopeBarSelectionDidChange):
        Make a ScopeBar and make it filter the TreeOutline when needed.

        * UserInterface/Views/ScopeBar.css:
        (.scope-bar > li.multiple):
        (.scope-bar > li.multiple > select):
        (.scope-bar > li.multiple.selected > select):
        (.scope-bar > li.multiple > .arrows):
        (.scope-bar > li.multiple:matches(.selected, :hover, :active) > .arrows svg .filled):
        (.scope-bar > li.multiple:matches(.selected, :hover, :active) > .arrows svg .stroked):

        * UserInterface/Views/ScopeBar.js:
        (WebInspector.ScopeBar): Support shouldGroupNonExclusiveItems which will use MultipleScopeBarItem.
        (WebInspector.ScopeBar.prototype._populate):
        (WebInspector.ScopeBar.prototype._itemSelectionDidChange):
        (WebInspector.ScopeBar.prototype.updateLayout): Deleted. Not needed for our current styles.

        * UserInterface/Views/ScopeBarItem.js:
        (WebInspector.ScopeBarItem):
        (WebInspector.ScopeBarItem.prototype.get id):
        (WebInspector.ScopeBarItem.prototype.get label):
        (WebInspector.ScopeBarItem.prototype.get exclusive):
        (WebInspector.ScopeBarItem.prototype.setSelected):
        (WebInspector.ScopeBarItem.prototype._clicked):
        (WebInspector.ScopeBarItem.prototype.get element): Deleted.
        (WebInspector.ScopeBarItem.prototype._markElementSelected): Deleted.
        Cleaned up and modernized a bit.

2015-05-29  Tobias Reiss  <tobi+webkit@basecode.de>

        Web Inspector: Activity Viewer does not update on "clear all console messages"
        https://bugs.webkit.org/show_bug.cgi?id=144681

        Reviewed by Joseph Pecoraro.

        Do not apply "ignoreDidClearMessages" hack on "Clear log" Button and Context menu.

        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype._sessionStarted):
        (WebInspector.LogContentView.prototype._clearLogIgnoringClearMessages):
        (WebInspector.LogContentView.prototype._clearLog): Deleted.

2015-05-29  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Remove unused expandTreeElementsWhenArrowing property from TreeOutline
        https://bugs.webkit.org/show_bug.cgi?id=145470

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/TreeOutline.js:
        (WebInspector.TreeOutline.prototype._treeKeyDown):
        Replaced uses of removed property with boolean literal.

2015-05-29  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Tabs should have Context Menus
        https://bugs.webkit.org/show_bug.cgi?id=144208

        Reviewed by Timothy Hatcher.

        Give non-pinned tabs "Close Tab" and "Close Other Tabs" context
        menu items to affect other non-pinned tabs.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Views/TabBarItem.js:
        (WebInspector.TabBarItem):
        (WebInspector.TabBarItem.prototype._handleContextMenuEvent.closeTab):
        (WebInspector.TabBarItem.prototype._handleContextMenuEvent.closeOtherTabs):
        (WebInspector.TabBarItem.prototype._handleContextMenuEvent):

2015-05-29  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Restoring the last selected DOM node fails on reload (DOMAgent: No node with given path found)
        https://bugs.webkit.org/show_bug.cgi?id=144231

        Reviewed by Timothy Hatcher.

        Removed _restoreSelectedNodeIsAllowed flag from DOMTreeContentView. The frontend receives two documentUpdated
        events from the DOM Agent during page reload, and the flag was preventing DOMTreeContentView from restoring
        the previous selection in response to the second event.

        * UserInterface/Views/DOMTreeContentView.js:
        (WebInspector.DOMTreeContentView.prototype.selectLastSelectedNode):
        (WebInspector.DOMTreeContentView.prototype._restoreSelectedNodeAfterUpdate):

2015-05-28  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Update toolbar styles
        https://bugs.webkit.org/show_bug.cgi?id=145419

        Also, use hairline borders (1 phisical pixel) on retina (DPI >= 2).

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ButtonToolbarItem.css:
        (.toolbar .item.button): Deleted.
        (.toolbar.icon-and-label-vertical .item.button): Deleted.
        (.toolbar.icon-and-label-horizontal .item.button): Deleted.
        (.toolbar .item.button > .glyph): Deleted.
        (.toolbar.small-size .item.button > .glyph): Deleted.
        * UserInterface/Views/DashboardContainerView.css:
        (.toolbar .dashboard-container): Deleted.
        (.toolbar.collapsed .dashboard-container): Deleted.
        (.toolbar.small-size:matches(.icon-only, .icon-and-label-vertical, .icon-and-label-horizontal) .dashboard-container): Deleted.
        (.toolbar .dashboard.slide-out-down): Deleted.
        (.toolbar .dashboard.slide-in-up): Deleted.
        * UserInterface/Views/Toolbar.css:
        (.toolbar .search-bar > input[type="search"]):
        (.toolbar .search-bar > input[type="search"]::-webkit-textfield-decoration-container):
        (body:not(.unknown-mac) .toolbar .dashboard-container):
        (body:not(.unknown-mac) .toolbar .search-bar > input[type="search"]):
        (body:not(.unknown-mac) .toolbar .search-bar > input[type="search"]:focus):
        (body:not(.unknown-mac) .toolbar .item.button:active):
        (body.window-inactive:not(.unknown-mac) .toolbar .dashboard-container):
        (body.unknown-mac .toolbar .dashboard-container):
        (body.unknown-mac .toolbar .search-bar > input[type="search"]):
        (body.unknown-mac .toolbar .search-bar > input[type="search"]:focus):
        (@media (-webkit-min-device-pixel-ratio: 2)):
        (body.unknown-mac .toolbar .item.button:active):
        (body.unknown-mac.window-inactive .toolbar .dashboard-container):

2015-05-28  Devin Rousso  <drousso@apple.com>

        Web Inspector: Jump from a computed style to the rule it came from
        https://bugs.webkit.org/show_bug.cgi?id=120640

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded):
        If the delegate of CSSStyleDeclarationTextEditor has cssStyleDeclarationTextEditorShouldAddPropertyGoToArrows set to true, add a goToArrow to all CSS property entries.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype.highlightProperty.propertiesMatch):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype.highlightProperty.hasMatchingLonghandProperty):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype.highlightProperty):
        Determines if a given CSS property is in the CSS style section and if so, select that CSS property, focus on the section containing that CSS property, and return true.
        * UserInterface/Views/CSSStyleDeclarationSection.js:
        (WebInspector.CSSStyleDeclarationSection.prototype.highlightProperty):
        Searches through the properties of the section for a given property and scrolls to it if found.
        * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
        (WebInspector.CSSStyleDetailsSidebarPanel.prototype.computedStyleDetailsPanelShowProperty):
        Switches to the rulesStyleDetailsPanel and scrolls to and hightlights a given property in that panel.
        (WebInspector.CSSStyleDetailsSidebarPanel.prototype._navigationItemSelected):
        (WebInspector.CSSStyleDetailsSidebarPanel.prototype._switchPanels):
        Moved this function out of _navigationItemSelected for better reusablity.
        * UserInterface/Views/ComputedStyleDetailsPanel.js:
        (WebInspector.ComputedStyleDetailsPanel.prototype.cssStyleDeclarationTextEditorShowProperty):
        Function that calls the delegate (which should be CSSStyleDetailsSidebarPanel) function computedStyleDetailsPanelShowProperty.
        * UserInterface/Views/RulesStyleDetailsPanel.js:
        (WebInspector.RulesStyleDetailsPanel):
        (WebInspector.RulesStyleDetailsPanel.prototype.refresh):
        (WebInspector.RulesStyleDetailsPanel.prototype.scrollToSectionAndHighlightProperty):
        Searches through all the sections of the RulesStyleDetailsPanel for a given CSS property.
        (WebInspector.RulesStyleDetailsPanel.prototype.shown):
        (WebInspector.RulesStyleDetailsPanel.prototype.hidden):
        (WebInspector.RulesStyleDetailsPanel.prototype.nodeStylesRefreshed):
        Added a flag to this function that will highlight and scroll to a given property (_propertyToSelectAndHighlight) if set on load.
        * UserInterface/Views/StyleDetailsPanel.js:
        (WebInspector.StyleDetailsPanel.prototype.markAsNeedsRefresh):
        (WebInspector.StyleDetailsPanel.prototype.nodeStylesRefreshed):
        Made into protected function to allow it to be overridden.
        (WebInspector.StyleDetailsPanel.prototype._nodeStylesRefreshed): Deleted.

2015-05-28  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Should have a keyboard shortcut to switch between inspector tabs
        https://bugs.webkit.org/show_bug.cgi?id=144207

        Reviewed by Timothy Hatcher.

        These keyboard shortcuts work well in an undocked inspector window.
        Be careful that some keyboard shortcuts, when used inside a text
        editor / text field are just text actions. However, some keyboard
        shortcuts will work no matter where you trigger them.

        * UserInterface/Models/KeyboardShortcut.js:
        * UserInterface/Views/TabBar.js:
        (WebInspector.TabBar.prototype.selectPreviousTab):
        (WebInspector.TabBar.prototype.selectNextTab):
        * UserInterface/Views/TabBrowser.js:
        (WebInspector.TabBrowser):
        (WebInspector.TabBrowser.prototype._showPreviousTab):
        (WebInspector.TabBrowser.prototype._showNextTab):

2015-05-28  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: NewTabContentView should update button disabled state as other tabs are added/removed
        https://bugs.webkit.org/show_bug.cgi?id=145448

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/NewTabContentView.js:
        (WebInspector.NewTabContentView):
        Always add a click listener and add the type as a private property on the element.

        (WebInspector.NewTabContentView.prototype.shown):
        (WebInspector.NewTabContentView.prototype.hidden):
        Add / remove event listeners for tab changes. Also update the view when shown.
        
        (WebInspector.NewTabContentView.prototype._createNewTab):
        A disabled button an now be clicked. Do nothing if a new tab of this type is not allowed.

        (WebInspector.NewTabContentView.prototype._updateTabItems):
        Refresh the disabled state for each of the buttons.

2015-05-27  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Show Page Source does not switch to Resources tab if inspector was closed
        https://bugs.webkit.org/show_bug.cgi?id=145423

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/Main.js:
        (WebInspector._frameWasAdded.delayedWork):
        (WebInspector._frameWasAdded):
        In the special case where we are holding to show a frame's source code when
        the frame becomes available (_frameIdentifierToShowSourceCodeWhenAvailable)
        we should be forcing to show the tab.

2015-05-27  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Toggling an inherited property sometimes stops working
        https://bugs.webkit.org/show_bug.cgi?id=145416

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/DOMNodeStyles.js:
        (WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload):
        Ensure we update the existing model objects with the new state information
        before possibly bailing. This may produce changed events that update
        parts of the inspector appropriately.

2015-05-27  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: REGRESSION(r179286) Editing Style Metrics Values no longer works
        https://bugs.webkit.org/show_bug.cgi?id=143164

        Reviewed by Brian Burg.

        * UserInterface/Views/BoxModelDetailsSectionRow.js:
        (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics.createElement):
        (WebInspector.BoxModelDetailsSectionRow.prototype._applyUserInput.resolvedNode.toggleInlineStyleProperty):
        (WebInspector.BoxModelDetailsSectionRow.prototype._applyUserInput.resolvedNode.didToggle):
        (WebInspector.BoxModelDetailsSectionRow.prototype._applyUserInput.resolvedNode):
        (WebInspector.BoxModelDetailsSectionRow.prototype._applyUserInput):
        Make it so editing in the metrics pane just evaluates elem.style.setProperty
        on the inspected page. Use "!important" to try and give the maximum priority
        possible, which is a change from older behavior. Finally, refresh the sidebar
        to update all values, and update the UI if bad input didn't change styles.

2015-05-26  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Function parameter string parsing improperly handles empty parameter list
        https://bugs.webkit.org/show_bug.cgi?id=145391

        Reviewed by Darin Adler.

        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        (WebInspector.ObjectTreePropertyTreeElement.prototype._functionParameterString):

2015-05-26  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Add Array.prototype.copyWithin parameter list
        https://bugs.webkit.org/show_bug.cgi?id=145388

        Reviewed by Darin Adler.

        * UserInterface/Models/NativeFunctionParameters.js:

2015-05-26  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: focus outline of a search field should have a radius
        https://bugs.webkit.org/show_bug.cgi?id=145383

        Add a focus outline animation to roughly mimic the default focus outline of OS X.

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/Toolbar.css:
        (.toolbar .search-bar > input[type="search"]):
        -webkit-focus-ring-color doesn't follow element's curvature (e.g. border-radius)
        and it cannot be animated. Replace it with box-shadow.

        (.toolbar .search-bar > input[type="search"]:focus):

2015-05-26  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: The bottom part "debugger" is clipped in the tab’s title
        https://bugs.webkit.org/show_bug.cgi?id=145381

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/TabBar.css:
        (.tab-bar > .item):
        Set line-height to fit "debugger". Setting line-height to 16px, which is the
        size of the tabs icons, moves the text one pixel up, so set it to 15px.

2015-05-26  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/21104551> Update build settings

        Reviewed by Anders Carlsson.

        * Configurations/Base.xcconfig:
        * Configurations/DebugRelease.xcconfig:
        * Configurations/Version.xcconfig:

2015-05-23  Dan Bernstein  <mitz@apple.com>

        Remove unused definitions of WEBKIT_VERSION_MIN_REQUIRED
        https://bugs.webkit.org/show_bug.cgi?id=145345

        Reviewed by Sam Weinig.

        * Configurations/Base.xcconfig:

2015-05-23  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Remove code related with unused style classes
        https://bugs.webkit.org/show_bug.cgi?id=145332

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ConsoleMessageView.js:
        (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString.append):
        (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString):
        The "type-string" class has no styles associated with it. So the entire span can be removed.

        * UserInterface/Views/DOMTreeElement.js:
        Both of these style classes have no styles associated with them. Remove the class names.

2015-05-23  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Improve native parameter lists a bit
        https://bugs.webkit.org/show_bug.cgi?id=145338

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/NativeFunctionParameters.js:
        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        (WebInspector.ObjectTreePropertyTreeElement.prototype._functionParameterString):

2015-05-23  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Update CSS Autocompletion properties and values
        https://bugs.webkit.org/show_bug.cgi?id=145341

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/CSSKeywordCompletions.js:

2015-05-22  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Adopt Object.setPrototypeOf
        https://bugs.webkit.org/show_bug.cgi?id=145335

        Reviewed by Timothy Hatcher.

        For a case that won't easily move to ES6 classes use Object.setPrototypeOf.

        * UserInterface/Protocol/InspectorBackend.js:
        (InspectorBackend.Command.create):

2015-05-22  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Inline use once class names and remove some unused class names
        https://bugs.webkit.org/show_bug.cgi?id=145334

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ApplicationCacheFrameContentView.js:
        (WebInspector.ApplicationCacheFrameContentView):
        * UserInterface/Views/BoxModelDetailsSectionRow.js:
        (WebInspector.BoxModelDetailsSectionRow):
        * UserInterface/Views/CSSStyleDeclarationSection.js:
        (WebInspector.CSSStyleDeclarationSection):
        * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
        (WebInspector.CSSStyleDetailsSidebarPanel):
        * UserInterface/Views/ClusterContentView.js:
        (WebInspector.ClusterContentView):
        * UserInterface/Views/CompletionSuggestionsView.js:
        (WebInspector.CompletionSuggestionsView):
        * UserInterface/Views/ConsolePrompt.js:
        (WebInspector.ConsolePrompt):
        * UserInterface/Views/ContentBrowser.js:
        (WebInspector.ContentBrowser):
        * UserInterface/Views/ContentFlowTreeElement.js:
        (WebInspector.ContentFlowTreeElement):
        * UserInterface/Views/ContentView.js:
        (WebInspector.ContentView):
        * UserInterface/Views/ContentViewContainer.js:
        (WebInspector.ContentViewContainer):
        * UserInterface/Views/CookieStorageContentView.js:
        (WebInspector.CookieStorageContentView):
        * UserInterface/Views/CookieStorageTreeElement.js:
        (WebInspector.CookieStorageTreeElement):
        * UserInterface/Views/DOMStorageContentView.js:
        (WebInspector.DOMStorageContentView):
        * UserInterface/Views/DOMTreeContentView.js:
        (WebInspector.DOMTreeContentView):
        * UserInterface/Views/DashboardView.js:
        (WebInspector.DashboardView):
        * UserInterface/Views/DatabaseTableContentView.js:
        (WebInspector.DatabaseTableContentView):
        * UserInterface/Views/DebuggerDashboardView.js:
        (WebInspector.DebuggerDashboardView):
        (WebInspector.DebuggerDashboardView.prototype._rebuildLocation):
        * UserInterface/Views/DetailsSection.js:
        (WebInspector.DetailsSection):
        * UserInterface/Views/DetailsSectionSimpleRow.js:
        * UserInterface/Views/FontResourceContentView.js:
        (WebInspector.FontResourceContentView):
        (WebInspector.FontResourceContentView.prototype.createMetricElement):
        (WebInspector.FontResourceContentView.prototype.contentAvailable):
        * UserInterface/Views/HierarchicalPathComponent.js:
        (WebInspector.HierarchicalPathComponent):
        (WebInspector.HierarchicalPathComponent.prototype.set selectorArrows):
        * UserInterface/Views/IndexedDatabaseObjectStoreContentView.js:
        * UserInterface/Views/LayoutTimelineOverviewGraph.js:
        (WebInspector.LayoutTimelineOverviewGraph):
        * UserInterface/Views/NetworkTimelineOverviewGraph.js:
        (WebInspector.NetworkTimelineOverviewGraph):
        * UserInterface/Views/OverviewTimelineView.js:
        * UserInterface/Views/ProbeSetDetailsSection.js:
        * UserInterface/Views/QuickConsole.js:
        * UserInterface/Views/ReplayDashboardView.js:
        * UserInterface/Views/ScriptContentView.js:
        (WebInspector.ScriptContentView):
        * UserInterface/Views/ScriptTimelineOverviewGraph.js:
        (WebInspector.ScriptTimelineOverviewGraph):
        * UserInterface/Views/TextContentView.js:
        (WebInspector.TextContentView):
        * UserInterface/Views/TimelineOverview.js:
        (WebInspector.TimelineOverview):
        * UserInterface/Views/TimelineOverviewGraph.js:
        (WebInspector.TimelineOverviewGraph):
        * UserInterface/Views/TimelineRecordBar.js:
        (WebInspector.TimelineRecordBar):
        * UserInterface/Views/TimelineRecordFrame.js:
        (WebInspector.TimelineRecordFrame):
        * UserInterface/Views/TimelineRecordingContentView.js:
        (WebInspector.TimelineRecordingContentView):
        * UserInterface/Views/TimelineRuler.js:
        (WebInspector.TimelineRuler):
        (WebInspector.TimelineRuler.prototype.set allowsTimeRangeSelection):

2015-05-22  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: DOMTree Keyboard Shortcut 'H' to toggle element visibility is not working
        https://bugs.webkit.org/show_bug.cgi?id=145331

        Reviewed by Brian Burg.

        We no longer have CSSProperty.value setters. Instead of attempting
        to toggle and clobber inline style values on the element we:
        
          1. inject a <style> on the page like ".WebInspectorHide { visibility:hidden }"
          2. toggle the WebInspectorHide class on the selected element

        This approach is inspired by the original WebKit change in the
        old inspector frontend: <https://webkit.org/b/110641>.

        The old approach toggled a few properties (opacity and pointer events)
        while the new approach uses visibility, matching other browsers.

        * UserInterface/Views/DOMTreeOutline.js:
        (WebInspector.DOMTreeOutline.prototype._hideElement.resolvedNode.injectStyleAndToggleClass):
        (WebInspector.DOMTreeOutline.prototype._hideElement.resolvedNode):
        (WebInspector.DOMTreeOutline.prototype._hideElement):
        (WebInspector.DOMTreeOutline.prototype._hideElement.toggleProperties): Deleted.

2015-05-21  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Give Toolbar buttons an active style
        https://bugs.webkit.org/show_bug.cgi?id=145292

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ButtonToolbarItem.css:
        (.toolbar .item.button:active):

2015-05-21  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Dashboard debugger information can be clipped
        https://bugs.webkit.org/show_bug.cgi?id=144209

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/DashboardContainerView.css:
        (.toolbar .dashboard-container):
        Make dashboard flexible by using vw (viewport width units).

        * UserInterface/Views/DefaultDashboardView.css:
        (.toolbar .dashboard.default):
        Center default dashboard icons in the middle, don't spread them along the dashboard.

2015-05-21  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Improve the UI of the type profiler popover
        https://bugs.webkit.org/show_bug.cgi?id=140737

        Reviewed by Timothy Hatcher.

        Display TypeDescriptions in a Tree similiar to ObjectTrees.
        Currently the only information we have in a TypeDescription
        is the property names, and not their types, so all we can
        display in the tree are names.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Controllers/TypeTokenAnnotator.js:
        (WebInspector.TypeTokenAnnotator.prototype._insertTypeToken):
        * UserInterface/Main.html:
        * UserInterface/Models/ScriptSyntaxTree.js:
        (WebInspector.ScriptSyntaxTree.prototype.updateTypes):
        * UserInterface/Models/StructureDescription.js: Added.
        (WebInspector.StructureDescription):
        (WebInspector.StructureDescription.fromPayload):
        (WebInspector.StructureDescription.prototype.get fields):
        (WebInspector.StructureDescription.prototype.get optionalFields):
        (WebInspector.StructureDescription.prototype.get constructorName):
        (WebInspector.StructureDescription.prototype.get prototypeStructure):
        (WebInspector.StructureDescription.prototype.get imprecise):
        * UserInterface/Models/TypeDescription.js: Added.
        (WebInspector.TypeDescription):
        (WebInspector.TypeDescription.fromPayload):
        (WebInspector.TypeDescription.prototype.get leastCommonAncestor):
        (WebInspector.TypeDescription.prototype.get typeSet):
        (WebInspector.TypeDescription.prototype.get structures):
        (WebInspector.TypeDescription.prototype.get valid):
        (WebInspector.TypeDescription.prototype.get truncated):
        * UserInterface/Models/TypeSet.js:
        (WebInspector.TypeSet):
        (WebInspector.TypeSet.prototype.get primitiveTypeNames):
        * UserInterface/Views/ObjectTreeView.js:
        (WebInspector.ObjectTreeView.prototype._updateChildren):
        * UserInterface/Views/Section.css: Removed.
        * UserInterface/Views/Section.js: Removed.
        * UserInterface/Views/SourceCodeTextEditor.css:
        (.popover .expandable):
        * UserInterface/Views/SourceCodeTextEditor.js:
        (WebInspector.SourceCodeTextEditor):
        (WebInspector.SourceCodeTextEditor.prototype.showPopoverForTypes):
        (WebInspector.SourceCodeTextEditor.prototype._populateWithScriptContent):
        (WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedJavaScriptTypeInformation.handler):
        (WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedJavaScriptTypeInformation):
        (WebInspector.SourceCodeTextEditor.prototype._showPopoverForObject):
        * UserInterface/Views/TypePropertiesSection.js: Removed.
        * UserInterface/Views/TypeTokenView.js:
        (WebInspector.TypeTokenView):
        (WebInspector.TypeTokenView.titleForPopover):
        (WebInspector.TypeTokenView.prototype.update):
        (WebInspector.TypeTokenView.prototype._setUpMouseoverHandlers):
        (WebInspector.TypeTokenView.prototype._shouldShowPopover):
        (WebInspector.TypeTokenView.prototype._displayTypeName):
        * UserInterface/Views/TypeTreeElement.css: Added.
        (.type-tree-element):
        (.type-tree-element > .titles):
        (.type-tree-element > .disclosure-button):
        (.type-tree-element.parent > .disclosure-button):
        (.type-tree-element.parent.expanded > .disclosure-button):
        (.type-tree-element > .icon):
        (.type-tree-element.prototype):
        (.type-tree-element.prototype:focus):
        (.type-tree-element.prototype + ol):
        * UserInterface/Views/TypeTreeElement.js: Added.
        (WebInspector.TypeTreeElement):
        (WebInspector.TypeTreeElement.prototype.get name):
        (WebInspector.TypeTreeElement.prototype.get isPrototype):
        (WebInspector.TypeTreeElement.prototype.onpopulate):
        (WebInspector.TypeTreeElement.prototype.onexpand):
        * UserInterface/Views/TypeTreeView.css: Renamed from Source/WebInspectorUI/UserInterface/Views/PropertiesSection.js.
        (.type-tree):
        (.type-tree-outline):
        (.type-tree-outline li):
        (.type-tree-outline ol):
        (.type-tree-outline ol.expanded):
        (.type-tree-outline li .empty-message):
        * UserInterface/Views/TypeTreeView.js: Added.
        (WebInspector.TypeTreeView):
        (WebInspector.TypeTreeView.prototype.get typeDescription):
        (WebInspector.TypeTreeView.prototype.get element):
        (WebInspector.TypeTreeView.prototype.get treeOutline):
        (WebInspector.TypeTreeView.prototype._populate):

2015-05-20  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Fix WebInspector.StackTrace style
        https://bugs.webkit.org/show_bug.cgi?id=145240

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/StackTrace.js:
        Reorder and add our usual marker comments.

2015-05-19  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Improve Preview for NodeList / array like collections
        https://bugs.webkit.org/show_bug.cgi?id=145177

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ObjectPreviewView.js:
        (WebInspector.ObjectPreviewView.prototype._appendPreview):
        Show the class name for a non-basic-Array, but still hide
        it for a basic Array.

2015-05-19  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Convert stackTrace from raw payload data to an array of CallFrames
        https://bugs.webkit.org/show_bug.cgi?id=144982

        Reviewed by Joseph Pecoraro.

        * UserInterface/Controllers/LogManager.js:
        * UserInterface/Main.html:
        * UserInterface/Models/CallFrame.js:
        (WebInspector.CallFrame.fromPayload):
        Consider an empty string url as a native code as it was in 
        WebInspector.ConsoleMessageView.prototype._firstNonNativeCallFrame

        * UserInterface/Models/ConsoleMessage.js:
        (WebInspector.ConsoleMessage):
        Convert _stackTrace from an array of payload objects to WebInspector.StackTrace model.

        * UserInterface/Models/StackTrace.js: Added.
        (WebInspector.StackTrace):
        (WebInspector.StackTrace.prototype.get callFrames):
        (WebInspector.StackTrace.prototype.get firstNonNativeCallFrame): Added.
        (WebInspector.StackTrace.fromPayload):
        * UserInterface/Test.html:
        * UserInterface/Views/CallFrameView.js:
        (WebInspector.CallFrameView):
        Don't show a URL when sourceCodeLocation is missing, fix webkit.org/b/145071.

        * UserInterface/Views/ConsoleMessageView.js:
        (WebInspector.ConsoleMessageView):
        (WebInspector.ConsoleMessageView.prototype.toClipboardString):
        (WebInspector.ConsoleMessageView.prototype._appendLocationLink):
        (WebInspector.ConsoleMessageView.prototype._appendStackTrace):
        (WebInspector.ConsoleMessageView.prototype._shouldShowStackTrace):
        (WebInspector.ConsoleMessageView.prototype._linkifyCallFrame):
        (WebInspector.ConsoleMessageView.prototype._firstNonNativeCallFrame): Deleted.

2015-05-18  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Improve Reliability of Closing and Reopening Elements Tab
        https://bugs.webkit.org/show_bug.cgi?id=145139

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/DOMTreeElement.js:
        (WebInspector.DOMTreeElement.prototype.highlightSearchResults):
        (WebInspector.DOMTreeElement.prototype.hideSearchHighlights):
        (WebInspector.DOMTreeElement.prototype.emphasizeSearchHighlight.animationEnded):
        (WebInspector.DOMTreeElement.prototype.emphasizeSearchHighlight):
        (WebInspector.DOMTreeElement.prototype._updateChildren):
        (WebInspector.DOMTreeElement.prototype.adjustCollapsedRange):
        (WebInspector.DOMTreeElement.prototype._startEditingAsHTML.dispose):
        (WebInspector.DOMTreeElement.prototype._startEditingAsHTML):
        (WebInspector.DOMTreeElement.prototype.updateTitle):
        Stop using the `delete` operator.

        * UserInterface/Views/DOMTreeOutline.js:
        (WebInspector.DOMTreeOutline.prototype.setVisible):
        Trigger an update when the outline is made visible.

        * UserInterface/Views/FrameDOMTreeContentView.js:
        (WebInspector.FrameDOMTreeContentView.prototype._rootDOMNodeAvailable):
        Provide a reasonable default selection if there is no body or document element.
        For example in an augmented DOM tree.

2015-05-18  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Tab Restoration incorrectly makes ContentViews "shown" in background tabs
        https://bugs.webkit.org/show_bug.cgi?id=145080

        Reviewed by Timothy Hatcher.

        Many tabs have their own content browser / navigation sidebar. During
        state restoration, each tab would immediately try to restore an
        appropriate ContentView after the load / navigation. However, in doing
        so, we weren't respecting whether or not the Tab the ContentBrowser
        was in was hidden or not, so ContentViews in background tags were
        still being treated as shown/visible.

        This patch changes state restoration to only affect the foreground
        tab, and be delayed on all background tabs until that tab is shown.
        This reduces the amount of work on load and navigation to just a
        single tab instead of all tabs. Most importantly, it avoids having
        performing work on ContentBrowsers that are non-visible, so state
        restoration only happens for visible ContentBrowsers.

        For simplicity, in the case of a delayed tab restoration triggered
        by the user switching tabs, we don't try twice (like we occasionally
        do on load/reload). We could add back some hueristic here if needed.

        * UserInterface/Base/Main.js:
        (WebInspector.contentLoaded):
        (WebInspector.activateExtraDomains):
        (WebInspector._mainResourceDidChange):
        (WebInspector._restoreCookieForOpenTabs):
        * UserInterface/Views/NavigationSidebarPanel.js:

        * UserInterface/Views/TabContentView.js:
        (WebInspector.TabContentView.prototype.shown):
        (WebInspector.TabContentView.prototype.restoreStateFromCookie):
        (WebInspector.TabContentView.prototype.saveStateToCookie):
        When asked to restore state, save that logic until the next time the tab is shown.

        * UserInterface/Views/TextEditor.js:
        (WebInspector.TextEditor.prototype.get visible):
        * UserInterface/Views/SourceCodeTextEditor.js:
        (WebInspector.SourceCodeTextEditor.prototype.editingControllerDidStartEditing):
        (WebInspector.SourceCodeTextEditor.prototype._setTypeTokenAnnotatorEnabledState): Deleted.
        Although this didn't actually catch the issue, it could potentially
        catch other issues in the future. We don't want to enable the annotators
        in a non-visible text editor, as it could be a performance issue.

2015-05-15  Matt Baker  <mattbaker@apple.com>

        Web Inspector: empty timeline should not use previous timeline's zoom interval
        https://bugs.webkit.org/show_bug.cgi?id=132754

        Reviewed by Joseph Pecoraro.

        When a timeline recording is started in response to a provisional load, TimelineManager should check whether
        the main resource url is changing before loading a new timeline recording. If the main resource is changing,
        set the selection start, selection duration, and duration-per-pixel settings of the TimelineOverview to their
        default values.

        * UserInterface/Controllers/TimelineManager.js:
        (WebInspector.TimelineManager):
        (WebInspector.TimelineManager.prototype.isCapturingPageReload):
        (WebInspector.TimelineManager.prototype.capturingStopped):
        (WebInspector.TimelineManager.prototype.pageDidLoad):
        (WebInspector.TimelineManager.prototype._startAutoCapturing):
        Added a property for checking whether auto capture was triggered by a page reload.

        * UserInterface/Views/LinearTimelineOverview.js:
        (WebInspector.LinearTimelineOverview):
        Increase default selection time to 15 seconds.

        * UserInterface/Views/TimelineOverview.js:
        (WebInspector.TimelineOverview):
        Reset selection and zoom if TimelineManager isn't capturing in response to a page reload.

        (WebInspector.TimelineOverview.prototype.reset):
        Reset selection and zoom.

        (WebInspector.TimelineOverview.prototype._timeRangeSelectionChanged):
        (WebInspector.TimelineOverview.prototype._resetSelection):
        Added a helper function for resetting selection and zoom to their default values.

2015-05-15  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Timeline data grid displays wrong records after switching between Timelines/Frames mode
        https://bugs.webkit.org/show_bug.cgi?id=145084

        Reviewed by Timothy Hatcher.

        Update timeline sidebar filter whenever the view mode changes.

        * UserInterface/Views/TimelineSidebarPanel.js:
        (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject.get if.get if):
        (WebInspector.TimelineSidebarPanel.get else):
        (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject.get if):
        (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject):

2015-05-15  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Bump image format number to force image regeneration
        https://bugs.webkit.org/show_bug.cgi?id=145074

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/ImageUtilities.js:

2015-05-15  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Reduce type annotation update frequency
        https://bugs.webkit.org/show_bug.cgi?id=145066

        Reviewed by Timothy Hatcher.

        * UserInterface/Controllers/TypeTokenAnnotator.js:
        Reduce the frequency which could commonly be 16-24ms
        to a minimum of 100ms and maximum of 2000ms.

2015-05-15  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Fix some possible event listener leakers in content views
        https://bugs.webkit.org/show_bug.cgi?id=145068

        Reviewed by Timothy Hatcher.

        Now that some content views can be closed that weren't closable before, ensure
        we clean up after global event listeners that may strongly reference "this".

        * UserInterface/Views/DOMTreeContentView.js:
        (WebInspector.DOMTreeContentView.prototype.closed):
        * UserInterface/Views/DOMTreeOutline.js:
        (WebInspector.DOMTreeOutline.prototype.close):
        * UserInterface/Views/LayoutTimelineView.js:
        (WebInspector.LayoutTimelineView.prototype.closed):
        * UserInterface/Views/NetworkTimelineView.js:
        (WebInspector.NetworkTimelineView.prototype.closed):
        * UserInterface/Views/RenderingFrameTimelineView.js:
        (WebInspector.RenderingFrameTimelineView.prototype.closed):
        * UserInterface/Views/ScriptContentView.js:
        (WebInspector.ScriptContentView.prototype.closed):
        * UserInterface/Views/ScriptTimelineView.js:
        (WebInspector.ScriptTimelineView.prototype.closed):
        * UserInterface/Views/SourceCodeTextEditor.js:
        (WebInspector.SourceCodeTextEditor.prototype.close):
        * UserInterface/Views/TextResourceContentView.js:
        (WebInspector.TextResourceContentView.prototype.closed):
        * UserInterface/Views/TimelineDataGrid.js:
        (WebInspector.TimelineDataGrid.prototype.closed):
        (WebInspector.TimelineDataGrid.prototype.handleEvent):

2015-05-15  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Initiator Popovers no longer work in Layout Timeline
        https://bugs.webkit.org/show_bug.cgi?id=145067

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/LayoutTimelineDataGrid.js:
        (WebInspector.LayoutTimelineDataGrid.prototype.callFramePopoverAnchorElement):
        Update the column name, which changed in r183134.

2015-05-14  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Update the New Tab button disabled state after extra domains are activated
        https://bugs.webkit.org/show_bug.cgi?id=145028

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/Main.js:
        (WebInspector.activateExtraDomains):

2015-05-14  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Current time marker is always at zero in Rendering Frames ruler
        https://bugs.webkit.org/show_bug.cgi?id=144518

        Reviewed by Timothy Hatcher.

        The current and end time values for the rendering frame timeline overview should always be equal to the frame
        number of the last record in the rendering frames timeline.

        * UserInterface/Views/TimelineOverview.js:
        (WebInspector.TimelineOverview):
        (WebInspector.TimelineOverview.prototype.updateLayout):
        * UserInterface/Views/TimelineRecordingContentView.js:
        (WebInspector.TimelineRecordingContentView.prototype._updateTimes):
        (WebInspector.TimelineRecordingContentView.prototype._recordingTimesUpdated):

2015-05-11  Brent Fulgham  <bfulgham@apple.com>

        [Win] Move Windows build target to Windows 7 (or newer)
        https://bugs.webkit.org/show_bug.cgi?id=144890
        <rdar://problem/20707307>

        Reviewed by Anders Carlsson.

        Update linked SDK and minimal Windows level to be compatible with
        Windows 7 or newer.

        * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:

2015-05-11  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: REGRESSION (Tabs): Issues reloading a resource with breakpoints
        https://bugs.webkit.org/show_bug.cgi?id=144650

        Fix a number of issues with Debugger tab and navigation/reloading:
        - Close old content views in the Debugger tab when main frame navigates.
        - Prune old resource tree elements before attempting to restore a cookie that might match an old resource.
        - Allow breakpoint selections to be restored from a saved cookie.
        - Fix an assert when closing a content view that isn't the current index, but is the current view.
        - Avoid calling closed() multiple times when a ContentView is in the back/forward list more than once.
        - Make restoreStateFromCookie properly set and use the causedByNavigation argument for a longer restore delay.
        - Create a new cookie object per tab instead of it being cumulative from the previous cookie.

        Reviewed by Brian Burg.

        * UserInterface/Base/Main.js:
        (WebInspector._mainResourceDidChange): Delay calling _restoreCookieForOpenTabs to give time for sidebars
        and tabs to respond to the main resource change.
        (WebInspector._restoreCookieForOpenTabs): Rename causedByReload to causedByNavigation. Nothing special about
        reload since we restore on all navigation.

        * UserInterface/Views/ContentView.js:
        (WebInspector.ContentView): Support Breakpoint as a represented object, which happens during a cookie restore.
        (WebInspector.ContentView.isViewable): Ditto.

        * UserInterface/Views/ContentViewContainer.js:
        (WebInspector.ContentViewContainer.prototype.closeAllContentViews): Disassociate if the view is current and not just
        the current entry index. This matches other close functions. This fixes an assert in _disassociateFromContentView.
        (WebInspector.ContentViewContainer.prototype._disassociateFromContentView): Don't disassociate multiple times. This
        avoids calling the closed() function on a view more than once.

        * UserInterface/Views/DebuggerSidebarPanel.js:
        (WebInspector.DebuggerSidebarPanel.prototype.saveStateToCookie):
        (WebInspector.DebuggerSidebarPanel.prototype._mainResourceDidChange): Renamed from _mainResourceChanged.
        Close all content views if this is the main frame. Also prune all old resources. Doing this now avoids a flash
        of having old and new resources in the tree caused by the default delay in NavigationSidebarPanel's _checkForOldResources.

        * UserInterface/Views/NavigationSidebarPanel.js:
        (WebInspector.NavigationSidebarPanel): Set _autoPruneOldTopLevelResourceTreeElements for later.
        (WebInspector.NavigationSidebarPanel.prototype.get contentTreeOutlineToAutoPrune): Deleted.
        (WebInspector.NavigationSidebarPanel.prototype.showDefaultContentView): Fix typo.
        (WebInspector.NavigationSidebarPanel.prototype.showDefaultContentViewForTreeElement): Fix whitespace.
        (WebInspector.NavigationSidebarPanel.prototype.pruneOldResourceTreeElements): Added. Broken out from
        _checkForOldResources.delayedWork so it can be called manually. Also check all visible tree outlines.
        (WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged): Pass treeElement in an array.
        (WebInspector.NavigationSidebarPanel.prototype._checkForOldResourcesIfNeeded): Added.
        (WebInspector.NavigationSidebarPanel.prototype._checkForOldResources): Call pruneOldResourceTreeElements on a delay.
        (WebInspector.NavigationSidebarPanel.prototype._checkForOldResources.delayedWork): Deleted.
        (WebInspector.NavigationSidebarPanel.prototype._checkOutlinesForPendingViewStateCookie): Call _checkForOldResourcesIfNeeded.
        (WebInspector.NavigationSidebarPanel.prototype._checkElementsForPendingViewStateCookie): Remove array folding code.

        * UserInterface/Views/TabContentView.js:
        (WebInspector.TabContentView.prototype.restoreStateFromCookie): Rename causedByReload to causedByNavigation.
        (WebInspector.TabContentView.prototype.saveStateToCookie): Don't allow the cookie to build on the old cookie.

2015-05-11  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: NavigationSidebarPanel leaks some event listeners
        https://bugs.webkit.org/show_bug.cgi?id=144523

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/NavigationSidebarPanel.js:
        (WebInspector.NavigationSidebarPanel):
        (WebInspector.NavigationSidebarPanel.prototype.closed):
        * UserInterface/Views/ResourceSidebarPanel.js:
        (WebInspector.ResourceSidebarPanel.prototype.closed):
        * UserInterface/Views/SearchSidebarPanel.js:
        (WebInspector.SearchSidebarPanel.prototype.closed):
        * UserInterface/Views/StorageSidebarPanel.js:
        (WebInspector.StorageSidebarPanel.prototype.closed):
        * UserInterface/Views/TimelineSidebarPanel.js:
        (WebInspector.TimelineSidebarPanel.prototype.closed):

2015-05-10  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: In the console, show function name next to the source link
        https://bugs.webkit.org/show_bug.cgi?id=144372

        Introduce CallFrameView to display counsole message source links. It looks like this:

            [f] functionName - filename.js:42

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/Main.js:
        (WebInspector.createSourceCodeLocationLink):
        (WebInspector.linkifyLocation):
        (.showSourceCodeLocation):
        (WebInspector.linkifyElement):
        Abstract this out as it's used in WebInspector.CallFrameView and WebInspector.createSourceCodeLocationLink.

        (WebInspector.sourceCodeForURL):
        Move this code from Timeline to Main.js as it's used by Console too.

        (WebInspector.linkifyURLAsNode):
        Remove tooltipText argument as it is never used.

        * UserInterface/Controllers/TimelineManager.js:
        (WebInspector.TimelineManager.prototype._callFramesFromPayload):
        * UserInterface/Main.html:
        * UserInterface/Models/CallFrame.js:
        (WebInspector.CallFrame.fromPayload):
        Abstract this out as it's used in WebInspector.TimelineManager.prototype._callFramesFromPayload and
        WebInspector.ConsoleMessageView._appendLocationLink.

        (WebInspector.CallFrame):
        * UserInterface/Views/CallFrameTreeElement.js:
        (WebInspector.CallFrameTreeElement):
        Move it to WebInspector.CallFrameView.iconForCallFrame.

        * UserInterface/Views/CallFrameView.css: Added.
        (.call-frame):
        (.call-frame .icon):
        (.call-frame .titles):
        (.call-frame .title):
        (.call-frame .source-link):
        (.call-frame .title + .subtitle > .source-link):
        (.call-frame .subtitle .source-link):
        (.call-frame:focus .subtitle .source-link):
        (.call-frame .subtitle:empty):
        (.call-frame .subtitle):
        (.call-frame .colon):
        (.call-frame .title + .subtitle::before):
        * UserInterface/Views/CallFrameView.js: Added.
        (WebInspector.CallFrameView):
        (WebInspector.CallFrameView.iconClassNameForCallFrame):
        * UserInterface/Views/ConsoleMessageView.css:
        (.console-message .console-message-location):
        (.console-message .call-frame):
        (.console-message .go-to-link):
        (.console-message .go-to-link:focus):
        (.console-message .console-message-url::before):
        (.console-saved-variable): Deleted.
        * UserInterface/Views/ConsoleMessageView.js:
        (WebInspector.ConsoleMessageView.prototype._appendLocationLink):
        * UserInterface/Views/DebuggerDashboardView.js:
        * UserInterface/Views/Main.css:
        (.hidden): Deleted.
        * UserInterface/Views/ProfileNodeTreeElement.js:
        (WebInspector.ProfileNodeTreeElement):
        * UserInterface/Views/TimelineDataGridNode.js:
        (WebInspector.TimelineDataGridNode.prototype.createCellContent):

2015-05-08  Tobias Reiss  <tobi+webkit@basecode.de>

        Web Inspector: Styles sidebar editing with incomplete property looks poor in UI
        https://bugs.webkit.org/show_bug.cgi?id=141692

        Reviewed by Timothy Hatcher.

        Add "css-rule" Formatter that breaks CSS declarations into multiple lines,
        keeps comments and invalid styles and adds whitespace.

        * Tools/PrettyPrinting/css-rule-tests/*.css: Added.
        Add test cases.

        * Tools/PrettyPrinting/index.html:
        Enable Test setup to be able to run "css-rule" Formatter tests.

        * UserInterface/Controllers/Formatter.js:
        (Formatter.prototype._handleToken):
        * UserInterface/Controllers/FormatterContentBuilder.js:
        (FormatterContentBuilder.prototype.removeLastNewline):
        (FormatterContentBuilder.prototype.removeLastWhitespace):
        (FormatterContentBuilder.prototype._popFormattedContent):
        (FormatterContentBuilder.prototype._popNewLine): Deleted.
        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._formattedContentFromEditor):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent.update.set this):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent.update.get this):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent.update):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent.update.countNewLineCharacters): Deleted.
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent.update.else): Deleted.
        * UserInterface/Views/CodeMirrorFormatters.js:

2015-05-07  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Expanding Object with only __proto__ looks poor should have a label
        https://bugs.webkit.org/show_bug.cgi?id=144755

        Reviewed by Timothy Hatcher.

        Better handle cases where expanding an object has only a __proto__
        and no other properties.

        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        (WebInspector.ObjectTreePropertyTreeElement.mode.prototype.this.children.length):
        (WebInspector.ObjectTreePropertyTreeElement):
        * UserInterface/Views/ObjectTreeView.css:
        (.object-tree-outline li .empty-message):
        * UserInterface/Views/ObjectTreeView.js:
        (WebInspector.ObjectTreeView.createEmptyMessageElement):
        (WebInspector.ObjectTreeView.comparePropertyDescriptors):
        (WebInspector.ObjectTreeView.prototype._updateProperties):

2015-05-07  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Fix querySelector in ResourceContentView.js, caught by assertion
        https://bugs.webkit.org/show_bug.cgi?id=144756

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ResourceContentView.js:
        (WebInspector.ResourceContentView.prototype._hasContent):
        Ensure querySelector call is using the class name correctly.

2015-05-06  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Docking Toolbar Buttons do not respect Docking Availability
        https://bugs.webkit.org/show_bug.cgi?id=144714

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/Main.js:
        (WebInspector.contentLoaded):
        (WebInspector.updateDockingAvailability):
        (WebInspector._updateDockNavigationItems):
        Update the Toolbar UI based on docking availability.
        Assume docking is unavailable by default.

        * UserInterface/Protocol/InspectorFrontendAPI.js:
        (InspectorFrontendAPI.setDockingUnavailable):
        Add back this API as the backend may be calling it when
        docking availability changes. This just calls out to
        global WebInspector functions to update the Toolbar UI.

        * UserInterface/Base/Test.js:
        (WebInspector.updateDockedState):
        (WebInspector.updateDockingAvailability):
        Do nothing in tests.

2015-05-06  Matt Baker  <mattbaker@apple.com>

        Web Inspector: The text in the left pane overlaps the "Filter Time Events" field in the Timeline after the Web Inspector is resized
        https://bugs.webkit.org/show_bug.cgi?id=144720

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/FilterBar.css:
        (.filter-bar):
        (.filter-bar > .navigation-bar):
        (.filter-bar > input[type="search"]):
        (.filter-bar > .navigation-bar > .item): Deleted.
        Filter bar now has opaque background and height updated to the ubiquitous 29px.

2015-05-06  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: DOMStorage exception and issue with sessionStorage
        https://bugs.webkit.org/show_bug.cgi?id=144646

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/DOMStorageContentView.js:
        (WebInspector.DOMStorageContentView):
        (WebInspector.DOMStorageContentView.prototype._populate):
        (WebInspector.DOMStorageContentView.prototype.reset): Deleted.
        Always have the datagrid be available with a default sort.

        (WebInspector.DOMStorageContentView.prototype._sortDataGrid.comparator):
        (WebInspector.DOMStorageContentView.prototype._sortDataGrid):
        Simplify and correct the order.

        (WebInspector.DOMStorageContentView.prototype.cleanup):
        Cleanup some uses of delete.

        * UserInterface/Views/DataGrid.js:
        (WebInspector.DataGrid.prototype.sortNodesImmediately):
        Provide a way to sort immediately without a visible delay.

        (WebInspector.DataGrid.prototype._sortNodesCallback):
        Cleanup some dead code to simplify sorting.

        (WebInspector.DataGridNode.prototype._attach):
        When sorting, the children list does not match the child node list,
        so ensure that placeholder nodes are added to the end.

        (WebInspector.PlaceholderDataGridNode.prototype.makeNormal):
        Cleanup some uses of delete.

2015-05-06  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: SourceCodeTextEditor shows "undefined" instead of resource content when pausing during resource load
        https://bugs.webkit.org/show_bug.cgi?id=144662

        Reviewed by Timothy Hatcher.

        * UserInterface/Protocol/InspectorBackend.js:
        (InspectorBackend.Command.prototype.promise):
        Start standardizing on rejecting Promises with Error objects.

        * UserInterface/Views/ResourceContentView.js:
        (WebInspector.ResourceContentView):
        (WebInspector.ResourceContentView.prototype._protocolError):
        When there is a protocol error, show a nice UI string for the error.

        (WebInspector.ResourceContentView.prototype._contentAvailable):
        (WebInspector.ResourceContentView.prototype._contentError):
        (WebInspector.ResourceContentView.prototype._hasContent):
        Whenever we hit an error case in ResourceContentView, check to make sure
        that a subclass hasn't already populated the content view with content.
        This can happen when a TextResourceContentView populates a Resource with
        Script content while paused, because the Resource content would be
        unavailable. We check that content has loaded by checking that the
        indeterminate spinner is no longer showing.

2015-05-05  Andres Gomez  <agomez@igalia.com>

        [GTK] Web Inspector: Further optimize SVG images
        https://bugs.webkit.org/show_bug.cgi?id=144441

        SVG images optimized with a combination of sed replacements, the
        usage of the scour tool (http://www.codedread.com/scour/) and a
        forked version of the svgo tool (https://github.com/tanty/svgo).

        Also, added the class attribute to the shape elements following
        the convention used in Apple's images.

        Reviewed by Joseph Pecoraro.

        * UserInterface/Images/gtk/BackArrow.svg: Optimized.
        * UserInterface/Images/gtk/BreakpointActionAdd.svg: Optimized.
        * UserInterface/Images/gtk/BreakpointActionRemove.svg: Optimized.
        * UserInterface/Images/gtk/BreakpointButton.svg: Optimized.
        * UserInterface/Images/gtk/BreakpointInactiveButton.svg: Optimized.
        * UserInterface/Images/gtk/Breakpoints.svg: Optimized.
        * UserInterface/Images/gtk/Checkers.svg: Optimized.
        * UserInterface/Images/gtk/Circle.svg: Optimized.
        * UserInterface/Images/gtk/Close.svg: Optimized.
        * UserInterface/Images/gtk/CloseLarge.svg: Optimized.
        * UserInterface/Images/gtk/CloseWhite.svg: Optimized.
        * UserInterface/Images/gtk/ContentFlow.svg: Optimized.
        * UserInterface/Images/gtk/Crosshair.svg: Optimized.
        * UserInterface/Images/gtk/DOMCharacterData.svg: Optimized.
        * UserInterface/Images/gtk/DOMComment.svg: Optimized.
        * UserInterface/Images/gtk/DOMDocument.svg: Optimized.
        * UserInterface/Images/gtk/DOMDocumentType.svg: Optimized.
        * UserInterface/Images/gtk/DOMElement.svg: Optimized.
        * UserInterface/Images/gtk/DOMNode.svg: Optimized.
        * UserInterface/Images/gtk/DOMTextNode.svg: Optimized.
        * UserInterface/Images/gtk/DisclosureTriangleSmallClosed.svg: Optimized.
        * UserInterface/Images/gtk/DisclosureTriangleSmallOpen.svg: Optimized.
        * UserInterface/Images/gtk/DisclosureTriangleTinyClosed.svg: Optimized.
        * UserInterface/Images/gtk/DisclosureTriangleTinyOpen.svg: Optimized.
        * UserInterface/Images/gtk/DockBottom.svg: Optimized.
        * UserInterface/Images/gtk/DockRight.svg: Optimized.
        * UserInterface/Images/gtk/DownloadArrow.svg: Optimized.
        * UserInterface/Images/gtk/Error.svg: Optimized.
        * UserInterface/Images/gtk/Errors.svg: Optimized.
        * UserInterface/Images/gtk/ErrorsEnabled.svg: Optimized.
        * UserInterface/Images/gtk/EventListener.svg: Optimized.
        * UserInterface/Images/gtk/Exception.svg: Optimized.
        * UserInterface/Images/gtk/Eye.svg: Optimized.
        * UserInterface/Images/gtk/FilterFieldGlyph.svg: Optimized.
        * UserInterface/Images/gtk/ForwardArrow.svg: Optimized.
        * UserInterface/Images/gtk/Function.svg: Optimized.
        * UserInterface/Images/gtk/GoToArrow.svg: Optimized.
        * UserInterface/Images/gtk/HierarchicalNavigationItemChevron.svg: Optimized.
        * UserInterface/Images/gtk/IndeterminateProgressSpinner1.svg: Optimized.
        * UserInterface/Images/gtk/IndeterminateProgressSpinner10.svg: Optimized.
        * UserInterface/Images/gtk/IndeterminateProgressSpinner11.svg: Optimized.
        * UserInterface/Images/gtk/IndeterminateProgressSpinner12.svg: Optimized.
        * UserInterface/Images/gtk/IndeterminateProgressSpinner2.svg: Optimized.
        * UserInterface/Images/gtk/IndeterminateProgressSpinner3.svg: Optimized.
        * UserInterface/Images/gtk/IndeterminateProgressSpinner4.svg: Optimized.
        * UserInterface/Images/gtk/IndeterminateProgressSpinner5.svg: Optimized.
        * UserInterface/Images/gtk/IndeterminateProgressSpinner6.svg: Optimized.
        * UserInterface/Images/gtk/IndeterminateProgressSpinner7.svg: Optimized.
        * UserInterface/Images/gtk/IndeterminateProgressSpinner8.svg: Optimized.
        * UserInterface/Images/gtk/IndeterminateProgressSpinner9.svg: Optimized.
        * UserInterface/Images/gtk/Issues.svg: Optimized.
        * UserInterface/Images/gtk/IssuesEnabled.svg: Optimized.
        * UserInterface/Images/gtk/LayerBorders.svg: Optimized.
        * UserInterface/Images/gtk/Locked.svg: Optimized.
        * UserInterface/Images/gtk/Logs.svg: Optimized.
        * UserInterface/Images/gtk/Native.svg: Optimized.
        * UserInterface/Images/gtk/NavigationItemCurleyBraces.svg: Optimized.
        * UserInterface/Images/gtk/NavigationItemTrash.svg: Optimized.
        * UserInterface/Images/gtk/NavigationItemTypes.svg: Optimized.
        * UserInterface/Images/gtk/PaintFlashing.svg: Optimized.
        * UserInterface/Images/gtk/Pause.svg: Optimized.
        * UserInterface/Images/gtk/PausedBreakpoint.svg: Optimized.
        * UserInterface/Images/gtk/Pencil.svg: Optimized.
        * UserInterface/Images/gtk/Plus.svg: Optimized. Text element
        converted into a shape.
        * UserInterface/Images/gtk/PseudoElement.svg: Optimized.
        * UserInterface/Images/gtk/Record.svg: Optimized.
        * UserInterface/Images/gtk/Reflection.svg: Optimized.
        * UserInterface/Images/gtk/ReloadFull.svg: Optimized.
        * UserInterface/Images/gtk/ReplayPauseButton.svg: Optimized.
        * UserInterface/Images/gtk/ReplayPlayButton.svg: Optimized.
        * UserInterface/Images/gtk/ReplayRecordingButton.svg: Optimized.
        * UserInterface/Images/gtk/Request.svg: Optimized.
        * UserInterface/Images/gtk/Resources.svg: Optimized.
        * UserInterface/Images/gtk/Response.svg: Optimized.
        * UserInterface/Images/gtk/ResultLine.svg: Optimized.
        * UserInterface/Images/gtk/Resume.svg: Optimized.
        * UserInterface/Images/gtk/ShadowDOM.svg: Optimized.
        * UserInterface/Images/gtk/SortIndicatorDownArrow.svg: Optimized.
        * UserInterface/Images/gtk/SortIndicatorUpArrow.svg: Optimized.
        * UserInterface/Images/gtk/SplitToggleUp.svg: Optimized.
        * UserInterface/Images/gtk/StepInto.svg: Optimized.
        * UserInterface/Images/gtk/StepOut.svg: Optimized.
        * UserInterface/Images/gtk/StepOver.svg: Optimized.
        * UserInterface/Images/gtk/Stop.svg: Optimized.
        * UserInterface/Images/gtk/StyleRuleAuthor.svg: Optimized.
        * UserInterface/Images/gtk/StyleRuleInherited.svg: Optimized.
        * UserInterface/Images/gtk/StyleRuleInheritedElement.svg: Optimized.
        * UserInterface/Images/gtk/StyleRuleInspector.svg: Optimized.
        * UserInterface/Images/gtk/StyleRuleUser.svg: Optimized.
        * UserInterface/Images/gtk/StyleRuleUserAgent.svg: Optimized.
        * UserInterface/Images/gtk/TimelineRecordAnimation.svg: Optimized.
        * UserInterface/Images/gtk/TimelineRecordConsoleProfile.svg: Optimized.
        * UserInterface/Images/gtk/TimelineRecordEvent.svg: Optimized.
        * UserInterface/Images/gtk/TimelineRecordLayout.svg: Optimized.
        * UserInterface/Images/gtk/TimelineRecordPaint.svg: Optimized.
        * UserInterface/Images/gtk/TimelineRecordProbeSampled.svg: Optimized.
        * UserInterface/Images/gtk/TimelineRecordScriptEvaluated.svg: Optimized.
        * UserInterface/Images/gtk/TimelineRecordStyle.svg: Optimized.
        * UserInterface/Images/gtk/TimelineRecordTimer.svg: Optimized.
        * UserInterface/Images/gtk/TypeBoolean.svg: Optimized.
        * UserInterface/Images/gtk/TypeNull.svg: Optimized.
        * UserInterface/Images/gtk/TypeNumber.svg: Optimized.
        * UserInterface/Images/gtk/TypeObject.svg: Optimized.
        * UserInterface/Images/gtk/TypeRegex.svg: Optimized. Removed
        mistaken extra shape.
        * UserInterface/Images/gtk/TypeString.svg: Optimized.
        * UserInterface/Images/gtk/TypeSymbol.svg: Optimized. Removed
        mistaken extra shape.
        * UserInterface/Images/gtk/TypeUndefined.svg: Optimized.
        * UserInterface/Images/gtk/Undock.svg: Optimized.
        * UserInterface/Images/gtk/UpDownArrows.svg: Optimized.
        * UserInterface/Images/gtk/UserInputPrompt.svg: Optimized.
        * UserInterface/Images/gtk/UserInputPromptPrevious.svg: Optimized.
        * UserInterface/Images/gtk/UserInputResult.svg: Optimized.
        * UserInterface/Images/gtk/Warning.svg: Optimized.

2015-05-05  Timothy Hatcher  <timothy@apple.com>

        REGRESSION: Web Inspector: no way to navigate to a resource/source location from overview timeline view
        https://bugs.webkit.org/show_bug.cgi?id=144539

        Reviewed by Brian Burg.

        * UserInterface/Views/GeneralTreeElement.js:
        (WebInspector.GeneralTreeElement.prototype.set status): Call didChange() so the onchange event fires. This allows
        TimelineSidebarPanel to update the status element when it goes from a spinner to empty for ResourceTreeElements.
        (WebInspector.GeneralTreeElement.prototype.onattach): Don't call _updateStatusElement, just append it if needed.
        Calling _updateStatusElement caused DOMNodeFragments as status elements to be appended a second time and fail.
        * UserInterface/Views/NavigationSidebarPanel.js:
        (WebInspector.NavigationSidebarPanel.prototype.treeElementAddedOrChanged):
        (WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged):
        * UserInterface/Views/NetworkTimelineView.js:
        (WebInspector.NetworkTimelineView.prototype.canShowContentViewForTreeElement):
        (WebInspector.NetworkTimelineView.prototype.showContentViewForTreeElement):
        (WebInspector.NetworkTimelineView.prototype.treeElementSelected):
        (WebInspector.NetworkTimelineView.prototype._dataGridNodeSelected):
        (WebInspector.NetworkTimelineView.prototype._updateTreeElementWithCloseButton): Deleted.
        (WebInspector.NetworkTimelineView.prototype._closeStatusButtonClicked): Deleted.
        * UserInterface/Views/OverviewTimelineView.js:
        (WebInspector.OverviewTimelineView.prototype.canShowContentViewForTreeElement):
        (WebInspector.OverviewTimelineView.prototype.showContentViewForTreeElement):
        (WebInspector.OverviewTimelineView.prototype._dataGridNodeSelected):
        (WebInspector.OverviewTimelineView.prototype._treeElementDeselected): Deleted.
        (WebInspector.OverviewTimelineView.prototype._treeElementSelected): Deleted.
        (WebInspector.OverviewTimelineView.prototype._updateTreeElementWithCloseButton): Deleted.
        (WebInspector.OverviewTimelineView.prototype._closeStatusButtonClicked): Deleted.
        * UserInterface/Views/RenderingFrameTimelineView.js:
        (WebInspector.RenderingFrameTimelineView.prototype.canShowContentViewForTreeElement):
        (WebInspector.RenderingFrameTimelineView.prototype.showContentViewForTreeElement):
        * UserInterface/Views/ResourceTimelineDataGridNode.js:
        (WebInspector.ResourceTimelineDataGridNode.prototype.createCellContent): Don't show a go-to arrow in the Domain column.
        (WebInspector.ResourceTimelineDataGridNode.prototype._goToResource): Deleted.
        * UserInterface/Views/ScriptTimelineView.js:
        (WebInspector.ScriptTimelineView.prototype.canShowContentViewForTreeElement):
        (WebInspector.ScriptTimelineView.prototype.showContentViewForTreeElement):
        (WebInspector.ScriptTimelineView.prototype.treeElementSelected):
        * UserInterface/Views/TimelineRecordTreeElement.js:
        (WebInspector.TimelineRecordTreeElement.prototype.get sourceCodeLocation):
        * UserInterface/Views/TimelineSidebarPanel.css:
        (.sidebar > .panel.navigation.timeline .item:hover:not(.selected) .status .close.status-button):
        (.sidebar > .panel.navigation.timeline:not(.timeline-recording-content-view-showing) .status .go-to-arrow.status-button):
        (.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .status .close.status-button):
        * UserInterface/Views/TimelineSidebarPanel.js:
        (WebInspector.TimelineSidebarPanel.prototype.treeElementAddedOrChanged): Added.
        (WebInspector.TimelineSidebarPanel.prototype.canShowDifferentContentView):
        (WebInspector.TimelineSidebarPanel.prototype._treeElementGoToArrowWasClicked): Added.
        (WebInspector.TimelineSidebarPanel.prototype._treeElementCloseButtonClicked): Added.
        * UserInterface/Views/TimelineView.js:
        (WebInspector.TimelineView):
        (WebInspector.TimelineView.prototype.canShowContentViewForTreeElement):
        (WebInspector.TimelineView.prototype.showContentViewForTreeElement):
        (WebInspector.TimelineView.prototype.treeElementDeselected):
        (WebInspector.TimelineView.prototype.treeElementSelected):
        (WebInspector.TimelineView.prototype.needsLayout):
        (WebInspector.TimelineView.prototype._closeStatusButtonClicked): Deleted.
        (WebInspector.TimelineView.prototype._updateTreeElementWithCloseButton): Deleted.
        * UserInterface/Views/TreeElementStatusButton.css:
        (.item > .status > .status-button): Fix an alignment issue with close and go-to arrows being side-by-side.
        Does not happen in the final patch because they are mutually exclusive, but still good to fix.

2015-05-05  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Fix some issues with Search tabs
        https://bugs.webkit.org/show_bug.cgi?id=144531

        Reviewed by Darin Adler.

        * UserInterface/Views/ContentView.js:
        (WebInspector.ContentView):
        (WebInspector.ContentView.isViewable):
        Support DOMSearchMatchObject and SourceCodeSearchMatchObject representedObjects. These are usually
        handled at a higher level, but cookie restoring requires ContentView to handle them.

        * UserInterface/Views/DOMTreeContentView.js:
        (WebInspector.DOMTreeContentView):
        (WebInspector.DOMTreeContentView.prototype.selectAndRevealDOMNode):
        (WebInspector.DOMTreeContentView.prototype.selectLastSelectedNode):
        (WebInspector.DOMTreeContentView.prototype._restoreSelectedNodeAfterUpdate):
        Don't allow restoring the previous selected node when another not has already been selected.

        * UserInterface/Views/SearchTabContentView.js:
        (WebInspector.SearchTabContentView.prototype.canShowRepresentedObject):
        Allow Script objects to be shown in the Search tab.

2015-05-05  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Source/WebInspectorUI/UserInterface/Images/Logs.svg has unknown attribute "fille"
        https://bugs.webkit.org/show_bug.cgi?id=144627

        Reviewed by Darin Adler.

        * UserInterface/Images/Logs.svg: Change "fille" to "fill".

2015-05-05  Andres Gomez  <agomez@igalia.com>

        [GTK] Web Inspector: New Images added in r183339, r183338, r183332, r183323, r182660, and r182186
        https://bugs.webkit.org/show_bug.cgi?id=144329

        Reviewed by Joseph Pecoraro.

        * UserInterface/Images/gtk/Console.svg: Added.
        * UserInterface/Images/gtk/Debugger.svg: Added.
        * UserInterface/Images/gtk/Elements.svg: Added.
        * UserInterface/Images/gtk/Gear.svg: Added.
        * UserInterface/Images/gtk/NewTab.svg: Added.
        * UserInterface/Images/gtk/NewTabPlus.svg: Added.
        * UserInterface/Images/gtk/ReloadToolbar.svg: Added.
        * UserInterface/Images/gtk/SearchResults.svg: Added.
        * UserInterface/Images/gtk/Storage.svg: Added.
        * UserInterface/Images/gtk/Timeline.svg: Added.
        * UserInterface/Images/gtk/TimelineRecordRenderingFrame.svg: Added.
        * UserInterface/Images/gtk/ToggleLeftSidebar.svg: Added.
        * UserInterface/Images/gtk/ToggleRightSidebar.svg: Added.

2015-05-05  Andres Gomez  <agomez@igalia.com>

        [GTK] Web Inspector: icons for console.info() messages
        https://bugs.webkit.org/show_bug.cgi?id=144461

        Reviewed by Joseph Pecoraro.

        * UserInterface/Images/gtk/Debug.svg: Added.
        * UserInterface/Images/gtk/Info.svg: Added.
        * UserInterface/Images/gtk/Log.svg: Added.

2015-05-04  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Always expand initial top level DOM tree nodes when not including the root (frame views)
        https://bugs.webkit.org/show_bug.cgi?id=144607

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/DOMTreeOutline.js:
        (WebInspector.DOMTreeOutline.prototype.update):

2015-05-04  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Allow closing and reopening the Debugger tab
        https://bugs.webkit.org/show_bug.cgi?id=144536

        Reviewed by Joseph Pecoraro.

        * UserInterface/Base/Main.js:
        (WebInspector._updateNewTabButtonState):
        * UserInterface/Views/DebuggerSidebarPanel.js:
        (WebInspector.DebuggerSidebarPanel):
        (WebInspector.DebuggerSidebarPanel.prototype.closed):
        (WebInspector.DebuggerSidebarPanel.prototype._addIssuesForSourceCode):
        (WebInspector.DebuggerSidebarPanel.prototype._addResourcesRecursivelyForFrame):
        (WebInspector.DebuggerSidebarPanel.prototype._resourceAdded):
        (WebInspector.DebuggerSidebarPanel.prototype._addResource):
        (WebInspector.DebuggerSidebarPanel.prototype._mainResourceChanged):
        (WebInspector.DebuggerSidebarPanel.prototype._scriptAdded):
        (WebInspector.DebuggerSidebarPanel.prototype._addScript):
        * UserInterface/Views/DebuggerTabContentView.js:
        (WebInspector.DebuggerTabContentView):
        * UserInterface/Views/NewTabContentView.js:
        (WebInspector.NewTabContentView):

2015-05-04  Timothy Hatcher  <timothy@apple.com>

        REGRESSION: Web Inspector: FrameTreeElement does not folders properly when loading a page
        https://bugs.webkit.org/show_bug.cgi?id=144535

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/FolderizedTreeElement.js:
        (WebInspector.FolderizedTreeElement.prototype.addChildForRepresentedObject): Fix an exception if not in a tree.
        (WebInspector.FolderizedTreeElement.prototype.prepareToPopulate):
        (WebInspector.FolderizedTreeElement.prototype._populateFromNewChildQueue):

2015-05-04  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Allow closing and reopening the Timelines tab
        https://bugs.webkit.org/show_bug.cgi?id=144520

        Reviewed by Joseph Pecoraro.

        * UserInterface/Base/Main.js:
        (WebInspector._updateNewTabButtonState):
        * UserInterface/Controllers/TimelineManager.js:
        (WebInspector.TimelineManager): No need for a delay now. Call reset().
        (WebInspector.TimelineManager.prototype.reset):
        (WebInspector.TimelineManager.delayedWork): Deleted.
        * UserInterface/Views/ContentBrowserTabContentView.js:
        (WebInspector.ContentBrowserTabContentView):
        (WebInspector.ContentBrowserTabContentView.prototype.closed):
        * UserInterface/Views/LayoutTimelineView.js:
        (WebInspector.LayoutTimelineView.prototype.closed): Added. Fixed leak.
        * UserInterface/Views/NetworkTimelineView.js:
        (WebInspector.NetworkTimelineView.prototype.closed): Added. Fixed leak.
        * UserInterface/Views/NewTabContentView.js:
        (WebInspector.NewTabContentView): Added Timelines.
        * UserInterface/Views/OverviewTimelineView.js:
        (WebInspector.OverviewTimelineView.prototype.closed): Added. Fixed leak.
        * UserInterface/Views/RenderingFrameTimelineView.js:
        (WebInspector.RenderingFrameTimelineView.prototype.closed): Added. Fixed leak.
        * UserInterface/Views/ScriptTimelineView.js:
        (WebInspector.ScriptTimelineView.prototype.closed):
        * UserInterface/Views/SearchTabContentView.js:
        (WebInspector.SearchTabContentView.prototype.closed): Deleted. Made generic
        in ContentBrowserTabContentView.prototype.closed.
        * UserInterface/Views/TabBrowser.js:
        (WebInspector.TabBrowser.prototype._tabBarItemSelected): Fix a potential exception
        when selectedTabBarItem is null.
        * UserInterface/Views/TimelineSidebarPanel.js:
        (WebInspector.TimelineSidebarPanel):
        (WebInspector.TimelineSidebarPanel.prototype.closed):
        (WebInspector.TimelineSidebarPanel._recordingCreated): Call _addRecording.
        (WebInspector.TimelineSidebarPanel._addRecording): Added.
        * UserInterface/Views/TimelineTabContentView.js:
        (WebInspector.TimelineTabContentView):

2015-05-04  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Switching recordings in the Timeline navigation bar is broken
        https://bugs.webkit.org/show_bug.cgi?id=144519

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/ContentBrowser.js:
        (WebInspector.ContentBrowser.prototype._hierarchicalPathComponentWasSelected): Use revealAndSelect
        on the TreeElement instead of showing the representedObject directly. This fixes an exception in
        TimelineRecordingContentView where it wouldn't be initialized with the TimelineSidebarPanel extra argument.
        * UserInterface/Views/TimelineOverview.js:
        (WebInspector.TimelineOverview.prototype.get visibleDuration): Fix an annoying assert. We show the view
        early in construction, before it is in the document. Future updateLayout calls work and fix this.
        * UserInterface/Views/TimelineRecordingContentView.js:
        (WebInspector.TimelineRecordingContentView.prototype.shown): Call _currentContentViewDidChange
        to trigger the sidebar to update when this recording view is shown.
        * UserInterface/Views/TimelineSidebarPanel.js:
        (WebInspector.TimelineSidebarPanel.prototype._recordingsTreeElementSelected): Moved code from here...
        (WebInspector.TimelineSidebarPanel.prototype._recordingSelected): ... to here. Take two different paths
        to state restoration here. If the view existed before, use its state. If now, use the current state that
        is captured by the cookie logic and explicitly restore it.

2015-05-03  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Exception under ContentViewContainer _disassociateFromContentView
        https://bugs.webkit.org/show_bug.cgi?id=144546

        Reviewed by Brian Burg.

        * UserInterface/Views/ContentViewContainer.js:
        (WebInspector.ContentViewContainer.prototype.showContentView):
        Make sure to pass the ContentView to _disassociateFromContentView. Also negate the result
        of the _backForwardList.some(), since we don't want to dissociate if the content view is
        still in the back-forward list.

2015-05-02  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Relocate the selected range details in the Rendering Frames timeline UI
        https://bugs.webkit.org/show_bug.cgi?id=144346

        This patch removes the details sidebar used by the rendering frames view, and relocates the frame selection
        chart the Timelines navigation sidebar.

        Reviewed by Timothy Hatcher.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Base/Main.js:
        (WebInspector.contentLoaded):
        RenderingFramesDetailsSidebar is no longer used.

        * UserInterface/Controllers/TimelineManager.js:
        (WebInspector.TimelineManager.prototype._loadNewRecording):
        Reordered timelines.

        * UserInterface/Main.html:
        Removed references to deleted files.

        * UserInterface/Views/ChartDetailsSectionLegendRow.js: Removed.
        No longer used. The legend is now a child element of the chart.

        * UserInterface/Views/ChartDetailsSectionRow.css:
        (.details-section > .content > .group > .row.chart > .title):
        (.details-section > .content > .group > .row.chart > .chart-content):
        (.details-section > .content > .group > .row.chart > .chart-content > .legend):
        (.details-section > .content > .group > .row.chart > .chart-content > .legend > .legend-item):
        (.details-section > .content > .group > .row.chart > .chart-content > .legend > .legend-item > .label > .color-swatch):
        (.details-section > .content > .group > .row.chart > .chart-content > .legend > .legend-item > .label):
        (.details-section > .content > .group > .row.chart > .chart-content > .legend > .legend-item > .value):
        (.details-section > .content > .group > .row.chart > .chart-content > .legend > .legend-item > *):
        New chart and legend styles.

        * UserInterface/Views/ChartDetailsSectionRow.js:
        (WebInspector.ChartDetailsSectionRow):
        (WebInspector.ChartDetailsSectionRow.prototype.set title):
        (WebInspector.ChartDetailsSectionRow.prototype.set innerLabel):
        (WebInspector.ChartDetailsSectionRow.prototype.set innerRadius):
        (WebInspector.ChartDetailsSectionRow.prototype.get total):
        (WebInspector.ChartDetailsSectionRow.set data):
        (WebInspector.ChartDetailsSectionRow.prototype.set data):
        (WebInspector.ChartDetailsSectionRow.prototype._createLegendItem):
        (WebInspector.ChartDetailsSectionRow.prototype._refresh):

        A few changes have been made to the appearance and behavior of the chart. A chart title can now be set,
        and the legend appears to the right of the chart rather than in a separate details group.

        The chart now has better support for adding empty data points, ensuring that a meaningful legend is shown even
        when no rendering frames are selected in the timeline overview graph. This ensures that the task associated
        with each colored frame segment is apparent, without having to make a selection or record a timeline.

        * UserInterface/Views/RenderingFrameDetailsSidebarPanel.js: Removed.
        No longer used.

        * UserInterface/Views/RenderingFrameTimelineOverviewGraph.js:
        Reduced maximum timeline height to increase the height of short frames.

        * UserInterface/Views/RenderingFrameTimelineView.js:
        (WebInspector.RenderingFrameTimelineView.prototype.shown):
        (WebInspector.RenderingFrameTimelineView.prototype.hidden):
        RenderingFramesDetailsSidebar is no longer used.

        * UserInterface/Views/TimelineRecordingContentView.js:
        (WebInspector.TimelineRecordingContentView):
        (WebInspector.TimelineRecordingContentView.prototype._updateTimes):
        (WebInspector.TimelineRecordingContentView.prototype._updateTimelineOverviewHeight):
        (WebInspector.TimelineRecordingContentView.prototype._timelineRemoved):
        (WebInspector.TimelineRecordingContentView.prototype._timeRangeSelectionChanged):
        (WebInspector.TimelineRecordingContentView.prototype._updateFrameSelection):
        Improved logic for updating the frame selection.

        * UserInterface/Views/TimelineSidebarPanel.css:
        (.sidebar > .panel.navigation.timeline > .timelines-content > .details-section > div.header):
        (.sidebar > .panel.navigation.timeline > .timelines-content > .details-section > .content > .group > .row.chart):
        (.sidebar > .panel.navigation.timeline > .timelines-content > .details-section > .content > .group > .row.chart > .chart-content > .chart):
        (.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing > .content): Deleted.
        New chart styles.

        * UserInterface/Views/TimelineSidebarPanel.js:
        (WebInspector.TimelineSidebarPanel):
        (WebInspector.TimelineSidebarPanel.prototype.shown):
        (WebInspector.TimelineSidebarPanel._timelineAdded.set this):
        (WebInspector.TimelineSidebarPanel.this._timelineTreeElementMap.get select):
        (WebInspector.TimelineSidebarPanel.get else):
        (WebInspector.TimelineSidebarPanel._refreshFrameSelectionChart.getSelectedRecords.get var):
        (WebInspector.TimelineSidebarPanel._refreshFrameSelectionChart.getSelectedRecords):
        (WebInspector.TimelineSidebarPanel.showTimelineViewForTimeline.this._timelineTreeElementMap.get select):
        (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject.get if.get if):
        (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject.get if):
        (WebInspector.TimelineSidebarPanel._refreshFrameSelectionChart.durationForRecordType):
        (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject):
        (WebInspector.TimelineSidebarPanel.set contentTreeOutlineLabel): Deleted.
        (WebInspector.TimelineSidebarPanel._recordingCreated.set this): Deleted.
        (WebInspector.TimelineSidebarPanel.get this): Deleted.
        Moved the selected frames chart to the navigation sidebar.

        * UserInterface/Views/TimelineTabContentView.js:
        (WebInspector.TimelineTabContentView):
        RenderingFramesDetailsSidebar is no longer used.

        * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
        * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:
        Removed references to deleted files.

2015-05-02  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Allow closing and reopening the Resources tab
        https://bugs.webkit.org/show_bug.cgi?id=144513

        Reviewed by Joseph Pecoraro.

        * UserInterface/Base/Main.js:
        (WebInspector._updateNewTabButtonState):
        * UserInterface/Views/NewTabContentView.js:
        (WebInspector.NewTabContentView):
        * UserInterface/Views/ResourceSidebarPanel.js:
        (WebInspector.ResourceSidebarPanel):
        (WebInspector.ResourceSidebarPanel.prototype.closed):
        * UserInterface/Views/ResourcesTabContentView.js:
        (WebInspector.ResourcesTabContentView):

2015-05-02  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: REGRESSION: Resources section doesn't update after changes are made to a local file
        https://bugs.webkit.org/show_bug.cgi?id=144512

        The content view was being associated with the wrong represented object. This caused the code to use
        the old main resource when showing the frame again.

        Reviewed by Joseph Pecoraro.

        * UserInterface/Base/Main.js:
        (WebInspector._frameWasAdded.delayedWork):
        (WebInspector._frameWasAdded):
        With the changes in ResourceSidebarPanel, we need to delay showing the frame.

        * UserInterface/Views/ContentBrowserTabContentView.js:
        (WebInspector.ContentBrowserTabContentView.prototype.showRepresentedObject):
        Avoid restoring state by calling cancelRestoringState(). Not fully related to this bug,
        but it was preventing testing the cases.

        * UserInterface/Views/ContentViewContainer.js:
        (WebInspector.ContentViewContainer.prototype.contentViewForRepresentedObject):
        This fixes the bug. Don't associate the content view with the Frame, associate it with
        the Resource that we actually show.

        * UserInterface/Views/NavigationSidebarPanel.js:
        (WebInspector.NavigationSidebarPanel.prototype.cancelRestoringState): Added.

        * UserInterface/Views/ResourceSidebarPanel.js:
        (WebInspector.ResourceSidebarPanel): Remove unused _waitingForInitialMainFrame.
        (WebInspector.ResourceSidebarPanel.prototype.treeElementForRepresentedObject):
        (WebInspector.ResourceSidebarPanel.prototype._mainResourceDidChange):
        (WebInspector.ResourceSidebarPanel.prototype._mainFrameDidChange):
        (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange.delayedWork):
        (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange):
        Clean up how we show the main frame in the sidebar. This was a two step mess before.

2015-04-29  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Remove FrameContentView.js
        https://bugs.webkit.org/show_bug.cgi?id=144415

        Reviewed by Joseph Pecoraro.

        * UserInterface/Images/DOMTree.svg: Removed.
        * UserInterface/Images/SourceCode.svg: Removed.
        * UserInterface/Main.html: Removed FrameContentView.js.
        * UserInterface/Views/FrameContentView.js: Removed.
        * UserInterface/Views/PathComponentIcons.css:
        (.source-code-icon .icon): Deleted.
        (.dom-tree-icon .icon): Deleted.

        * UserInterface/Views/ResourceSidebarPanel.js:
        (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange.delayedWork):
        (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange):
        Simplify the code here. We don't need these checks now with tabs and the Storage tab.

2015-04-30  Nikita Vasilyev  <nvasilyev@apple.com>

        REGRESSION: Web Inspector: Console message repeat count overlapped by icon
        https://bugs.webkit.org/show_bug.cgi?id=144344

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ConsoleMessageView.css:
        (.console-message .repeat-count):

2015-04-30  Jon Davis  <jond@apple.com>

        Web Inspector: console should show an icon for console.info() messages
        https://bugs.webkit.org/show_bug.cgi?id=18530

        Reviewed by Timothy Hatcher.

        Added icons for console.log, console.info and console.debug messages.

        Separated console.info from console.log.

        * UserInterface/Images/Debug.svg: Added.
        * UserInterface/Images/Info.svg: Added.
        * UserInterface/Images/Log.svg: Added.
        New icon files.

        * UserInterface/Models/ConsoleMessage.js:
        * UserInterface/Views/ConsoleMessageView.css:
        (.console-log-level::before):
        (.console-info-level::before):
        (.console-debug-level::before):
        (:matches(.console-warning-level, .console-error-level, .console-log-level, .console-info-level, .console-debug-level).console-message):
        (:matches(.console-warning-level, .console-error-level, .console-log-level, .console-info-level, .console-debug-level)::before):
        (:matches(.console-warning-level, .console-error-level, .console-log-level).console-message): Deleted.
        (:matches(.console-warning-level, .console-error-level, .console-log-level)::before): Deleted.
        Include console.info messages in layout adjustments.

        * UserInterface/Views/ConsoleMessageView.js:
        (WebInspector.ConsoleMessageView):
        (WebInspector.ConsoleMessageView.prototype._levelString):

2015-04-30  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Scope Chain sidebar should be selected immediately when paused
        https://bugs.webkit.org/show_bug.cgi?id=144352

        Reviewed by Joseph Pecoraro.

        * UserInterface/Base/Main.js:
        (WebInspector.showDebuggerTab): Added showScopeChainDetailsSidebarPanel argument.
        (WebInspector._debuggerDidPause): Pass true for showScopeChainDetailsSidebarPanel.
        * UserInterface/Views/ContentBrowserTabContentView.js:
        (WebInspector.ContentBrowserTabContentView): Wire the event to showDetailsSidebarPanels instead of
        _contentBrowserRepresentedObjectsDidChange, allowing subclasses to do work during the event.
        (WebInspector.ContentBrowserTabContentView.prototype.showDetailsSidebarPanels): Moved content of
        _contentBrowserRepresentedObjectsDidChange here.
        (WebInspector.ContentBrowserTabContentView.prototype._contentBrowserRepresentedObjectsDidChange): Deleted.
        * UserInterface/Views/DebuggerTabContentView.js:
        (WebInspector.DebuggerTabContentView.prototype.showDetailsSidebarPanels): Added. Show the scope sidebar panel
        if it is available and it was requested by showScopeChainDetailsSidebarPanel().
        (WebInspector.DebuggerTabContentView.prototype.showScopeChainDetailsSidebarPanel): Added.

2015-04-30  Andres Gomez  <agomez@igalia.com>

        [GTK] Web Inspector: New Images for ObjectTreeView - Setter
        https://bugs.webkit.org/show_bug.cgi?id=143173

        Reviewed by Martin Robinson.

        * UserInterface/Images/gtk/Pencil.svg: Added.

2015-04-30  Andres Gomez  <agomez@igalia.com>

        [GTK] Web Inspector: Remove some unused Images
        https://bugs.webkit.org/show_bug.cgi?id=144445

        Reviewed by Carlos Garcia Campos.

        * UserInterface/Images/gtk/BottomUpTree.svg: Removed.
        * UserInterface/Images/gtk/Log.png: Removed.
        * UserInterface/Images/gtk/Log@2x.png: Removed.
        * UserInterface/Images/gtk/NavigationItemAngleBrackets.svg: Removed.
        * UserInterface/Images/gtk/NavigationItemBrushAndRuler.svg: Removed.
        * UserInterface/Images/gtk/NavigationItemBug.svg: Removed.
        * UserInterface/Images/gtk/NavigationItemFile.svg: Removed.
        * UserInterface/Images/gtk/NavigationItemLayers.svg: Removed.
        * UserInterface/Images/gtk/NavigationItemLog.svg: Removed.
        * UserInterface/Images/gtk/NavigationItemProbes.svg: Removed.
        * UserInterface/Images/gtk/NavigationItemStopwatch.svg: Removed.
        * UserInterface/Images/gtk/NavigationItemStorage.svg: Removed.
        * UserInterface/Images/gtk/NavigationItemVariable.svg: Removed.
        * UserInterface/Images/gtk/Percent.svg: Removed.
        * UserInterface/Images/gtk/Reload.svg: Removed.
        * UserInterface/Images/gtk/SplitToggleDown.svg: Removed.
        * UserInterface/Images/gtk/Time.svg: Removed.
        * UserInterface/Images/gtk/Weight.svg: Removed.

2015-04-30  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Copy not working in Console
        https://bugs.webkit.org/show_bug.cgi?id=144354

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/Main.js:
        (WebInspector._focusedContentView):
        Select the inner most content view to check if handleCopyEvent exists.
        Previously we were stopping at the top level TabContentView.

2015-04-29  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Remove some unused Images
        https://bugs.webkit.org/show_bug.cgi?id=144412

        Reviewed by Joseph Pecoraro.

        * UserInterface/Images/BottomUpTree.svg: Removed.
        * UserInterface/Images/Log.png: Removed.
        * UserInterface/Images/Log@2x.png: Removed.
        * UserInterface/Images/NavigationItemAngleBrackets.svg: Removed.
        * UserInterface/Images/NavigationItemBrushAndRuler.svg: Removed.
        * UserInterface/Images/NavigationItemBug.svg: Removed.
        * UserInterface/Images/NavigationItemDoughnutChart.svg: Removed.
        * UserInterface/Images/NavigationItemFile.svg: Removed.
        * UserInterface/Images/NavigationItemLayers.svg: Removed.
        * UserInterface/Images/NavigationItemLog.svg: Removed.
        * UserInterface/Images/NavigationItemProbes.svg: Removed.
        * UserInterface/Images/NavigationItemStopwatch.svg: Removed.
        * UserInterface/Images/NavigationItemStorage.svg: Removed.
        * UserInterface/Images/NavigationItemVariable.svg: Removed.
        * UserInterface/Images/NetworkBarLabelCalloutLeft.svg: Removed.
        * UserInterface/Images/NetworkBarLabelCalloutRight.svg: Removed.
        * UserInterface/Images/NetworkBarLabelCalloutWhiteLeft.svg: Removed.
        * UserInterface/Images/NetworkBarLabelCalloutWhiteRight.svg: Removed.
        * UserInterface/Images/Percent.svg: Removed.
        * UserInterface/Images/Reload.svg: Removed.
        * UserInterface/Images/SplitToggleDown.svg: Removed.
        * UserInterface/Images/Time.svg: Removed.
        * UserInterface/Images/Weight.svg: Removed.

2015-04-29  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Split Storage from Resources tab
        https://bugs.webkit.org/show_bug.cgi?id=144404

        Reviewed by Joseph Pecoraro.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Base/Main.js:
        (WebInspector.loaded):
        (WebInspector.isTabTypeAllowed):
        (WebInspector._tabContentViewForType):
        (WebInspector._updateNewTabButtonState):
        (WebInspector.showStorageTab):
        (WebInspector._storageWasInspected):
        * UserInterface/Controllers/ApplicationCacheManager.js:
        (WebInspector.ApplicationCacheManager.prototype.initialize):
        (WebInspector.ApplicationCacheManager.prototype.get applicationCacheObjects):
        * UserInterface/Controllers/StorageManager.js:
        (WebInspector.StorageManager.prototype.get domStorageObjects):
        (WebInspector.StorageManager.prototype.get databases):
        (WebInspector.StorageManager.prototype.get indexedDatabases):
        (WebInspector.StorageManager.prototype.get cookieStorageObjects):
        * UserInterface/Images/Storage.svg: Added.
        * UserInterface/Main.html:
        * UserInterface/Views/DatabaseTableContentView.js:
        (WebInspector.DatabaseTableContentView.prototype._queryFinished): Clear _dataGrid,
        since it might have been allocated but still be empty. This avoids an exception in
        updateLayout next time layout is updated.
        * UserInterface/Views/NewTabContentView.js:
        (WebInspector.NewTabContentView):
        * UserInterface/Views/ResourceSidebarPanel.js:
        (WebInspector.ResourceSidebarPanel):
        (WebInspector.ResourceSidebarPanel.prototype._treeElementSelected):
        (WebInspector.ResourceSidebarPanel.prototype._domStorageObjectWasAdded): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype._domStorageObjectWasInspected): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype._databaseWasAdded): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype._databaseWasInspected): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype._indexedDatabaseWasAdded): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype._cookieStorageObjectWasAdded): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype._frameManifestAdded): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype._frameManifestRemoved): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype._addStorageChild): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype._storageCleared): Deleted.
        * UserInterface/Views/ResourcesTabContentView.js:
        (WebInspector.ResourcesTabContentView):
        (WebInspector.ResourcesTabContentView.prototype.canShowRepresentedObject):
        * UserInterface/Views/StorageSidebarPanel.js: Added.
        (WebInspector.StorageSidebarPanel):
        (WebInspector.StorageSidebarPanel.prototype.showDefaultContentView):
        (WebInspector.StorageSidebarPanel.prototype.closed):
        (WebInspector.StorageSidebarPanel.prototype._treeElementSelected):
        (WebInspector.StorageSidebarPanel.prototype._domStorageObjectWasAdded):
        (WebInspector.StorageSidebarPanel.prototype._addDOMStorageObject):
        (WebInspector.StorageSidebarPanel.prototype._domStorageObjectWasInspected):
        (WebInspector.StorageSidebarPanel.prototype._databaseWasAdded):
        (WebInspector.StorageSidebarPanel.prototype._addDatabase):
        (WebInspector.StorageSidebarPanel.prototype._databaseWasInspected):
        (WebInspector.StorageSidebarPanel.prototype._indexedDatabaseWasAdded):
        (WebInspector.StorageSidebarPanel.prototype._addIndexedDatabase):
        (WebInspector.StorageSidebarPanel.prototype._cookieStorageObjectWasAdded):
        (WebInspector.StorageSidebarPanel.prototype._addCookieStorageObject):
        (WebInspector.StorageSidebarPanel.prototype._frameManifestAdded):
        (WebInspector.StorageSidebarPanel.prototype._addFrameManifest):
        (WebInspector.StorageSidebarPanel.prototype._frameManifestRemoved):
        (WebInspector.StorageSidebarPanel.prototype._compareTreeElements):
        (WebInspector.StorageSidebarPanel.prototype._addStorageChild):
        (WebInspector.StorageSidebarPanel.prototype._storageCleared):
        * UserInterface/Views/StorageTabContentView.js: Copied from Source/WebInspectorUI/UserInterface/Views/ResourcesTabContentView.js.
        (WebInspector.StorageTabContentView):
        (WebInspector.StorageTabContentView.prototype.get type):
        (WebInspector.StorageTabContentView.prototype.canShowRepresentedObject):

2015-04-29  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Remove Legacy images and styles
        https://bugs.webkit.org/show_bug.cgi?id=144390

        Reviewed by Joseph Pecoraro.

        * UserInterface/Base/ImageUtilities.js:
        (.generateImage):
        (.generateImage.generateLegacyImage): Deleted.
        * UserInterface/Base/Main.js:
        (WebInspector.contentLoaded):
        (WebInspector._updateToolbarHeight):
        * UserInterface/Base/Platform.js:
        * UserInterface/Controllers/TimelineManager.js:
        (WebInspector.TimelineManager.prototype._loadNewRecording):
        * UserInterface/Images/Legacy/BackArrow.svg: Removed.
        * UserInterface/Images/Legacy/Breakpoints.svg: Removed.
        * UserInterface/Images/Legacy/Close.svg: Removed.
        * UserInterface/Images/Legacy/CloseLarge.svg: Removed.
        * UserInterface/Images/Legacy/Colors.png: Removed.
        * UserInterface/Images/Legacy/Colors@2x.png: Removed.
        * UserInterface/Images/Legacy/ColorsLarge.png: Removed.
        * UserInterface/Images/Legacy/ColorsLarge@2x.png: Removed.
        * UserInterface/Images/Legacy/DockBottom.svg: Removed.
        * UserInterface/Images/Legacy/DockRight.svg: Removed.
        * UserInterface/Images/Legacy/DownloadArrow.svg: Removed.
        * UserInterface/Images/Legacy/Errors.svg: Removed.
        * UserInterface/Images/Legacy/ErrorsEnabled.svg: Removed.
        * UserInterface/Images/Legacy/FilterFieldGlyph.svg: Removed.
        * UserInterface/Images/Legacy/FolderGeneric.png: Removed.
        * UserInterface/Images/Legacy/FolderGeneric@2x.png: Removed.
        * UserInterface/Images/Legacy/ForwardArrow.svg: Removed.
        * UserInterface/Images/Legacy/Issues.svg: Removed.
        * UserInterface/Images/Legacy/IssuesEnabled.svg: Removed.
        * UserInterface/Images/Legacy/LayerBorders.svg: Removed.
        * UserInterface/Images/Legacy/Logs.svg: Removed.
        * UserInterface/Images/Legacy/NavigationItemCurleyBraces.svg: Removed.
        * UserInterface/Images/Legacy/NavigationItemTrash.svg: Removed.
        * UserInterface/Images/Legacy/Network.png: Removed.
        * UserInterface/Images/Legacy/Network@2x.png: Removed.
        * UserInterface/Images/Legacy/NetworkLarge.png: Removed.
        * UserInterface/Images/Legacy/NetworkLarge@2x.png: Removed.
        * UserInterface/Images/Legacy/Pause.svg: Removed.
        * UserInterface/Images/Legacy/Plus.svg: Removed.
        * UserInterface/Images/Legacy/Recording.png: Removed.
        * UserInterface/Images/Legacy/Recording@2x.png: Removed.
        * UserInterface/Images/Legacy/RecordingHovered.png: Removed.
        * UserInterface/Images/Legacy/RecordingHovered@2x.png: Removed.
        * UserInterface/Images/Legacy/RecordingStopped.png: Removed.
        * UserInterface/Images/Legacy/RecordingStopped@2x.png: Removed.
        * UserInterface/Images/Legacy/Reload.svg: Removed.
        * UserInterface/Images/Legacy/Resources.svg: Removed.
        * UserInterface/Images/Legacy/Resume.svg: Removed.
        * UserInterface/Images/Legacy/ShadowDOM.svg: Removed.
        * UserInterface/Images/Legacy/SortIndicatorDownArrow.svg: Removed.
        * UserInterface/Images/Legacy/SortIndicatorUpArrow.svg: Removed.
        * UserInterface/Images/Legacy/SplitToggleDown.svg: Removed.
        * UserInterface/Images/Legacy/SplitToggleUp.svg: Removed.
        * UserInterface/Images/Legacy/StepInto.svg: Removed.
        * UserInterface/Images/Legacy/StepOut.svg: Removed.
        * UserInterface/Images/Legacy/StepOver.svg: Removed.
        * UserInterface/Images/Legacy/Time.svg: Removed.
        * UserInterface/Images/Legacy/Undock.svg: Removed.
        * UserInterface/Images/Legacy/UpDownArrows.svg: Removed.
        * UserInterface/Images/Legacy/Weight.svg: Removed.
        * UserInterface/Views/ButtonNavigationItem.css:
        (body.mac-platform.legacy .navigation-bar .item.button.text-only): Deleted.
        * UserInterface/Views/ButtonToolbarItem.css:
        (body.mac-platform.legacy .toolbar .item.button > .label): Deleted.
        * UserInterface/Views/CSSStyleDeclarationSection.css:
        (body.mac-platform.legacy .style-declaration-section): Deleted.
        (body.mac-platform.legacy .style-declaration-section + .style-declaration-section): Deleted.
        (body.mac-platform.legacy .style-declaration-section.last-in-group): Deleted.
        (body.mac-platform.legacy .style-declaration-section.last-in-group + .style-declaration-section): Deleted.
        (body.mac-platform.legacy .style-declaration-section.last-in-group + .style-declaration-section:matches(.last-in-group, :last-child)): Deleted.
        * UserInterface/Views/CSSStyleDetailsSidebarPanel.css:
        (body.mac-platform.legacy .sidebar > .panel.details.css-style > .content): Deleted.
        * UserInterface/Views/ContentBrowser.js:
        (WebInspector.ContentBrowser):
        * UserInterface/Views/ControlToolbarItem.css:
        (body.mac-platform.legacy .toolbar .item.control): Deleted.
        (body.mac-platform.legacy .toolbar .item.control:hover): Deleted.
        * UserInterface/Views/DOMTreeContentView.js:
        (WebInspector.DOMTreeContentView):
        * UserInterface/Views/DOMTreeOutline.css:
        (body.mac-platform.legacy .dom-tree-outline li.hovered:not(.selected) .selection): Deleted.
        (body.mac-platform.legacy .dom-tree-outline li.elements-drag-over .selection): Deleted.
        (body.mac-platform.legacy .dom-tree-outline:focus li.selected .selection): Deleted.
        * UserInterface/Views/DashboardContainerView.css:
        (body.mac-platform.legacy .toolbar .dashboard-container): Deleted.
        (body.mac-platform.legacy.window-inactive .toolbar .dashboard-container): Deleted.
        (body.mac-platform.legacy.window-inactive .toolbar .dashboard): Deleted.
        (body.mac-platform.legacy .dashboard-container .advance-arrow): Deleted.
        * UserInterface/Views/DataGrid.css:
        (body.mac-platform.legacy .data-grid:focus tr.selected td:not(:last-child)): Deleted.
        (body.mac-platform.legacy .data-grid:focus tr.selected): Deleted.
        * UserInterface/Views/DataGrid.js:
        (WebInspector.DataGrid.prototype.get _generateSortIndicatorImagesIfNeeded):
        * UserInterface/Views/DatabaseTableContentView.js:
        (WebInspector.DatabaseTableContentView):
        * UserInterface/Views/DebuggerDashboardView.js:
        (WebInspector.DebuggerDashboardView):
        * UserInterface/Views/DebuggerSidebarPanel.css:
        (body.mac-platform.legacy .sidebar > .panel.navigation.debugger > .content): Deleted.
        * UserInterface/Views/DebuggerSidebarPanel.js:
        * UserInterface/Views/DefaultDashboardView.css:
        (body.mac-platform.legacy .toolbar .dashboard.default > .item): Deleted.
        (body.mac-platform.legacy .toolbar .dashboard.default > .resourcesCount > img): Deleted.
        (body.mac-platform.legacy .toolbar .dashboard.default > .logs > img): Deleted.
        (body.mac-platform.legacy .toolbar .dashboard.default > .errors > img): Deleted.
        (body.mac-platform.legacy .toolbar .dashboard.default > .errors.enabled > img): Deleted.
        (body.mac-platform.legacy .toolbar .dashboard.default > .issues > img): Deleted.
        (body.mac-platform.legacy .toolbar .dashboard.default > .issues.enabled > img): Deleted.
        * UserInterface/Views/DetailsSection.css:
        (body.mac-platform.legacy .details-section): Deleted.
        (body.mac-platform.legacy .details-section .details-section): Deleted.
        (body.mac-platform.legacy .details-section .details-section:first-child): Deleted.
        (body.mac-platform.legacy .details-section > .header): Deleted.
        (body.mac-platform.legacy .details-section .details-section > .header): Deleted.
        (body.mac-platform.legacy .details-section .details-section.collapsed > .header): Deleted.
        (body.mac-platform.legacy .details-section:not(.collapsed) .data-grid.inline): Deleted.
        (body.mac-platform.legacy .details-section.computed-style-properties:not(.collapsed) > .header): Deleted.
        (body.mac-platform.legacy .details-section > .content > .group): Deleted.
        (body.mac-platform.legacy .details-section > .content > .group:nth-child(even)): Deleted.
        (body.mac-platform.legacy .details-section > .content > .group:matches(:nth-child(even), :last-child) > .row.simple:last-child > *): Deleted.
        (body.mac-platform.legacy .details-section > .content > .group > .row:matches(.empty, .text)): Deleted.
        * UserInterface/Views/DividerNavigationItem.css:
        (.navigation-bar .item.divider):
        (body.mac-platform.legacy .navigation-bar .item.divider): Deleted.
        * UserInterface/Views/FilterBar.css:
        (.filter-bar > input[type="search"]::-webkit-search-decoration):
        (body.mac-platform.legacy .filter-bar): Deleted.
        (body.mac-platform.legacy .filter-bar > input[type="search"]): Deleted.
        (body.mac-platform.legacy .filter-bar > input[type="search"]::-webkit-search-decoration): Deleted.
        * UserInterface/Views/FindBanner.css:
        (body.mac-platform.legacy .find-banner > input[type="search"]): Deleted.
        (body.mac-platform.legacy .find-banner > button > .glyph): Deleted.
        (body.mac-platform.legacy .find-banner > button.segmented.left > .glyph): Deleted.
        (body.mac-platform.legacy .find-banner > button.segmented.right > .glyph): Deleted.
        (body.mac-platform.legacy .find-banner > button.segmented): Deleted.
        * UserInterface/Views/FindBanner.js:
        (WebInspector.FindBanner.prototype._generateButtonsGlyphsIfNeeded):
        (WebInspector.FindBanner):
        * UserInterface/Views/FolderIcon.css:
        (.folder-icon .icon):
        (body.mac-platform.legacy .folder-icon .icon): Deleted.
        * UserInterface/Views/HierarchicalPathComponent.css:
        (body.mac-platform.legacy .hierarchical-path-component > .selector-arrows): Deleted.
        * UserInterface/Views/IndexedDatabaseObjectStoreContentView.js:
        (WebInspector.IndexedDatabaseObjectStoreContentView):
        * UserInterface/Views/LayerTreeDetailsSidebarPanel.css:
        (body.mac-platform.legacy .sidebar > .panel.details.layer-tree > .content): Deleted.
        (body.mac-platform.legacy .panel.details.layer-tree .bottom-bar): Deleted.
        (body.mac-platform.legacy .panel.details.layer-tree .bottom-bar > div): Deleted.
        (body.mac-platform.legacy .layer-tree-popover): Deleted.
        * UserInterface/Views/LogContentView.css:
        (body.mac-platform.legacy .search-bar.log-search-bar > input[type="search"]): Deleted.
        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView):
        * UserInterface/Views/Main.css:
        (body.mac-platform.legacy:not(.docked)): Deleted.
        (body.docked.bottom.mac-platform.legacy): Deleted.
        (body.docked.right.mac-platform.legacy): Deleted.
        (body.mac-platform.legacy #split-content-browser > .navigation-bar): Deleted.
        * UserInterface/Views/NavigationBar.css:
        (.navigation-bar .item):
        (body.mac-platform.legacy .navigation-bar): Deleted.
        (body.mac-platform.legacy .navigation-bar .item): Deleted.
        * UserInterface/Views/NavigationSidebarPanel.css:
        (body.mac-platform.legacy .sidebar > .panel.navigation > .content): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation > .overflow-shadow): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation > .overflow-shadow.top): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation > .empty-content-placeholder): Deleted.
        (body.mac-platform.legacy .navigation-sidebar-panel-content-tree-outline .item.selected): Deleted.
        (body.mac-platform.legacy .navigation-sidebar-panel-content-tree-outline:focus .item.selected): Deleted.
        (body.mac-platform.legacy.window-inactive .navigation-sidebar-panel-content-tree-outline .item.selected): Deleted.
        * UserInterface/Views/NavigationSidebarPanel.js:
        (WebInspector.NavigationSidebarPanel.prototype._updateContentOverflowShadowVisibility):
        (WebInspector.NavigationSidebarPanel.prototype._generateDisclosureTrianglesIfNeeded):
        * UserInterface/Views/Popover.js:
        * UserInterface/Views/ProbeDetailsSidebarPanel.css:
        (body.mac-platform.legacy .details-section.probe-set .options > .probe-clear-samples): Deleted.
        (body.mac-platform.legacy .details-section.probe-set .options > .probe-remove): Deleted.
        (body.mac-platform.legacy .details-section.probe-set .options > .probe-add): Deleted.
        * UserInterface/Views/QuickConsole.css:
        (body.mac-platform.legacy .quick-console): Deleted.
        * UserInterface/Views/RadioButtonNavigationItem.css:
        (.navigation-bar .item.radio.button.text-only.selected:active):
        (body.mac-platform.legacy .navigation-bar .item.radio.button.text-only:hover): Deleted.
        (body.mac-platform.legacy .navigation-bar .item.radio.button.text-only.selected): Deleted.
        (body.mac-platform.legacy .navigation-bar .item.radio.button.text-only.selected:active): Deleted.
        * UserInterface/Views/RulesStyleDetailsPanel.css:
        (body.mac-platform.legacy .sidebar > .panel.details.css-style .rules .label + .style-declaration-section): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.details.css-style .rules .new-rule): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.details.css-style .rules .new-rule + .style-declaration-section): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.details.css-style .rules .new-rule img): Deleted.
        * UserInterface/Views/ScopeBar.css:
        (.scope-bar > li.selected:active):
        (body.mac-platform.legacy .scope-bar > li): Deleted.
        (body.mac-platform.legacy .scope-bar > li:hover): Deleted.
        (body.mac-platform.legacy .scope-bar > li.selected): Deleted.
        (body.mac-platform.legacy .scope-bar > li:active): Deleted.
        (body.mac-platform.legacy .scope-bar > li.selected:active): Deleted.
        * UserInterface/Views/ScriptContentView.js:
        (WebInspector.ScriptContentView):
        * UserInterface/Views/SearchBar.css:
        (body.mac-platform.legacy .search-bar > input[type="search"]): Deleted.
        * UserInterface/Views/SearchSidebarPanel.css:
        (.sidebar > .panel.navigation.search > .search-bar > input[type="search"]):
        (body.mac-platform.legacy .sidebar > .panel.navigation.search > :matches(.content, .empty-content-placeholder)): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation.search > .search-bar): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation.search > .search-bar > input[type="search"]): Deleted.
        * UserInterface/Views/Sidebar.css:
        (body.window-inactive .sidebar.right):
        (body.mac-platform.legacy .sidebar): Deleted.
        (body.mac-platform.legacy.window-inactive .sidebar): Deleted.
        (body.mac-platform.legacy .sidebar.right): Deleted.
        * UserInterface/Views/TextContentView.js:
        (WebInspector.TextContentView):
        * UserInterface/Views/TextResourceContentView.js:
        (WebInspector.TextResourceContentView):
        * UserInterface/Views/TimelineDataGrid.css:
        (body.mac-platform.legacy .data-grid.timeline > .navigation-bar-container > .navigation-bar): Deleted.
        * UserInterface/Views/TimelineIcons.css:
        (body.mac-platform.legacy .network-icon .icon): Deleted.
        (body.mac-platform.legacy .network-icon.large .icon): Deleted.
        (body.mac-platform.legacy .colors-icon .icon): Deleted.
        (body.mac-platform.legacy .colors-icon.large .icon): Deleted.
        * UserInterface/Views/TimelineRecordingContentView.js:
        (WebInspector.TimelineRecordingContentView):
        * UserInterface/Views/TimelineRuler.css:
        (body.mac-platform.legacy .timeline-ruler > .header): Deleted.
        (body.mac-platform.legacy .timeline-ruler > .selection-drag): Deleted.
        (body.mac-platform.legacy .timeline-ruler > .selection-handle): Deleted.
        * UserInterface/Views/TimelineSidebarPanel.css:
        (.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing > .content):
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-glyph): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-glyph.recording): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-glyph:hover): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-glyph.recording:hover): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-glyph.forced): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-glyph.recording.forced): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-status): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .title-bar): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .title-bar.timelines): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .title-bar.timeline-events): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .timelines-content): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .timelines-content .close-button): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .timelines-content li.item.selected + li.item): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .timelines-content :focus li.item.selected + li.item): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > :matches(.content, .empty-content-placeholder)): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .content .item > .status > .status-button): Deleted.
        * UserInterface/Views/TimelineSidebarPanel.js:
        (WebInspector.TimelineSidebarPanel):
        * UserInterface/Views/Toolbar.css:
        (body.mac-platform:not(.docked) .toolbar):
        (body.mac-platform:not(.legacy, .docked) .toolbar): Deleted.
        (body.mac-platform.legacy .toolbar): Deleted.
        (body.mac-platform.legacy.docked .toolbar): Deleted.
        (body.mac-platform.legacy:not(.docked) .toolbar .item.button > .label): Deleted.
        (body.mac-platform.legacy.window-inactive .toolbar): Deleted.
        * UserInterface/Views/TreeElementStatusButton.css:
        (body.mac-platform.legacy .item > .status > .status-button > svg .filled): Deleted.
        (body.mac-platform.legacy .item > .status > .status-button > svg .stroked): Deleted.

2015-04-29  Andres Gomez  <agomez@igalia.com>

        [GTK] Web Inspector: Optimize SVG images
        https://bugs.webkit.org/show_bug.cgi?id=143476

        SVG images optimized with a combination of sed replacements and
        the usage of the scour tool (http://www.codedread.com/scour/).

        Also, modified the spelling of the license word to use the US one
        in the copyright files.

        Reviewed by Martin Robinson.

        * UserInterface/Images/gtk/BackArrow.svg:
        * UserInterface/Images/gtk/BottomUpTree.svg:
        * UserInterface/Images/gtk/BreakpointActionAdd.svg:
        * UserInterface/Images/gtk/BreakpointActionRemove.svg:
        * UserInterface/Images/gtk/BreakpointButton.svg:
        * UserInterface/Images/gtk/BreakpointInactiveButton.svg:
        * UserInterface/Images/gtk/Breakpoints.svg:
        * UserInterface/Images/gtk/COPYING:
        * UserInterface/Images/gtk/COPYING_CCBYSA3:
        * UserInterface/Images/gtk/Checkers.svg:
        * UserInterface/Images/gtk/Circle.svg:
        * UserInterface/Images/gtk/Close.svg:
        * UserInterface/Images/gtk/CloseLarge.svg:
        * UserInterface/Images/gtk/CloseWhite.svg:
        * UserInterface/Images/gtk/ContentFlow.svg:
        * UserInterface/Images/gtk/Crosshair.svg:
        * UserInterface/Images/gtk/DOMCharacterData.svg:
        * UserInterface/Images/gtk/DOMComment.svg:
        * UserInterface/Images/gtk/DOMDocument.svg:
        * UserInterface/Images/gtk/DOMDocumentType.svg:
        * UserInterface/Images/gtk/DOMElement.svg:
        * UserInterface/Images/gtk/DOMNode.svg:
        * UserInterface/Images/gtk/DOMTextNode.svg:
        * UserInterface/Images/gtk/DOMTree.svg:
        * UserInterface/Images/gtk/DisclosureTriangleSmallClosed.svg:
        * UserInterface/Images/gtk/DisclosureTriangleSmallOpen.svg:
        * UserInterface/Images/gtk/DisclosureTriangleTinyClosed.svg:
        * UserInterface/Images/gtk/DisclosureTriangleTinyOpen.svg:
        * UserInterface/Images/gtk/DockBottom.svg:
        * UserInterface/Images/gtk/DockRight.svg:
        * UserInterface/Images/gtk/DownloadArrow.svg:
        * UserInterface/Images/gtk/Error.svg:
        * UserInterface/Images/gtk/Errors.svg:
        * UserInterface/Images/gtk/ErrorsEnabled.svg:
        * UserInterface/Images/gtk/EventListener.svg:
        * UserInterface/Images/gtk/Exception.svg:
        * UserInterface/Images/gtk/Eye.svg:
        * UserInterface/Images/gtk/FilterFieldGlyph.svg:
        * UserInterface/Images/gtk/ForwardArrow.svg:
        * UserInterface/Images/gtk/Function.svg:
        * UserInterface/Images/gtk/GoToArrow.svg:
        * UserInterface/Images/gtk/HierarchicalNavigationItemChevron.svg:
        * UserInterface/Images/gtk/IndeterminateProgressSpinner1.svg:
        * UserInterface/Images/gtk/IndeterminateProgressSpinner10.svg:
        * UserInterface/Images/gtk/IndeterminateProgressSpinner11.svg:
        * UserInterface/Images/gtk/IndeterminateProgressSpinner12.svg:
        * UserInterface/Images/gtk/IndeterminateProgressSpinner2.svg:
        * UserInterface/Images/gtk/IndeterminateProgressSpinner3.svg:
        * UserInterface/Images/gtk/IndeterminateProgressSpinner4.svg:
        * UserInterface/Images/gtk/IndeterminateProgressSpinner5.svg:
        * UserInterface/Images/gtk/IndeterminateProgressSpinner6.svg:
        * UserInterface/Images/gtk/IndeterminateProgressSpinner7.svg:
        * UserInterface/Images/gtk/IndeterminateProgressSpinner8.svg:
        * UserInterface/Images/gtk/IndeterminateProgressSpinner9.svg:
        * UserInterface/Images/gtk/Issues.svg:
        * UserInterface/Images/gtk/IssuesEnabled.svg:
        * UserInterface/Images/gtk/LayerBorders.svg:
        * UserInterface/Images/gtk/Locked.svg:
        * UserInterface/Images/gtk/Logs.svg:
        * UserInterface/Images/gtk/Native.svg:
        * UserInterface/Images/gtk/NavigationItemAngleBrackets.svg:
        * UserInterface/Images/gtk/NavigationItemBrushAndRuler.svg:
        * UserInterface/Images/gtk/NavigationItemBug.svg:
        * UserInterface/Images/gtk/NavigationItemCurleyBraces.svg:
        * UserInterface/Images/gtk/NavigationItemFile.svg:
        * UserInterface/Images/gtk/NavigationItemLayers.svg:
        * UserInterface/Images/gtk/NavigationItemLog.svg:
        * UserInterface/Images/gtk/NavigationItemProbes.svg:
        * UserInterface/Images/gtk/NavigationItemStopwatch.svg:
        * UserInterface/Images/gtk/NavigationItemStorage.svg:
        * UserInterface/Images/gtk/NavigationItemTrash.svg:
        * UserInterface/Images/gtk/NavigationItemTypes.svg:
        * UserInterface/Images/gtk/NavigationItemVariable.svg:
        * UserInterface/Images/gtk/PaintFlashing.svg:
        * UserInterface/Images/gtk/Pause.svg:
        * UserInterface/Images/gtk/PausedBreakpoint.svg:
        * UserInterface/Images/gtk/Percent.svg:
        * UserInterface/Images/gtk/Plus.svg:
        * UserInterface/Images/gtk/PseudoElement.svg:
        * UserInterface/Images/gtk/Record.svg:
        * UserInterface/Images/gtk/Reflection.svg:
        * UserInterface/Images/gtk/Reload.svg:
        * UserInterface/Images/gtk/ReloadFull.svg:
        * UserInterface/Images/gtk/ReplayPauseButton.svg:
        * UserInterface/Images/gtk/ReplayPlayButton.svg:
        * UserInterface/Images/gtk/ReplayRecordingButton.svg:
        * UserInterface/Images/gtk/Request.svg:
        * UserInterface/Images/gtk/Resources.svg:
        * UserInterface/Images/gtk/Response.svg:
        * UserInterface/Images/gtk/ResultLine.svg:
        * UserInterface/Images/gtk/Resume.svg:
        * UserInterface/Images/gtk/ShadowDOM.svg:
        * UserInterface/Images/gtk/SortIndicatorDownArrow.svg:
        * UserInterface/Images/gtk/SortIndicatorUpArrow.svg:
        * UserInterface/Images/gtk/SourceCode.svg:
        * UserInterface/Images/gtk/SplitToggleDown.svg:
        * UserInterface/Images/gtk/SplitToggleUp.svg:
        * UserInterface/Images/gtk/StepInto.svg:
        * UserInterface/Images/gtk/StepOut.svg:
        * UserInterface/Images/gtk/StepOver.svg:
        * UserInterface/Images/gtk/Stop.svg:
        * UserInterface/Images/gtk/StyleRuleAuthor.svg:
        * UserInterface/Images/gtk/StyleRuleInherited.svg:
        * UserInterface/Images/gtk/StyleRuleInheritedElement.svg:
        * UserInterface/Images/gtk/StyleRuleInspector.svg:
        * UserInterface/Images/gtk/StyleRuleUser.svg:
        * UserInterface/Images/gtk/StyleRuleUserAgent.svg:
        * UserInterface/Images/gtk/Time.svg:
        * UserInterface/Images/gtk/TimelineRecordAnimation.svg:
        * UserInterface/Images/gtk/TimelineRecordConsoleProfile.svg:
        * UserInterface/Images/gtk/TimelineRecordEvent.svg:
        * UserInterface/Images/gtk/TimelineRecordLayout.svg:
        * UserInterface/Images/gtk/TimelineRecordPaint.svg:
        * UserInterface/Images/gtk/TimelineRecordProbeSampled.svg:
        * UserInterface/Images/gtk/TimelineRecordScriptEvaluated.svg:
        * UserInterface/Images/gtk/TimelineRecordStyle.svg:
        * UserInterface/Images/gtk/TimelineRecordTimer.svg:
        * UserInterface/Images/gtk/TypeBoolean.svg:
        * UserInterface/Images/gtk/TypeNull.svg:
        * UserInterface/Images/gtk/TypeNumber.svg:
        * UserInterface/Images/gtk/TypeObject.svg:
        * UserInterface/Images/gtk/TypeRegex.svg:
        * UserInterface/Images/gtk/TypeString.svg:
        * UserInterface/Images/gtk/TypeSymbol.svg:
        * UserInterface/Images/gtk/TypeUndefined.svg:
        * UserInterface/Images/gtk/Undock.svg:
        * UserInterface/Images/gtk/UpDownArrows.svg:
        * UserInterface/Images/gtk/UserInputPrompt.svg:
        * UserInterface/Images/gtk/UserInputPromptPrevious.svg:
        * UserInterface/Images/gtk/UserInputResult.svg:
        * UserInterface/Images/gtk/Warning.svg:
        * UserInterface/Images/gtk/Weight.svg:

2015-04-29  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Navigation bar often looses last button when full
        https://bugs.webkit.org/show_bug.cgi?id=144385

        Added helpers to get the subpixel width and height of an element.
        Adopt them in the NavigationBar layout methods to get precise widths
        that don't accumulate rounding errors which lead to items overflowing.

        Reviewed by Joseph Pecoraro.

        * UserInterface/Base/Utilities.js:
        (Element.prototype.realOffsetWidth): Added.
        (Element.prototype.realOffsetHeight): Added.
        * UserInterface/Views/HierarchicalPathNavigationItem.js:
        (WebInspector.HierarchicalPathNavigationItem.prototype.updateLayout):
        * UserInterface/Views/NavigationBar.js:
        (WebInspector.NavigationBar.prototype.updateLayout):
        (WebInspector.NavigationBar.prototype._calculateMinimumWidth):
        * UserInterface/Views/TabBar.js:
        (WebInspector.TabBar.prototype._handleMouseMoved):
        * UserInterface/Views/Toolbar.js:
        (WebInspector.Toolbar.prototype.customUpdateLayout.isOverflowingToolbar):
        (WebInspector.Toolbar.prototype.customUpdateLayout):

2015-04-28  Matt Baker  <mattbaker@apple.com>

        Web Inspector: add a separate overview for the Rendering Frames timeline
        https://bugs.webkit.org/show_bug.cgi?id=144245

        Reviewed by Timothy Hatcher.

        The Timelines tab now supports two view modes, labeled "Timelines" and "Rendering Frames", with each mode
        having a seperate timeline overview and selected range. The Timelines mode displays the original time-based
        graphs (Network, Layout, and Script), and switching to the Rendering Frames mode displays a frames graph
        with a timeline ruler which shows frame indices.

        If the rendering frames timeline is supported by the backend, a navigation bar is added to the timelines
        sidebar with controls for switching between view modes. In addition to user-triggered view mode changes, the
        timelines sidebar will automatically change the current view mode in response to content view changes that
        are triggered elsewhere in the UI (for example, when a timeline that does not belong to the current view
        mode is selected via the navigation path).

        * UserInterface/Controllers/TimelineManager.js:
        (WebInspector.TimelineManager.prototype.get activeRecording): Deleted.
        (WebInspector.TimelineManager.prototype.get recordings): Deleted.
        Removed unused code.

        * UserInterface/Main.html:
        New files.

        * UserInterface/Models/RenderingFrameTimelineRecord.js:
        (WebInspector.RenderingFrameTimelineRecord):
        (WebInspector.RenderingFrameTimelineRecord.resetFrameIndex):
        (WebInspector.RenderingFrameTimelineRecord.prototype.get frameIndex):
        (WebInspector.RenderingFrameTimelineRecord.prototype.get frameNumber):
        * UserInterface/Models/TimelineRecording.js:
        (WebInspector.TimelineRecording.prototype.reset):
        Frame number is now derived from frame index.

        * UserInterface/Views/LinearTimelineOverview.js:
        (WebInspector.LinearTimelineOverview):
        (WebInspector.LinearTimelineOverview.prototype.canShowTimeline):
        New overview class for time-based timeline graphs.

        * UserInterface/Views/RenderingFrameDetailsSidebarPanel.js:
        (WebInspector.RenderingFrameDetailsSidebarPanel):
        (WebInspector.RenderingFrameDetailsSidebarPanel.prototype.updateRangeSelection):
        (WebInspector.RenderingFrameDetailsSidebarPanel.prototype._getSelectedRecords):
        Changed type of selected range from time to frame indices.

        * UserInterface/Views/RenderingFrameTimelineOverview.js:
        (WebInspector.RenderingFrameTimelineOverview.this.timelineRuler.formatLabelCallback):
        (WebInspector.RenderingFrameTimelineOverview):
        (WebInspector.RenderingFrameTimelineOverview.prototype.canShowTimeline):
        New overview class for frame-based timeline graphs.

        * UserInterface/Views/RenderingFrameTimelineOverviewGraph.css:
        (.timeline-overview > .graphs-container > .timeline-overview-graph.rendering-frame):
        * UserInterface/Views/RenderingFrameTimelineOverviewGraph.js:
        (WebInspector.RenderingFrameTimelineOverviewGraph):
        (WebInspector.RenderingFrameTimelineOverviewGraph.prototype._updateDividers.createDividerAtPosition.get if):
        Updated to use frame index ruler and removed frame combining logic.

        * UserInterface/Views/RenderingFrameTimelineView.js:
        (WebInspector.RenderingFrameTimelineView):
        Increased column widths.

        * UserInterface/Views/TimelineOverview.css:
        (.timeline-overview > .graphs-container):
        (body.mac-platform.legacy .timeline-overview > .graphs-container):
        Updated for new ruler height.

        * UserInterface/Views/TimelineOverview.js:
        (WebInspector.TimelineOverview):
        (WebInspector.TimelineOverview.prototype.get secondsPerPixel):
        (WebInspector.TimelineOverview.prototype.set secondsPerPixel):
        (WebInspector.TimelineOverview.prototype.get visibleDuration):
        (WebInspector.TimelineOverview.prototype.set selectionDuration):
        (WebInspector.TimelineOverview.prototype.updateLayout):
        (WebInspector.TimelineOverview.prototype.get timelineRuler):
        (WebInspector.TimelineOverview.prototype.canShowTimeline):
        (WebInspector.TimelineOverview.prototype._handleScrollEvent):
        (WebInspector.TimelineOverview.prototype._handleWheelEvent):
        (WebInspector.TimelineOverview.prototype._timelineRemoved):
        (WebInspector.TimelineOverview.prototype._timeRangeSelectionChanged):
        (WebInspector.TimelineOverview.prototype.set currentTime): Deleted.
        (WebInspector.TimelineOverview.prototype.updateLayoutIfNeeded): Deleted.
        (WebInspector.TimelineOverview.prototype._needsLayout): Deleted.
        Converted to base class. Derived classes provide settings and permitted timeline types.

        * UserInterface/Views/TimelineRecordFrame.css:
        (.timeline-record-frame):
        (.timeline-record-frame > .frame):
        (.timeline-record-frame > .frame > .duration):
        (.timeline-record-frame > .frame > .duration.timeline-record-type-network):
        (.timeline-record-frame > .frame > .duration.timeline-record-type-layout):
        (.timeline-record-frame > .frame > .duration.timeline-record-type-script):
        (.timeline-record-frame > .frame > .duration:last-child): Deleted.
        New graph frames styles.

        * UserInterface/Views/TimelineRecordFrame.js:
        (WebInspector.TimelineRecordFrame):
        (WebInspector.TimelineRecordFrame.prototype.get record):
        (WebInspector.TimelineRecordFrame.prototype.set record):
        (WebInspector.TimelineRecordFrame.prototype._updateChildElements.createDurationElement):
        (WebInspector.TimelineRecordFrame.prototype.get element): Deleted.
        Updated to use frame index ruler.
        Removed dropped frames and frame combining logic.

        * UserInterface/Views/TimelineRecordingContentView.js:
        (WebInspector.TimelineRecordingContentView):
        (WebInspector.TimelineRecordingContentView.prototype.shown):
        (WebInspector.TimelineRecordingContentView.prototype.hidden):
        (WebInspector.TimelineRecordingContentView.prototype.updateLayout):
        (WebInspector.TimelineRecordingContentView.prototype._currentContentViewDidChange):
        (WebInspector.TimelineRecordingContentView.prototype._updateTimes):
        (WebInspector.TimelineRecordingContentView.prototype._updateTimelineOverviewHeight):
        (WebInspector.TimelineRecordingContentView.prototype._getRenderingFrameTimeline):
        (WebInspector.TimelineRecordingContentView.prototype._timelineRemoved):
        (WebInspector.TimelineRecordingContentView.prototype._timelineCountChanged):
        (WebInspector.TimelineRecordingContentView.prototype._recordingReset):
        (WebInspector.TimelineRecordingContentView.prototype._timeRangeSelectionChanged):
        (WebInspector.TimelineRecordingContentView.prototype.get currentTimelineView): Deleted.
        (WebInspector.TimelineRecordingContentView.prototype.goForward): Deleted.
        (WebInspector.TimelineRecordingContentView.prototype.matchTreeElementAgainstCustomFilters): Deleted.
        (WebInspector.TimelineRecordingContentView.prototype._contentViewSupplementalRepresentedObjectsDidChange): Deleted.
        (WebInspector.TimelineRecordingContentView.prototype._update): Deleted.
        (WebInspector.TimelineRecordingContentView.prototype._debuggerPaused): Deleted.
        (WebInspector.TimelineRecordingContentView.prototype._debuggerResumed): Deleted.
        (WebInspector.TimelineRecordingContentView.prototype._recordingTimesUpdated): Deleted.
        Maintains two timeline overviews, switching between them based on the current content view.
        Updated tree element filtering to support both overview rulers.

        * UserInterface/Views/TimelineRuler.css:
        (.timeline-ruler > .header):
        (body.mac-platform.legacy .timeline-ruler > .header):
        (.timeline-ruler > .header > .divider > .label):
        (.timeline-ruler > .selection-drag):
        (body.mac-platform.legacy .timeline-ruler > .selection-drag):
        (.timeline-ruler > .selection-handle):
        (body.mac-platform.legacy .timeline-ruler > .selection-handle):
        (.timeline-ruler > .header > .divider): Deleted.
        (.timeline-ruler > .selection-drag:active): Deleted.
        Updated for new ruler height.

        * UserInterface/Views/TimelineRuler.js:
        (WebInspector.TimelineRuler):
        (WebInspector.TimelineRuler.prototype.set formatLabelCallback):
        (WebInspector.TimelineRuler.prototype.updateLayout):
        (WebInspector.TimelineRuler.prototype._formatDividerLabelText):
        (WebInspector.TimelineRuler.prototype.set allowsClippedLabels): Deleted.
        (WebInspector.TimelineRuler.prototype._updateSelection): Deleted.
        Added ability to customize label formatting.

        * UserInterface/Views/TimelineSidebarPanel.css:
        (.panel.timeline .navigation-bar.timelines-view):
        (.sidebar > .panel.navigation.timeline > .title-bar):
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .title-bar):
        (.sidebar > .panel.navigation.timeline > .title-bar.timelines):
        (.sidebar > .panel.navigation.timeline > .navigation-bar-container):
        (.sidebar > .panel.navigation.timeline > .navigation-bar-container > .navigation-bar):
        (.sidebar > .panel.navigation.timeline > .title-bar.timeline-events):
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .title-bar.timeline-events):
        (.sidebar > .panel.navigation.timeline > .timelines-content):
        (.sidebar > .panel.navigation.timeline > .empty-content-placeholder):
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > :matches(.content, .empty-content-placeholder)):
        (.sidebar > .panel.navigation.timeline > .timelines-content li.item.selected + li.item): Deleted.
        (body.window-inactive .sidebar > .panel.navigation.timeline > .timelines-content li.item.selected + li.item): Deleted.
        Updated for new navigation bar and ruler height.

        * UserInterface/Views/TimelineSidebarPanel.js:
        (WebInspector.TimelineSidebarPanel):
        (WebInspector.TimelineSidebarPanel.prototype.get viewMode):
        (WebInspector.TimelineSidebarPanel.prototype.canShowTimeline):
        (WebInspector.TimelineSidebarPanel.showTimelineViewForTimeline.this._timelineTreeElementMap.get select):
        (WebInspector.TimelineSidebarPanel.get this):
        (WebInspector.TimelineSidebarPanel._timelineAdded.set this):
        Added support for two view modes: Timelines and Rendering Frames.

        * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
        * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:
        New files.

2015-04-27  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Add new tab button to make it easy to bring a closed tab back
        https://bugs.webkit.org/show_bug.cgi?id=144297

        Reviewed by Joseph Pecoraro.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Base/Main.js:
        (WebInspector.contentLoaded):
        (WebInspector.isTabTypeAllowed):
        (WebInspector._tabContentViewForType):
        (WebInspector._rememberOpenTabs):
        (WebInspector._updateNewTabButtonState):
        (WebInspector._newTabItemClicked):
        (WebInspector.isNewTabWithTypeAllowed):
        (WebInspector.createNewTab):
        (WebInspector.activateExtraDomains):
        (WebInspector._restoreCookieForOpenTabs):
        (WebInspector._saveCookieForOpenTabs):
        (WebInspector._isTabTypeAllowed): Deleted.
        * UserInterface/Images/NewTab.svg: Added.
        * UserInterface/Images/NewTabPlus.svg:
        * UserInterface/Main.html:
        * UserInterface/Views/NewTabContentView.css: Added.
        (.new-tab.tab.content-view):
        (.new-tab.tab.content-view > .tab-item):
        (.new-tab.tab.content-view > .tab-item.disabled):
        (.new-tab.tab.content-view > .tab-item > .box):
        (.new-tab.tab.content-view > .tab-item:not(.disabled):active > .box):
        (.new-tab.tab.content-view > .tab-item > .box > img):
        (.new-tab.tab.content-view > .tab-item > label):
        * UserInterface/Views/NewTabContentView.js: Added.
        (WebInspector.NewTabContentView):
        (WebInspector.NewTabContentView.prototype.get type):
        (WebInspector.NewTabContentView.prototype._createNewTab):
        * UserInterface/Views/TabBar.css:
        (.tab-bar > .item:not(.disabled).selected):
        (.tab-bar > .item.new-tab-button:not(.disabled):hover):
        (.tab-bar:not(.animating) > .item:not(.selected, .disabled):hover + .item):
        (.tab-bar > .item.disabled > .icon):
        (.tab-bar > .item.new-tab-button:not(.disabled):hover > .icon):
        (.tab-bar > .item.selected): Deleted.
        (.tab-bar > .item.new-tab-button:hover): Deleted.
        (.tab-bar:not(.animating) > .item:not(.selected):hover + .item): Deleted.
        (.tab-bar > .item.new-tab-button:hover > .icon): Deleted.
        * UserInterface/Views/TabBar.js:
        (WebInspector.TabBar.prototype.set selectedTabBarItem):
        (WebInspector.TabBar.prototype._handleMouseDown):
        * UserInterface/Views/TabBarItem.js:
        (WebInspector.TabBarItem.prototype.get disabled):
        (WebInspector.TabBarItem.prototype.set disabled):
        * UserInterface/Views/TabBrowser.js:
        (WebInspector.TabBrowser):
        (WebInspector.TabBrowser.prototype.addTabForContentView):
        (WebInspector.TabBrowser.prototype.showTabForContentView):
        (WebInspector.TabBrowser.prototype.closeTabForContentView):

2015-04-27  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Cannot scroll Timeline Overview horizontally, scrollbar cannot be interacted with
        https://bugs.webkit.org/show_bug.cgi?id=144302

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/TimelineOverview.css:
        (.timeline-overview > .scroll-container):
        Increase the z-index of the scroll container over anything in the
        overview so that it can be interacted with.

2015-04-27  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Attempt to workaround exception in TimelineRuler
        https://bugs.webkit.org/show_bug.cgi?id=144228

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/TimelineRuler.js:
        (WebInspector.TimelineRuler.prototype.updateLayout):
        Use firstChild instead of a custom _labelElement property on the dividerElement.

2015-04-27  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Elements tab details sidebar becomes non-expandable after using Console tab
        https://bugs.webkit.org/show_bug.cgi?id=144212

        Show the DOM tree content view again on main resource change. This better matches what we did
        in the pre tab user interface with the DOM being off the main resource tree element.

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/ElementsTabContentView.js:
        (WebInspector.ElementsTabContentView): Listen for main resource change. Call _showDOMTreeContentView.
        (WebInspector.ElementsTabContentView.prototype.closed): Fix a leak and exception.
        The removeEventListener was wrong. Add a new removeEventListener for WebInspector.Frame.
        (WebInspector.ElementsTabContentView.prototype._showDOMTreeContentView): Added.
        (WebInspector.ElementsTabContentView.prototype._mainFrameDidChange): Call _showDOMTreeContentView.
        (WebInspector.ElementsTabContentView.prototype._mainResourceDidChange): Added.

2015-04-27  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: TabContentView closed() isn't being called when a tab is closed / removed
        https://bugs.webkit.org/show_bug.cgi?id=144229

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/ContentViewContainer.js:
        (WebInspector.ContentViewContainer.prototype._disassociateFromContentView):
        TabContentViews don't have a representedObject, so returning early and not
        calling closed() was not correct.

2015-04-26  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Cannot make Timeline time range selection clicking inside Frames Overview
        https://bugs.webkit.org/show_bug.cgi?id=143744

        Reviewed by Timothy Hatcher.

        Fixed frame rate divider element style so that it is no longer a mouse event target.

        * UserInterface/Views/RenderingFrameTimelineOverviewGraph.css:
        (.timeline-overview-graph.rendering-frame > .divider):

2015-04-26  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Allow Timeline tab to show resource when a go-to arrow is clicked in a recording
        https://bugs.webkit.org/show_bug.cgi?id=144240

        Only support showing a resource or script if we have that represented object in the Timeline sidebar.

        Reviewed by Darin Adler.

        * UserInterface/Views/TimelineTabContentView.js:
        (WebInspector.TimelineTabContentView.prototype.canShowRepresentedObject):

2015-04-26  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Don't use treeElement.revealAndSelect when showing a default content view
        https://bugs.webkit.org/show_bug.cgi?id=144239

        Using revealAndSelect will end up calling WebInspector.showRepresentedObject. That is not bad
        is most cases, but if the select tab supports the same represented object, it can end up showing
        the content view in the wrong tab.

        Reviewed by Darin Adler.

        * UserInterface/Views/ContentBrowserTabContentView.js:
        (WebInspector.ContentBrowserTabContentView.prototype._revealAndSelectRepresentedObjectInNavigationSidebar):
        * UserInterface/Views/DebuggerSidebarPanel.js:
        (WebInspector.DebuggerSidebarPanel.prototype.showDefaultContentView):
        * UserInterface/Views/NavigationSidebarPanel.js:
        (WebInspector.NavigationSidebarPanel.prototype.showDefaultContentViewForTreeElement):
        (WebInspector.NavigationSidebarPanel.prototype._checkElementsForPendingViewStateCookie):
        (WebInspector.NavigationSidebarPanel):
        (WebInspector.NavigationSidebarPanel.prototype.showContentViewForCurrentSelection): Deleted.
        * UserInterface/Views/ResourceSidebarPanel.js:
        (WebInspector.ResourceSidebarPanel.prototype.showDefaultContentView):
        (WebInspector.ResourceSidebarPanel.prototype._mainFrameDidChange):
        (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange.delayedWork):
        (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange):

2015-04-26  Jono Wells  <jonowells@apple.com>

        Web Inspector: Vertically misaligned text in Object Trees
        https://bugs.webkit.org/show_bug.cgi?id=144029

        Reviewed by Timothy Hatcher.

        Remove top offset for object tree property titles to fix alignment issue since applying -webkit-system-font
        font family to these (http://trac.webkit.org/changeset/182982).

        * UserInterface/Views/ObjectTreePropertyTreeElement.css:
        (.object-tree-property > .titles):

2015-04-25  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Uncaught exception ReferenceError: Can't find variable: message LogContentView.js
        https://bugs.webkit.org/show_bug.cgi?id=144210

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype._reappendProvisionalMessages):
        With recent refactorings this change was missed.

2015-04-25  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Uncaught exception using WebInspector.contentBrowser
        https://bugs.webkit.org/show_bug.cgi?id=144206

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/TimelineSidebarPanel.js:
        (WebInspector.TimelineSidebarPanel.showTimelineViewForTimeline.this._timelineTreeElementMap.get select):
        Use the current tab's content browser since a global one no longer exists.

2015-04-25  Timothy Hatcher  <timothy@apple.com>

        Update localized strings.

        * Localizations/en.lproj/localizedStrings.js: Updated.

2015-04-25  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Make JSContext debugging work with Tabs UI
        https://bugs.webkit.org/show_bug.cgi?id=144203

        Reviewed by Joseph Pecoraro.

        * UserInterface/Base/Main.js:
        (WebInspector.contentLoaded):
        (WebInspector._isTabTypeAllowed):
        (WebInspector.activateExtraDomains):
        (WebInspector._updateReloadToolbarButton):
        (WebInspector._updateDownloadToolbarButton):

2015-04-25  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Save and restore tab state on reload and between sessions
        https://bugs.webkit.org/show_bug.cgi?id=144202

        Reviewed by Joseph Pecoraro.

        * UserInterface/Base/Main.js:
        (WebInspector.contentLoaded):
        (WebInspector._mainResourceDidChange):
        (WebInspector._provisionalLoadStarted):
        (WebInspector._restoreCookieForOpenTabs):
        (WebInspector._saveCookieForOpenTabs):
        (WebInspector._pageHidden):
        * UserInterface/Views/TabContentView.js:
        (WebInspector.TabContentView):
        (WebInspector.TabContentView.prototype.restoreStateFromCookie):
        (WebInspector.TabContentView.prototype.saveStateToCookie):

2015-04-25  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Split search from ResourceSidebarPanel into a Search tab and sidebar
        https://bugs.webkit.org/show_bug.cgi?id=144197

        Reviewed by Joseph Pecoraro.

        * UserInterface/Base/Main.js:
        (WebInspector.contentLoaded):
        (WebInspector._tabContentViewForType):
        (WebInspector._searchTextDidChange):
        (WebInspector._focusSearchField):
        (WebInspector._domNodeWasInspected):
        * UserInterface/Controllers/DebuggerManager.js:
        (WebInspector.DebuggerManager.prototype.get knownNonResourceScripts):
        * UserInterface/Images/SearchResults.svg: Added.
        * UserInterface/Main.html:
        * UserInterface/Views/ResourceSidebarPanel.js:
        (WebInspector.ResourceSidebarPanel):
        (WebInspector.ResourceSidebarPanel.prototype.showDefaultContentView):
        (WebInspector.ResourceSidebarPanel.prototype.treeElementForRepresentedObject):
        (WebInspector.ResourceSidebarPanel.prototype._mainFrameDidChange):
        (WebInspector.ResourceSidebarPanel.prototype._scriptWasAdded):
        (WebInspector.ResourceSidebarPanel.prototype._treeElementSelected):
        (WebInspector.ResourceSidebarPanel.prototype._addStorageChild):
        (WebInspector.ResourceSidebarPanel.prototype._extraDomainsActivated):
        (WebInspector.ResourceSidebarPanel.prototype.get contentTreeOutlineToAutoPrune): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype.performSearch.updateEmptyContentPlaceholderSoon): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype.performSearch.updateEmptyContentPlaceholder): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype.performSearch.forEachMatch): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype.performSearch.resourceCallback): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype.performSearch.resourcesCallback): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype.performSearch.searchScripts.scriptCallback): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype.performSearch.searchScripts): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype.performSearch.domSearchResults): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype.performSearch.domCallback): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype.performSearch): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype._showResourcesContentTreeOutline): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype._showSearchContentTreeOutline): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype._searchFieldChanged): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype._searchFieldInput): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype._searchTreeElementForResource): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype._searchTreeElementForScript): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype._focusSearchField): Deleted.
        (WebInspector.ResourceSidebarPanel.prototype._scriptsToSearch): Deleted.
        * UserInterface/Views/SearchBar.js:
        (WebInspector.SearchBar):
        * UserInterface/Views/SearchSidebarPanel.css: Renamed from Source/WebInspectorUI/UserInterface/Views/ResourceSidebarPanel.css.
        (.sidebar > .panel.navigation.search > :matches(.content, .empty-content-placeholder)):
        (body.mac-platform.legacy .sidebar > .panel.navigation.search > :matches(.content, .empty-content-placeholder)):
        (.sidebar > .panel.navigation.search > .search-bar):
        (body.mac-platform.legacy .sidebar > .panel.navigation.search > .search-bar):
        (.sidebar > .panel.navigation.search > .search-bar > input[type="search"]):
        (body.mac-platform.legacy .sidebar > .panel.navigation.search > .search-bar > input[type="search"]):
        * UserInterface/Views/SearchSidebarPanel.js: Added.
        (WebInspector.SearchSidebarPanel):
        (WebInspector.SearchSidebarPanel.prototype.closed):
        (WebInspector.SearchSidebarPanel.prototype.focusSearchField):
        (WebInspector.SearchSidebarPanel.prototype.performSearch.updateEmptyContentPlaceholderSoon):
        (WebInspector.SearchSidebarPanel.prototype.performSearch.updateEmptyContentPlaceholder):
        (WebInspector.SearchSidebarPanel.prototype.performSearch.forEachMatch):
        (WebInspector.SearchSidebarPanel.prototype.performSearch.resourceCallback):
        (WebInspector.SearchSidebarPanel.prototype.performSearch.resourcesCallback):
        (WebInspector.SearchSidebarPanel.prototype.performSearch.searchScripts.scriptCallback):
        (WebInspector.SearchSidebarPanel.prototype.performSearch.searchScripts):
        (WebInspector.SearchSidebarPanel.prototype.performSearch.domSearchResults):
        (WebInspector.SearchSidebarPanel.prototype.performSearch.domCallback):
        (WebInspector.SearchSidebarPanel.prototype.performSearch):
        (WebInspector.SearchSidebarPanel.prototype._searchFieldChanged):
        (WebInspector.SearchSidebarPanel.prototype._searchFieldInput):
        (WebInspector.SearchSidebarPanel.prototype._searchTreeElementForResource):
        (WebInspector.SearchSidebarPanel.prototype._searchTreeElementForScript):
        (WebInspector.SearchSidebarPanel.prototype._mainResourceDidChange.delayedWork):
        (WebInspector.SearchSidebarPanel.prototype._mainResourceDidChange):
        (WebInspector.SearchSidebarPanel.prototype._treeElementSelected):
        * UserInterface/Views/SearchTabContentView.js: Added.
        (WebInspector.SearchTabContentView):
        (WebInspector.SearchTabContentView.prototype.get type):
        (WebInspector.SearchTabContentView.prototype.shown):
        (WebInspector.SearchTabContentView.prototype.closed):
        (WebInspector.SearchTabContentView.prototype.canShowRepresentedObject):
        (WebInspector.SearchTabContentView.prototype.focusSearchField):
        (WebInspector.SearchTabContentView.prototype.performSearch):
        * UserInterface/Views/Toolbar.css:
        (.toolbar .item-section.center-right):
        (.toolbar .item-section.right):
        (.toolbar .search-bar):
        (.toolbar .search-bar > input[type="search"]):
        (.toolbar .search-bar > input[type="search"]::-webkit-textfield-decoration-container):
        (body.window-inactive .toolbar .search-bar > input[type="search"]):
        (.toolbar .item): Deleted.

2015-04-25  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: New Toolbar UI for tabs
        https://bugs.webkit.org/show_bug.cgi?id=144185

        Reviewed by Joseph Pecoraro.

        * UserInterface/Base/ImageUtilities.js:
        * UserInterface/Base/Main.js:
        (WebInspector.loaded):
        (WebInspector.contentLoaded):
        (WebInspector.updateDockedState):
        (WebInspector._captureDidStart):
        (WebInspector._debuggerDidPause):
        (WebInspector._debuggerDidResume):
        (WebInspector._mainFrameDidChange):
        (WebInspector._mainResourceDidChange):
        (WebInspector._windowKeyDown):
        (WebInspector._windowKeyUp):
        (WebInspector._pageHidden):
        (WebInspector._undock):
        (WebInspector._dockBottom):
        (WebInspector._dockRight):
        (WebInspector._updateDockNavigationItems):
        (WebInspector._domNodeWasInspected):
        (WebInspector._inspectModeStateChanged):
        (WebInspector._toggleInspectMode):
        (WebInspector._downloadWebArchive):
        (WebInspector._reloadPageClicked):
        (WebInspector._updateDownloadToolbarButton):
        (WebInspector.archiveMainFrame):
        (WebInspector.canArchiveMainFrame):
        * UserInterface/Images/Crosshair.svg:
        * UserInterface/Images/DockBottom.svg:
        * UserInterface/Images/DockRight.svg:
        * UserInterface/Images/DownloadArrow.svg:
        * UserInterface/Images/ReloadToolbar.svg: Added.
        * UserInterface/Images/Undock.svg:
        * UserInterface/Views/ActivateButtonToolbarItem.js:
        (WebInspector.ActivateButtonToolbarItem):
        (WebInspector.ActivateButtonToolbarItem.prototype.set label):
        * UserInterface/Views/ButtonToolbarItem.css:
        (.toolbar .item.button):
        (body.window-inactive .toolbar .item.button):
        (.toolbar.small-size .item.button > .glyph):
        * UserInterface/Views/ButtonToolbarItem.js:
        (WebInspector.ButtonToolbarItem):
        (WebInspector.ButtonToolbarItem.prototype.set label):
        * UserInterface/Views/DashboardContainerView.css:
        (.toolbar .dashboard-container):
        * UserInterface/Views/Main.css:
        (body.docked.bottom):
        * UserInterface/Views/Toolbar.css:
        (.toolbar):
        (body.mac-platform:not(.legacy, .docked) .toolbar):
        (.toolbar .control-section):
        (.toolbar .item-section):
        (.toolbar .item-section.left):
        (.toolbar .item-section.center-left):
        (.toolbar .item-section.center-right):
        (.toolbar .item-section.right):
        * UserInterface/Views/Toolbar.js:
        (WebInspector.Toolbar):
        (WebInspector.Toolbar.prototype.customUpdateLayout.isOverflowingToolbar):
        (WebInspector.Toolbar.prototype.customUpdateLayout):
        (WebInspector.Toolbar.prototype.addToolbarItem):

2015-04-25  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Add NavigationBar to the details sidebar
        https://bugs.webkit.org/show_bug.cgi?id=144191

        Reviewed by Joseph Pecoraro.

        * UserInterface/Base/Main.js:
        (WebInspector.contentLoaded):

        * UserInterface/Views/DetailsSidebarPanel.js:
        (WebInspector.DetailsSidebarPanel):
        (WebInspector.DetailsSidebarPanel.prototype.get navigationItem):

        * UserInterface/Views/NavigationBar.js:
        (WebInspector.NavigationBar.prototype.removeNavigationItem):
        Remove unused index argument.

        * UserInterface/Views/Sidebar.css:
        (.sidebar > .navigation-bar):
        (.sidebar.has-navigation-bar > .panel):

        * UserInterface/Views/Sidebar.js:
        (WebInspector.Sidebar):
        (WebInspector.Sidebar.prototype.addSidebarPanel):
        (WebInspector.Sidebar.prototype.removeSidebarPanel):
        (WebInspector.Sidebar.prototype.set selectedSidebarPanel):
        (WebInspector.Sidebar.prototype.get minimumWidth):
        (WebInspector.Sidebar.prototype.set width):
        (WebInspector.Sidebar.prototype.set collapsed):

2015-04-24  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Switch over to a tab based UI
        https://bugs.webkit.org/show_bug.cgi?id=144154

        Reviewed by Joseph Pecoraro.

        * UserInterface/Base/Main.js:
        (WebInspector.loaded):
        (WebInspector.contentLoaded):
        (WebInspector._tabContentViewForType):
        (WebInspector._rememberOpenTabs):
        (WebInspector._windowResized):
        (WebInspector._tabBrowserSizeDidChange):
        (WebInspector._quickConsoleDidResize):
        (WebInspector._sidebarWidthDidChange):
        (WebInspector._tabBrowserSelectedTabContentViewDidChange):
        (WebInspector._inspectModeStateChanged):
        (WebInspector._focusedContentView):
        * UserInterface/Main.html:
        * UserInterface/Views/Main.css:
        (#tab-browser):

2015-04-23  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Remove Main.js code we don't need for Tabs
        https://bugs.webkit.org/show_bug.cgi?id=144126

        Reviewed by Joseph Pecoraro.

        * UserInterface/Base/Main.js:
        (WebInspector.loaded):
        (WebInspector.contentLoaded):

2015-04-23  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Change more places that changed WebInspector.navigationSidebar.selectedSidebarPanel to tabs
        https://bugs.webkit.org/show_bug.cgi?id=144125

        Reviewed by Joseph Pecoraro.

        * UserInterface/Base/Main.js:
        (WebInspector.loaded):
        (WebInspector.toggleDetailsSidebar):
        (WebInspector.tabContentViewClassForRepresentedObject):
        (WebInspector._updateModifierKeys):
        (WebInspector._consoleResizerMouseDown.dockedResizerDragEnd):
        (WebInspector._consoleResizerMouseDown):
        (WebInspector.linkifyURLAsNode):
        (WebInspector.linkifyStringAsFragmentWithCustomLinkifier):
        * UserInterface/Protocol/InspectorFrontendAPI.js:
        (InspectorFrontendAPI.setTimelineProfilingEnabled):
        (InspectorFrontendAPI.showConsole):
        (InspectorFrontendAPI.showResources):
        * UserInterface/Protocol/InspectorObserver.js:
        (WebInspector.InspectorObserver.prototype.inspect):
        * UserInterface/Views/DebuggerTabContentView.js:
        (WebInspector.DebuggerTabContentView.prototype.canShowRepresentedObject):
        (WebInspector.DebuggerTabContentView.prototype.revealAndSelectBreakpoint):
        * UserInterface/Views/DefaultDashboardView.js:
        (WebInspector.DefaultDashboardView):
        (WebInspector.DefaultDashboardView.prototype._resourcesWasClicked):
        * UserInterface/Views/SourceCodeTextEditor.js:
        (WebInspector.SourceCodeTextEditor.prototype.textEditorGutterContextMenu.revealInSidebar):
        * UserInterface/Views/TabBrowser.js:
        (WebInspector.TabBrowser.bestTabContentViewForClass):

2015-04-23  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Make Console work in a tab world
        https://bugs.webkit.org/show_bug.cgi?id=144112

        Reviewed by Joseph Pecoraro.

        * UserInterface/Base/Main.js:
        (WebInspector.contentLoaded):
        (WebInspector.isShowingConsoleTab):
        (WebInspector.UIString):
        (WebInspector.toggleNavigationSidebar):
        (WebInspector.toggleDetailsSidebar):
        (WebInspector.tabContentViewClassForRepresentedObject):
        (WebInspector.linkifyStringAsFragment):
        * UserInterface/Images/Console.svg: Added.
        * UserInterface/Protocol/InspectorFrontendAPI.js:
        (InspectorFrontendAPI.showConsole):
        * UserInterface/Views/ConsoleTabContentView.js: Added.
        (WebInspector.ConsoleTabContentView):
        (WebInspector.ConsoleTabContentView.prototype.shown):
        (WebInspector.ConsoleTabContentView.prototype.showRepresentedObject):
        (WebInspector.ConsoleTabContentView.prototype.canShowRepresentedObject):
        (WebInspector.ConsoleTabContentView.prototype.get supportsSplitContentBrowser):
        * UserInterface/Views/DefaultDashboardView.js:
        (WebInspector.DefaultDashboardView.prototype._consoleItemWasClicked):
        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView):
        (WebInspector.LogContentView.prototype.get navigationItems):
        (WebInspector.LogContentView.prototype.shown):
        (WebInspector.LogContentView.prototype.didAppendConsoleMessageView):
        (WebInspector.LogContentView.prototype._showConsoleTab):
        * UserInterface/Views/LogIcon.css:
        (.log-icon .icon):
        * UserInterface/Views/Main.css:
        (#split-content-browser .hierarchical-path-component.log-icon .icon):
        (#split-content-browser .hierarchical-path-component.log-icon .title):
        (#split-content-browser .hierarchical-path-component.log-icon select):

2015-04-23  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Make showing a content view work in the tab world
        https://bugs.webkit.org/show_bug.cgi?id=144110

        Reviewed by Joseph Pecoraro.

        * UserInterface/Base/Main.js:
        (WebInspector.loaded):
        (WebInspector.hideSplitConsole):
        (WebInspector.showSourceCodeLocation):
        (WebInspector.showOriginalUnformattedSourceCodeLocation):
        (WebInspector.showOriginalOrFormattedSourceCodeLocation):
        (WebInspector.showOriginalOrFormattedSourceCodeTextRange):
        (WebInspector.showResourceRequest):
        (WebInspector.debuggerToggleBreakpoints):
        (WebInspector.debuggerPauseResumeToggle):
        (WebInspector.debuggerStepOver):
        (WebInspector.debuggerStepInto):
        (WebInspector.debuggerStepOut):
        (WebInspector._focusChanged):
        (WebInspector._mouseWasClicked):
        (WebInspector._dragOver):
        (WebInspector._captureDidStart):
        (WebInspector._debuggerDidPause):
        (WebInspector._debuggerDidResume):
        (WebInspector._frameWasAdded):
        (WebInspector._undock):
        (WebInspector._updateDockNavigationItems):
        * UserInterface/Models/Breakpoint.js:
        (WebInspector.Breakpoint.prototype.appendContextMenuItems.revealOriginalSourceCodeLocation):
        (WebInspector.Breakpoint.prototype.appendContextMenuItems):
        * UserInterface/Protocol/InspectorFrontendAPI.js:
        (InspectorFrontendAPI.showMainResourceForFrame):
        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor.prototype.tokenTrackingControllerHighlightedRangeWasClicked):
        * UserInterface/Views/ComputedStyleDetailsPanel.js:
        (WebInspector.ComputedStyleDetailsPanel.prototype._goToRegionFlowArrowWasClicked):
        (WebInspector.ComputedStyleDetailsPanel.prototype._goToContentFlowArrowWasClicked):
        (WebInspector.ComputedStyleDetailsPanel):
        * UserInterface/Views/ContentBrowser.js:
        (WebInspector.ContentBrowser.prototype.updateHierarchicalPathForCurrentContentView):
        * UserInterface/Views/ContentView.js:
        (WebInspector.ContentView):
        * UserInterface/Views/DOMTreeContentView.js:
        (WebInspector.DOMTreeContentView.prototype.restoreFromCookie):
        * UserInterface/Views/DOMTreeDataGridNode.js:
        (WebInspector.DOMTreeDataGridNode.prototype._goToArrowWasClicked):
        * UserInterface/Views/DebuggerSidebarPanel.js:
        (WebInspector.DebuggerSidebarPanel.prototype.showDefaultContentView):
        (WebInspector.DebuggerSidebarPanel.prototype._addTreeElementForSourceCodeToContentTreeOutline):
        (WebInspector.DebuggerSidebarPanel.prototype._treeElementSelected):
        (WebInspector.DebuggerSidebarPanel.prototype._addIssue):
        (WebInspector.DebuggerSidebarPanel.prototype._handleIssueAdded):
        * UserInterface/Views/LayerTreeDataGridNode.js:
        (WebInspector.LayerTreeDataGridNode.prototype._goToArrowWasClicked):
        * UserInterface/Views/LayoutTimelineView.js:
        (WebInspector.LayoutTimelineView.prototype._treeElementSelected):
        * UserInterface/Views/NavigationSidebarPanel.js:
        (WebInspector.NavigationSidebarPanel.prototype.get contentBrowser):
        (WebInspector.NavigationSidebarPanel.prototype.set contentBrowser):
        (WebInspector.NavigationSidebarPanel.prototype._updateFilter):
        * UserInterface/Views/NetworkTimelineView.js:
        (WebInspector.NetworkTimelineView.prototype._treeElementSelected):
        * UserInterface/Views/ObjectTreeBaseTreeElement.js:
        (WebInspector.ObjectTreeBaseTreeElement.prototype._appendMenusItemsForObject):
        (WebInspector.ObjectTreeBaseTreeElement):
        * UserInterface/Views/OverviewTimelineView.js:
        (WebInspector.OverviewTimelineView.prototype._treeElementSelected):
        * UserInterface/Views/ResourceDetailsSidebarPanel.js:
        (WebInspector.ResourceDetailsSidebarPanel.prototype._goToRequestDataClicked):
        * UserInterface/Views/ResourceSidebarPanel.js:
        (WebInspector.ResourceSidebarPanel):
        (WebInspector.ResourceSidebarPanel.prototype.showDefaultContentView):
        (WebInspector.ResourceSidebarPanel.prototype._mainFrameDidChange):
        (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange.delayedWork):
        (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange):
        (WebInspector.ResourceSidebarPanel.prototype._treeElementSelected):
        (WebInspector.ResourceSidebarPanel.prototype._storageCleared):
        * UserInterface/Views/ResourceTimelineDataGridNode.js:
        (WebInspector.ResourceTimelineDataGridNode.prototype._goToResource):
        * UserInterface/Views/ScriptTimelineView.js:
        (WebInspector.ScriptTimelineView.prototype._treeElementSelected):
        * UserInterface/Views/SourceCodeTextEditor.js:
        (WebInspector.SourceCodeTextEditor.prototype.tokenTrackingControllerHighlightedRangeWasClicked):
        * UserInterface/Views/TimelineDataGrid.js:
        (WebInspector.TimelineDataGrid.prototype._popoverCallStackTreeElementSelected):
        * UserInterface/Views/TimelineSidebarPanel.js:
        (WebInspector.TimelineSidebarPanel):
        (WebInspector.TimelineSidebarPanel.prototype.shown):
        (WebInspector.TimelineSidebarPanel.showTimelineViewForTimeline):

2015-04-22  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Make debugger keyboard shortcuts global
        https://bugs.webkit.org/show_bug.cgi?id=144068

        We wont always have a DebuggerSidebarPanel to listen for the shortcuts.

        Reviewed by Joseph Pecoraro.

        * UserInterface/Base/Main.js:
        (WebInspector.contentLoaded):
        (WebInspector.showSourceCodeForFrame):
        (WebInspector.showSourceCode):
        * UserInterface/Controllers/DebuggerManager.js:
        (WebInspector.DebuggerManager.prototype.pause):
        * UserInterface/Views/DebuggerSidebarPanel.js:
        (WebInspector.DebuggerSidebarPanel.prototype.restoreStateFromCookie):
        (WebInspector.DebuggerSidebarPanel.prototype._debuggerDidResume):
        (WebInspector.DebuggerSidebarPanel.prototype._handleIssueAdded):
        (WebInspector.DebuggerSidebarPanel.prototype._handleIssuesCleared):
        (WebInspector.DebuggerSidebarPanel):

2015-04-22  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Remove Reload and Download Web Archive buttons from FrameTreeElement
        https://bugs.webkit.org/show_bug.cgi?id=144064

        The will be global toolbar items soon.

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/FrameTreeElement.js:
        * UserInterface/Views/ResourceTreeElement.js:
        (WebInspector.ResourceTreeElement.prototype._updateStatus):

2015-04-22  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Remove time and weight from the dashboard
        https://bugs.webkit.org/show_bug.cgi?id=144063

        These two items were the odd ones out since they are only available
        when recording a timeline. We will need the toolbar space soon, so make
        this lets us make the dashboard skinnier.

        This also removes the exception catching in DashboardContainerView. It doesn't really
        help us and it makes debugging an exception harder.

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/DashboardContainerView.css:
        (.toolbar .dashboard-container):
        * UserInterface/Views/DashboardContainerView.js:
        (WebInspector.DashboardContainerView.prototype._dashboardViewForRepresentedObject):
        * UserInterface/Views/DefaultDashboardView.css:
        (body.web .toolbar.collapsed .dashboard.default > .item.resourcesCount):
        (body.javascript .toolbar .dashboard.default > .item.resourcesCount):
        * UserInterface/Views/DefaultDashboardView.js:
        (WebInspector.DefaultDashboardView):
        (WebInspector.DefaultDashboardView.prototype._updateDisplay):

2015-04-22  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Remove sidebar panel shortcut and image
        https://bugs.webkit.org/show_bug.cgi?id=144061

        Sidebar panels no longer need a keyboard shortcut or a toolbar image.

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/ApplicationCacheDetailsSidebarPanel.js:
        (WebInspector.ApplicationCacheDetailsSidebarPanel):
        * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
        (WebInspector.CSSStyleDetailsSidebarPanel):
        * UserInterface/Views/DOMDetailsSidebarPanel.js:
        (WebInspector.DOMDetailsSidebarPanel):
        * UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
        (WebInspector.DOMNodeDetailsSidebarPanel):
        * UserInterface/Views/DebuggerSidebarPanel.js:
        * UserInterface/Views/DetailsSidebarPanel.js:
        (WebInspector.DetailsSidebarPanel):
        * UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
        (WebInspector.LayerTreeDetailsSidebarPanel):
        * UserInterface/Views/NavigationSidebarPanel.js:
        (WebInspector.NavigationSidebarPanel):
        (WebInspector.NavigationSidebarPanel.prototype.restoreStateFromCookie):
        (WebInspector.NavigationSidebarPanel.prototype.showEmptyContentPlaceholder):
        (WebInspector.NavigationSidebarPanel.prototype.applyFiltersToTreeElement):
        (WebInspector.NavigationSidebarPanel.prototype.show):
        (WebInspector.NavigationSidebarPanel.prototype._updateContentOverflowShadowVisibility):
        * UserInterface/Views/ProbeDetailsSidebarPanel.js:
        (WebInspector.ProbeDetailsSidebarPanel):
        * UserInterface/Views/RenderingFrameDetailsSidebarPanel.js:
        * UserInterface/Views/ResourceDetailsSidebarPanel.js:
        (WebInspector.ResourceDetailsSidebarPanel):
        * UserInterface/Views/ResourceSidebarPanel.js:
        (WebInspector.ResourceSidebarPanel):
        * UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
        (WebInspector.ScopeChainDetailsSidebarPanel):
        * UserInterface/Views/SidebarPanel.js:
        (WebInspector.SidebarPanel):
        (WebInspector.SidebarPanel.prototype.added):
        (WebInspector.SidebarPanel.prototype.removed):
        (WebInspector.SidebarPanel.prototype.visibilityDidChange):
        * UserInterface/Views/TimelineSidebarPanel.js:
        (WebInspector.TimelineSidebarPanel):
        (WebInspector.TimelineSidebarPanel.prototype.showTimelineViewForTimeline):

2015-04-22  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Remove allowedNavigationSidebarPanels, it isn't needed
        https://bugs.webkit.org/show_bug.cgi?id=144056

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/ApplicationCacheFrameContentView.js:
        * UserInterface/Views/ContentView.js:
        * UserInterface/Views/CookieStorageContentView.js:
        * UserInterface/Views/DOMStorageContentView.js:
        * UserInterface/Views/DOMTreeContentView.js:
        * UserInterface/Views/DatabaseContentView.js:
        * UserInterface/Views/DatabaseTableContentView.js:
        * UserInterface/Views/FontResourceContentView.js:
        * UserInterface/Views/FrameDOMTreeContentView.js:
        * UserInterface/Views/LogContentView.js:
        * UserInterface/Views/ResourceClusterContentView.js:
        * UserInterface/Views/TimelineRecordingContentView.js:

2015-04-22  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Support passing extra arguments to ContentViews during construction
        https://bugs.webkit.org/show_bug.cgi?id=144055

        This allows us to pass the TimelineSidebarPanel to Timeline views since in the future
        there could be multiple timeline sidebars, one per tab. So the global instance will
        be going away.

        This also removes the exception catching in ContentViewContainer. It doesn't really
        help us and it makes debugging an exception harder.

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/ContentBrowser.js:
        (WebInspector.ContentBrowser.prototype.showContentViewForRepresentedObject):
        (WebInspector.ContentBrowser.prototype.contentViewForRepresentedObject):
        * UserInterface/Views/ContentView.js:
        (WebInspector.ContentView):
        * UserInterface/Views/ContentViewContainer.js:
        (WebInspector.ContentViewContainer.prototype.contentViewForRepresentedObject):
        (WebInspector.ContentViewContainer.prototype.showContentViewForRepresentedObject):
        * UserInterface/Views/LayoutTimelineView.js:
        (WebInspector.LayoutTimelineView.prototype._dataGridFiltersDidChange):
        (WebInspector.LayoutTimelineView.prototype._treeElementSelected):
        (WebInspector.LayoutTimelineView.prototype._closeStatusButtonClicked):
        * UserInterface/Views/NetworkTimelineView.js:
        (WebInspector.NetworkTimelineView.prototype._dataGridFiltersDidChange):
        (WebInspector.NetworkTimelineView.prototype._treeElementSelected):
        (WebInspector.NetworkTimelineView.prototype._closeStatusButtonClicked):
        * UserInterface/Views/OverviewTimelineView.js:
        (WebInspector.OverviewTimelineView.prototype._treeElementSelected):
        (WebInspector.OverviewTimelineView.prototype._closeStatusButtonClicked):
        * UserInterface/Views/RenderingFrameTimelineView.js:
        (WebInspector.RenderingFrameTimelineView):
        * UserInterface/Views/ScriptTimelineView.js:
        (WebInspector.ScriptTimelineView):
        (WebInspector.ScriptTimelineView.prototype._dataGridFiltersDidChange):
        (WebInspector.ScriptTimelineView.prototype._treeElementSelected):
        (WebInspector.ScriptTimelineView.prototype._closeStatusButtonClicked):
        * UserInterface/Views/TimelineRecordingContentView.js:
        (WebInspector.TimelineRecordingContentView):
        (WebInspector.TimelineRecordingContentView.prototype._currentContentViewDidChange):
        (WebInspector.TimelineRecordingContentView.prototype._contentViewSelectionPathComponentDidChange):
        (WebInspector.TimelineRecordingContentView.prototype._updateTimes):
        (WebInspector.TimelineRecordingContentView.prototype._timeRangeSelectionChanged):
        * UserInterface/Views/TimelineSidebarPanel.js:
        * UserInterface/Views/TimelineView.js:
        (WebInspector.TimelineView):
        (WebInspector.TimelineView.prototype.get timelineSidebarPanel):

2015-04-18  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Disable global keyboard shortcuts for background tabs
        https://bugs.webkit.org/show_bug.cgi?id=143918

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/ContentBrowser.js:
        (WebInspector.ContentBrowser):
        (WebInspector.ContentBrowser.prototype.shown): Added.
        (WebInspector.ContentBrowser.prototype.hidden): Added.
        Disable shortcuts on the browser and find banner.

        * UserInterface/Views/ContentBrowserTabContentView.js:
        (WebInspector.ContentBrowserTabContentView.prototype.shown): Added.
        (WebInspector.ContentBrowserTabContentView.prototype.hidden): Added.
        Tell the content browser we were shown or hidden.

        * UserInterface/Views/FindBanner.js:
        (WebInspector.FindBanner):
        (WebInspector.FindBanner.prototype.show):
        (WebInspector.FindBanner.prototype.enableKeyboardShortcuts): Added.
        (WebInspector.FindBanner.prototype.disableKeyboardShortcuts): Added.
        Support disabling or enabling the keyboard shortcuts.

2015-04-17  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Add TabBrowser and TabContentView
        https://bugs.webkit.org/show_bug.cgi?id=143886

        Reviewed by Joseph Pecoraro.

        * UserInterface/Images/Debugger.svg: Added.
        * UserInterface/Images/Elements.svg: Added.
        * UserInterface/Images/Gear.svg: Added.
        * UserInterface/Images/NewTabPlus.svg: Added.
        * UserInterface/Images/Resources.svg:
        * UserInterface/Images/Timeline.svg: Added.
        * UserInterface/Images/ToggleLeftSidebar.svg: Added.
        * UserInterface/Images/ToggleRightSidebar.svg: Added.

        * UserInterface/Views/ContentBrowserTabContentView.css: Added.
        (.content-browser.tab.content-view > .content-browser):

        * UserInterface/Views/ContentBrowserTabContentView.js: Added.
        (WebInspector.ContentBrowserTabContentView):
        (WebInspector.ContentBrowserTabContentView.prototype.get contentBrowser):
        (WebInspector.ContentBrowserTabContentView.prototype.shown):
        (WebInspector.ContentBrowserTabContentView.prototype.hidden):
        (WebInspector.ContentBrowserTabContentView.prototype.closed):
        (WebInspector.ContentBrowserTabContentView.prototype.updateLayout):
        (WebInspector.ContentBrowserTabContentView.prototype.get managesDetailsSidebarPanels):
        (WebInspector.ContentBrowserTabContentView.prototype.showDetailsSidebarPanels):
        (WebInspector.ContentBrowserTabContentView.prototype.contentBrowserTreeElementForRepresentedObject):
        (WebInspector.ContentBrowserTabContentView.prototype._navigationSidebarCollapsedStateDidChange):
        (WebInspector.ContentBrowserTabContentView.prototype._detailsSidebarCollapsedStateDidChange):
        (WebInspector.ContentBrowserTabContentView.prototype._detailsSidebarPanelSelected):
        (WebInspector.ContentBrowserTabContentView.prototype._contentBrowserRepresentedObjectsDidChange):
        (WebInspector.ContentBrowserTabContentView.prototype._contentBrowserCurrentContentViewDidChange):
        (WebInspector.ContentBrowserTabContentView.prototype._revealAndSelectRepresentedObjectInNavigationSidebar):

        * UserInterface/Views/DebuggerTabContentView.js: Added.
        (WebInspector.DebuggerTabContentView):

        * UserInterface/Views/ElementsTabContentView.js: Added.
        (WebInspector.ElementsTabContentView):
        (WebInspector.ElementsTabContentView.prototype._mainFrameDidChange):

        * UserInterface/Views/ResourcesTabContentView.js: Added.
        (WebInspector.ResourcesTabContentView):

        * UserInterface/Views/SettingsTabContentView.js: Added.
        (WebInspector.SettingsTabContentView):

        * UserInterface/Views/TabBrowser.css: Added.
        (.tab-browser):
        (.tab-browser > .tab-bar):
        (.tab-browser > .content-view-container):
        (.tab-browser > .tab-bar + .content-view-container):

        * UserInterface/Views/TabBrowser.js: Added.
        (WebInspector.TabBrowser):
        (WebInspector.TabBrowser.prototype.get tabBar):
        (WebInspector.TabBrowser.prototype.get navigationSidebar):
        (WebInspector.TabBrowser.prototype.get detailsSidebar):
        (WebInspector.TabBrowser.prototype.get selectedTabContentView):
        (WebInspector.TabBrowser.prototype.updateLayout):
        (WebInspector.TabBrowser.prototype.bestTabContentViewForRepresentedObject):
        (WebInspector.TabBrowser.prototype.addTabForContentView):
        (WebInspector.TabBrowser.prototype.showTabForContentView):
        (WebInspector.TabBrowser.prototype.closeTabForContentView):
        (WebInspector.TabBrowser.prototype._tabBarItemSelected):
        (WebInspector.TabBrowser.prototype._sidebarPanelSelected):
        (WebInspector.TabBrowser.prototype._sidebarCollapsedStateDidChange):
        (WebInspector.TabBrowser.prototype._showNavigationSidebarPanelForTabContentView):
        (WebInspector.TabBrowser.prototype._showDetailsSidebarPanelsForTabContentView):

        * UserInterface/Views/TabContentView.js: Added.
        (WebInspector.TabContentView):
        (WebInspector.TabContentView.prototype.get parentTabBrowser):
        (WebInspector.TabContentView.prototype.set parentTabBrowser):
        (WebInspector.TabContentView.prototype.get tabBarItem):
        (WebInspector.TabContentView.prototype.get managesDetailsSidebarPanels):
        (WebInspector.TabContentView.prototype.showDetailsSidebarPanels):
        (WebInspector.TabContentView.prototype.canShowRepresentedObject):
        (WebInspector.TabContentView.prototype.get navigationSidebarPanel):
        (WebInspector.TabContentView.prototype.get navigationSidebarCollapsedSetting):
        (WebInspector.TabContentView.prototype.get detailsSidebarPanels):
        (WebInspector.TabContentView.prototype.get detailsSidebarCollapsedSetting):
        (WebInspector.TabContentView.prototype.get detailsSidebarSelectedPanelSetting):

        * UserInterface/Views/TimelineTabContentView.js: Added.
        (WebInspector.TimelineTabContentView):

2015-04-06  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Add a WebInspector.TabBar class
        https://bugs.webkit.org/show_bug.cgi?id=143442

        Reviewed by Joseph Pecoraro.

        * UserInterface/Main.html:
        Added new files.

        * UserInterface/Protocol/InspectorFrontendHostStub.js:
        (window.Symbol):
        (WebInspector.InspectorFrontendHostStub.prototype.showContextMenu):
        Added some stubs needed to work standalone.

        * UserInterface/Views/TabBar.css: Added.
        (.tab-bar):
        (body.window-inactive .tab-bar):
        (.tab-bar > .top-border):
        (body.window-inactive .tab-bar > .top-border):
        (.tab-bar > .item):
        (.tab-bar > :nth-child(n + 2 of .item)):
        (.tab-bar > .item.pinned):
        (.tab-bar > .item.selected):
        (.tab-bar > .item.new-tab-button:hover):
        (.tab-bar:not(.animating) > .item:not(.selected):hover + .item):
        (body.window-inactive .tab-bar > .item):
        (body.window-inactive .tab-bar > .item.selected):
        (.tab-bar > .item > .close):
        (body:not(.window-inactive) .tab-bar:not(.single-tab) > .item:hover > .close):
        (.tab-bar.single-tab > .item > .close):
        (.tab-bar > .item > .close:hover):
        (.tab-bar > .item > .close:active):
        (.tab-bar > .item > .flex-space):
        (.tab-bar > .item > .flex-space:last-child):
        (.tab-bar > .item > .icon):
        (.tab-bar > .item.selected > .icon):
        (.tab-bar > .item.new-tab-button:hover > .icon):
        (.tab-bar > .item > .title):
        (.tab-bar > .item > .title > .content):
        (.tab-bar:not(.animating) > .item:not(.selected):hover > .title):
        (.tab-bar > .item.selected > .title):
        (.tab-bar.collapsed > .item):
        (.tab-bar.collapsed > .item > .flex-space):
        (.tab-bar.collapsed > .item > .close):
        (.tab-bar.hide-titles > .item > .title):
        (.tab-bar.hide-titles > .item.selected:hover > .icon):
        (.tab-bar.hide-titles > .item.selected:hover > .close):
        (.tab-bar.static-layout):
        (.tab-bar.static-layout > .item):
        (.tab-bar.animating.closing-tab > .item):
        (.tab-bar.animating:matches(.expanding-tabs, .inserting-tab) > .item):
        (.tab-bar.animating.inserting-tab > .item.being-inserted):
        (.tab-bar.animating.closing-tab > .item.selected):
        (body.window-inactive .tab-bar.animating.closing-tab > .item.selected):
        (.tab-bar.dragging-tab > .item.selected):

        * UserInterface/Views/TabBar.js: Added.
        (WebInspector.TabBar):
        (WebInspector.TabBar.prototype.get newTabItem):
        (WebInspector.TabBar.prototype.set newTabItem):
        (WebInspector.TabBar.prototype.addTabBarItem):
        (WebInspector.TabBar.prototype.insertTabBarItem.animateTabs):
        (WebInspector.TabBar.prototype.insertTabBarItem.removeStyles):
        (WebInspector.TabBar.prototype.insertTabBarItem):
        (WebInspector.TabBar.prototype.insertTabBarItem.set else):
        (WebInspector.TabBar.prototype.insertTabBarItem.set this):
        (WebInspector.TabBar.animateTabs.get if):
        (WebInspector.TabBar.animateTabs):
        (WebInspector.TabBar.removeStyles):
        (WebInspector.TabBar.prototype.insertTabBarItem):
        (WebInspector.TabBar.prototype.updateLayoutSoon.update):
        (WebInspector.TabBar.prototype.updateLayoutSoon):
        (WebInspector.TabBar.prototype.updateLayout):
        (WebInspector.TabBar.prototype.get selectedTabBarItem):
        (WebInspector.TabBar.prototype.set selectedTabBarItem):
        (WebInspector.TabBar.prototype.get tabBarItems):
        (WebInspector.TabBar.prototype.get element):
        (WebInspector.TabBar.prototype._findTabBarItem):
        (WebInspector.TabBar.prototype._hasMoreThanOneNormalTab):
        (WebInspector.TabBar.prototype._recordTabBarItemSizesAndPositions):
        (WebInspector.TabBar.prototype._clearTabBarItemSizesAndPositions):
        (WebInspector.TabBar.prototype._finishExpandingTabsAfterClose.):
        (WebInspector.TabBar.prototype._finishExpandingTabsAfterClose):
        (WebInspector.TabBar.prototype._handleMouseDown):
        (WebInspector.TabBar.prototype._handleMouseMoved):
        (WebInspector.TabBar.prototype._handleMouseUp):
        (WebInspector.TabBar.prototype._handleMouseLeave):
        (WebInspector.TabBar.prototype._handleNewTabMouseEnter):

        * UserInterface/Views/TabBarItem.js: Added.
        (WebInspector.TabBarItem):
        (WebInspector.TabBarItem.prototype.get identifier):
        (WebInspector.TabBarItem.prototype.get element):
        (WebInspector.TabBarItem.prototype.get parentTabBar):
        (WebInspector.TabBarItem.prototype.set parentTabBar):
        (WebInspector.TabBarItem.prototype.get selected):
        (WebInspector.TabBarItem.prototype.set selected):
        (WebInspector.TabBarItem.prototype.get pinned):
        (WebInspector.TabBarItem.prototype.get image):
        (WebInspector.TabBarItem.prototype.set image):
        (WebInspector.TabBarItem.prototype.get title):
        (WebInspector.TabBarItem.prototype.set title):
        (WebInspector.TabBarItem.prototype.updateLayout):

2015-04-25  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Make closing ContentViews more leak proof
        https://bugs.webkit.org/show_bug.cgi?id=144200

        Remove all listeners on the target objects in close that match the this object.
        This makes things more foolproof when something changes or a new listener is
        added to the same object. TimelineRecordingContentView also had a leak where
        TimelineManager and DebuggerManager listeners were not being removed.

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/ApplicationCacheFrameContentView.js:
        (WebInspector.ApplicationCacheFrameContentView.prototype.closed):
        * UserInterface/Views/ClusterContentView.js:
        (WebInspector.ClusterContentView.prototype.closed):
        * UserInterface/Views/ContentFlowDOMTreeContentView.js:
        (WebInspector.ContentFlowDOMTreeContentView.prototype.closed):
        * UserInterface/Views/FrameDOMTreeContentView.js:
        (WebInspector.FrameDOMTreeContentView.prototype.closed):
        * UserInterface/Views/ResourceContentView.js:
        (WebInspector.ResourceContentView.prototype.closed):
        * UserInterface/Views/TextResourceContentView.js:
        (WebInspector.TextResourceContentView.prototype.closed):
        * UserInterface/Views/TimelineRecordingContentView.js:
        (WebInspector.TimelineRecordingContentView.prototype.closed):

2015-04-25  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Make closing ContentViews more leak proof
        https://bugs.webkit.org/show_bug.cgi?id=144200

        Remove all listeners on the target objects in close that match the this object.
        This makes things more foolproof when something changes or a new listener is
        added to the same object. TimelineRecordingContentView also had a leak where
        TimelineManager and DebuggerManager listeners were not being removed.

        Reviewed by Darin Adler.

        * UserInterface/Views/ApplicationCacheFrameContentView.js:
        (WebInspector.ApplicationCacheFrameContentView.prototype.closed):
        * UserInterface/Views/ClusterContentView.js:
        (WebInspector.ClusterContentView.prototype.closed):
        * UserInterface/Views/ContentFlowDOMTreeContentView.js:
        (WebInspector.ContentFlowDOMTreeContentView.prototype.closed):
        * UserInterface/Views/FrameDOMTreeContentView.js:
        (WebInspector.FrameDOMTreeContentView.prototype.closed):
        * UserInterface/Views/ResourceContentView.js:
        (WebInspector.ResourceContentView.prototype.closed):
        * UserInterface/Views/TextResourceContentView.js:
        (WebInspector.TextResourceContentView.prototype.closed):
        * UserInterface/Views/TimelineRecordingContentView.js:
        (WebInspector.TimelineRecordingContentView.prototype.closed):

2015-04-25  Tobias Reiss  <tobi+webkit@basecode.de>

        Web Inspector: assertion failure when editing inline styles
        https://bugs.webkit.org/show_bug.cgi?id=143939

        Reviewed by Timothy Hatcher.

        Prevent "_updateResourceContent" from being called on inline style changes.
        Introduce a flag that marks a CSSStyleSheet as a representation of an
        "ElementCSSInlineStyle" (DOM Level 2 spec) and return early.

        * UserInterface/Controllers/CSSStyleManager.js:
        (WebInspector.CSSStyleManager.prototype.styleSheetChanged):
        * UserInterface/Models/CSSStyleSheet.js:
        (WebInspector.CSSStyleSheet):
        (WebInspector.CSSStyleSheet.isInlineStyle):
        (WebInspector.CSSStyleSheet.prototype.markAsInlineStyle):
        * UserInterface/Models/DOMNodeStyles.js:
        (WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload):

2015-04-24  Timothy Hatcher  <timothy@apple.com>

        REGRESSION: Web Inspector: Start Timeline Recording in Develop menu broken
        https://bugs.webkit.org/show_bug.cgi?id=144150

        Reviewed by Brian Burg.

        * UserInterface/Protocol/InspectorFrontendAPI.js:
        (InspectorFrontendAPI.setTimelineProfilingEnabled): Change !== to === when
        checking enabled to isCapturing().

2015-04-23  Brian J. Burg  <burg@cs.washington.edu>

        Web Inspector: run a customizable bootstrap function after the UI has fully loaded
        https://bugs.webkit.org/show_bug.cgi?id=144124

        Reviewed by Joseph Pecoraro.

        It can be really annoying to click through the Inspector UI dozens of times to debug one
        interaction or iterate on a specific widget.

        This patch adds a blank "bootstrap" function that can be used to hard-wire commands to
        automate repetitive UI state setup. The function is run immediately after the inspector loads.
        Setup commands can be shared as bug report reproduction steps.

        * UserInterface/Base/Bootstrap.js: Added.
        (WebInspector.runBootstrapOperations): Added.
        * UserInterface/Base/Main.js:
        (WebInspector.contentLoaded): Bootstrap after setting up everything and restoring view state from cookie.
        * UserInterface/Main.html:

2015-04-23  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Adopt Object.assign and improve its display in Console
        https://bugs.webkit.org/show_bug.cgi?id=144135

        Reviewed by Darin Adler.

        * UserInterface/Models/NativeFunctionParameters.js:

2015-04-23  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: DebuggerSidebarPanel's _callStackContentTreeOutline should suppress filtering
        https://bugs.webkit.org/show_bug.cgi?id=144114

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/DebuggerSidebarPanel.js:
        (WebInspector.DebuggerSidebarPanel):

2015-04-23  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Fix layering issues with ApplicationCacheFrameTreeElement
        https://bugs.webkit.org/show_bug.cgi?id=144113

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/ApplicationCacheFrameTreeElement.js:
        (WebInspector.ApplicationCacheFrameTreeElement.prototype.updateTitles):
        (WebInspector.ApplicationCacheFrameTreeElement):

2015-04-22  Matt Baker  <mattbaker@apple.com>

        Web Inspector: clicking Timelines tree view nodes should not change the current content view
        https://bugs.webkit.org/show_bug.cgi?id=132202

        Reviewed by Brian Burg.

        TimelineSidebarPanel now prevents timeline views from switching to another content view while the content
        browser is showing the TimelineRecordingContentView. Code responsible for creating and updating the tree
        element close button, which was duplicated in multiple derived TimelineView classes, has been moved to the
        TimelineView base class.

        * UserInterface/Views/LayoutTimelineView.js:
        Updated name of location column, which was broken in a recent patch.
        (WebInspector.LayoutTimelineView.prototype.treeElementDeselected):
        (WebInspector.LayoutTimelineView.prototype.treeElementSelected):
        Added overrides of new base class methods to handle view-specific highlight logic.
        (WebInspector.LayoutTimelineView.prototype._treeElementDeselected): Deleted.
        (WebInspector.LayoutTimelineView.prototype._treeElementSelected): Deleted.
        (WebInspector.LayoutTimelineView.prototype._updateTreeElementWithCloseButton): Deleted.
        (WebInspector.LayoutTimelineView.prototype._closeStatusButtonClicked): Deleted.
        Removed tree element close button logic.

        * UserInterface/Views/NetworkTimelineView.js:
        (WebInspector.NetworkTimelineView.prototype.showContentViewForTreeElement):
        (WebInspector.NetworkTimelineView.prototype.treeElementSelected):
        Added overrides of new base class methods.
        (WebInspector.NetworkTimelineView.prototype._treeElementDeselected): Deleted.
        (WebInspector.NetworkTimelineView.prototype._treeElementSelected): Deleted.
        Removed tree element close button logic.

        * UserInterface/Views/RenderingFrameTimelineView.js:
        (WebInspector.RenderingFrameTimelineView.prototype.showContentViewForTreeElement):
        (WebInspector.RenderingFrameTimelineView.prototype.treeElementSelected):
        Added overrides of new base class methods.

        * UserInterface/Views/ResourceTimelineDataGridNode.js:
        (WebInspector.ResourceTimelineDataGridNode.prototype.get data):
        (WebInspector.ResourceTimelineDataGridNode.prototype.createCellContent):
        Removed unused Name column and added "go to" button to the Domain column to show the selected resource.

        * UserInterface/Views/ScriptTimelineView.js:
        (WebInspector.ScriptTimelineView):
        (WebInspector.ScriptTimelineView.prototype.showContentViewForTreeElement):
        (WebInspector.ScriptTimelineView.prototype.treeElementSelected):
        Added overrides of new base class methods.
        (WebInspector.ScriptTimelineView.prototype._dataGridNodeSelected):
        (WebInspector.ScriptTimelineView.prototype._treeElementDeselected): Deleted.
        (WebInspector.ScriptTimelineView.prototype._treeElementSelected): Deleted.
        (WebInspector.ScriptTimelineView.prototype._updateTreeElementWithCloseButton): Deleted.
        (WebInspector.ScriptTimelineView.prototype._closeStatusButtonClicked): Deleted.
        Removed tree element close button logic.

        * UserInterface/Views/TimelineSidebarPanel.js:
        (WebInspector.TimelineSidebarPanel.showTimelineViewForTimeline.this._timelineTreeElementMap.get select):
        Prevent navigating to a different content view when showing the TimelineRecordingContentView.

        * UserInterface/Views/TimelineView.js:
        (WebInspector.TimelineView):
        (WebInspector.TimelineView.prototype.showContentViewForTreeElement):
        (WebInspector.TimelineView.prototype.treeElementDeselected):
        (WebInspector.TimelineView.prototype.treeElementSelected):
        Tree element selection handlers are now protected methods, which derived classes may override as needed.
        (WebInspector.TimelineView.prototype.needsLayout):
        (WebInspector.TimelineView.prototype._closeStatusButtonClicked):
        (WebInspector.TimelineView.prototype._updateTreeElementWithCloseButton):
        Encapsulated logic related to close button creation and behavior.

2015-04-22  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Remove an unused index argument from Sidebar.removeSidebarPanel
        https://bugs.webkit.org/show_bug.cgi?id=144054

        Reviewed by Darin Adler.

        * UserInterface/Views/Sidebar.js:

2015-04-22  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Fix an exception preventing switching timelines
        https://bugs.webkit.org/show_bug.cgi?id=144053

        Reviewed by Darin Adler.

        * UserInterface/Views/TreeOutline.js:
        (WebInspector.TreeElement.prototype.select): Store treeOutline in a local so
        we have a reference to it when we go to reset processingSelectionChange.
        The calls to onselect was removing the tree element from the outline, causing
        "delete this.treeOutline.processingSelectionChange" to throw an exception.
        This patch changes the delete to a set to false for good measure too.

2015-04-21  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Use String.prototype.startsWith in more places
        https://bugs.webkit.org/show_bug.cgi?id=144025

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/Gradient.js:
        * UserInterface/Views/DebuggerSidebarPanel.js:
        (WebInspector.DebuggerSidebarPanel.prototype._scriptAdded):
        * UserInterface/Views/ResourceSidebarPanel.js:
        (WebInspector.ResourceSidebarPanel.prototype._scriptWasAdded):

2015-04-21  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Make formatted nodes more consistent with formatted objects
        https://bugs.webkit.org/show_bug.cgi?id=142159

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/DOMTreeOutline.css:
        (.dom-tree-outline ol):
        Keep indentation exactly two spaces of Menlo.

        (.dom-tree-outline li):
        (.dom-tree-outline li.parent):
        (.dom-tree-outline li .html-tag.close):
        (.dom-tree-outline li.parent::before):
        (.dom-tree-outline:focus li.parent.selected::before):
        (.dom-tree-outline li.parent.expanded::before):
        (.dom-tree-outline:focus li.parent.expanded.selected::before):
        * UserInterface/Views/FormattedValue.css:
        (.formatted-node > .dom-tree-outline ol):
        Keep indentation exactly two spaces of Menlo.

        * UserInterface/Views/ObjectTreePropertyTreeElement.css:
        (.object-tree-property > .disclosure-button):
        Disclosure triangle is 13 by 13 pixels. Having it in the middle of 16 by 16
        pixels block makes it look bloory on non-retina screen, because:
        (16 - 13) / 2 = 1.5px. Replacing 16 with 15 fixes the problem.

        * UserInterface/Views/ObjectTreeView.css:
        (.object-tree:not(.lossless-preview) > :matches(.title, .object-preview)):

2015-04-20  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Unify PrettyPrinting Tool and UserInterface resources
        https://bugs.webkit.org/show_bug.cgi?id=143969

        Reviewed by Timothy Hatcher.

        Have the PrettyPrinting tool just use the CodeMirror and WebInspector
        resources from the relative UserInterface directory. This avoids
        having duplicate resources in the tree which offered few advantages.

        * Scripts/update-pretty-printer.rb: Removed.
        * Tools/PrettyPrinting/CodeMirrorFormatters.js: Removed.
        * Tools/PrettyPrinting/Formatter.js: Removed.
        * Tools/PrettyPrinting/FormatterContentBuilder.js: Removed.
        * Tools/PrettyPrinting/codemirror.css: Removed.
        * Tools/PrettyPrinting/codemirror.js: Removed.
        * Tools/PrettyPrinting/css.js: Removed.
        * Tools/PrettyPrinting/index.html:
        * Tools/PrettyPrinting/javascript.js: Removed.

        * UserInterface/Views/CodeMirrorFormatters.js:
        Fix style issues.

2015-04-20  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Improve Support for WeakSet in Console
        https://bugs.webkit.org/show_bug.cgi?id=143951

        Reviewed by Darin Adler.

        * UserInterface/Models/NativeFunctionParameters.js:
        WeakSet has the same APIs and parameters as Set for the functions it implements.

        * UserInterface/Protocol/RemoteObject.js:
        (WebInspector.RemoteObject.prototype.isCollectionType):
        (WebInspector.RemoteObject.prototype.isWeakCollection):
        (WebInspector.RemoteObject.prototype.getCollectionEntries):
        (WebInspector.RemoteObject.prototype._weakCollectionObjectGroup):
        WeakSet is a weak collection.

        * UserInterface/Models/ObjectPreview.js:
        (WebInspector.ObjectPreview.prototype.hasSize):
        * UserInterface/Views/ConsoleMessageView.js:
        (WebInspector.ConsoleMessageView.prototype._formatParameter):
        * UserInterface/Views/FormattedValue.css:
        (.formatted-object, .formatted-node, .formatted-error, .formatted-map, .formatted-set, .formatted-weakmap, .formatted-weakset):
        (:matches(.formatted-array, .formatted-map, .formatted-set, .formatted-weakmap, .formatted-weakset) > .size):
        (.formatted-object, .formatted-node, .formatted-error, .formatted-map, .formatted-set, .formatted-weakmap): Deleted.
        (:matches(.formatted-array, .formatted-map, .formatted-set, .formatted-weakmap) > .size): Deleted.
        * UserInterface/Views/FormattedValue.js:
        (WebInspector.FormattedValue.createElementForTypesAndValue):
        Treat a WeakSet like a set in more places.

2015-04-18  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Pass multiple arguments to classList.add and classList.remove
        https://bugs.webkit.org/show_bug.cgi?id=143914

        classList.add and classList.remove can accept multiple arguments, use that.

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/Main.js:
        (WebInspector.updateDockedState):
        * UserInterface/Views/DOMTreeDataGrid.js:
        (WebInspector.DOMTreeDataGrid):
        * UserInterface/Views/DOMTreeOutline.js:
        (WebInspector.DOMTreeOutline):
        * UserInterface/Views/DataGrid.js:
        (WebInspector.DataGridNode.prototype.set hasChildren):
        * UserInterface/Views/DatabaseContentView.js:
        (WebInspector.DatabaseContentView):
        * UserInterface/Views/DetailsSection.js:
        (WebInspector.DetailsSection):
        * UserInterface/Views/DetailsSectionPropertiesRow.js:
        (WebInspector.DetailsSectionPropertiesRow):
        * UserInterface/Views/GeneralTreeElement.js:
        (WebInspector.GeneralTreeElement.prototype.set classNames):
        * UserInterface/Views/NavigationItem.js:
        (WebInspector.NavigationItem):
        * UserInterface/Views/ResourceContentView.js:
        (WebInspector.ResourceContentView):
        * UserInterface/Views/ResourceTimelineDataGridNode.js:
        (WebInspector.ResourceTimelineDataGridNode.prototype.createCellContent):
        * UserInterface/Views/Sidebar.js:
        (WebInspector.Sidebar):
        * UserInterface/Views/SidebarPanel.js:
        (WebInspector.SidebarPanel):
        * UserInterface/Views/SourceCodeTextEditor.js:
        * UserInterface/Views/TextEditor.js:
        (WebInspector.TextEditor):
        * UserInterface/Views/TimelineRuler.js:

2015-04-18  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Make prototype pill’s background semi-transparent
        https://bugs.webkit.org/show_bug.cgi?id=143928

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ObjectTreePropertyTreeElement.css:
        (.object-tree-property.prototype-property):

        (.object-tree-property.prototype-property:hover, .object-tree-property.prototype-property:focus):
        Slightly highlight the prototype pill when hovering over.

2015-04-17  Jono Wells  <jonowells@apple.com>

        Web Inspector: All sans-serif font family rules should be set the same way.
        https://bugs.webkit.org/show_bug.cgi?id=143909

        Reviewed by Timothy Hatcher.

        Update styles so that all uses of sans-serif font use -webkit-system-font consistently.

        * UserInterface/Views/DefaultDashboardView.css:
        (body.mac-platform.legacy .toolbar .dashboard.default > .item):
        * UserInterface/Views/ObjectTreePropertyTreeElement.css:
        (.object-tree-property .prototype-name):
        * UserInterface/Views/ObjectTreeView.css:
        (.object-tree-outline li .empty-message):
        * UserInterface/Views/RenderingFrameTimelineOverviewGraph.css:
        (.timeline-overview-graph.rendering-frame > .divider > .label):

2015-04-17  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Have better inactive window color for pixel borders
        https://bugs.webkit.org/show_bug.cgi?id=143888

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/FindBanner.css:
        (body.window-inactive .find-banner):
        * UserInterface/Views/Main.css:
        (body.window-inactive.docked.bottom):
        (body.window-inactive.docked.right):
        (body.window-inactive #split-content-browser):
        * UserInterface/Views/NavigationBar.css:
        (body.window-inactive .navigation-bar):
        * UserInterface/Views/QuickConsole.css:
        (body.window-inactive .quick-console):
        (.quick-console.showing-log):
        * UserInterface/Views/Sidebar.css:
        (body.window-inactive .sidebar.left):
        (body.window-inactive .sidebar.right):

2015-04-17  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Unexpected background at top of console when rubber-banding with selection
        https://bugs.webkit.org/show_bug.cgi?id=140710

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/LogContentView.css:
        (.console-messages):
        Remove the focus ring on the console's log view, only visible when rubber-banding.

2015-04-16  Jono Wells  <jonowells@apple.com>

        Web Inspector: Breakpoint icons should not get pushed off of debugger sidebar due to long resource names
        https://bugs.webkit.org/show_bug.cgi?id=142714

        Reviewed by Timothy Hatcher.

        Modify the styles for content and group containers inside the debugger sidebar panel's detail sections
        such that the rules "display: table" and "display: table-row-group" no longer apply. This will make
        the file names which use the rule "text-overflow: ellipsis" truncate as expected.

        * UserInterface/Views/DebuggerSidebarPanel.css:
        (.sidebar > .panel.navigation.debugger .details-section > .content):
        (.sidebar > .panel.navigation.debugger .details-section.collapsed > .content):
        (.sidebar > .panel.navigation.debugger .details-section > .content > .group):
        (.sidebar > .panel.navigation.debugger .details-section.scripts):
        (.sidebar > .panel.navigation.debugger .details-section.scripts .header):
        (.sidebar > .panel.navigation.debugger .details-section.scripts.collapsed > .content):

2015-04-16  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Should include "Log Value" context menu item in Preview and Collapsed ObjectTree
        https://bugs.webkit.org/show_bug.cgi?id=143845

        Reviewed by Timothy Hatcher.

        Give previews the same "Log Value" context menu so that if you just log
        a bunch of objects to the console you can quickly turn that entire object
        into a $n reference in the console to interact with.

        * UserInterface/Views/ObjectPreviewView.js:
        (WebInspector.ObjectPreviewView.prototype.setOriginatingObjectInfo):
        (WebInspector.ObjectPreviewView.prototype._contextMenuHandler):
        Provide API to refer to a RemoteObject and optional PropertyPath
        that can be used to give the preview a "Log Value" context menu.

        * UserInterface/Views/ConsoleMessageView.js:
        (WebInspector.ConsoleMessageView.prototype._appendFormattedArguments):
        Include the RemoteObject without a path for a preview context menu.

        * UserInterface/Views/ObjectTreeView.js:
        (WebInspector.ObjectTreeView):
        Include the RemoteObject with a path if we knew it for a preview context menu.

        * UserInterface/Views/ObjectTreeBaseTreeElement.js:
        (WebInspector.ObjectTreeBaseTreeElement.prototype.createGetterElement):
        The context menu can never be empty, since we always added at least one item above.


2015-04-16  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: "Log Value" of a value inside of an array, does not log the innermost value
        https://bugs.webkit.org/show_bug.cgi?id=143793

        Reviewed by Brian Burg.

        Context menu handlers were being handled in the capturing event phase, so
        the outer most handler, instead of the inner most handler, was getting
        first access. Change this so the events happen in the bubbling phase.

        DOM Nodes may appear inside of Object Trees, for instance when shown
        in a collection like an array or set. In an effort to standardize on
        "inner most" behavior, change the DOMTreeOutline context handler
        to also be in bubbling.

        In the rare instances where a node object is in the console but
        not displayed in an outline (console.dir(node)), then include a
        Copy as HTML context menu like you would expect in a DOM tree.

        * UserInterface/Views/DOMTreeOutline.js:
        (WebInspector.DOMTreeOutline):
        * UserInterface/Views/GeneralTreeElement.js:
        (WebInspector.GeneralTreeElement.prototype.onattach):
        (WebInspector.GeneralTreeElement.prototype.ondetach):
        * UserInterface/Views/ObjectTreeBaseTreeElement.js:
        (WebInspector.ObjectTreeBaseTreeElement.prototype._appendMenusItemsForObject):
        (WebInspector.ObjectTreeBaseTreeElement):

2015-04-16  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Allow toggling the edibility of a DOMTreeOutline
        https://bugs.webkit.org/show_bug.cgi?id=143814

        Reviewed by Brian Burg.

        By default a DOMTreeOutline will not be editable, but it will
        provide a setter to enable editability for DOMTreeContentViews.

        * UserInterface/Views/DOMTreeContentView.js:
        (WebInspector.DOMTreeContentView):
        Content Views always have editable DOM trees.

        * UserInterface/Views/DOMTreeElement.js:
        (WebInspector.DOMTreeElement.prototype.get editable):
        (WebInspector.DOMTreeElement.prototype.onattach):
        (WebInspector.DOMTreeElement.prototype.ondelete):
        (WebInspector.DOMTreeElement.prototype.onenter):
        (WebInspector.DOMTreeElement.prototype.ondblclick):
        (WebInspector.DOMTreeElement.prototype._populateTagContextMenu):
        (WebInspector.DOMTreeElement.prototype._populateTextContextMenu):
        (WebInspector.DOMTreeElement.prototype._populateNodeContextMenu):
        (WebInspector.DOMTreeElement.prototype._startEditing):
        Do not provide editability options for shadow DOM or non-editable DOM tree.

        * UserInterface/Views/DOMTreeOutline.js:
        (WebInspector.DOMTreeOutline):
        (WebInspector.DOMTreeOutline.prototype.get editable):
        (WebInspector.DOMTreeOutline.prototype.set editable):
        New state.

        * UserInterface/Views/FormattedValue.css:
        (.formatted-node > .dom-tree-outline li):
        Nodes inside object trees were showing text selection when you right
        clicked them. Normal selection is not possible. So force no selection.

2015-04-16  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Give DOM Nodes a Context Menu to Log Element to the console
        https://bugs.webkit.org/show_bug.cgi?id=143813

        Reviewed by Brian Burg.

        Always give DOM Nodes a "Log Element" context menu to log it to the console.
        This will give a $n reference, and is a convenient alternative to $0 or
        the now removed $1-$9.

        * Localizations/en.lproj/localizedStrings.js:
        New "Log Element" and "Selected Element" strings.

        * UserInterface/Views/DOMTreeOutline.js:
        (WebInspector.DOMTreeOutline):
        (WebInspector.DOMTreeOutline.prototype._contextMenuEventFired):
        (WebInspector.DOMTreeOutline.prototype._updateModifiedNodes):
        (WebInspector.DOMTreeOutline.prototype._populateContextMenu.revealElement):
        (WebInspector.DOMTreeOutline.prototype._populateContextMenu.logElement):
        (WebInspector.DOMTreeOutline.prototype._populateContextMenu):
        Always include the "Log Element" context menu/

        * UserInterface/Views/FormattedValue.js:
        (WebInspector.FormattedValue.createElementForNode):
        This uses all the defaults.

        * UserInterface/Views/DOMTreeContentView.js:
        (WebInspector.DOMTreeContentView):
        This enables all the extra behavior.

2015-04-16  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Remove unnecessary intermediate object from DOMTreeOutline
        https://bugs.webkit.org/show_bug.cgi?id=143811

        Reviewed by Brian Burg.

        * UserInterface/Views/DOMTreeOutline.js:
        (WebInspector.DOMTreeOutline):
        (WebInspector.DOMTreeOutline.prototype._selectedNodeChanged):
        (WebInspector.DOMTreeOutline.prototype.addEventListener): Deleted.
        (WebInspector.DOMTreeOutline.prototype.removeEventListener): Deleted.
        This object used to be used to handle event dispatching, but
        TreeOutlines themselves are now WebInspector.Objects so we
        can remove the intermediary.

2015-04-15  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: InspectorTest frontend console methods redirected to the frontend are wrong
        https://bugs.webkit.org/show_bug.cgi?id=143801

        Reviewed by Brian Burg.

        * UserInterface/Base/Test.js:
        (InspectorTest.evaluateInPage):
        Properly if check for the existence of an agent.

        (global):
        Properly hook up console redirect handlers so they
        will output the right type and arguments strings.

2015-04-15  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Handle all possible Console message Source types in IssueMessage
        https://bugs.webkit.org/show_bug.cgi?id=143803

        Reviewed by Brian Burg.

        * UserInterface/Models/IssueMessage.js:
        (WebInspector.IssueMessage):
        Update the switch to handle all possible console message sources.
        "wml" was legacy and no longer supported.

2015-04-14  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Uncaught exception in JSContext inspector when opening
        https://bugs.webkit.org/show_bug.cgi?id=143741

        Reviewed by Timothy Hatcher.

        * UserInterface/Controllers/TimelineManager.js:
        (WebInspector.TimelineManager.shouldShowViewForTimeline):
        (WebInspector.TimelineManager.prototype._loadNewRecording):
        Before using TimelineAgent, check for its existence first. It may
        not exist in JSContext inspection.

2015-04-14  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Align array's indices and set's bullet points under the property icon
        https://bugs.webkit.org/show_bug.cgi?id=143698

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ObjectTreeMapEntryTreeElement.css:
        (.object-tree-array-index.object-tree-map-entry > .titles > .title > .index-name):
        * UserInterface/Views/ObjectTreeArrayIndexTreeElement.css:
        (.object-tree-array-index .index-name):
        Right align array's and set's indices.

        (.object-tree-map-entry):
        Overwrite left property from .object-tree-array-index.

        (.object-tree-property + ol .object-tree-map-entry):
        Overwrite left property from .object-tree-property + ol .object-tree-array-index.

2015-04-13  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Expanding window.navigator.mimeTypes in ObjectTree shows no native properties
        https://bugs.webkit.org/show_bug.cgi?id=143690

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        (WebInspector.ObjectTreePropertyTreeElement):
        Fix a typo that resulted in hiding properties of native objects
        in the Properties section of an Object Tree.

2015-04-13  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Remove unnecessary 3 second delay when archiving page
        https://bugs.webkit.org/show_bug.cgi?id=143688

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/Main.js:
        (WebInspector.archiveMainFrame):
        The delay is unnecessary and was probably just debugging code.

2015-04-11  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Hide Frames Timeline if the backend doesn't support it
        https://bugs.webkit.org/show_bug.cgi?id=142800

        Reviewed by Timothy Hatcher.

        Fallback to showing the layout timeline if the backend doesn't support the rendering frames timeline.

        * UserInterface/Controllers/TimelineManager.js:
        (WebInspector.TimelineManager.shouldShowViewForTimeline):
        (WebInspector.TimelineManager.prototype._loadNewRecording):
        Added iOS 8 compatibility check for RenderingFrame timeline record type.

        * UserInterface/Views/LayoutTimelineDataGridNode.js:
        (WebInspector.LayoutTimelineDataGridNode.prototype.get data):
        Restored fields used by Layout timeline view.

        * UserInterface/Views/LayoutTimelineView.js:
        Updated to be compatible with both RenderingFrame and Layout timeline views.

2015-04-11  Jono Wells  <jonowells@apple.com>

        Web Inspector: Debugger sidebar should show errors underneath scripts
        https://bugs.webkit.org/show_bug.cgi?id=143464

        Reviewed by Timothy Hatcher.

        Add a new tree element called IssueTreeElement. This shows warnings and errors in the debugger sidebar. These
        can be clicked to jump to the line of source code for which the error was thrown. BreakpointTreeElement and
        IssueTreeElement now inherit from DebuggerTreeElement to support any needed commonalities among the interfaces
        of elements in the debugger sidebar panel.

        * Localizations/en.lproj/localizedStrings.js: Updated.
        * UserInterface/Main.html: Add new files.

        * UserInterface/Models/IssueMessage.js:
        (WebInspector.IssueMessage):
        (WebInspector.IssueMessage.prototype.get source):
        (WebInspector.IssueMessage.prototype.get lineNumber):
        (WebInspector.IssueMessage.prototype.get columnNumber):
        (WebInspector.IssueMessage.prototype.get displayLineNumber):
        (WebInspector.IssueMessage.prototype.get displayColumnNumber):
        (WebInspector.IssueMessage.prototype.get sourceCodeLocation):
        (WebInspector.IssueMessage.prototype.saveIdentityToCookie):
        (WebInspector.IssueMessage.prototype._sourceCodeLocationDisplayLocationChanged):
        Convert to use a backing SourceCodeLocation. Expand API.

        * UserInterface/Views/BreakpointTreeElement.js: Inherits now from DebuggerTreeElement.

        * UserInterface/Views/DebuggerSidebarPanel.js:
        (WebInspector.DebuggerSidebarPanel.showResourcesWithBreakpointsOnlyFilterFunction):
        (WebInspector.DebuggerSidebarPanel.showResourcesWithIssuesOnlyFilterFunction):
        (WebInspector.DebuggerSidebarPanel):
        (WebInspector.DebuggerSidebarPanel.prototype._addBreakpoint):
        (WebInspector.DebuggerSidebarPanel.prototype._breakpointRemoved):
        (WebInspector.DebuggerSidebarPanel.prototype._handleDebuggerObjectDisplayLocationDidChange):
        (WebInspector.DebuggerSidebarPanel.prototype._removeDebuggerTreeElement):
        (WebInspector.DebuggerSidebarPanel.prototype._treeElementSelected):
        (WebInspector.DebuggerSidebarPanel.prototype._compareDebuggerTreeElements):
        (WebInspector.DebuggerSidebarPanel.prototype._addDebuggerObject):
        (WebInspector.DebuggerSidebarPanel.prototype._addIssue):
        (WebInspector.DebuggerSidebarPanel.prototype._handleIssueAdded):
        (WebInspector.DebuggerSidebarPanel.prototype._handleIssuesCleared):
        (WebInspector.DebuggerSidebarPanel.prototype._breakpointDisplayLocationDidChange): Deleted.
        (WebInspector.DebuggerSidebarPanel.prototype._removeBreakpointTreeElement): Deleted.
        (WebInspector.DebuggerSidebarPanel.prototype._compareBreakpointTreeElements): Deleted.
        Add IssueTreeElements to the sidebar whenever a warning or error corresponding to a line of code is found.
        Add a filter function and button to filter down to just these. Ensure issue and breakpoint elements can be
        properly compared.

        * UserInterface/Views/DebuggerTreeElement.js: Added.
        (WebInspector.DebuggerTreeElement):
        (WebInspector.DebuggerTreeElement.prototype.get debuggerObject):

        * UserInterface/Views/IssueTreeElement.css: Added.
        (.issue .icon):
        (.issue.error .icon):
        (.navigation-sidebar-panel-content-tree-outline .item.small.issue .icon):

        * UserInterface/Views/IssueTreeElement.js: Added.
        (WebInspector.IssueTreeElement):
        (WebInspector.IssueTreeElement.prototype.get issueMessage):
        (WebInspector.IssueTreeElement.prototype._updateTitles):

2015-04-11  Matt Baker  <mattbaker@apple.com>

        Web Inspector: create content view and details sidebar for Frames timeline
        https://bugs.webkit.org/show_bug.cgi?id=143533

        Reviewed by Timothy Hatcher.

        Added new Rendering Frames timeline content view and details sidebar, and added minor visual tweeks to the
        timeline graph such as ensuring 60 FPS budget line is always visible, and large combined frames are split
        up once they reach a maximum pixel width.

        * Localizations/en.lproj/localizedStrings.js:
        New UI strings.

        * UserInterface/Base/Main.js:
        (WebInspector.contentLoaded):
        Support for new details sidebar panel.

        * UserInterface/Controllers/TimelineManager.js:
        (WebInspector.TimelineManager.shouldShowViewForTimeline):
        (WebInspector.TimelineManager.prototype._processRecord):
        (WebInspector.TimelineManager.prototype._loadNewRecording):
        Layout timeline is no longer added to timeline graphs, skip Rendering Frame records that have no child events.

        * UserInterface/Images/NavigationItemDoughnutChart.svg: Added.
        * UserInterface/Images/TimelineRecordRenderingFrame.svg: Added.
        New artwork.

        * UserInterface/Main.html:
        * UserInterface/Test.html:
        New files.

        * UserInterface/Models/RenderingFrameTimelineRecord.js: Renamed from Source/WebInspectorUI/UserInterface/Models/RunLoopTimelineRecord.js.
        (WebInspector.RenderingFrameTimelineRecord):
        (WebInspector.RenderingFrameTimelineRecord.resetFrameNumber):
        (WebInspector.RenderingFrameTimelineRecord.prototype.get frameNumber):
        (WebInspector.RenderingFrameTimelineRecord.prototype.get children):
        (WebInspector.RenderingFrameTimelineRecord.prototype.get durationRemainder):
        (WebInspector.RenderingFrameTimelineRecord.prototype.durationForRecords.get var):
        Added frame numbering and improved the accuracy of sub-frame duratation calculation.
        Refactoring: RunLoop prefix changed to RenderingFrame.

        * UserInterface/Models/Timeline.js:
        (WebInspector.Timeline):
        (WebInspector.Timeline.create):
        (WebInspector.Timeline.prototype.get recording):
        (WebInspector.Timeline.prototype.get displayName):
        (WebInspector.Timeline.prototype.get iconClassName):
        Added up-pointer to parent recording.

        * UserInterface/Models/TimelineRecord.js:
        Refactoring: RunLoop prefix changed to RenderingFrame.
        
        * UserInterface/Models/TimelineRecording.js:
        (WebInspector.TimelineRecording.prototype.reset):
        Support for new timeline type.

        * UserInterface/Views/ChartDetailsSectionLegendRow.js: Added.
        (WebInspector.ChartDetailsSectionLegendRow):
        New details section row type for chart legend items.

        * UserInterface/Views/ChartDetailsSectionRow.css: Added.
        (.details-section .row.chart):
        (.details-section .row.chart canvas):
        (.details-section .row.chart.empty canvas):
        (.details-section > .content > .group > .row.legend-item > .label > .color-swatch):
        * UserInterface/Views/ChartDetailsSectionRow.js: Added.
        (WebInspector.ChartDetailsSectionRow):
        (WebInspector.ChartDetailsSectionRow.prototype.get legendGroup):
        (WebInspector.ChartDetailsSectionRow.prototype.set innerLabel):
        (WebInspector.ChartDetailsSectionRow.prototype.addChartValue):
        (WebInspector.ChartDetailsSectionRow.prototype.clearChart):
        (WebInspector.ChartDetailsSectionRow.prototype._refresh.drawSlice):
        (WebInspector.ChartDetailsSectionRow.prototype._refresh):
        New details section row type for pie/doughnut charts.

        * UserInterface/Views/ContentView.js:
        (WebInspector.ContentView):
        Support for new timeline view type.

        * UserInterface/Views/LayoutTimelineDataGridNode.js:
        (WebInspector.LayoutTimelineDataGridNode.prototype.get data):
        (WebInspector.LayoutTimelineDataGridNode.prototype.createCellContent):
        Updated for use in rendering frame timeline view.

        * UserInterface/Views/LayoutTimelineView.js:
        (WebInspector.LayoutTimelineView.prototype._layoutTimelineRecordAdded):
        Removed references to old RunLoop objects.

        * UserInterface/Views/RenderingFrameDetailsSidebarPanel.js: Added.
        (WebInspector.RenderingFrameDetailsSidebarPanel.formatChartValue):
        (WebInspector.RenderingFrameDetailsSidebarPanel):
        (WebInspector.RenderingFrameDetailsSidebarPanel.prototype.inspect):
        (WebInspector.RenderingFrameDetailsSidebarPanel.prototype.updateRangeSelection):
        (WebInspector.RenderingFrameDetailsSidebarPanel.prototype.get renderingFrameTimeline):
        (WebInspector.RenderingFrameDetailsSidebarPanel.prototype.set renderingFrameTimeline):
        (WebInspector.RenderingFrameDetailsSidebarPanel.prototype.refresh.durationForRecordType):
        (WebInspector.RenderingFrameDetailsSidebarPanel.prototype.refresh):
        (WebInspector.RenderingFrameDetailsSidebarPanel.prototype._resetAll):
        (WebInspector.RenderingFrameDetailsSidebarPanel.prototype._recordAdded):
        (WebInspector.RenderingFrameDetailsSidebarPanel.prototype._timelineReset):
        (WebInspector.RenderingFrameDetailsSidebarPanel.prototype._getSelectedRecords):
        New sidebar panel for showing time breakdown for current frame selection.

        * UserInterface/Views/RenderingFrameTimelineDataGridNode.js: Added.
        (WebInspector.RenderingFrameTimelineDataGridNode):
        (WebInspector.RenderingFrameTimelineDataGridNode.prototype.get record):
        (WebInspector.RenderingFrameTimelineDataGridNode.prototype.get records):
        (WebInspector.RenderingFrameTimelineDataGridNode.prototype.get data):
        (WebInspector.RenderingFrameTimelineDataGridNode.prototype.createCellContent):
        New data grid row type.

        * UserInterface/Views/RenderingFrameTimelineOverviewGraph.css: Renamed from Source/WebInspectorUI/UserInterface/Views/RunLoopTimelineOverviewGraph.css.
        (.timeline-overview-graph.rendering-frame > .divider):
        (.timeline-overview-graph.rendering-frame > .divider > .label):
        * UserInterface/Views/RenderingFrameTimelineOverviewGraph.js: Renamed from Source/WebInspectorUI/UserInterface/Views/RunLoopTimelineOverviewGraph.js.
        (WebInspector.RenderingFrameTimelineOverviewGraph):
        (WebInspector.RenderingFrameTimelineOverviewGraph.prototype.get graphHeightSeconds):
        (WebInspector.RenderingFrameTimelineOverviewGraph.prototype.updateLayout.createFrame):
        (WebInspector.RenderingFrameTimelineOverviewGraph.prototype._updateDividers.createDividerAtPosition.get if):
        * UserInterface/Views/RenderingFrameTimelineView.css: Renamed from Source/WebInspectorUI/UserInterface/Views/RunLoopTimelineOverviewGraph.css.
        (.timeline-view.rendering-frame > .data-grid):
        (.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .navigation-sidebar-panel-content-tree-outline.rendering-frame .item .subtitle):
        Visual tweeks.
        Refactoring: RunLoop prefix changed to RenderingFrame.

        * UserInterface/Views/RenderingFrameTimelineView.js: Added.
        (WebInspector.RenderingFrameTimelineView):
        (WebInspector.RenderingFrameTimelineView.prototype.get navigationSidebarTreeOutlineLabel):
        (WebInspector.RenderingFrameTimelineView.prototype.shown):
        (WebInspector.RenderingFrameTimelineView.prototype.hidden):
        (WebInspector.RenderingFrameTimelineView.prototype.updateLayout):
        (WebInspector.RenderingFrameTimelineView.prototype.get selectionPathComponents):
        (WebInspector.RenderingFrameTimelineView.prototype.filterDidChange):
        (WebInspector.RenderingFrameTimelineView.prototype.matchTreeElementAgainstCustomFilters):
        (WebInspector.RenderingFrameTimelineView.prototype.reset):
        (WebInspector.RenderingFrameTimelineView.prototype.treeElementPathComponentSelected):
        (WebInspector.RenderingFrameTimelineView.prototype.dataGridNodeForTreeElement):
        (WebInspector.RenderingFrameTimelineView.prototype._processPendingRecords):
        (WebInspector.RenderingFrameTimelineView.prototype._renderingFrameTimelineRecordAdded):
        (WebInspector.RenderingFrameTimelineView.prototype._dataGridNodeSelected):
        New content view type.

        * UserInterface/Views/TimelineIcons.css:
        (.rendering-frame-icon .icon):
        (.rendering-frame-icon.large .icon):
        (.rendering-frame-record .icon):
        (.runloop-record .icon):
        (.runloop-icon .icon): Deleted.
        (.runloop-icon.large .icon): Deleted.
        Refactoring: runloop prefix changed to rendering-frame.

        * UserInterface/Views/TimelineOverview.js:
        (WebInspector.TimelineOverview.prototype._timelineRemoved):
        Support for timelines without associated views.

        * UserInterface/Views/TimelineOverviewGraph.js:
        (WebInspector.TimelineOverviewGraph):
        Refactoring: RunLoop prefix changed to RenderingFrame.

        * UserInterface/Views/TimelineRecordFrame.css:
        (.timeline-record-frame):
        (.timeline-record-frame > .frame):
        * UserInterface/Views/TimelineRecordFrame.js:
        (WebInspector.TimelineRecordFrame.createCombinedFrames):
        Visual tweeks, splitting up large combined frames.

        * UserInterface/Views/TimelineRecordTreeElement.js:
        (WebInspector.TimelineRecordTreeElement):
        Refactoring: runloop prefix changed to rendering-frame.

        * UserInterface/Views/TimelineRecordingContentView.js:
        (WebInspector.TimelineRecordingContentView.prototype._timelineRemoved):
        (WebInspector.TimelineRecordingContentView.prototype._timelineCountChanged):
        (WebInspector.TimelineRecordingContentView.prototype._timeRangeSelectionChanged):
        Added support for new details sidebar and timelines without associated views.

        * UserInterface/Views/TimelineSidebarPanel.js:
        (WebInspector.TimelineSidebarPanel._timelineAdded.set this):
        Support for timelines without associated views.
        Refactoring: runloop prefix changed to rendering-frame.

        * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
        * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:
        New files.

2015-04-11  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Use semi-transparent map item dividers
        https://bugs.webkit.org/show_bug.cgi?id=143630

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ObjectTreeMapEntryTreeElement.css:
        (.object-tree-map-entry.key:not(:first-child)):
        (.object-tree-map-entry.key): Deleted.
        (.object-tree-map-entry.key:first-of-type): Deleted.
        Use one selector instead of two.

2015-04-11  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Objects are vertically misaligned by 1px
        https://bugs.webkit.org/show_bug.cgi?id=143629

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/FormattedValue.css:
        (.formatted-object, .formatted-node, .formatted-error, .formatted-map, .formatted-set, .formatted-weakmap):

2015-04-10  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Fix Console Message Toggle

        Unreviewed. Correct a post-review comment fix that went too far.

        * UserInterface/Views/ConsoleMessageView.js:
        (WebInspector.ConsoleMessageView.prototype.set expandable):
        The handler needed to be bound to the object.

2015-04-10  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Fix Console Filter Search, Uncaught Exception

        Rubber-stamped by Timothy Hatcher.

        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype._performSearch):
        This regressed with recent refactoring. Fix up the property and class names.

2015-04-10  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Improve Console Message Formatting
        https://bugs.webkit.org/show_bug.cgi?id=143623

        Reviewed by Timothy Hatcher.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Main.html:
        Misc.

        * UserInterface/Views/ConsoleMessageView.css: Added.
        (.console-message.expandable .console-top-level-message::before):
        (.console-message.expandable.expanded .console-top-level-message::before):
        (.console-message.expandable.expanded :matches(.console-message-preview, .console-message-preview-divider)):
        (.console-message-preview-divider):
        (.console-message-enclosed):
        (.console-message .console-message-stack-trace-container):
        (.console-message.expandable.expanded .console-message-stack-trace-container):
        (.console-message .console-message-stack-trace-container > li):
        (.console-message .console-message-extra-parameters-container > li::before):
        New styles for the new ConsoleMessageView children.
        Handle console message expansion, a list of extra parameters
        and a potential list of stack frames.

        (.console-message, .console-user-command):
        (.console-message .repeat-count):
        (.console-message-text):
        (.console-message-text > span):
        (.console-error-level):
        (.console-error-level .console-message-text):
        (.console-debug-level .console-message-text):
        (.console-warning-level):
        (.console-warning-level .console-message-text):
        (.console-user-command .console-message):
        (.console-error-level::before):
        (.console-warning-level::before):
        (.console-user-command::before):
        (.console-debug-level::before):
        (:matches(.console-warning-level, .console-error-level, .console-log-level).console-message):
        (:matches(.console-warning-level, .console-error-level, .console-log-level)::before):
        (.console-user-command > .console-message-text):
        (.console-message-url):
        (.console-saved-variable):
        (.console-user-command-result):
        (.console-user-command-result.console-log-level::before):
        Moved from LogContentView.css to here where it is more appropriate
        since ConsoleMessageView added them.

        * UserInterface/Views/ConsoleMessageView.js:
        (WebInspector.ConsoleMessageView):
        (WebInspector.ConsoleMessageView.prototype.get expandable):
        (WebInspector.ConsoleMessageView.set expandable.this._boundExpandClickHandler):
        (WebInspector.ConsoleMessageView.prototype.set expandable):
        (WebInspector.ConsoleMessageView.prototype.expand):
        (WebInspector.ConsoleMessageView.prototype.collapse):
        (WebInspector.ConsoleMessageView.prototype.toggle):
        Provide high level constructs for making a ConsoleMessageView
        expandable, and APIs to expand/collapse.

        (WebInspector.ConsoleMessageView.prototype._appendExtraParameters):
        Add and style the new list of extra parameters.

        (WebInspector.ConsoleMessageView.prototype._appendStackTrace):
        Add and style the new list stack frames.

        (WebInspector.ConsoleMessageView.prototype._appendFormattedArguments):
        (WebInspector.ConsoleMessageView.prototype._shouldConsiderObjectLossless):
        Handling the top level message text line for all the different cases.

        * UserInterface/Views/DOMTreeElement.js:
        (WebInspector.DOMTreeElement.prototype._startEditingTarget):
        (WebInspector.DOMTreeElement.prototype._populateTagContextMenu):
        * UserInterface/Views/DOMTreeOutline.css:
        (.dom-tree-outline .add-attribute): Deleted.
        CSS class .add-attribute was not used. Remove all references.
        
        (.webkit-html-fragment.shadow):
        Moved from LogContentView.css to a more appropriate place.
        
        * UserInterface/Views/FormattedValue.js:
        (WebInspector.FormattedValue.createObjectPreviewOrFormattedValueForRemoteObject):
        Helper to create a preview or a formatted value for a given object.

        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView):
        (WebInspector.LogContentView.prototype._updateMessagesSelection):
        (WebInspector.LogContentView.prototype._leftArrowWasPressed):
        (WebInspector.LogContentView.prototype._rightArrowWasPressed):
        (WebInspector.LogContentView.prototype._rightArrowWasPressed.else.outlineTitle.treeElement.onexpand): Deleted.
        (WebInspector.LogContentView.prototype._propertiesSectionDidUpdateContent): Deleted.
        Lots of this code no longer makes sense. Delete some and put FIXMEs
        where it makes sense to re-add back useful features.

        * UserInterface/Views/ObjectPreviewView.css:
        (.object-preview > .size):
        * UserInterface/Views/ObjectTreeArrayIndexTreeElement.css:
        (.object-tree-array-index .index-value .object-tree): Deleted.
        * UserInterface/Views/ObjectTreeView.css:
        (.object-tree):
        Tweak styles. Opacity instead of a specific gray to better work
        with other colors. Always make objects be inline-block.

        * UserInterface/Views/LogContentView.css:
        (.console-error-level + .console-item):
        (.console-warning-level + .console-item):
        (.console-item::before):
        (.console-user-command-result): Deleted.
        (.console-user-command-result.console-log-level::before): Deleted.
        (.console-message, .console-user-command): Deleted.
        (.console-message .repeat-count): Deleted.
        (.console-message-text): Deleted.
        (.console-message-text > span): Deleted.
        (.console-error-level): Deleted.
        (.console-error-level .section .header .title): Deleted.
        (.console-debug-level .console-message-text): Deleted.
        (.console-debug-level::before): Deleted.
        (.console-error-level::before): Deleted.
        (.console-warning-level): Deleted.
        (.console-warning-level .console-message-text): Deleted.
        (.console-warning-level::before): Deleted.
        (.console-user-command .console-message): Deleted.
        (.console-user-command::before): Deleted.
        (:matches(.console-warning-level, .console-error-level, .console-log-level).console-message): Deleted.
        (:matches(.console-warning-level, .console-error-level, .console-log-level)::before): Deleted.
        (.console-user-command > .console-message-text): Deleted.
        (.console-saved-variable): Deleted.
        (.console-message-url): Deleted.
        (.console-group-messages .section): Deleted.
        (.console-group-messages .section .header): Deleted.
        (.console-group-messages .section .header::before): Deleted.
        (.console-group-messages .section .header .title): Deleted.
        (.console-group-messages .section .properties li .info): Deleted.
        (.console-group-messages .outline-disclosure): Deleted.
        (.console-group-messages .outline-disclosure > ol): Deleted.
        (.console-group-messages .outline-disclosure li .selection): Deleted.
        (.console-group-messages .add-attribute): Deleted.
        (.error-message): Deleted.
        (.auto-complete-text, .editing .auto-complete-text): Deleted.
        (.outline-disclosure li.hovered:not(.selected) .selection): Deleted.
        (.outline-disclosure li.highlighted .highlight): Deleted.
        (.outline-disclosure li.selected.highlighted .highlight): Deleted.
        (.outline-disclosure li .selection): Deleted.
        (.outline-disclosure li.selected .selection): Deleted.
        (.outline-disclosure li.elements-drag-over .selection): Deleted.
        (.outline-disclosure ol:focus li.selected .selection): Deleted.
        (.outline-disclosure ol.search-match-not-found li.selected .selection): Deleted.
        (.outline-disclosure > ol): Deleted.
        (.outline-disclosure, .outline-disclosure ol): Deleted.
        (.outline-disclosure li): Deleted.
        (.outline-disclosure .expanded li): Deleted.
        (.outline-disclosure > li.parent): Deleted.
        (.outline-disclosure li .webkit-html-tag.close): Deleted.
        (.outline-disclosure > li.parent::before): Deleted.
        (.outline-disclosure li.parent.expanded::before): Deleted.
        (.outline-disclosure ol.children): Deleted.
        (.outline-disclosure ol.children.expanded): Deleted.
        (.webkit-html-fragment.shadow): Deleted.
        Delete now unused styles and move other styles to more appropriate places.

2015-04-09  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Uncaught exception using console.table with filter argument
        https://bugs.webkit.org/show_bug.cgi?id=143579

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ConsoleMessageView.js:
        (WebInspector.ConsoleMessageView.prototype._userProvidedColumnNames):
        Reordering in the refactoring would have already converted this argument
        to a RemoteObject. Assert that here instead of trying to convert.

2015-04-09  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: ObjectTree Property Path tooltip has a few issues
        https://bugs.webkit.org/show_bug.cgi?id=143587

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/PropertyPath.js:
        (WebInspector.PropertyPath.prototype.appendSymbolProperty):
        (WebInspector.PropertyPath.prototype.appendPropertyDescriptor):
        Handle Symbol properties. They are treated as an impossible path
        because we cannot guarentee a reference to the Symbol right now.

        * UserInterface/Views/ConsoleMessageView.js:
        (WebInspector.ConsoleMessageView.prototype._rootPropertyPathForObject):
        The savedResultIndex is on message.

        * UserInterface/Views/ObjectTreeMapEntryTreeElement.js:
        (WebInspector.ObjectTreeMapEntryTreeElement):
        (WebInspector.ObjectTreeMapKeyTreeElement):
        (WebInspector.ObjectTreeMapValueTreeElement):
        In order for "key" to be available setup the mainTitle after
        the call to the base's constructor.

2015-04-08  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Simplify Legacy Tips support
        https://bugs.webkit.org/show_bug.cgi?id=143551

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/ConsoleMessage.js:
        * UserInterface/Protocol/ConsoleObserver.js:
        (WebInspector.ConsoleObserver.prototype.messageAdded):
        * UserInterface/Views/ConsoleMessageView.js:
        (WebInspector.ConsoleMessageView):
        (WebInspector.ConsoleMessageView.prototype._levelString):
        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype._filterMessageElements):

2015-04-08  Joseph Pecoraro  <pecoraro@apple.com>

        Unreviewed Test Fix after r182579. Add missing include.

        * UserInterface/Test.html:
        Missing file was causing inspector/page/main-frame-resource.html to fail.

2015-04-08  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Split ConsoleMessageImpl into the View and the Model
        https://bugs.webkit.org/show_bug.cgi?id=142599

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/ConsoleMessage.js: Added.
        (WebInspector.ConsoleMessage):
        (WebInspector.ConsoleMessage.prototype.get source):
        (WebInspector.ConsoleMessage.prototype.get level):
        (WebInspector.ConsoleMessage.prototype.get messageText):
        (WebInspector.ConsoleMessage.prototype.get type):
        (WebInspector.ConsoleMessage.prototype.get url):
        (WebInspector.ConsoleMessage.prototype.get line):
        (WebInspector.ConsoleMessage.prototype.get column):
        (WebInspector.ConsoleMessage.prototype.get repeatCount):
        (WebInspector.ConsoleMessage.prototype.get parameters):
        (WebInspector.ConsoleMessage.prototype.get stackTrace):
        (WebInspector.ConsoleMessage.prototype.get request):
        New readonly model object for console messages.

        * UserInterface/Main.html:
        * UserInterface/Test.html:
        * UserInterface/Base/Test.js:
        (WebInspector.loaded):
        Load the new files in the main / test page.

        * UserInterface/Views/LegacyConsoleMessage.js: Removed.
        * UserInterface/Views/LegacyConsoleMessageImpl.js: Removed.
        Remove Legacy versions.

        * UserInterface/Controllers/JavaScriptRuntimeCompletionProvider.js:
        * UserInterface/Controllers/JavaScriptLogViewController.js:
        (WebInspector.JavaScriptLogViewController):
        (WebInspector.JavaScriptLogViewController.prototype.startNewSession):
        (WebInspector.JavaScriptLogViewController.prototype.appendImmediateExecutionWithResult.saveResultCallback):
        (WebInspector.JavaScriptLogViewController.prototype.appendImmediateExecutionWithResult):
        (WebInspector.JavaScriptLogViewController.prototype.appendConsoleMessage):
        (WebInspector.JavaScriptLogViewController.prototype.updatePreviousMessageRepeatCount):
        (WebInspector.JavaScriptLogViewController.prototype.consolePromptTextCommitted.printResult):
        (WebInspector.JavaScriptLogViewController.prototype.consolePromptTextCommitted):
        (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessageView):
        (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessage): Deleted.
        Update LogViewController to create ConsoleMessageViews from ConsoleMessages when applicable.
        Also clarify when we have a view versus model object.

        * UserInterface/Protocol/ConsoleObserver.js:
        (WebInspector.ConsoleObserver.prototype.messageAdded):
        * UserInterface/Controllers/LogManager.js:
        (WebInspector.LogManager.prototype.messageWasAdded):
        (WebInspector.LogManager.prototype.messagesCleared):
        (WebInspector.LogManager.prototype._mainResourceDidChange):
        Create model objects and issue events for the model objects.

        * UserInterface/Models/DefaultDashboard.js:
        (WebInspector.DefaultDashboard.prototype._consoleMessageAdded):
        (WebInspector.DefaultDashboard.prototype._incrementConsoleMessageType):
        Update now that the event gives us a model object.

        * UserInterface/Views/ConsoleMessageView.js: Added.
        (WebInspector.ConsoleMessageView):
        (WebInspector.ConsoleMessageView.prototype.get element):
        (WebInspector.ConsoleMessageView.prototype.get message):
        (WebInspector.ConsoleMessageView.prototype.get repeatCount):
        (WebInspector.ConsoleMessageView.prototype.set repeatCount):
        (WebInspector.ConsoleMessageView.prototype.toClipboardString):
        (WebInspector.ConsoleMessageView.prototype._appendMessageTextAndArguments):
        (WebInspector.ConsoleMessageView.prototype._appendSavedResultIndex):
        (WebInspector.ConsoleMessageView.prototype._appendLocationLink):
        (WebInspector.ConsoleMessageView.prototype._appendParameters):
        (WebInspector.ConsoleMessageView.prototype._appendStackTrace):
        (WebInspector.ConsoleMessageView.prototype._appendFormattedArguments):
        (WebInspector.ConsoleMessageView.prototype._formatParameter):
        (WebInspector.ConsoleMessageView.prototype._formatParameterAsValue):
        (WebInspector.ConsoleMessageView.prototype._formatParameterAsString):
        (WebInspector.ConsoleMessageView.prototype._formatParameterAsNode):
        (WebInspector.ConsoleMessageView.prototype._formatParameterAsObject):
        (WebInspector.ConsoleMessageView.prototype._formatParameterAsArray):
        (WebInspector.ConsoleMessageView.prototype._rootPropertyPathForObject):
        (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString.parameterFormatter):
        (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString.stringFormatter):
        (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString.floatFormatter):
        (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString.integerFormatter):
        (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString.styleFormatter):
        (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString.isWhitelistedProperty):
        (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString.append):
        (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString):
        (WebInspector.ConsoleMessageView.prototype._shouldShowStackTrace):
        (WebInspector.ConsoleMessageView.prototype._shouldHideURL):
        (WebInspector.ConsoleMessageView.prototype._firstNonNativeCallFrame):
        (WebInspector.ConsoleMessageView.prototype._linkifyLocation):
        (WebInspector.ConsoleMessageView.prototype._linkifyCallFrame):
        (WebInspector.ConsoleMessageView.prototype._userProvidedColumnNames):
        (WebInspector.ConsoleMessageView.prototype._formatParameterAsTable):
        (WebInspector.ConsoleMessageView.prototype._levelString):
        (WebInspector.ConsoleMessageView.prototype._enforcesClipboardPrefixString):
        (WebInspector.ConsoleMessageView.prototype._clipboardPrefixString):
        New View class for a ConsoleMessage. This is a near direct port of the old code
        to a view class that has a root element.

        * UserInterface/Models/ConsoleCommandResultMessage.js: Renamed from Source/WebInspectorUI/UserInterface/Views/ConsoleCommandResult.js.
        (WebInspector.ConsoleCommandResultMessage):
        (WebInspector.ConsoleCommandResultMessage.clearMaximumSavedResultIndex):
        (WebInspector.ConsoleCommandResultMessage.prototype.get savedResultIndex):
        Rename, as this is a ConsoleMessage subclass with a specific type for console evaluation results.

        * UserInterface/Views/ConsoleCommandView.js: Renamed from Source/WebInspectorUI/UserInterface/Views/ConsoleCommand.js.
        (WebInspector.ConsoleCommandView):
        (WebInspector.ConsoleCommandView.prototype.get element):
        (WebInspector.ConsoleCommandView.prototype.get commandText):
        (WebInspector.ConsoleCommandView.prototype.get message):
        (WebInspector.ConsoleCommandView.prototype.toClipboardString):
        * UserInterface/Views/ConsoleGroup.js:
        (WebInspector.ConsoleGroup):
        (WebInspector.ConsoleGroup.prototype.get parentGroup):
        (WebInspector.ConsoleGroup.prototype.render):
        (WebInspector.ConsoleGroup.prototype.addMessageView):
        (WebInspector.ConsoleGroup.prototype.append):
        (WebInspector.ConsoleGroup.prototype._titleMouseDown):
        (WebInspector.ConsoleGroup.prototype.addMessage): Deleted.
        (WebInspector.ConsoleGroup.prototype._titleClicked): Deleted.
        * UserInterface/Views/ConsoleSession.js:
        (WebInspector.ConsoleSession):
        (WebInspector.ConsoleSession.prototype.addMessageView):
        (WebInspector.ConsoleSession.prototype.append):
        (WebInspector.ConsoleSession.prototype.addMessage): Deleted.
        (WebInspector.ConsoleSession.prototype.hasMessages): Deleted.
        Convert to classes, and clarify these deal with View objects.

        * UserInterface/Views/LogContentView.css:
        (.console-message .repeat-count):
        (.console-message .bubble): Deleted.
        Better class name for the repeat count element.

        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype.didAppendConsoleMessageView):
        (WebInspector.LogContentView.prototype._formatMessagesAsData):
        (WebInspector.LogContentView.prototype._messageAdded):
        (WebInspector.LogContentView.prototype._updateMessagesSelection):
        (WebInspector.LogContentView.prototype._selectAllMessages):
        (WebInspector.LogContentView.prototype._allMessageElements):
        (WebInspector.LogContentView.prototype._unfilteredMessageElements):
        (WebInspector.LogContentView.prototype._visibleMessageElements):
        (WebInspector.LogContentView.prototype._scopeBarSelectionDidChange):
        (WebInspector.LogContentView.prototype._filterMessageElements):
        (WebInspector.LogContentView.prototype._upArrowWasPressed):
        (WebInspector.LogContentView.prototype._downArrowWasPressed):
        (WebInspector.LogContentView.prototype._previousMessage):
        (WebInspector.LogContentView.prototype._nextMessage):
        (WebInspector.LogContentView.prototype._performSearch):
        (WebInspector.LogContentView.prototype._highlightRanges):
        (WebInspector.LogContentView.prototype._reappendProvisionalMessages):
        (WebInspector.LogContentView.prototype.didAppendConsoleMessage): Deleted.
        (WebInspector.LogContentView.prototype._allMessages): Deleted.
        (WebInspector.LogContentView.prototype._unfilteredMessages): Deleted.
        (WebInspector.LogContentView.prototype._visibleMessages): Deleted.
        (WebInspector.LogContentView.prototype._filterMessages): Deleted.
        Rename lots of things to make it clear when we are dealing with
        elements, model objects, or view objects. This class is still heavily
        dealing with elements, and needs to be cleaned up later.

2015-04-08  Joseph Pecoraro  <pecoraro@apple.com>

        Fix uncaught exception seen in Inspector.

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/TreeOutline.js:
        (WebInspector.TreeOutline.prototype.removeChild):
        Add a null check. Everywhere else null checks this member variable
        which may not exist yet, this case was missing the check.

2015-04-08  Tobias Reiss  <tobi+webkit@basecode.de>

        Web Inspector: Regression: Showing of color swatches no longer works in Details Sidebar
        https://bugs.webkit.org/show_bug.cgi?id=143539

        Reviewed by Timothy Hatcher.

        Fix a regression where due to an ESLint error the whole line instead of just
        the variable declaration was removed.

        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._createColorSwatches.update):
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._createColorSwatches):

2015-04-07  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: ES6: Show Symbol properties on Objects
        https://bugs.webkit.org/show_bug.cgi?id=141279

        Reviewed by Timothy Hatcher.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Models/PropertyDescriptor.js:
        (WebInspector.PropertyDescriptor.get symbol):

        * UserInterface/Protocol/RemoteObject.js:
        (WebInspector.RemoteObject.wrappedCallback):
        Update new PropertyDescriptor call site.

        * UserInterface/Views/ObjectTreeBaseTreeElement.js:
        (WebInspector.ObjectTreeBaseTreeElement._logSymbolProperty):
        Provide a context menu for rows with Symbol properties to log
        the Symbol property, and therefore get a reference to it.

        * UserInterface/Views/ObjectTreeView.js:
        (WebInspector.ObjectTreeView.comparePropertyDescriptors):
        Better handle symbol properties in sorting.

        * UserInterface/Views/TypePropertiesSection.js:
        (WebInspector.TypePropertiesSection.PropertyComparator):
        Return better value when values are equal.

2015-04-07  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: HierarchicalPathNavigationItem's additionalClassNames should be _additionalClassNames
        https://bugs.webkit.org/show_bug.cgi?id=143487

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/HierarchicalPathNavigationItem.js:
        (WebInspector.HierarchicalPathNavigationItem.prototype.get _additionalClassNames):

2015-04-05  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Add String/Array "includes" parameter display string
        https://bugs.webkit.org/show_bug.cgi?id=143434

        Reviewed by Darin Adler.

        * UserInterface/Models/NativeFunctionParameters.js:

2015-04-05  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Regression: Map instances don't expand
        https://bugs.webkit.org/show_bug.cgi?id=143428

        Reviewed by Brian Burg.

        Fix uses of "this" in super() calls. Also fix a style name
        that no longer exists and was intended to be inlined.

        * UserInterface/Views/IndexedDatabaseObjectStoreTreeElement.js:
        (WebInspector.IndexedDatabaseObjectStoreTreeElement):
        * UserInterface/Views/IndexedDatabaseTreeElement.js:
        (WebInspector.IndexedDatabaseTreeElement):
        * UserInterface/Views/ObjectTreeMapEntryTreeElement.js:
        (WebInspector.ObjectTreeMapEntryTreeElement):

2015-04-05  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: ObjectTree array index hints are clipped when shown in popover
        https://bugs.webkit.org/show_bug.cgi?id=143309

        Reviewed by Brian Burg.

        * UserInterface/Views/ObjectTreeArrayIndexTreeElement.css:
        (.object-tree-array-index .index-name):
        Add left margin that equals the width of the expand/collapse icon.

2015-03-31  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: console.error(object) has double disclosure triangles
        https://bugs.webkit.org/show_bug.cgi?id=142069

        Use inline-block instead of "float: left" or "position: absolute" to
        make layout more predictable and easier to understand.

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/LogContentView.css:
        (.outline-disclosure, .outline-disclosure ol):
        (.outline-disclosure > li.parent):
        (.outline-disclosure > li.parent::before):
        (.outline-disclosure li.parent): Deleted.
        (.outline-disclosure li.parent::before): Deleted.
        * UserInterface/Views/ObjectTreePropertyTreeElement.css:
        (.object-tree-property > .titles):
        (.object-tree-property > .disclosure-button):
        (.object-tree-property > .icon):
        * UserInterface/Views/ObjectTreeView.css:
        (.object-tree > :matches(.title, .object-preview)::before):
        (.object-tree:not(.lossless-preview) > :matches(.title, .object-preview)):

2015-03-31  Jono Wells  <jonowells@apple.com>

        Web Inspector: REGRESSION: Filtering no longer works
        https://bugs.webkit.org/show_bug.cgi?id=143099

        Reviewed by Brian Burg.

        Add a check for an empty array of filter functions and return true in this case to ensure text
        and timeline filters work correctly.

        * UserInterface/Views/NavigationSidebarPanel.js:
        (WebInspector.NavigationSidebarPanel.prototype.matchTreeElementAgainstFilterFunctions):

2015-03-31  Commit Queue  <commit-queue@webkit.org>

        Unreviewed, rolling out r182186.
        https://bugs.webkit.org/show_bug.cgi?id=143270

        it crashes all the WebGL tests on the Debug bots (Requested by
        dino on #webkit).

        Reverted changeset:

        "Web Inspector: add 2D/WebGL canvas instrumentation
        infrastructure"
        https://bugs.webkit.org/show_bug.cgi?id=137278
        http://trac.webkit.org/changeset/182186

2015-03-31  Matt Baker  <mattbaker@apple.com>

        Web Inspector: add 2D/WebGL canvas instrumentation infrastructure
        https://bugs.webkit.org/show_bug.cgi?id=137278

        Reviewed by Timothy Hatcher.

        Added models, views, and controller classes for 2D and WebGL canvas inspection. Each canvas is shown in the
        Resources navigation sidebar under its parent frame. Shader programs are displayed as child nodes of
        their respective canvas. Canvases will get an associated content view and details sidebar in a later patch
        (see https://bugs.webkit.org/show_bug.cgi?id=138941).

        Shader programs will get an associated content view for editing shader source in a later patch (see
        https://bugs.webkit.org/show_bug.cgi?id=138593). Individual shaders are not shown in the Resource navigation
        sidebar, and at this time there are no plans to instrument shaders that aren't attached to a program.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Base/Main.js:
        (WebInspector.loaded):
        (WebInspector.sidebarPanelForRepresentedObject):
        * UserInterface/Base/Test.js:
        (WebInspector.loaded):
        * UserInterface/Main.html:
        * UserInterface/Test.html:
        Updated for new canvas/shader program types.

        * UserInterface/Controllers/CanvasManager.js: Added.
        (WebInspector.CanvasManager):
        (WebInspector.CanvasManager.prototype.canvasesForFrame):
        (WebInspector.CanvasManager.prototype.canvasAdded.set this):
        (WebInspector.CanvasManager.prototype.canvasAdded):
        (WebInspector.CanvasManager.prototype.canvasRemoved):
        (WebInspector.CanvasManager.programDeleted.get console):
        (WebInspector.CanvasManager.prototype.programCreated.get console):
        (WebInspector.CanvasManager.prototype.programCreated):
        (WebInspector.CanvasManager.prototype._mainResourceDidChange):
        Frontend controller for canvases and their shader programs.

        * UserInterface/Images/Canvas.svg: Added.
        * UserInterface/Images/DocumentGL.png: Added.
        * UserInterface/Images/DocumentGL@2x.png: Added.
        New art for canvas and shader program tree elements.

        * UserInterface/Models/Canvas.js: Added.
        (WebInspector.Canvas):
        (WebInspector.Canvas.prototype.set fromPayload):
        (WebInspector.Canvas.displayNameForContextType):
        (WebInspector.Canvas.resetUniqueDisplayNameNumbers):
        (WebInspector.Canvas.prototype.get id):
        (WebInspector.Canvas.prototype.get parentFrame):
        (WebInspector.Canvas.prototype.get name):
        (WebInspector.Canvas.prototype.get cssCanvas):
        (WebInspector.Canvas.prototype.get contextType):
        (WebInspector.Canvas.prototype.get contextAttributes):
        (WebInspector.Canvas.prototype.get programs):
        (WebInspector.Canvas.prototype.get displayName):
        (WebInspector.Canvas.programForId):
        (WebInspector.Canvas.get programWasCreated.set this):
        (WebInspector.Canvas.prototype.get programWasCreated):
        (WebInspector.Canvas.prototype.programWasDeleted):
        (WebInspector.Canvas.prototype.saveIdentityToCookie):
        Model for DOM or CSS canvas (2D or WebGL).

        * UserInterface/Models/ShaderProgram.js: Added.
        (WebInspector.ShaderProgram):
        (WebInspector.ShaderProgram.prototype.get id):
        (WebInspector.ShaderProgram.prototype.get canvas):
        (WebInspector.ShaderProgram.prototype.get displayName):
        (WebInspector.ShaderProgram.prototype.saveIdentityToCookie):
        (WebInspector.ShaderProgram.prototype.updateCanvas):
        * UserInterface/Models/WebGLContextAttributes.js: Added.
        (WebInspector.WebGLContextAttributes):
        (WebInspector.WebGLContextAttributes.fromPayload):
        (WebInspector.WebGLContextAttributes.prototype.get alpha):
        (WebInspector.WebGLContextAttributes.prototype.get depth):
        (WebInspector.WebGLContextAttributes.prototype.get stencil):
        (WebInspector.WebGLContextAttributes.prototype.get antialias):
        (WebInspector.WebGLContextAttributes.prototype.get premultipliedAlpha):
        (WebInspector.WebGLContextAttributes.prototype.get preserveDrawingBuffer):
        Model for WebGL canvas context attributes.

        * UserInterface/Protocol/CanvasObserver.js: Added.
        (WebInspector.CanvasObserver.prototype.canvasAdded):
        (WebInspector.CanvasObserver.prototype.canvasRemoved):
        (WebInspector.CanvasObserver.prototype.programCreated):
        (WebInspector.CanvasObserver.prototype.programDeleted):
        (WebInspector.CanvasObserver):
        Model for WebGL canvas shader program.

        * UserInterface/Views/CanvasTreeElement.js: Added.
        (WebInspector.CanvasTreeElement.validateRepresentedObject):
        (WebInspector.CanvasTreeElement.countChildren):
        (WebInspector.CanvasTreeElement):
        (WebInspector.CanvasTreeElement.prototype.onexpand):
        (WebInspector.CanvasTreeElement.prototype.oncollapse):
        (WebInspector.CanvasTreeElement.prototype.onpopulate):
        (WebInspector.CanvasTreeElement.prototype._programWasCreated):
        (WebInspector.CanvasTreeElement.prototype._programWasDeleted):
        Folderized tree element for canvases and their child objects (shader programs).

        * UserInterface/Views/FrameTreeElement.js:
        (WebInspector.FrameTreeElement.prototype.onattach):
        (WebInspector.FrameTreeElement.prototype.ondetach):
        (WebInspector.FrameTreeElement.prototype.onpopulate):
        (WebInspector.FrameTreeElement.prototype._canvasesAvailable):
        (WebInspector.FrameTreeElement.prototype._canvasWasAdded):
        (WebInspector.FrameTreeElement.prototype._canvasWasRemoved):
        Updated to support canvas tree elements.

        * UserInterface/Views/ResourceIcons.css:
        (.canvas-icon .icon):
        (.shader-program-icon .icon):
        Styles for new canvas and shader program icons.

        * UserInterface/Views/ResourceSidebarPanel.js:
        (WebInspector.ResourceSidebarPanel.prototype._treeElementSelected):
        Updated for new tree element types.

        * UserInterface/Views/ShaderProgramTreeElement.js: Added.
        (WebInspector.ShaderProgramTreeElement):
        Tree element for shader programs. Shown as children of CanvasTreeElement.

        * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
        * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:

2015-03-30  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Regression: null shouldn't be expandable in object outline
        https://bugs.webkit.org/show_bug.cgi?id=143209

        Reviewed by Mark Lam.

        * UserInterface/Views/FormattedValue.js:
        (WebInspector.FormattedValue.createObjectTreeOrFormattedValueForRemoteObject):
        When creating an object tree or formatted value, choose just a formatted value
        for "null", since it does not have properties.

2015-03-30  Tobias Reiss  <tobi+webkit@basecode.de>

        Web Inspector: Add more ESLint rules that reflect the current state of the code base
        https://bugs.webkit.org/show_bug.cgi?id=143212

        Reviewed by Timothy Hatcher.

        * .eslintrc:
        Define some utilities as globals.
        Replace "no-comma-dangle" with "comma-dangle". "no-comma-dangle" is deprecated and does not trigger in ESLint v.0.17.1
        Set "new-cap" to 0 due to the usage of "WebInspector.UIString".
        Disable "no-redeclare" for now and enable it back as soon as block scoped `let` is used.
        Disable "dot-notation", "no-shadow" and "no-use-before-define" due to a lot of hits.
        Disable "no-inner-declarations" as this is a common pattern to save memory.
        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        * UserInterface/Models/SourceCodeLocation.js:
        It's not necessary to initialize x to undefined.
        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        * UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
        * UserInterface/Views/TextEditor.js:
        * UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
        Remove unused variable x.
        * UserInterface/Views/ObjectTreeMapEntryTreeElement.js:
        * UserInterface/Models/PropertyPath.js:
        * UserInterface/Views/RadioButtonNavigationItem.js:
        * UserInterface/Views/ReplayDashboardView.js:
        * UserInterface/Models/ScriptSyntaxTree.js:
        * UserInterface/Views/SourceCodeTextEditor.js:
        * UserInterface/Views/SourceCodeTreeElement.js:
        Remove trailing and unexpected whitespace.
        * UserInterface/Views/ProbeSetDataGrid.js:
        * UserInterface/Views/TimelineRuler.js:
        Add missing semicolon.
        * UserInterface/Views/TimelineDataGrid.js:
        * UserInterface/Views/TimelineRecordFrame.js:
        Add missing var statement.
        * UserInterface/Views/TypeTokenView.js:
        Remove unnecessary `bind`.

2015-03-28  Saam Barati  <saambarati1@gmail.com>

        Web Inspector: ES6: Better support for Symbol types in Type Profiler
        https://bugs.webkit.org/show_bug.cgi?id=141257

        Reviewed by Joseph Pecoraro.

        The Web Inspector's visualization of JSC's type profiler
        should have support for the Symbol type.

        * UserInterface/Models/TypeSet.js:
        (WebInspector.TypeSet):
        (WebInspector.TypeSet.prototype.get primitiveTypeNames):
        * UserInterface/Views/TypeTokenView.css:
        TypeTokenView will display Symbol type tokens using the same color that 
        Symbol values are displayed as formatted values.

        (.type-token-symbol):
        * UserInterface/Views/TypeTokenView.js:
        (WebInspector.TypeTokenView.prototype._displayTypeName):
        (WebInspector.TypeTokenView):

2015-03-28  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Adopt Array.prototype.includes and String.prototype.includes
        https://bugs.webkit.org/show_bug.cgi?id=143176

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/Utilities.js:
        Remove our custom implementations of Array/String contains functions.

        * UserInterface/Base/Main.js:
        (WebInspector._updateContentViewForCurrentNavigationSidebar):
        (WebInspector._contentBrowserCurrentContentViewDidChange):
        * UserInterface/Controllers/CodeMirrorCompletionController.js:
        (WebInspector.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions.):
        (WebInspector.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions):
        * UserInterface/Controllers/CodeMirrorTokenTrackingController.js:
        (WebInspector.CodeMirrorTokenTrackingController.prototype._updateHoveredTokenInfo):
        (WebInspector.CodeMirrorTokenTrackingController.prototype._processJavaScriptExpression):
        * UserInterface/Controllers/FrameResourceManager.js:
        (WebInspector.FrameResourceManager.prototype._extraDomainsActivated):
        (WebInspector.FrameResourceManager):
        * UserInterface/Controllers/LayerTreeManager.js:
        (WebInspector.LayerTreeManager.prototype.layerTreeMutations):
        * UserInterface/Controllers/StorageManager.js:
        (WebInspector.StorageManager.prototype._extraDomainsActivated):
        (WebInspector.StorageManager):
        * UserInterface/Models/Branch.js:
        (WebInspector.Branch.prototype.addRevision):
        * UserInterface/Models/CSSKeywordCompletions.js:
        (WebInspector.CSSKeywordCompletions.forProperty):
        * UserInterface/Models/CSSRule.js:
        (WebInspector.CSSRule.prototype.get matchedSelectors):
        * UserInterface/Models/CSSStyleDeclaration.js:
        * UserInterface/Models/Color.js:
        (WebInspector.Color.fromString):
        * UserInterface/Models/DOMNode.js:
        * UserInterface/Models/DOMNodeStyles.js:
        (WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload):
        * UserInterface/Views/CSSStyleDeclarationSection.js:
        (WebInspector.CSSStyleDeclarationSection.prototype.refresh):
        * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
        (WebInspector.CSSStyleDetailsSidebarPanel.prototype._updatePseudoClassCheckboxes):
        (WebInspector.CSSStyleDetailsSidebarPanel):
        * UserInterface/Views/ContentBrowser.js:
        (WebInspector.ContentBrowser.prototype._updateContentViewSelectionPathNavigationItem):
        * UserInterface/Views/DOMTreeElement.js:
        * UserInterface/Views/DebuggerSidebarPanel.js:
        (WebInspector.DebuggerSidebarPanel.prototype._resourceAdded):
        * UserInterface/Views/GeneralTreeElement.js:
        (WebInspector.GeneralTreeElement.prototype.addClassName):
        (WebInspector.GeneralTreeElement.prototype.removeClassName):
        * UserInterface/Views/LegacyConsoleMessageImpl.js:
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsTable):
        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype._updateMessagesSelection):
        * UserInterface/Views/NavigationBar.js:
        (WebInspector.NavigationBar.prototype._findNavigationItem):
        * UserInterface/Views/Sidebar.js:
        (WebInspector.Sidebar.prototype.findSidebarPanel):
        Replace contains with includes where appropriate.

2015-03-28  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Tweak node styles in ObjectTreeView
        https://bugs.webkit.org/show_bug.cgi?id=143179

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/LogContentView.css:
        (.console-group-messages .outline-disclosure.single-node li):
        * UserInterface/Views/DOMTreeOutline.css:
        (.dom-tree-outline.single-node li):
        This style makes sense as a generic DOMTreeOutline style.

        * UserInterface/Views/FormattedValue.css:
        (.formatted-node > .dom-tree-outline):
        (.formatted-node > .dom-tree-outline ol):
        (.formatted-node > .dom-tree-outline li.hovered:not(.selected) .selection):
        Style for nodes in ObjectTreeView.

        * UserInterface/Views/ObjectTreeArrayIndexTreeElement.css:
        (.object-tree-array-index .index-value .formatted-node .dom-tree-outline):
        Styles for node in Array value.

        * UserInterface/Views/FormattedValue.js:
        (WebInspector.FormattedValue.createElementForNode):
        Address the FIXME.

2015-03-27  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: TypeProfiler doesn't work on files with ES6 Class Syntax
        https://bugs.webkit.org/show_bug.cgi?id=143169

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/ScriptSyntaxTree.js:
        (WebInspector.ScriptSyntaxTree.prototype._recurse):
        (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):
        (WebInspector.ScriptSyntaxTree):
        Add basic support for Esprima's ES6 Class/Method/Spread nodes.
        There are more ES6 features that should be covered, but this
        covers all the features we use in Web Inspector source, so
        Type Profiling can work with our own source.

        Treat Methods like getters / setters right now because their
        syntax is very similiar to getters/setters. There is a bug
        handling generic ES6 cleanup to better name things.

2015-03-27  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Uncaught TDZ Exception with Type Profiler
        https://bugs.webkit.org/show_bug.cgi?id=143167

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/TypePropertiesSection.js:
        (WebInspector.TypePropertyTreeElement):
        Avoid TDZ issue by not using "this" before "super".

        * UserInterface/Models/ScriptSyntaxTree.js:
        (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):
        (WebInspector.ScriptSyntaxTree):
        Better handle unsupported node types by returning null and avoiding an exception.

        * UserInterface/Views/SourceCodeTextEditor.js:
        Fix an issue I saw once where the sourceCode was a Script itself.

2015-03-27  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Uncaught exception while debugging, after performSearch callback line does not exists
        https://bugs.webkit.org/show_bug.cgi?id=143172

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/SourceCodeTextEditor.js:
        (WebInspector.SourceCodeTextEditor.prototype.customPerformSearch.searchResultCallback):
        (WebInspector.SourceCodeTextEditor.prototype.customPerformSearch):
        Gracefully handle if the line does not exist.

2015-03-27  Ryosuke Niwa  <rniwa@webkit.org>

        ES6 Classes: Runtime error in JIT'd class calling super() with arguments and superclass has default constructor
        https://bugs.webkit.org/show_bug.cgi?id=142862

        Reviewed by Benjamin Poulain.

        Removed the workaround for the bug since it has been fixed by r181993.

        * UserInterface/Base/Object.js:
        * UserInterface/Models/DebuggerDashboard.js:
        * UserInterface/Models/NetworkTimeline.js:
        * UserInterface/Models/ReplayDashboard.js:
        * UserInterface/Models/Revision.js:

2015-03-27  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Add Setter Icon for ObjectTreeView
        https://bugs.webkit.org/show_bug.cgi?id=143129

        Reviewed by Timothy Hatcher.

        * UserInterface/Images/Pencil.svg: Added.
        New icon used to indicate setter properties.

        * Localizations/en.lproj/localizedStrings.js:
        Remove "Read only" and replace with "Setter".

        * UserInterface/Views/ObjectTreeArrayIndexTreeElement.js:
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._titleFragment):
        (WebInspector.ObjectTreeArrayIndexTreeElement):
        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitlePropertyStyle):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitleAPIStyle):
        Update cases that created setter / getter elements.
        
        * UserInterface/Views/ObjectTreeBaseTreeElement.js:
        (WebInspector.ObjectTreeBaseTreeElement.prototype.createGetterElement):
        (WebInspector.ObjectTreeBaseTreeElement.prototype.createInteractiveGetterElement): Deleted.
        * UserInterface/Views/ObjectTreePropertyTreeElement.css:
        (.object-tree-property :matches(.getter, .setter)):
        (.object-tree-property .spacer):
        (.object-tree-property .getter):
        (.object-tree-property .setter):
        (.object-tree-property .getter + .setter):
        New setter element and styles. Setters are always non-interactable right now.

2015-03-27  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Uncaught Exceptions with Context Menus
        https://bugs.webkit.org/show_bug.cgi?id=143162

        Reviewed by Timothy Hatcher.

        * UserInterface/Protocol/InspectorFrontendAPI.js:
        (InspectorFrontendAPI.contextMenuCleared):

2015-03-27  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Disable editing in Metrics section while it is not working
        https://bugs.webkit.org/show_bug.cgi?id=143165

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/BoxModelDetailsSectionRow.js:
        (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics.createElement):
        (WebInspector.BoxModelDetailsSectionRow.prototype._applyUserInput):
        Disable double click to edit while it is not working. The value setter
        and add methods no longer exist.

2015-03-27  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Uncaught Exceptions evaluating code while paused
        https://bugs.webkit.org/show_bug.cgi?id=143163

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/CallFrame.js:
        (WebInspector.CallFrame.prototype.collectScopeChainVariableNames):
        We define a property named "valueForCaseInsensitiveKey" on Object.prototype
        that is readonly. So we should avoid Object.prototype when building our
        result list. This should probably move to a Map object eventually.

2015-03-27  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Remove unused testing properties
        https://bugs.webkit.org/show_bug.cgi?id=143156

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/LegacyConsoleMessageImpl.js:
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatMessage):
        * UserInterface/Views/Section.js:
        (WebInspector.Section.prototype.get subtitleAsTextForTest): Deleted.

2015-03-27  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Uncaught Exception: TypeError: Attempted to assign to readonly - DOMNodeDetailsSidebarPanel.js
        https://bugs.webkit.org/show_bug.cgi?id=143139

        Reviewed by Timothy Hatcher.

        DataGridNodes do not have a selectable setter. TreeElements do.
        DataGridNodes are always selectable. Match current behavior by
        removing all instances of attempting to set the selectability
        which would, under strict mode, result in an error.

        * UserInterface/Views/ApplicationCacheFrameContentView.js:
        (WebInspector.ApplicationCacheFrameContentView.prototype._populateDataGrid):
        * UserInterface/Views/CookieStorageContentView.js:
        (WebInspector.CookieStorageContentView.prototype._rebuildTable):
        * UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
        (WebInspector.DOMNodeDetailsSidebarPanel.prototype._createAttributesDataGrid):
        (WebInspector.DOMNodeDetailsSidebarPanel):
        * UserInterface/Views/DOMStorageContentView.js:
        (WebInspector.DOMStorageContentView.prototype.reset):
        * UserInterface/Views/DataGrid.js:

2015-03-26  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Convert more misc View classes to ES6
        https://bugs.webkit.org/show_bug.cgi?id=143128

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/CompletionSuggestionsView.js:
        * UserInterface/Views/ComputedStyleDetailsPanel.js:
        * UserInterface/Views/DashboardContainerView.js:
        * UserInterface/Views/DashboardView.js:
        * UserInterface/Views/DebuggerDashboardView.js:
        * UserInterface/Views/DefaultDashboardView.js:
        * UserInterface/Views/FilterBarButton.js:
        * UserInterface/Views/MetricsStyleDetailsPanel.js:
        * UserInterface/Views/ObjectPreviewView.js:
        * UserInterface/Views/ObjectTreeView.js:
        * UserInterface/Views/QuickConsole.js:
        * UserInterface/Views/ReplayDashboardView.js:
        * UserInterface/Views/RulesStyleDetailsPanel.js:
        * UserInterface/Views/StyleDetailsPanel.js:
        Converted to ES6 classes.

2015-03-26  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Convert TextEditor classes to ES6
        https://bugs.webkit.org/show_bug.cgi?id=143127

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        Removed a comment about const, we can't use it in strict mode / classes.

        * UserInterface/Views/SourceCodeTextEditor.js:
        * UserInterface/Views/TextEditor.js:
        Converted to ES6 classes.

2015-03-26  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: clicking on console record while REPL is focused does not select a new record
        https://bugs.webkit.org/show_bug.cgi?id=142171

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype._mousedown):

2015-03-26  Andres Gomez  <agomez@igalia.com>

        [GTK] Web Inspector: New Images for Console Types
        https://bugs.webkit.org/show_bug.cgi?id=142301

        Reviewed by Joseph Pecoraro.

        Add more free icons and for the Web Inspector in GTK+.

        * UserInterface/Images/gtk/Eye.svg: Added.
        * UserInterface/Images/gtk/Frames.png: Added.
        * UserInterface/Images/gtk/Frames@2x.png: Added.
        * UserInterface/Images/gtk/FramesLarge.png: Added.
        * UserInterface/Images/gtk/FramesLarge@2x.png: Added.
        * UserInterface/Images/gtk/Reload.svg:
        * UserInterface/Images/gtk/ReloadFull.svg: Added.
        * UserInterface/Images/gtk/TypeBoolean.svg: Added.
        * UserInterface/Images/gtk/TypeNull.svg: Added.
        * UserInterface/Images/gtk/TypeNumber.svg: Added.
        * UserInterface/Images/gtk/TypeObject.svg: Added.
        * UserInterface/Images/gtk/TypeRegex.svg: Added.
        * UserInterface/Images/gtk/TypeString.svg: Added.
        * UserInterface/Images/gtk/TypeSymbol.svg: Added.
        * UserInterface/Images/gtk/TypeUndefined.svg: Added.

2015-03-26  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: ES6: Provide a better view for Classes in the console
        https://bugs.webkit.org/show_bug.cgi?id=142999

        Reviewed by Timothy Hatcher.

        * UserInterface/Protocol/RemoteObject.js:
        (WebInspector.RemoteObject):
        (WebInspector.RemoteObject.fromPrimitiveValue):
        (WebInspector.RemoteObject.fromPayload):
        (WebInspector.RemoteObject.prototype.get classPrototype):
        (WebInspector.RemoteObject.prototype.isClass):
        Update our RemoteObject model object for the new subtype
        and its unique properties.

        * UserInterface/Views/FormattedValue.js:
        (WebInspector.FormattedValue.createElementForTypesAndValue):
        (WebInspector.FormattedValue.createObjectTreeOrFormattedValueForRemoteObject):
        Better handle "class", as it is a new function subtype.

        * UserInterface/Views/LegacyConsoleMessageImpl.js:
        (WebInspector.LegacyConsoleMessageImpl):
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsObject):
        Format a "class" with ObjectTreeView.

        * UserInterface/Views/ObjectTreeArrayIndexTreeElement.js:
        * UserInterface/Views/ObjectTreeBaseTreeElement.js:
        * UserInterface/Views/ObjectTreePropertyTreeElement.css:
        (.object-tree-property .getter.disabled):
        (.object-tree-property .getter:not(.disabled):hover):
        (.object-tree-property .getter:hover): Deleted.
        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        In ClassAPI mode, you cannot invoke a getter since we don't have
        an instance to invoke it on. So disable interactivity with getters.

        * UserInterface/Views/ObjectTreeView.js:
        (WebInspector.ObjectTreeView):
        Update the modes to include an API mode for instances and classes.

        (WebInspector.ObjectTreeView.defaultModeForObject):
        * UserInterface/Views/SourceCodeTextEditor.js:
        (WebInspector.SourceCodeTextEditor.prototype._showPopoverForObject):
        Simplify ObjectTree construction to automatically determine mode based
        on the RemoteObject that was provided.

        * Localizations/en.lproj/localizedStrings.js:
        "Getter" tooltip.

2015-03-26  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Convert TreeElement classes to ES6
        https://bugs.webkit.org/show_bug.cgi?id=143111

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/ApplicationCacheFrameTreeElement.js:
        * UserInterface/Views/ApplicationCacheManifestTreeElement.js:
        * UserInterface/Views/BreakpointTreeElement.js:
        * UserInterface/Views/CallFrameTreeElement.js:
        * UserInterface/Views/ContentFlowTreeElement.js:
        * UserInterface/Views/CookieStorageTreeElement.js:
        * UserInterface/Views/DOMStorageTreeElement.js:
        * UserInterface/Views/DOMTreeElement.js:
        * UserInterface/Views/DOMTreeOutline.js:
        * UserInterface/Views/DatabaseHostTreeElement.js:
        * UserInterface/Views/DatabaseTableTreeElement.js:
        * UserInterface/Views/DatabaseTreeElement.js:
        * UserInterface/Views/FolderTreeElement.js:
        * UserInterface/Views/FolderizedTreeElement.js:
        * UserInterface/Views/FrameTreeElement.js:
        * UserInterface/Views/GeneralTreeElement.js:
        * UserInterface/Views/IndexedDatabaseHostTreeElement.js:
        * UserInterface/Views/IndexedDatabaseObjectStoreIndexTreeElement.js:
        * UserInterface/Views/IndexedDatabaseObjectStoreTreeElement.js:
        * UserInterface/Views/IndexedDatabaseTreeElement.js:
        * UserInterface/Views/LegacyConsoleMessageImpl.js:
        * UserInterface/Views/LogTreeElement.js:
        * UserInterface/Views/NavigationSidebarPanel.js:
        * UserInterface/Views/ObjectTreeArrayIndexTreeElement.js:
        * UserInterface/Views/ObjectTreeBaseTreeElement.js:
        * UserInterface/Views/ObjectTreeMapEntryTreeElement.js:
        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        * UserInterface/Views/ObjectTreeSetIndexTreeElement.js:
        * UserInterface/Views/ObjectTreeView.js:
        * UserInterface/Views/ProfileNodeTreeElement.js:
        * UserInterface/Views/PropertiesSection.js:
        * UserInterface/Views/ResourceTreeElement.js:
        * UserInterface/Views/ScriptTreeElement.js:
        * UserInterface/Views/SearchResultTreeElement.js:
        * UserInterface/Views/SourceCodeTimelineTreeElement.js:
        * UserInterface/Views/SourceCodeTreeElement.js:
        * UserInterface/Views/SourceMapResourceTreeElement.js:
        * UserInterface/Views/StorageTreeElement.js:
        * UserInterface/Views/TimelineDataGrid.js:
        * UserInterface/Views/TimelineRecordTreeElement.js:
        * UserInterface/Views/TreeElementStatusButton.js:
        * UserInterface/Views/TreeOutline.js:
        * UserInterface/Views/TreeOutlineDataGridSynchronizer.js:
        * UserInterface/Views/TypePropertiesSection.js:
        Converted to ES6 classes where possible.

2015-03-26  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Convert sidebar classes to ES6
        https://bugs.webkit.org/show_bug.cgi?id=143108

        Reviewed by Joseph Pecoraro.

        * UserInterface/Models/KeyboardShortcut.js:
        (WebInspector.KeyboardShortcut._handleKeyDown): Continue if callback is null.
        (WebInspector.KeyboardShortcut.prototype.set callback): Added.

        * UserInterface/Views/ApplicationCacheDetailsSidebarPanel.js:
        * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
        * UserInterface/Views/DOMDetailsSidebarPanel.js:
        * UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
        * UserInterface/Views/DebuggerSidebarPanel.js:
        * UserInterface/Views/DetailsSidebarPanel.js:
        * UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
        * UserInterface/Views/NavigationSidebarPanel.js:
        * UserInterface/Views/ProbeDetailsSidebarPanel.js:
        * UserInterface/Views/ResourceDetailsSidebarPanel.js:
        * UserInterface/Views/ResourceSidebarPanel.js:
        * UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
        * UserInterface/Views/Sidebar.js:
        * UserInterface/Views/SidebarPanel.js:
        * UserInterface/Views/TimelineSidebarPanel.js:
        Converted to ES6 classes.

2015-03-26  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Convert some View classes to ES6 classes
        https://bugs.webkit.org/show_bug.cgi?id=143107

        Reviewed by Joseph Pecoraro.

        * UserInterface/Protocol/InspectorBackend.js:
        * UserInterface/Protocol/InspectorFrontendAPI.js:
        (InspectorFrontendAPI.contextMenuItemSelected): Updated to the right function path.
        * UserInterface/Views/BoxModelDetailsSectionRow.js:
        * UserInterface/Views/BreakpointActionView.js:
        * UserInterface/Views/CodeMirrorAdditions.js:
        * UserInterface/Views/ColorPicker.js:
        * UserInterface/Views/ColorWheel.js:
        * UserInterface/Views/ContextMenu.js:
        * UserInterface/Views/DOMTreeElementPathComponent.js:
        * UserInterface/Views/DetailsSection.js:
        * UserInterface/Views/DetailsSectionDataGridRow.js:
        * UserInterface/Views/DetailsSectionGroup.js:
        * UserInterface/Views/DetailsSectionPropertiesRow.js:
        * UserInterface/Views/DetailsSectionRow.js:
        * UserInterface/Views/DetailsSectionSimpleRow.js:
        * UserInterface/Views/DetailsSectionTextRow.js:
        * UserInterface/Views/EditingSupport.js:
        * UserInterface/Views/EventListenerSection.js:
        * UserInterface/Views/EventListenerSectionGroup.js:
        * UserInterface/Views/FilterBar.js:
        * UserInterface/Views/FindBanner.js:
        * UserInterface/Views/GeneralTreeElementPathComponent.js:
        * UserInterface/Views/GoToLineDialog.js:
        * UserInterface/Views/GradientSlider.js:
        * UserInterface/Views/HierarchicalPathComponent.js:
        * UserInterface/Views/HierarchicalPathNavigationItem.js:
        * UserInterface/Views/HoverMenu.js:
        * UserInterface/Views/Popover.js:
        * UserInterface/Views/ProbeSetDetailsSection.js:
        * UserInterface/Views/ResourceTimelineDataGridNodePathComponent.js:
        * UserInterface/Views/SearchBar.js:
        * UserInterface/Views/Slider.js:
        Converted to ES6 classes.

2015-03-26  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Convert Base and Protocol files to ES6 classes
        https://bugs.webkit.org/show_bug.cgi?id=143106

        Reviewed by Joseph Pecoraro.

        * UserInterface/Base/EventListener.js:
        * UserInterface/Base/EventListenerSet.js:
        * UserInterface/Protocol/ApplicationCacheObserver.js:
        * UserInterface/Protocol/CSSObserver.js:
        * UserInterface/Protocol/ConsoleObserver.js:
        * UserInterface/Protocol/DOMObserver.js:
        * UserInterface/Protocol/DOMStorageObserver.js:
        * UserInterface/Protocol/DatabaseObserver.js:
        * UserInterface/Protocol/DebuggerObserver.js:
        * UserInterface/Protocol/InspectorBackend.js:
        * UserInterface/Protocol/InspectorObserver.js:
        * UserInterface/Protocol/LayerTreeObserver.js:
        * UserInterface/Protocol/MessageDispatcher.js:
        * UserInterface/Protocol/NetworkObserver.js:
        * UserInterface/Protocol/PageObserver.js:
        * UserInterface/Protocol/RemoteObject.js:
        * UserInterface/Protocol/ReplayObserver.js:
        * UserInterface/Protocol/RuntimeObserver.js:
        * UserInterface/Protocol/TimelineObserver.js:
        Converted to ES6 classes where possible.

2015-03-25  Tobias Reiss  <tobi+webkit@basecode.de>

        Web Inspector: Add ESLint "Disallow Undeclared Variables" rule and enable ES6 env
        https://bugs.webkit.org/show_bug.cgi?id=143062

        Reviewed by Joseph Pecoraro.

        ESLint: Add support for es6 environment and "no-undef" rule which disallows
        use of undeclared variables unless mentioned in a /*global */ block.

        * .eslintrc:

2015-03-25  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: console.table with source code location look poor
        https://bugs.webkit.org/show_bug.cgi?id=142068

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/LegacyConsoleMessageImpl.js:
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsTable):
        Remove dataGridContainer as it is an unnecessary span element.
        * UserInterface/Views/LogContentView.css:
        (.console-messages .data-grid):

2015-03-24  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: IndexedDB / Databases ContentViews should have refresh button
        https://bugs.webkit.org/show_bug.cgi?id=142996

        Reviewed by Timothy Hatcher.

        * Localizations/en.lproj/localizedStrings.js:
        Remove unused strings.

        * UserInterface/Images/ReloadFull.svg: Added.
        This is the same as Reload.svg but adjusted to fill the viewbox edge to edge.
        The only change is to the viewbox.

        * UserInterface/Protocol/RemoteObject.js:
        (WebInspector.RemoteObject.prototype.release):
        Some clients would call release not knowing if this was an object or not.
        Act gracefully in the case that this was not an object that needs a
        remote release.

        * UserInterface/Views/DatabaseTableContentView.js:
        (WebInspector.DatabaseTableContentView):
        (WebInspector.DatabaseTableContentView.prototype.get navigationItems):
        (WebInspector.DatabaseTableContentView.prototype._queryError):
        (WebInspector.DatabaseTableContentView.prototype._refreshButtonClicked):
        * UserInterface/Views/IndexedDatabaseObjectStoreContentView.js:
        (WebInspector.IndexedDatabaseObjectStoreContentView):
        (WebInspector.IndexedDatabaseObjectStoreContentView.prototype.get navigationItems):
        (WebInspector.IndexedDatabaseObjectStoreContentView.prototype._fetchMoreData):
        (WebInspector.IndexedDatabaseObjectStoreContentView.prototype._refreshButtonClicked):
        Give the storage content views a refresh button to reload the content.

2015-03-24  Joseph Pecoraro  <pecoraro@apple.com>

        Setter should have a single formal parameter, Getter no parameters
        https://bugs.webkit.org/show_bug.cgi?id=142903

        Reviewed by Geoffrey Garen.

        * UserInterface/Views/GradientSlider.js:
        (WebInspector.GradientSliderKnob.prototype.get wellColor):
        Fix a getter that was incorrectly taking a parameter.

2015-03-24  Tobias Reiss  <tobi+webkit@basecode.de>

        Web Inspector: REGRESSION (r179286): ReferenceError: Can't find variable: selector
        https://bugs.webkit.org/show_bug.cgi?id=143022

        Reviewed by Timothy Hatcher.

        Fix a regression where a missing variable statement causes a ReferenceError.

        * UserInterface/Models/DOMNodeStyles.js:

2015-03-24  Tobias Reiss  <tobi+webkit@basecode.de>

        Web Inspector: Adopt ES6 Class Syntax for CSSStyleDeclarationTextEditor
        https://bugs.webkit.org/show_bug.cgi?id=143019

        Reviewed by Timothy Hatcher.

        - Convert CSSStyleDeclarationTextEditor to use class syntax
        - Convert constructor functions to constructor methods
        - Convert "constructor.method" to class static methods where possible
        - Convert all methods to method syntax, eliminate commas between methods
        - Convert all superclass calls in classes to use "super"
        - Removed FIXME from WebInspector.Object subclasses, added calls to super.
        - Fixed strict mode issues now that classes enforce strict mode (see below).

        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        Many function declarations modified.

2015-03-24  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Workaround issue causing uncaught exception in Inspector
        https://bugs.webkit.org/show_bug.cgi?id=143015

        Reviewed by Timothy Hatcher.

        Workaround <https://webkit.org/b/143012> and avoid early returning in constructors.

        * UserInterface/Controllers/ReplayManager.js:
        (WebInspector.ReplayManager.class.ReplayManager):

2015-03-06  Brian J. Burg  <burg@cs.washington.edu>

        Web Inspector: unify resizer implementations used by DataGrid and Sidebar
        https://bugs.webkit.org/show_bug.cgi?id=142407

        Reviewed by Timothy Hatcher.

        Both of these implementations do the same thing slightly differently. Unify the code
        and use the "glass pane" technique to preserve cursor while dragging over links or text.

        This patch implements vertical and horizontal rule orientations. Further refactorings
        to use this class may need to add "Indeterminate" orientation to support moving the inspector
        window by its fake toolbar element.

        * UserInterface/Main.html:
        * UserInterface/Views/DataGrid.css:
        (.data-grid .resizer):
        (.data-grid-resizer): Deleted.
        * UserInterface/Views/DataGrid.js: Store Resizer instances rather than resizer elements.
        Use symbols to secretly store neighbor column ids on the resizer objects. Stop using
        WebInspector.elementDragStart, as I would like to deprecate it in favor of Resizer instances.

        (WebInspector.DataGrid):
        (WebInspector.DataGrid.prototype._positionResizerElements):
        (WebInspector.DataGrid.prototype.resizerDragStarted):
        (WebInspector.DataGrid.prototype.resizerDragging):
        (WebInspector.DataGrid.prototype.resizerDragEnded):
        (WebInspector.DataGrid.prototype._startResizerDragging): Deleted.
        (WebInspector.DataGrid.prototype._resizerDragging): Deleted.
        (WebInspector.DataGrid.prototype._endResizerDragging): Deleted.
        * UserInterface/Views/Resizer.css:
        (.resizer):
        (.resizer.vertical-rule):
        (.resizer.horizontal-rule):
        (.glass-pane-for-drag):
        * UserInterface/Views/Resizer.js: Added.
        (WebInspector.Resizer):
        (WebInspector.Resizer.prototype.get element):
        (WebInspector.Resizer.prototype.get orientation):
        (WebInspector.Resizer.prototype.get initialPosition):
        (WebInspector.Resizer.prototype._currentPosition):
        (WebInspector.Resizer.prototype._resizerMouseDown):
        (WebInspector.Resizer.prototype._resizerMouseMoved):
        (WebInspector.Resizer.prototype._resizerMouseUp):
        * UserInterface/Views/Sidebar.css:
        (.sidebar > .resizer): Deleted.
        * UserInterface/Views/Sidebar.js:
        (WebInspector.Sidebar):
        (WebInspector.Sidebar.prototype.resizerDragStarted):
        (WebInspector.Sidebar.prototype.resizerDragging):
        (WebInspector.Sidebar.prototype.resizerDragEnded):
        (WebInspector.Sidebar.prototype._navigationItemSelected):
        (WebInspector.Sidebar.prototype._resizerMouseDown): Deleted.
        (WebInspector.Sidebar.prototype._resizerMouseMoved): Deleted.
        (WebInspector.Sidebar.prototype._resizerMouseUp): Deleted.

2015-03-17  Jono Wells  <jonowells@apple.com>

        Web Inspector: Debugger sidebar should have a filter button for breakpoints
        https://bugs.webkit.org/show_bug.cgi?id=142779

        Reviewed by Timothy Hatcher.

        Add the infrastructure for activation filter buttons that can appear next to the text filters at the bottom
        of any navigation sidebar panel. These filter bar buttons have defined within them a function that returns
        a boolean value that indicates whether the input, typically a tree element, should be filtered or not.

        This infrastructure is then used to create a filter for the debugger sidebar that, when applied, only shows
        scripts that have breakpoints set on them.

        * Localizations/en.lproj/localizedStrings.js: Updated.
        * UserInterface/Main.html: Files added.

        * UserInterface/Views/DebuggerSidebarPanel.js:
        (WebInspector.DebuggerSidebarPanel.showResourcesWithChildrenOnlyFilterFunction):
        (WebInspector.DebuggerSidebarPanel):
        (WebInspector.DebuggerSidebarPanel.prototype._addBreakpoint): Drive-by fix.
        Add filter button to filter bar.

        * UserInterface/Views/FilterBar.css:
        (.filter-bar > .navigation-bar > .item):
        Style filter button.

        * UserInterface/Views/FilterBar.js:
        (WebInspector.FilterBar):
        (WebInspector.FilterBar.prototype.get filters):
        (WebInspector.FilterBar.prototype.set filters):
        (WebInspector.FilterBar.prototype.hasActiveFilters):
        (WebInspector.FilterBar.prototype._handleFilterChanged):
        (WebInspector.FilterBar.prototype._inputFieldChanged): Deleted.
        Create space for filter bar buttons and set up event handlers to deal with them.

        * UserInterface/Views/FilterBarButton.js: Copied from Source/WebInspectorUI/UserInterface/Views/FilterBar.css.
        (WebInspector.FilterBarButton):
        (WebInspector.FilterBarButton.prototype.get filterFunction):
        (WebInspector.FilterBarButton.prototype.toggle):
        Create class for a filter bar button that stores a filter function.

        * UserInterface/Views/NavigationSidebarPanel.js:
        (WebInspector.NavigationSidebarPanel):
        (WebInspector.NavigationSidebarPanel.prototype.matchTreeElementAgainstFilterFunctions):
        (WebInspector.NavigationSidebarPanel.prototype.applyFiltersToTreeElement):
        (WebInspector.NavigationSidebarPanel.prototype._filterDidChange):
        (WebInspector.NavigationSidebarPanel.prototype._updateFilter):
        (WebInspector.NavigationSidebarPanel.prototype._textFilterDidChange): Deleted.
        Add functionality to support button filters and process their corresponding functions correctly when filtering.

2015-03-22  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Adopt ES6 Class Syntax for all Controller Objects
        https://bugs.webkit.org/show_bug.cgi?id=142890

        Reviewed by Joseph Pecoraro.

        - Convert all UserInterface/Controllers objects to classes
        - Convert constructor functions to constructor methods
        - Convert "constructor.method" to class static methods where possible
        - Convert all methods to method syntax, eliminate commas between methods
        - Convert all superclass calls in classes to use "super"
        - Removed FIXME from WebInspector.Object subclasses, added calls to super.
        - Fixed strict mode issues now that classes enforce strict mode (see below).

        * Tools/PrettyPrinting/Formatter.js:
        * Tools/PrettyPrinting/FormatterContentBuilder.js:
        Updated to match corresponding files in UserInterface/Controllers.

        * UserInterface/Controllers/*.js:
        Many files modified mostly mechanically (regex find-replace).

        * UserInterface/Controllers/CodeMirrorCompletionController.js:
        * UserInterface/Controllers/FormatterContentBuilder.js:
        Replaced const usage with var. Use of const is prohibited in strict mode, which is implicit within a class.

        * UserInterface/Controllers/CodeMirrorTokenTrackingController.js:
        * UserInterface/Controllers/DOMTreeManager.js:
        Moved function declarations out of if statements. Strict mode does not allow function declarations in a lexically nested statement.

2015-03-20  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Fast typing lags in the Styles sidebar or Console
        https://bugs.webkit.org/show_bug.cgi?id=142919

        Asynchronous autocomplete causes a race condition in CodeMirror,
        which results in skipped characters in while typing. Completing immediately
        fixes the issues.

        Reviewed by Timothy Hatcher.

        * UserInterface/Controllers/CodeMirrorCompletionController.js:
        (WebInspector.CodeMirrorCompletionController.prototype.hideCompletions):
        (WebInspector.CodeMirrorCompletionController.prototype._completeAtCurrentPosition):
        (WebInspector.CodeMirrorCompletionController.prototype.):

2015-03-19  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Adopt ES6 Class Syntax for all Model Objects
        https://bugs.webkit.org/show_bug.cgi?id=142858

        Reviewed by Timothy Hatcher.

          - Convert WebInspector.Object to a class
          - Convert all UserInterface/Models objects to classes
          - Convert constructor functions to constructor methods
          - Convert "constructor.method" to class static methods where possible
          - Convert all methods to method syntax, eliminate commas between methods
          - Convert all superclass calls in classes to use "super"
          - Workaround <https://webkit.org/b/142862> and add empty constructors
          - Added "deprecated" prefix to addConstructorFunctions, since it is not needed with classes
          - Added many missing calls to super in constructors
          - Added FIXME to WebInspector.Object subclasses not yet moved to classes.
          - Cleaned up SourceMap global properties, moved to constructor instead of prototype
          - Cleaned up Timeline factory constructor to static "create" factory method
          - Fixed any style issues noticed in the mass edit
          - Fixed strict mode issues now that classes enforce strict mode
              - RunLoopTimelineRecord.js was missing a `var` for a local variable
              - "const" is not allowed, converted to "var"
              - "arguments.callee" is not allowed in strict mode

        * UserInterface/**/*.js:
        Many files modified mostly mechanically.

2015-03-19  Jono Wells  <jonowells@apple.com>

        Web Inspector: Debugger sidebar header should say "Scripts" instead of "Breakpoints", appear only on pause
        https://bugs.webkit.org/show_bug.cgi?id=142847

        Reviewed by Timothy Hatcher.

        Add a `paused` class on the debugger sidebar panel. Use that class to adjust the sidebar styles so that, when
        the debugger is not paused: there is no header for the scripts section, there is no border beneath the scripts
        section, and the scripts section cannot be collapsed (which could be done while the debugger is paused). The
        header has changed to say "Scripts" instead of "Breakpoints" when it is showing.

        * UserInterface/Views/DebuggerSidebarPanel.css:
        (.sidebar > .panel.navigation.debugger .details-section.scripts):
        (.sidebar > .panel.navigation.debugger .details-section.scripts .header):
        (.sidebar > .panel.navigation.debugger .details-section.scripts.collapsed > .content):
        (.sidebar > .panel.navigation.debugger.paused .details-section.scripts):
        (.sidebar > .panel.navigation.debugger.paused .details-section.scripts .header):
        (.sidebar > .panel.navigation.debugger.paused .details-section.scripts.collapsed > .content):
        Adjust styles to hide header and border.

        * UserInterface/Views/DebuggerSidebarPanel.js:
        (WebInspector.DebuggerSidebarPanel):
        (WebInspector.DebuggerSidebarPanel.prototype._debuggerDidPause):
        (WebInspector.DebuggerSidebarPanel.prototype._debuggerDidResume):
        Add a `paused` class to the debugger sidebar when it is paused.

2015-03-19  Jono Wells  <jonowells@apple.com>

        Web Inspector: FilterBar for debugger sidebar hides breakpoints for displayed resources
        https://bugs.webkit.org/show_bug.cgi?id=142777

        Reviewed by Brian Burg.

        Typing into the text input on the filter bar for the debugger sidebar no longer incorrectly hides the
        breakpoints for scripts that match the text input.

        * UserInterface/Views/BreakpointTreeElement.js:
        (WebInspector.BreakpointTreeElement.prototype.get filterableData): Added.

2015-03-18  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Replace last use of ObjectPropertiesSection with ObjectTreeView
        https://bugs.webkit.org/show_bug.cgi?id=142834

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
        (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties):
        Use properties only ObjectTreeView instead of ObjectPropertiesSection.
        This doesn't fix the functionality issues, but fixes the appearance.

        * UserInterface/Views/DetailsSection.css:
        (.details-section > .content > .group:first-child > .row.simple:first-child > *): Deleted.
        (body.mac-platform.legacy .details-section > .content > .group:first-child > .row.simple:first-child > *): Deleted.
        (.details-section > .content > .group > .row.properties:not(.empty)): Deleted.
        (body.mac-platform.legacy .details-section > .content > .group > .row.properties:not(.empty)): Deleted.
        Re-add back the small padding at the top of sections. This actually
        broke padding in a few sections (Event Listeners) at the expense
        of eliminating a few pixels of whitespace at the top of other sections.
        We should focus on addressing the extra whitespace separately.

        * UserInterface/Main.html:
        * UserInterface/Views/ObjectPropertiesSection.js: Removed.
        * UserInterface/Views/TypePropertiesSection.js:
        * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
        * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:
        Remove new unused class.

2015-03-18  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Debugger Popovers and Probes should use FormattedValue/ObjectTreeView instead of Custom/ObjectPropertiesSection
        https://bugs.webkit.org/show_bug.cgi?id=142830

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ProbeSetDataGrid.css:
        (.details-section.probe-set .data-grid .object-tree > :matches(.title, .object-preview)::before):
        Another line-height fix for object tree disclosure triangles.

        * UserInterface/Views/ProbeSetDataGridNode.js:
        (WebInspector.ProbeSetDataGridNode.prototype.createCellContent):
        Create an ObjectTree / FormattedValue for the RemoteObject.

        * UserInterface/Views/SourceCodeTextEditor.css:
        (.popover .debugger-popover-content > .title):
        (.popover .debugger-popover-content > .body):
        (.popover .debugger-popover-content.function > .body):
        Be more specific and don't accidentally style ".title" within the body.

        * UserInterface/Views/SourceCodeTextEditor.js:
        (WebInspector.SourceCodeTextEditor.prototype._showPopoverForObject):
        Show a properties only ObjectTree instead of an ObjectPropertiesSection.

        (WebInspector.SourceCodeTextEditor.prototype._showPopoverForString): Deleted.
        (WebInspector.SourceCodeTextEditor.prototype._showPopoverForRegExp): Deleted.
        (WebInspector.SourceCodeTextEditor.prototype._showPopoverForNumber): Deleted.
        (WebInspector.SourceCodeTextEditor.prototype._showPopoverForBoolean): Deleted.
        (WebInspector.SourceCodeTextEditor.prototype._showPopoverForNull): Deleted.
        (WebInspector.SourceCodeTextEditor.prototype._showPopoverForUndefined): Deleted.
        (WebInspector.SourceCodeTextEditor.prototype._showPopoverWithFormattedValue):
        Reduce most of these to a single popover for formatted values.

2015-03-18  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Scopes sidebar should use new ObjectTreeView and not ObjectPropertiesSection
        https://bugs.webkit.org/show_bug.cgi?id=142808

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/PropertyPath.js:
        (WebInspector.PropertyPath):
        (WebInspector.PropertyPath.emptyPropertyPathForScope):
        Allow a special property empty path for "Scopes". This way for a
        "<scopeObject>.property" we can show just the tooltip "property".

        * UserInterface/Views/ObjectTreeView.css:
        (.object-tree.properties-only > :matches(.title, .object-preview)):
        (.object-tree.properties-only .object-tree-outline):
        (.object-tree.properties-only .object-tree-property .property-name):
        Tweak styles for only properties view, which won't have a top-level
        preview and doesn't fade out enumerable properties.

        * UserInterface/Views/ObjectTreeView.js:
        (WebInspector.ObjectTreeView.prototype.get treeOutline):
        Access the TreeOutline.

        (WebInspector.ObjectTreeView.prototype.showOnlyProperties):
        Properties only view modifies the display slightly.

        (WebInspector.ObjectTreeView.prototype.appendExtraPropertyDescriptor):
        (WebInspector.ObjectTreeView.prototype._updateProperties):
        Allow the client to add its own property descriptors to display
        as a property in this ObjectTreeView.

        * UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
        (WebInspector.ScopeChainDetailsSidebarPanel.prototype.refresh):
        Switch to using an ObjectTreeView.

        (WebInspector.ScopeChainDetailsSidebarPanel.prototype._propertyPathIdentifierForTreeElement):
        (WebInspector.ScopeChainDetailsSidebarPanel.prototype._objectTreeAddHandler):
        (WebInspector.ScopeChainDetailsSidebarPanel.prototype._objectTreeExpandHandler):
        (WebInspector.ScopeChainDetailsSidebarPanel.prototype._objectTreeCollapseHandler):
        Keep track of what properties were expanded so we can auto-expand
        them again when the sidebar refreshes.

        * UserInterface/Main.html:
        * UserInterface/Views/ScopeVariableTreeElement.js: Removed.
        * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
        * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:
        Remove the now unused ScopeVariableTreeElement.js.

2015-03-17  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Debugger Sidebar Icons Misaligned
        https://bugs.webkit.org/show_bug.cgi?id=142654

        Reviewed by Timothy Hatcher.

        The debugger sidebar content was accidentally 1px too small. The
        TreeOutline being inside of a .detail-section was getting a smaller
        font-size. We should just have the normal font-size for the
        debugger navigation sidebar. This matches the Resources sidebar
        in the TreeOutline, and icons line up better.

        * UserInterface/Views/DebuggerSidebarPanel.css:
        (.sidebar > .panel.navigation.debugger .details-section):

2015-03-17  Tobias Reiss  <tobi+webkit@basecode.de>

        Web Inspector: Removal of multiline completion hint broken in Details sidebar
        https://bugs.webkit.org/show_bug.cgi?id=142796

        Reviewed by Joseph Pecoraro.

        Prioritize CodeMirrorCompletionController over CSSStyleDeclarationTextEditor.
        Both classes control the current CodeMirror instance of the Details Sidebar.
        This change prevents possible race conditions during complete or delete-complete phases,
        especially during operations on multiple styles in one line.

        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor):

2015-03-17  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Show rendering frames (and FPS) in Layout and Rendering timeline
        https://bugs.webkit.org/show_bug.cgi?id=142029

        Reviewed by Timothy Hatcher.

        Add UI for showing runloop records and their child records as a frame histogram,
        with the recording time on the x-axis and the frame duration on the y-axis. Each frame
        is comprised of colored regions representing the time spent in various activities (script,
        layout, etc).

        Eventually the Frames timeline will replace the Layout & Rendering timeline. Until the views
        for the new timeline are finalized the Layout & Rendering timeline will remain in place.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Main.html:
        New string and files.

        * UserInterface/Controllers/TimelineManager.js:
        (WebInspector.TimelineManager.prototype.eventRecorded):
        (WebInspector.TimelineManager.prototype.pageDidLoad):
        (WebInspector.TimelineManager.prototype._processNestedRecords):
        (WebInspector.TimelineManager.prototype._processRecord):
        (WebInspector.TimelineManager.prototype._processEvent):
        (WebInspector.TimelineManager.prototype._loadNewRecording):
        (WebInspector.TimelineManager.prototype.eventRecorded.processRecord): Deleted.
        Added support for new runloop record type and nested record handling.

        * UserInterface/Images/Frames.png: Added.
        * UserInterface/Images/Frames@2x.png: Added.
        * UserInterface/Images/FramesLarge.png: Added.
        * UserInterface/Images/FramesLarge@2x.png: Added.
        New images for runloop timeline overview graph and runloop tree records.

        * UserInterface/Models/RunLoopTimelineRecord.js: Added.
        (WebInspector.RunLoopTimelineRecord):
        (WebInspector.RunLoopTimelineRecord.prototype.get children):
        (WebInspector.RunLoopTimelineRecord.prototype.get durationRemainder):
        (WebInspector.RunLoopTimelineRecord.prototype.durationForRecords.get var):
        Extends TimelineRecord to add child records and subframe duration details.

        * UserInterface/Models/Timeline.js:
        (WebInspector.Timeline.prototype.get displayName):
        (WebInspector.Timeline.prototype.get iconClassName):
        New UI strings and icons.

        * UserInterface/Models/TimelineRecord.js:
        * UserInterface/Views/ContentView.js:
        (WebInspector.ContentView):
        * UserInterface/Views/LayoutTimelineView.js:
        (WebInspector.LayoutTimelineView.prototype._layoutTimelineRecordAdded):
        * UserInterface/Views/TimelineRecordTreeElement.js:
        (WebInspector.TimelineRecordTreeElement):
        Added support for new runloop record type.

        * UserInterface/Views/RunLoopTimelineOverviewGraph.css: Added.
        (.timeline-overview-graph.runloop > .divider):
        (.timeline-overview-graph.runloop > .divider > span):
        New styles for runloop timeline graph.

        * UserInterface/Views/RunLoopTimelineOverviewGraph.js: Added.
        (WebInspector.RunLoopTimelineOverviewGraph):
        (WebInspector.RunLoopTimelineOverviewGraph.prototype.updateLayout.createFrame):
        (WebInspector.RunLoopTimelineOverviewGraph.prototype.get graphHeightSeconds.this):
        (WebInspector.RunLoopTimelineOverviewGraph.prototype.get graphHeightSeconds):
        (WebInspector.RunLoopTimelineOverviewGraph.prototype._updateDividers.createDividerAtPosition.get if):
        New overview graph for displaying TimelineRecordFrames and horizontal frame budget dividers.

        * UserInterface/Views/TimelineIcons.css:
        (.runloop-icon .icon):
        (.runloop-icon.large .icon):
        (.runloop-record .icon):
        * UserInterface/Views/TimelineSidebarPanel.js:
        New runloop icon styles.

        * UserInterface/Views/TimelineOverviewGraph.js:
        (WebInspector.TimelineOverviewGraph):
        Updated factory to support creation of the new overview graph.

        * UserInterface/Views/TimelineRecordFrame.css: Added.
        (.timeline-record-frame):
        (.timeline-record-frame > .frame):
        (.timeline-record-frame > .dropped):
        (.timeline-record-frame > .frame > .duration):
        (.timeline-record-frame > .frame > .duration:first-child):
        (.timeline-record-frame > .frame > .duration:last-child):
        (.timeline-record-frame > .frame > .duration.timeline-record-type-network):
        (.timeline-record-frame > .frame > .duration.timeline-record-type-layout):
        (.timeline-record-frame > .frame > .duration.timeline-record-type-script):
        New styles for frame bars in the runloop timeline graph.

        * UserInterface/Views/TimelineRecordFrame.js: Added.
        (WebInspector.TimelineRecordFrame):
        (WebInspector.TimelineRecordFrame.createCombinedFrames):
        (WebInspector.TimelineRecordFrame.prototype.get element):
        (WebInspector.TimelineRecordFrame.prototype.get duration):
        (WebInspector.TimelineRecordFrame.prototype.get records):
        (WebInspector.TimelineRecordFrame.prototype.set records):
        (WebInspector.TimelineRecordFrame.prototype._updateChildElements.createDurationElement):
        New view representing a single frame within the runloop overview graph.

        * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
        * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:
        New files.

2015-03-16  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Add more DOM Native Function parameter strings
        https://bugs.webkit.org/show_bug.cgi?id=142760

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/NativeFunctionParameters.js:
        Add native parameter strings generated and hand modified
        for DOM built-in classes.

        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        For native constructors "FooConstructor" the description is just
        the name of the Constructor not the function string.

2015-03-16  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Object Previews in Indexed DB tables
        https://bugs.webkit.org/show_bug.cgi?id=140813

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/FormattedValue.js:
        (WebInspector.FormattedValue.createObjectTreeOrFormattedValueForRemoteObject):
        Add a boolean param for ObjectTree construction if it should force allowing object expansion.

        * UserInterface/Views/IndexedDatabaseEntryDataGridNode.js:
        (WebInspector.IndexedDatabaseEntryDataGridNode.prototype.createCellContent):
        Switch to creating an ObjectTree or FormattedValue.

        * UserInterface/Views/IndexedDatabaseObjectStoreContentView.css:
        (.content-view.indexed-database-object-store > .data-grid tr.selected):
        Change row selection color to match the console's lighter blue instead of dark blue.

        (.content-view.indexed-database-object-store > .data-grid .object-tree > :matches(.title, .object-preview)::before):
        Adjust object tree disclosure triangle placement for larger line heights.

        (.content-view.indexed-database-object-store > .data-grid td .section .header): Deleted.
        (.content-view.indexed-database-object-store > .data-grid td .section .header::before): Deleted.
        (.content-view.indexed-database-object-store > .data-grid td .section .header .title): Deleted.
        (.content-view.indexed-database-object-store > .data-grid:focus tr.selected td .section .header::before): Deleted.
        (.content-view.indexed-database-object-store > .data-grid:focus tr.selected td .section.expanded .header::before): Deleted.
        (.content-view.indexed-database-object-store > .data-grid:focus tr.selected td .properties-tree li.parent::before): Deleted.
        (.content-view.indexed-database-object-store > .data-grid:focus tr.selected td .properties-tree li.parent.expanded::before): Deleted.
        (.content-view.indexed-database-object-store > .data-grid:focus tr.selected td .properties-tree li *): Deleted.
        Remove now unnecessary styles.

        * UserInterface/Views/ObjectTreeArrayIndexTreeElement.css:
        (.object-tree .object-tree-array-index > .icon):
        Increase the specificity to override ".data-grid td .icon" styles.

2015-03-16  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Better Console Previews for Arrays / Small Objects
        https://bugs.webkit.org/show_bug.cgi?id=142322

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ObjectPreviewView.js:
        If there is a sub-preview, show the sub-preview.

        * UserInterface/Views/ObjectTreeView.js:
        (WebInspector.ObjectTreeView):
        For an ObjectTree that is not a root (e.g. one inside of
        an array/set/map property tree element) allow it to be
        expanded even if the preview is lossless.

2015-03-16  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Rename ConsoleMessage and ConsoleMessageImpl to LegacyConsoleMessage and LegacyConsoleMessageImpl respectively
        https://bugs.webkit.org/show_bug.cgi?id=142712

        As a first step of ConsoleMessage refactoring (https://bugs.webkit.org/show_bug.cgi?id=142599):

          - Rename WebInspector.ConsoleMessage class to WebInspector.LegacyConsoleMessage
          - Rename WebInspector.ConsoleMessageImpl class to WebInspector.LegacyConsoleMessageImpl
          - Rename ConsoleMessage.js file to LegacyConsoleMessage.js
          - Rename ConsoleMessageImpl file to LegacyConsoleMessageImpl.js

        Reviewed by Joseph Pecoraro.

        * UserInterface/Controllers/JavaScriptLogViewController.js:
        (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessage):
        * UserInterface/Controllers/LogManager.js:
        (WebInspector.LogManager.prototype.messageWasAdded):
        * UserInterface/Main.html:
        * UserInterface/Models/DefaultDashboard.js:
        (WebInspector.DefaultDashboard.prototype._incrementConsoleMessageType):
        * UserInterface/Views/ConsoleCommandResult.js:
        (WebInspector.ConsoleCommandResult):
        (WebInspector.ConsoleCommandResult.prototype.toMessageElement):
        * UserInterface/Views/ConsoleGroup.js:
        (WebInspector.ConsoleGroup.prototype.render):
        * UserInterface/Views/LegacyConsoleMessage.js: Renamed from Source/WebInspectorUI/UserInterface/Views/ConsoleMessage.js.
        (WebInspector.LegacyConsoleMessage):
        (WebInspector.LegacyConsoleMessage.prototype.isErrorOrWarning):
        (WebInspector.LegacyConsoleMessage.prototype.updateRepeatCount):
        (WebInspector.LegacyConsoleMessage.prototype.clone):
        (WebInspector.LegacyConsoleMessage.create):
        * UserInterface/Views/LegacyConsoleMessageImpl.js: Renamed from Source/WebInspectorUI/UserInterface/Views/ConsoleMessageImpl.js.
        (WebInspector.LegacyConsoleMessageImpl):
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatMessage):
        (WebInspector.LegacyConsoleMessageImpl.prototype._shouldDumpStackTrace):
        (WebInspector.LegacyConsoleMessageImpl.prototype._shouldHideURL):
        (WebInspector.LegacyConsoleMessageImpl.prototype._firstNonNativeCallFrame):
        (WebInspector.LegacyConsoleMessageImpl.prototype.get message):
        (WebInspector.LegacyConsoleMessageImpl.prototype.get formattedMessage):
        (WebInspector.LegacyConsoleMessageImpl.prototype._linkifyLocation):
        (WebInspector.LegacyConsoleMessageImpl.prototype._linkifyCallFrame):
        (WebInspector.LegacyConsoleMessageImpl.prototype.isErrorOrWarning):
        (WebInspector.LegacyConsoleMessageImpl.prototype._format):
        (WebInspector.LegacyConsoleMessageImpl.prototype._isExpandable):
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameter):
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsValue):
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsObject):
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsString):
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsNode):
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsArray):
        (WebInspector.LegacyConsoleMessageImpl.prototype._rootPropertyPathForObject):
        (WebInspector.LegacyConsoleMessageImpl.prototype._userProvidedColumnNames):
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsTable):
        (WebInspector.LegacyConsoleMessageImpl.prototype.):
        (WebInspector.LegacyConsoleMessageImpl.prototype.stringFormatter):
        (WebInspector.LegacyConsoleMessageImpl.prototype.floatFormatter):
        (WebInspector.LegacyConsoleMessageImpl.prototype.integerFormatter):
        (WebInspector.LegacyConsoleMessageImpl.prototype.styleFormatter):
        (WebInspector.LegacyConsoleMessageImpl.prototype.isWhitelistedProperty):
        (WebInspector.LegacyConsoleMessageImpl.prototype.append):
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatWithSubstitutionString):
        (WebInspector.LegacyConsoleMessageImpl.prototype.decorateMessageElement):
        (WebInspector.LegacyConsoleMessageImpl.prototype.toMessageElement):
        (WebInspector.LegacyConsoleMessageImpl.prototype._populateStackTraceTreeElement):
        (WebInspector.LegacyConsoleMessageImpl.prototype.updateRepeatCount):
        (WebInspector.LegacyConsoleMessageImpl.prototype.toString):
        (WebInspector.LegacyConsoleMessageImpl.prototype.get text):
        (WebInspector.LegacyConsoleMessageImpl.prototype.isEqual):
        (WebInspector.LegacyConsoleMessageImpl.prototype.get stackTrace):
        (WebInspector.LegacyConsoleMessageImpl.prototype.clone):
        (WebInspector.LegacyConsoleMessageImpl.prototype.get levelString):
        (WebInspector.LegacyConsoleMessageImpl.prototype.get clipboardPrefixString):
        (WebInspector.LegacyConsoleMessageImpl.prototype.toClipboardString):
        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype.didAppendConsoleMessage):
        (WebInspector.LogContentView.prototype._messageAdded):
        (WebInspector.LogContentView.prototype._filterMessages):
        (WebInspector.LogContentView.prototype._reappendProvisionalMessages):
        * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
        * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:

2015-03-16  Commit Queue  <commit-queue@webkit.org>

        Unreviewed, rolling out r181517.
        https://bugs.webkit.org/show_bug.cgi?id=142718

        This patch broke GTK+ build (Requested by NVI on #webkit).

        Reverted changeset:

        "Web Inspector: Rename ConsoleMessage and ConsoleMessageImpl
        to LegacyConsoleMessage and LegacyConsoleMessageImpl
        respectively"
        https://bugs.webkit.org/show_bug.cgi?id=142712
        http://trac.webkit.org/changeset/181517

2015-03-15  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Console Scrolls Unexpectedly when Clicking inside un-selected Expanding Object
        https://bugs.webkit.org/show_bug.cgi?id=142655

        Don't scroll when selection change is triggered by clicking, e.g.
        only scroll on arrow up and down key press events.

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype._mousemove):
        (WebInspector.LogContentView.prototype._updateMessagesSelection):
        (WebInspector.LogContentView.prototype._upArrowWasPressed):
        (WebInspector.LogContentView.prototype._downArrowWasPressed):

2015-03-15  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Rename ConsoleMessage and ConsoleMessageImpl to LegacyConsoleMessage and LegacyConsoleMessageImpl respectively
        https://bugs.webkit.org/show_bug.cgi?id=142712

        As a first step of ConsoleMessage refactoring (https://bugs.webkit.org/show_bug.cgi?id=142599):

          - Rename WebInspector.ConsoleMessage class to WebInspector.LegacyConsoleMessage
          - Rename WebInspector.ConsoleMessageImpl class to WebInspector.LegacyConsoleMessageImpl
          - Rename ConsoleMessage.js file to LegacyConsoleMessage.js
          - Rename ConsoleMessageImpl file to LegacyConsoleMessageImpl.js

        Reviewed by Joseph Pecoraro.

        * UserInterface/Controllers/JavaScriptLogViewController.js:
        (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessage):
        * UserInterface/Controllers/LogManager.js:
        (WebInspector.LogManager.prototype.messageWasAdded):
        * UserInterface/Main.html:
        * UserInterface/Models/DefaultDashboard.js:
        (WebInspector.DefaultDashboard.prototype._incrementConsoleMessageType):
        * UserInterface/Views/ConsoleCommandResult.js:
        (WebInspector.ConsoleCommandResult):
        (WebInspector.ConsoleCommandResult.prototype.toMessageElement):
        * UserInterface/Views/ConsoleGroup.js:
        (WebInspector.ConsoleGroup.prototype.render):
        * UserInterface/Views/LegacyConsoleMessage.js: Renamed from Source/WebInspectorUI/UserInterface/Views/ConsoleMessage.js.
        (WebInspector.LegacyConsoleMessage):
        (WebInspector.LegacyConsoleMessage.prototype.isErrorOrWarning):
        (WebInspector.LegacyConsoleMessage.prototype.updateRepeatCount):
        (WebInspector.LegacyConsoleMessage.prototype.clone):
        (WebInspector.LegacyConsoleMessage.create):
        * UserInterface/Views/LegacyConsoleMessageImpl.js: Renamed from Source/WebInspectorUI/UserInterface/Views/ConsoleMessageImpl.js.
        (WebInspector.LegacyConsoleMessageImpl):
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatMessage):
        (WebInspector.LegacyConsoleMessageImpl.prototype._shouldDumpStackTrace):
        (WebInspector.LegacyConsoleMessageImpl.prototype._shouldHideURL):
        (WebInspector.LegacyConsoleMessageImpl.prototype._firstNonNativeCallFrame):
        (WebInspector.LegacyConsoleMessageImpl.prototype.get message):
        (WebInspector.LegacyConsoleMessageImpl.prototype.get formattedMessage):
        (WebInspector.LegacyConsoleMessageImpl.prototype._linkifyLocation):
        (WebInspector.LegacyConsoleMessageImpl.prototype._linkifyCallFrame):
        (WebInspector.LegacyConsoleMessageImpl.prototype.isErrorOrWarning):
        (WebInspector.LegacyConsoleMessageImpl.prototype._format):
        (WebInspector.LegacyConsoleMessageImpl.prototype._isExpandable):
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameter):
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsValue):
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsObject):
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsString):
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsNode):
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsArray):
        (WebInspector.LegacyConsoleMessageImpl.prototype._rootPropertyPathForObject):
        (WebInspector.LegacyConsoleMessageImpl.prototype._userProvidedColumnNames):
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsTable):
        (WebInspector.LegacyConsoleMessageImpl.prototype.):
        (WebInspector.LegacyConsoleMessageImpl.prototype.stringFormatter):
        (WebInspector.LegacyConsoleMessageImpl.prototype.floatFormatter):
        (WebInspector.LegacyConsoleMessageImpl.prototype.integerFormatter):
        (WebInspector.LegacyConsoleMessageImpl.prototype.styleFormatter):
        (WebInspector.LegacyConsoleMessageImpl.prototype.isWhitelistedProperty):
        (WebInspector.LegacyConsoleMessageImpl.prototype.append):
        (WebInspector.LegacyConsoleMessageImpl.prototype._formatWithSubstitutionString):
        (WebInspector.LegacyConsoleMessageImpl.prototype.decorateMessageElement):
        (WebInspector.LegacyConsoleMessageImpl.prototype.toMessageElement):
        (WebInspector.LegacyConsoleMessageImpl.prototype._populateStackTraceTreeElement):
        (WebInspector.LegacyConsoleMessageImpl.prototype.updateRepeatCount):
        (WebInspector.LegacyConsoleMessageImpl.prototype.toString):
        (WebInspector.LegacyConsoleMessageImpl.prototype.get text):
        (WebInspector.LegacyConsoleMessageImpl.prototype.isEqual):
        (WebInspector.LegacyConsoleMessageImpl.prototype.get stackTrace):
        (WebInspector.LegacyConsoleMessageImpl.prototype.clone):
        (WebInspector.LegacyConsoleMessageImpl.prototype.get levelString):
        (WebInspector.LegacyConsoleMessageImpl.prototype.get clipboardPrefixString):
        (WebInspector.LegacyConsoleMessageImpl.prototype.toClipboardString):
        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype.didAppendConsoleMessage):
        (WebInspector.LogContentView.prototype._messageAdded):
        (WebInspector.LogContentView.prototype._filterMessages):
        (WebInspector.LogContentView.prototype._reappendProvisionalMessages):
        * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
        * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:

2015-03-12  Jono Wells  <jonowells@apple.com>

        Web Inspector: Debugger sidebar should group global breakpoints together
        https://bugs.webkit.org/show_bug.cgi?id=142607

        Reviewed by Timothy Hatcher.

        Update the DebuggerSidebarPanel class to hold global breakpoints such as "All Exceptions" in one container. This
        will be the place future such breakpoints are added.

        * Localizations/en.lproj/localizedStrings.js: Added string.
        * UserInterface/Main.html: Small rearrangement.

        * UserInterface/Views/DebuggerSidebarPanel.js: Change how exception breaking options are displayed.
        (WebInspector.DebuggerSidebarPanel):
        (WebInspector.DebuggerSidebarPanel.prototype._treeElementSelected):
        (WebInspector.DebuggerSidebarPanel.prototype._compareTopLevelTreeElements):

        * UserInterface/Views/FolderTreeElement.js: Support additional classes for icons.
        * UserInterface/Views/ResourceSidebarPanel.js: Change call to FolderTreeElement constructor.

2015-03-12  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Console Errors during provisional document loads get lost with "Clear Log on Reload"
        https://bugs.webkit.org/show_bug.cgi?id=142603

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype._messageAdded):
        (WebInspector.LogContentView.prototype._provisionalLoadStarted):
        Detect a provisional load has started to start save messages that come in at this time.

        (WebInspector.LogContentView.prototype._sessionStarted):
        Reappend provisional load messages if we auto-cleared.

        (WebInspector.LogContentView.prototype._reappendProvisionalMessages):
        (WebInspector.LogContentView.prototype._clearProvisionalState):
        Helpers for dealing with the provisional loading state.

2015-03-11  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: CSS parser errors in the console should include column numbers
        https://bugs.webkit.org/show_bug.cgi?id=114313

        Reviewed by Darin Adler.

        * UserInterface/Views/ConsoleMessageImpl.js:
        (WebInspector.ConsoleMessageImpl.prototype._linkifyLocation):
        Column numbers in console messages are also 1 based and should be adjusted.

2015-03-11  Commit Queue  <commit-queue@webkit.org>

        Unreviewed, rolling out r181367.
        https://bugs.webkit.org/show_bug.cgi?id=142581

        Caused crashes on the debug bots (Requested by cdumez on
        #webkit).

        Reverted changeset:

        "Web Inspector: CSS parser errors in the console should
        include column numbers"
        https://bugs.webkit.org/show_bug.cgi?id=114313
        http://trac.webkit.org/changeset/181367

2015-03-11  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Reload after Global Search results in empty Resources Sidebar.
        https://bugs.webkit.org/show_bug.cgi?id=142572

        Reviewed by Timothy Hatcher.

        If you reload when the search content tree outline is showing, break out
        to show the resource tree outline.

        * UserInterface/Views/ResourceSidebarPanel.js:
        (WebInspector.ResourceSidebarPanel.prototype._showResourcesContentTreeOutline):
        (WebInspector.ResourceSidebarPanel.prototype._showSearchContentTreeOutline):

2015-03-11  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: SearchResultTreeElement.representedObject is missing a saveIdentityToCookie implementation
        https://bugs.webkit.org/show_bug.cgi?id=134698

        Reviewed by Timothy Hatcher.

        This will restore selection of a global search tree element if you
        close and reopen the inspector in such a case.

        * UserInterface/Models/DOMSearchMatchObject.js:
        (WebInspector.DOMSearchMatchObject.prototype.get resource):
        (WebInspector.DOMSearchMatchObject.titleForDOMNode):
        Cookie has the resource URL, DOM Node title, and text range.

        * UserInterface/Models/SourceCodeSearchMatchObject.js:
        (WebInspector.SourceCodeSearchMatchObject.prototype.get sourceCodeTextRange):
        Cookie has the source code URL and text range.

2015-03-10  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: CSS parser errors in the console should include column numbers
        https://bugs.webkit.org/show_bug.cgi?id=114313

        Reviewed by Benjamin Poulain.

        * UserInterface/Views/ConsoleMessageImpl.js:
        (WebInspector.ConsoleMessageImpl.prototype._linkifyLocation):
        Column numbers in console messages are also 1 based and should be adjusted.

2015-03-10  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: console.error output broken, does not produce ObjectTree
        https://bugs.webkit.org/show_bug.cgi?id=142554

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/IssueMessage.js:
        (WebInspector.IssueMessage):
        * UserInterface/Protocol/ConsoleObserver.js:
        (WebInspector.ConsoleObserver.prototype.messageAdded):

2015-03-10  Saam Barati  <saambarati1@gmail.com>

        Web Inspector: Destructuring function parameters should show type information
        https://bugs.webkit.org/show_bug.cgi?id=142233

        Reviewed by Joseph Pecoraro.

        JSC supports a function's formal parameter being a destructuring pattern, 
        and so should the type profiler in the Inspector. This was just an oversight 
        not to have this in bug 141215.

        This patch also does a bit of refactoring to not have duplicate code
        that traverses AST nodes in TypeTokenAnnotator and ScriptSyntaxTree.
        Before, both of these classes were responsible for traversing the AST
        in an identical way, this is bad. Now, ScriptSyntaxTree contains the
        canonical implementation of how the AST should be traversed and which
        AST nodes should be collected for type profiling. ScriptSyntaxTree will
        pass this information back to TypeTokenAnnotator.

        * UserInterface/Controllers/TypeTokenAnnotator.js:
        (WebInspector.TypeTokenAnnotator.prototype._insertTypeToken):
        (WebInspector.TypeTokenAnnotator.prototype._insertTypeTokensForEachNode): Deleted.
        * UserInterface/Models/ScriptSyntaxTree.js:
        (WebInspector.ScriptSyntaxTree.prototype.):
        (WebInspector.ScriptSyntaxTree.prototype.updateTypes):
        (WebInspector.ScriptSyntaxTree.prototype._gatherIdentifiersInDeclaration):
        (WebInspector.ScriptSyntaxTree.prototype.gatherIdentifiersInVariableDeclaration): Deleted.

2015-03-09  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Inline Error / Warning message for Issues
        https://bugs.webkit.org/show_bug.cgi?id=142520

        Reviewed by Timothy Hatcher.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Main.html:
        New strings and new files.

        * UserInterface/Controllers/IssueManager.js:
        (WebInspector.IssueManager.prototype.issueWasAdded):
        * UserInterface/Models/IssueMessage.js:
        (WebInspector.IssueMessage):
        (WebInspector.IssueMessage.prototype.get columnNumber):
        * UserInterface/Protocol/ConsoleObserver.js:
        (WebInspector.ConsoleObserver.prototype.messageAdded):
        Correctly pass the column number into IssueMessage.

        * UserInterface/Models/LineWidget.js:
        (WebInspector.LineWidget):
        (WebInspector.LineWidget.prototype.get codeMirrorLineWidget):
        (WebInspector.LineWidget.prototype.get widgetElement):
        Create a new Model class for a LineWidget. The root element
        should never change, but its children can be updated.

        * UserInterface/Views/SourceCodeTextEditor.css:
        (.source-code.text-editor .CodeMirror-linewidget):
        Override styles so that widgets can overlap line content.

        (.source-code.text-editor > .CodeMirror .issue-widget):
        (.source-code.text-editor > .CodeMirror .issue-widget.inline):
        Float issue widgets to the right side of the editor.

        (.source-code.text-editor > .CodeMirror .issue-widget > .arrow):
        (.source-code.text-editor > .CodeMirror .issue-widget.inline > .arrow):
        Pure CSS arrow for widgets on the same line as their issue.

        (.source-code.text-editor > .CodeMirror .issue-widget > .icon):
        (.source-code.text-editor > .CodeMirror .issue-widget > .icon.icon-warning):
        (.source-code.text-editor > .CodeMirror .issue-widget > .icon.icon-error):
        Issue icon styles for the different issue types.

        (.source-code.text-editor > .CodeMirror .issue-widget.warning):
        (.source-code.text-editor > .CodeMirror .issue-widget.inline.warning):
        (.source-code.text-editor > .CodeMirror .issue-widget.inline.warning > .arrow):
        (.source-code.text-editor > .CodeMirror .issue-widget.error):
        (.source-code.text-editor > .CodeMirror .issue-widget.inline.error):
        (.source-code.text-editor > .CodeMirror .issue-widget.inline.error > .arrow):
        Different colors for the different issue types.

        (.source-code.text-editor > .CodeMirror .issue-widget > .text):
        (.source-code.text-editor > .CodeMirror .issue-widget.inline > .text):
        Text positioning when on the same line or when expanded.

        * UserInterface/Views/SourceCodeTextEditor.js:
        (WebInspector.SourceCodeTextEditor.prototype._addIssue):
        (WebInspector.SourceCodeTextEditor.prototype._iconClassNameForIssueLevel):
        (WebInspector.SourceCodeTextEditor.prototype._updateIssueWidgetForIssues):
        (WebInspector.SourceCodeTextEditor.prototype._isWidgetToggleable):
        (WebInspector.SourceCodeTextEditor.prototype._handleWidgetClick):
        Create widgets for issues.

        (WebInspector.SourceCodeTextEditor.prototype._contentDidPopulate):
        (WebInspector.SourceCodeTextEditor.prototype.textEditorUpdatedFormatting):
        (WebInspector.SourceCodeTextEditor.prototype._clearWidgets):
        (WebInspector.SourceCodeTextEditor.prototype._reinsertAllIssues):
        Update all widgets in certain cases.

        * UserInterface/Views/TextEditor.js:
        (WebInspector.TextEditor.prototype.addStyleClassToLine):
        This assertion is known to happen for issues added to an editor
        before the content has loaded.

        (WebInspector.TextEditor.prototype.createWidgetForLine):
        Create a widget for a line.

2015-03-06  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: JS Pretty Printing: "case" or "default" outside of switch causes unbalanced indentation
        https://bugs.webkit.org/show_bug.cgi?id=142428

        Reviewed by Timothy Hatcher.

        * Tools/PrettyPrinting/CodeMirrorFormatters.js:
        * UserInterface/Views/CodeMirrorFormatters.js:
        Fix "case" and "default" indentation rules to only happen inside a switch.

        * Tools/PrettyPrinting/js-tests/switch-case-default-expected.js:
        * Tools/PrettyPrinting/js-tests/switch-case-default.js:
        Add tests for "case" and "default" nested inside and outside of switches.

2015-03-06  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: ES6: Improved Support for Iterator Objects
        https://bugs.webkit.org/show_bug.cgi?id=142420

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ConsoleMessageImpl.js:
        (WebInspector.ConsoleMessageImpl):
        Treat an iterator like an object.

        * UserInterface/Views/ObjectPreviewView.js:
        Output iterator previews with []s, not {}s.

2015-03-06  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Adopt Object Literal Method Property Syntax
        https://bugs.webkit.org/show_bug.cgi?id=142409

        Reviewed by Timothy Hatcher.

        Mechanical change touching lots of files.

2015-03-06  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Adopt Object Literal Shorthand Property Construction Syntax
        https://bugs.webkit.org/show_bug.cgi?id=142374

        Reviewed by Timothy Hatcher.

        Mechanical change touching lots of files.

2015-03-06  Jono Wells  <jonowells@apple.com>

        Web Inspector: Populate Debugger sidebar with all debuggable resources
        https://bugs.webkit.org/show_bug.cgi?id=141232

        Reviewed by Timothy Hatcher.

        All debuggable resources now show in the debugger sidebar. The _resourceAdded handler now adds a script resource
        to the sidebar regardless of whether it has any breakpoints set on it. The new function
        _getTreeElementForSourceCodeAndAddToContentTreeOutline adds the element to the debugger sidebar before
        _addBreakpointsForSourceCode is called. Removing all breakpoints from a resource no longer removes that
        resource from the debugger sidebar. TreeOutline.prototype.removeChild has been updated so the disclosure
        button will disappear and reappear correctly when removing/adding breakpoints.

        * UserInterface/Views/DebuggerSidebarPanel.js:
        (WebInspector.DebuggerSidebarPanel.prototype._addBreakpoint): Expand resource if first breakpoint is added.
        (WebInspector.DebuggerSidebarPanel.prototype._getTreeElementForSourceCodeAndAddToContentTreeOutline): Created.
        (WebInspector.DebuggerSidebarPanel.prototype._resourceAdded): Checks resource type and adds scripts to sidebar.
        (WebInspector.DebuggerSidebarPanel.prototype._mainResourceChanged):
        (WebInspector.DebuggerSidebarPanel.prototype._scriptAdded):
        (WebInspector.DebuggerSidebarPanel.prototype._removeBreakpointTreeElement): No longer removes empty parent.
        (WebInspector.DebuggerSidebarPanel.prototype._treeElementSelected): Displays scripts without breakpoints now.

        * UserInterface/Views/GeneralTreeElement.js:
        (WebInspector.GeneralTreeElement.prototype.get disclosureButton): Drive-by fix. Unused. Deleted.

        * UserInterface/Views/TreeOutline.js:
        (TreeOutline.prototype.removeChild):
        Remove parent class and set hasChildren to false if necessary to properly hide and reveal disclosure button
        for elements whose children have been removed.

2015-03-05  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Follow-up fixes to ObjectTreeBaseTreeElement
        https://bugs.webkit.org/show_bug.cgi?id=142367

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ObjectTreeMapEntryTreeElement.js:
        (WebInspector.ObjectTreeMapEntryTreeElement.prototype.propertyPathType):
        * UserInterface/Views/ObjectTreeSetIndexTreeElement.js:
        (WebInspector.ObjectTreeSetIndexTreeElement.prototype.resolvedValuePropertyPath):
        (WebInspector.ObjectTreeSetIndexTreeElement.prototype._titleFragment):

2015-03-05  Tobias Reiss  <tobi+webkit@basecode.de>

        Web Inspector: console.debug/info should show up in Log Console Filter
        https://bugs.webkit.org/show_bug.cgi?id=142300

        Reviewed by Joseph Pecoraro.

        Add WebInspector.ConsoleMessage.MessageLevel.Debug case that allows console.debug/info
        to show up in Log Console Filter.

        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype._filterMessages):

2015-03-05  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Add ObjectTreeBaseTreeElement to share functionality
        https://bugs.webkit.org/show_bug.cgi?id=142323

        Reviewed by Timothy Hatcher.

        By making this change:

          - Share lots of duplicated code.
          - Array / Set / Map tree elements get context menu support

        * UserInterface/Main.html:
        * UserInterface/Views/ObjectTreeBaseTreeElement.js: Added.
        (WebInspector.ObjectTreeBaseTreeElement):
        (WebInspector.ObjectTreeBaseTreeElement.prototype.get property):
        (WebInspector.ObjectTreeBaseTreeElement.prototype.get propertyPath):
        (WebInspector.ObjectTreeBaseTreeElement.prototype.oncontextmenu):
        (WebInspector.ObjectTreeBaseTreeElement.prototype.resolvedValue):
        (WebInspector.ObjectTreeBaseTreeElement.prototype.resolvedValuePropertyPath):
        (WebInspector.ObjectTreeBaseTreeElement.prototype.thisPropertyPath):
        (WebInspector.ObjectTreeBaseTreeElement.prototype.hadError):
        (WebInspector.ObjectTreeBaseTreeElement.prototype.propertyPathType):
        (WebInspector.ObjectTreeBaseTreeElement.prototype.propertyPathString):
        (WebInspector.ObjectTreeBaseTreeElement.prototype.createInteractiveGetterElement):
        (WebInspector.ObjectTreeBaseTreeElement.prototype.createReadOnlyIconElement):
        New file, copying most of the code from PropertyTreeElement so it can be shared.

        * UserInterface/Views/ObjectTreeArrayIndexTreeElement.js:
        (WebInspector.ObjectTreeArrayIndexTreeElement):
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype.invokedGetter):
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._titleFragment):
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype.get property): Deleted.
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._resolvedValue): Deleted.
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._propertyPathType): Deleted.
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._resolvedValuePropertyPath): Deleted.
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._thisPropertyPath): Deleted.
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._propertyPathString): Deleted.
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._updateTitle): Deleted.
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._createInteractiveGetterElement.): Deleted.
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._createReadOnlyIconElement): Deleted.
        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        (WebInspector.ObjectTreePropertyTreeElement):
        (WebInspector.ObjectTreePropertyTreeElement.prototype.invokedGetter):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateHasChildren):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTooltips):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._titleFragment):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitlePrototype):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitlePropertyStyle):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitleAPIStyle):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._alwaysDisplayAsProperty):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateChildren):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateChildrenInternal):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateEntries):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateProperties):
        (WebInspector.ObjectTreePropertyTreeElement.prototype.get property): Deleted.
        (WebInspector.ObjectTreePropertyTreeElement.prototype.oncontextmenu): Deleted.
        (WebInspector.ObjectTreePropertyTreeElement.prototype._resolvedValue): Deleted.
        (WebInspector.ObjectTreePropertyTreeElement.prototype._propertyPathType): Deleted.
        (WebInspector.ObjectTreePropertyTreeElement.prototype._resolvedValuePropertyPath): Deleted.
        (WebInspector.ObjectTreePropertyTreeElement.prototype._thisPropertyPath): Deleted.
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTitleAndIcon): Deleted.
        (WebInspector.ObjectTreePropertyTreeElement.prototype._createInteractiveGetterElement.): Deleted.
        (WebInspector.ObjectTreePropertyTreeElement.prototype._createReadOnlyIconElement): Deleted.
        (WebInspector.ObjectTreePropertyTreeElement.prototype): Deleted.
        Subclass ObjectTreeBaseTreeElement and eliminate the code now
        automatically handled by the base class.

        * UserInterface/Views/ObjectTreeMapEntryTreeElement.js:
        (WebInspector.ObjectTreeMapEntryTreeElement):
        (WebInspector.ObjectTreeMapEntryTreeElement.prototype.resolvedValue):
        (WebInspector.ObjectTreeMapEntryTreeElement.prototype._titleFragment):
        (WebInspector.ObjectTreeMapEntryTreeElement.prototype._propertyPathString): Deleted.
        * UserInterface/Views/ObjectTreeSetIndexTreeElement.js:
        (WebInspector.ObjectTreeSetIndexTreeElement):
        (WebInspector.ObjectTreeSetIndexTreeElement.prototype.resolvedValue):
        (WebInspector.ObjectTreeSetIndexTreeElement.prototype._titleFragment):
        (WebInspector.ObjectTreeSetIndexTreeElement.prototype._resolvedValuePropertyPath): Deleted.
        Override resolved value since these are not about PropertyDescriptors.
        This will make context menus work automatically.

2015-03-04  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Improve display of previews with overflow
        https://bugs.webkit.org/show_bug.cgi?id=142321

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ObjectPreviewView.js:
        (WebInspector.ObjectPreviewView.prototype._appendEntryPreviews):
        (WebInspector.ObjectPreviewView.prototype._appendPropertyPreviews):

2015-03-04  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Array/Collection Sizes should be visible and distinct
        https://bugs.webkit.org/show_bug.cgi?id=142254

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/ObjectPreview.js:
        (WebInspector.ObjectPreview):
        (WebInspector.ObjectPreview.fromPayload):
        (WebInspector.ObjectPreview.prototype.get size):
        (WebInspector.ObjectPreview.prototype.hasSize):
        * UserInterface/Protocol/RemoteObject.js:
        (WebInspector.RemoteObject):
        (WebInspector.RemoteObject.fromPrimitiveValue):
        (WebInspector.RemoteObject.fromPayload):
        (WebInspector.RemoteObject.prototype.get size):
        (WebInspector.RemoteObject.prototype.hasSize):
        Check if this type has a size and get the size.
        Gracefully handle construction for legacy protocols.

        * UserInterface/Views/ObjectPreviewView.css:
        (.object-preview > .size):
        * UserInterface/Views/FormattedValue.css:
        (:matches(.formatted-array, .formatted-map, .formatted-set, .formatted-weakmap) > .size):
        Style the array/collection size.

        * UserInterface/Views/ObjectPreviewView.js:
        (WebInspector.ObjectPreviewView):
        * UserInterface/Views/FormattedValue.js:
        (WebInspector.FormattedValue.createElementForTypesAndValue):
        (WebInspector.FormattedValue.createElementForRemoteObject):
        (WebInspector.FormattedValue.createElementForObjectPreview):
        (WebInspector.FormattedValue.createElementForPropertyPreview):
        Add an element showing the array/collection size.

        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        (WebInspector.ObjectTreePropertyTreeElement.prototype):
        Remove special handling for Array sizes now that this is handled earlier.

        * UserInterface/Controllers/StorageManager.js:
        (WebInspector.StorageManager.prototype.processData):
        (WebInspector.StorageManager.prototype.requestIndexedDatabaseData):
        Fix what looks like broken RemoteObject construction.

2015-03-04  Brian J. Burg  <burg@cs.washington.edu>

        Web Inspector: TimelineViews should be displayed in a ContentViewContainer
        https://bugs.webkit.org/show_bug.cgi?id=142290

        Reviewed by Timothy Hatcher.

        TimelineRecordingContentView has a bunch of logic to manage the currently visible TimelineView.
        This could be delegated to a ContentViewContainer to simplify the logic. It also opens the possibility
        for other views to be displayed beneath the timeline overview graphs when it makes sense to do so.

        In order to be displayable in the container, TimelineView and its subclasses have been upgraded to
        be ContentView subclasses. This also reduces some code duplication for basic view management.

        * UserInterface/Views/ContentView.js:
        (WebInspector.ContentView): Move base class instantiation pattern from TimelineView to here.
        (WebInspector.ContentView.isViewable):
        * UserInterface/Views/LayoutTimelineView.js: Use ContentView events and base methods.
        (WebInspector.LayoutTimelineView.prototype.shown):
        (WebInspector.LayoutTimelineView.prototype.hidden):
        (WebInspector.LayoutTimelineView.prototype._dataGridNodeSelected):
        * UserInterface/Views/NetworkTimelineView.js: Use ContentView events and base methods.
        (WebInspector.NetworkTimelineView.prototype.shown):
        (WebInspector.NetworkTimelineView.prototype.hidden):
        (WebInspector.NetworkTimelineView.prototype._dataGridNodeSelected):
        * UserInterface/Views/OverviewTimelineView.js: Use ContentView events and base methods.
        (WebInspector.OverviewTimelineView.prototype.shown):
        (WebInspector.OverviewTimelineView.prototype._dataGridNodeSelected):
        (WebInspector.OverviewTimelineView.prototype._treeElementSelected):
        * UserInterface/Views/ScriptTimelineView.js: Use ContentView events and base methods.
        (WebInspector.ScriptTimelineView.prototype.shown):
        (WebInspector.ScriptTimelineView.prototype.hidden):
        (WebInspector.ScriptTimelineView.prototype._dataGridNodeSelected):
        * UserInterface/Views/TimelineRecordingContentView.css: Use WebInspector.ContentViewContainer class.
        (.content-view.timeline-recording > .content-view-container):
        (.content-view.timeline-recording > .content-view-container > .timeline-view > .data-grid td):
        (.content-view.timeline-recording > .content-view-container > .timeline-view > .data-grid table.data):
        (.content-view.timeline-recording > .view-container): Deleted.
        (.content-view.timeline-recording > .view-container > .timeline-view > .data-grid td): Deleted.
        (.content-view.timeline-recording > .view-container > .timeline-view > .data-grid table.data): Deleted.

        * UserInterface/Views/TimelineRecordingContentView.js:
        Many of the changes here mirror the implementation of ClusterContentView. Searching is disabled since
        none of the timeline views are currently searchable using ContentViewContainer's full-text search.

        In cases where we update the current timeline view, the currentTimelineView accessor returns the
        content view if a TimelineView is shown in the content view container, otherwise null.

        (WebInspector.TimelineRecordingContentView):
        (WebInspector.TimelineRecordingContentView.prototype.showOverviewTimelineView):
        (WebInspector.TimelineRecordingContentView.prototype.showTimelineViewForTimeline):
        (WebInspector.TimelineRecordingContentView.prototype.get supplementalRepresentedObjects):
        (WebInspector.TimelineRecordingContentView.prototype.get handleCopyEvent):
        (WebInspector.TimelineRecordingContentView.prototype.get supportsSave):
        (WebInspector.TimelineRecordingContentView.prototype.get saveData):
        (WebInspector.TimelineRecordingContentView.prototype.get currentTimelineView):
        (WebInspector.TimelineRecordingContentView.prototype.shown):
        (WebInspector.TimelineRecordingContentView.prototype.hidden):
        (WebInspector.TimelineRecordingContentView.prototype.closed):
        (WebInspector.TimelineRecordingContentView.prototype.canGoBack):
        (WebInspector.TimelineRecordingContentView.prototype.canGoForward):
        (WebInspector.TimelineRecordingContentView.prototype.goBack):
        (WebInspector.TimelineRecordingContentView.prototype.goForward):
        (WebInspector.TimelineRecordingContentView.prototype.updateLayout):
        (WebInspector.TimelineRecordingContentView.prototype.saveToCookie):
        (WebInspector.TimelineRecordingContentView.prototype.get filterDidChange):
        (WebInspector.TimelineRecordingContentView.prototype._currentContentViewDidChange):
        (WebInspector.TimelineRecordingContentView.prototype._contentViewSelectionPathComponentDidChange):
        (WebInspector.TimelineRecordingContentView.prototype._contentViewSupplementalRepresentedObjectsDidChange):
        (WebInspector.TimelineRecordingContentView.prototype._updateTimes):
        (WebInspector.TimelineRecordingContentView.prototype._timelineRemoved):
        (WebInspector.TimelineRecordingContentView.prototype._timelineCountChanged):
        (WebInspector.TimelineRecordingContentView.prototype._timeRangeSelectionChanged):
        (WebInspector.TimelineRecordingContentView.prototype.filterDidChange): Deleted.
        (WebInspector.TimelineRecordingContentView.prototype._timelineViewSelectionPathComponentsDidChange): Deleted.
        (WebInspector.TimelineRecordingContentView.prototype._showTimelineView): Deleted.
        * UserInterface/Views/TimelineView.js: Remove duplicated functionality and use ContentView equivalents instead.
        (WebInspector.TimelineView):
        (WebInspector.TimelineView.prototype.filterUpdated):
        (WebInspector.TimelineView.prototype.needsLayout):
        (WebInspector.TimelineView.prototype.get representedObject): Deleted.
        (WebInspector.TimelineView.prototype.get visible): Deleted.
        (WebInspector.TimelineView.prototype.shown): Deleted.
        (WebInspector.TimelineView.prototype.hidden): Deleted.

2015-03-03  Brian J. Burg  <burg@cs.washington.edu>

        Web Inspector: selecting overview timeline tree elements without source locations doesn't update selection components
        https://bugs.webkit.org/show_bug.cgi?id=142248

        Reviewed by Timothy Hatcher.

        Add a missing event dispatch to trigger recalculation of path components when showing the overview timeline view.

        * UserInterface/Views/OverviewTimelineView.js:
        (WebInspector.OverviewTimelineView.prototype._treeElementSelected):

2015-03-03  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Refactoring: separate ConsoleSession from ConsoleGroup
        https://bugs.webkit.org/show_bug.cgi?id=142141

        ConsoleSession doesn't have a title and it's not collapsible either.
        Simplify ConsoleSession by removing excessive markup.

        Reviewed by Timothy Hatcher.

        * UserInterface/Controllers/JavaScriptLogViewController.js:
        (WebInspector.JavaScriptLogViewController):
        (WebInspector.JavaScriptLogViewController.prototype.startNewSession):
        (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessage):
        (WebInspector.JavaScriptLogViewController.prototype.get topConsoleGroup): Deleted.
        * UserInterface/Main.html:
        * UserInterface/Views/ConsoleGroup.js:
        (WebInspector.ConsoleGroup):
        (WebInspector.ConsoleGroup.prototype.render):
        (WebInspector.ConsoleGroup.prototype.addMessage):
        (WebInspector.ConsoleGroup.prototype.append):
        (WebInspector.ConsoleGroup.prototype.hasMessages): Deleted.
        * UserInterface/Views/ConsoleSession.js: Added.
        (WebInspector.ConsoleSession):
        (WebInspector.ConsoleSession.prototype.addMessage):
        (WebInspector.ConsoleSession.prototype.append):
        (WebInspector.ConsoleSession.prototype.hasMessages):
        * UserInterface/Views/LogContentView.css:
        (.console-session + .console-session):
        (.console-group.new-session .console-group-messages .console-item:first-child): Deleted.
        (.console-group.new-session): Deleted.

2015-03-03  Brian J. Burg  <burg@cs.washington.edu>

        Web Inspector: popover should use requestAnimationFrame to drive move/resize animations
        https://bugs.webkit.org/show_bug.cgi?id=142218

        Reviewed by Timothy Hatcher.

        Remove setTimeout workaround now that Inspector runs in its own process.

        * UserInterface/Views/Popover.js:
        (WebInspector.Popover.prototype.drawBackground):
        (WebInspector.Popover.prototype._animateFrame):

2015-03-03  Brian J. Burg  <burg@cs.washington.edu>

        Web Inspector: Console log level selector loses selection on reload
        https://bugs.webkit.org/show_bug.cgi?id=142199

        Reviewed by Timothy Hatcher.

        The selected items in the console scope bar were being saved as settings,
        but the "All" scope is forcibly selected on reload due to a logic bug.

        * UserInterface/Base/Main.js:
        (WebInspector.showFullHeightConsole):
        The scope bar may already have selected items restored from WebInspector.Settings.
        Don't select a scope unless explicitly requested (i.e., clicking on dashboard buttons)
        or if no scopes are selected at all. (In the latter case, "All" is the default scope.)

        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView): Don't specify a default value here to avoid trampling
        settings. The "All" scope is selected by default in showFullHeightConsole if
        nothing else is selected.

2015-03-02  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Remove native extensions now built-in
        https://bugs.webkit.org/show_bug.cgi?id=142203

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/Utilities.js:

2015-03-02  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Context Menu to Log a Particular Object
        https://bugs.webkit.org/show_bug.cgi?id=142198

        Reviewed by Timothy Hatcher.

        * UserInterface/Controllers/JavaScriptLogViewController.js:
        (WebInspector.JavaScriptLogViewController.prototype.saveResultCallback):
        (WebInspector.JavaScriptLogViewController.prototype.appendImmediateExecutionWithResult):
        Add a way to show an execution and result immediately in the Log View.

        * UserInterface/Views/ConsolePrompt.js:
        (WebInspector.ConsolePrompt.prototype.pushHistoryItem):
        (WebInspector.ConsolePrompt.prototype.commitTextOrInsertNewLine):
        (WebInspector.ConsolePrompt.prototype._handleEnterKey):
        (WebInspector.ConsolePrompt.prototype._commitHistoryEntry):
        Add a way to append a history item to the console prompt history.

        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        (WebInspector.ObjectTreePropertyTreeElement.prototype):
        Add a context menu item to object tree properties to log the value.

        * UserInterface/Protocol/RemoteObject.js:
        (WebInspector.RemoteObject.createCallArgument):
        (WebInspector.RemoteObject.prototype.callFunction):
        (WebInspector.RemoteObject.prototype.asCallArgument):
        Simplify CallArgument creation.

        * UserInterface/Controllers/RuntimeManager.js:
        (WebInspector.RuntimeManager.prototype.mycallback):
        (WebInspector.RuntimeManager.prototype.saveResult):
        Wrap RuntimeAgent.saveResult. If supported, run the backend command
        and fetch a saved result index from the backend for the given value.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Base/Main.js:
        (WebInspector.contentLoaded):
        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype.get logViewController):
        Misc.

2015-03-02  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Add Context Menus to Object Tree properties
        https://bugs.webkit.org/show_bug.cgi?id=142125

        Reviewed by Timothy Hatcher.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Views/ObjectPropertiesSection.js:
        (WebInspector.ObjectPropertyTreeElement.prototype._functionContextMenuEventFired):
        (WebInspector.ObjectPropertyTreeElement.prototype._functionContextMenuEventFired.revealFunction):
        Fix legacy implementation.

        * UserInterface/Views/ObjectTreeArrayIndexTreeElement.js:
        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitlePrototype):
        Give prototype buttons a tooltip.

        (WebInspector.ObjectTreePropertyTreeElement.prototype.oncontextmenu):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._contextMenuHandler):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._appendMenusItemsForObject):
        Context Menus based on the selected object.

2015-02-27  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Use Maps in ResourceCollection instead of objects
        https://bugs.webkit.org/show_bug.cgi?id=142101

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/ResourceCollection.js:
        (WebInspector.ResourceCollection):
        (WebInspector.ResourceCollection.prototype.resourcesWithType):
        (WebInspector.ResourceCollection.prototype.removeAllResources):
        (WebInspector.ResourceCollection.prototype.resourceForURL):
        (WebInspector.ResourceCollection.prototype._associateWithResource):
        (WebInspector.ResourceCollection.prototype._disassociateWithResource):
        (WebInspector.ResourceCollection.prototype._resourceURLDidChange):
        (WebInspector.ResourceCollection.prototype._resourceTypeDidChange):
        Use Maps instead of objects.

2015-02-26  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Add a subtle blue background for selected console messages
        https://bugs.webkit.org/show_bug.cgi?id=142073

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/LogContentView.css:
        (.console-item.selected::after):
        (.console-messages:focus .console-item.selected):
        (.console-messages:focus .console-item.selected + .console-item):
        (.console-error-level + .console-item):
        (.console-error-level .section .header .title):
        (.console-warning-level):
        (.console-warning-level + .console-item):

2015-02-26  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Colored console messages apply text color to object tree properties
        https://bugs.webkit.org/show_bug.cgi?id=142051

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ObjectPreviewView.css:
        (.object-preview):
        * UserInterface/Views/ObjectTreeView.css:
        (.object-tree):
        Default the color to black within Object Tree and Object Preview views.

2015-02-26  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Clear Log on Reload clears some logs that were after reload
        https://bugs.webkit.org/show_bug.cgi?id=142070

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype._sessionStarted):
        We can bail after calling clearLog, since that will already start
        a new session for us.

        (WebInspector.LogContentView.prototype._clearLog):
        Don't trigger a backend clear messages, since that will cause us to
        clear messages received between the request and response.

2015-02-26  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Save Console Evaluations into Command Line variables $1-$99 ($n)
        https://bugs.webkit.org/show_bug.cgi?id=142061

        Reviewed by Timothy Hatcher.

        * UserInterface/Controllers/RuntimeManager.js:
        (WebInspector.RuntimeManager.prototype.evalCallback):
        (WebInspector.RuntimeManager.prototype.evaluateInInspectedWindow):
        Add a saveResult parameter for the new protocol command in parameter.

        * UserInterface/Views/ConsoleMessageImpl.js:
        (WebInspector.ConsoleMessageImpl.prototype._formatMessage):
        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsObject):
        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsArray):
        (WebInspector.ConsoleMessageImpl.prototype._rootPropertyPathForObject):
        * UserInterface/Views/ObjectTreeView.js:
        (WebInspector.ObjectTreeView.prototype.appendTitleSuffix):
        For console evaluation results, show a "= $n" when the evaluation was
        given a saved result index.

        * UserInterface/Views/LogContentView.css:
        (.console-saved-variable):
        * UserInterface/Views/ObjectPreviewView.css:
        (.object-preview-name):
        Make $n and class names in previews always non-italics.

        * UserInterface/Controllers/JavaScriptLogViewController.js:
        (WebInspector.JavaScriptLogViewController.prototype.printResult):
        (WebInspector.JavaScriptLogViewController.prototype.consolePromptTextCommitted):
        * UserInterface/Controllers/JavaScriptRuntimeCompletionProvider.js:
        (get WebInspector.JavaScriptRuntimeCompletionProvider.prototype.):
        * UserInterface/Controllers/LogManager.js:
        (WebInspector.LogManager.prototype.messagesCleared):
        (WebInspector.LogManager.prototype._mainResourceDidChange):
        Try to provide better autocompletion for $n, by populating autocompletion menus
        from $1-$n where n is the maximum saved result index seen. Clear the maximum
        when we clear the console.

        * UserInterface/Views/ConsoleCommandResult.js:
        (WebInspector.ConsoleCommandResult):
        (WebInspector.ConsoleCommandResult.clearMaximumSavedResultIndex):
        Keep track of the maximum savedResultIndex for console evaluation results.

2015-02-26  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Set/Map appear as lossless when they have lossy entries
        https://bugs.webkit.org/show_bug.cgi?id=142050

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ObjectPreviewView.js:
        (WebInspector.ObjectPreviewView.prototype._appendEntryPreviews):
        Take into account the lossless states of entry keys and values.

2015-02-26  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: New ObjectTree UI for Arrays / Maps / Sets
        https://bugs.webkit.org/show_bug.cgi?id=142037

        Reviewed by Timothy Hatcher.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Main.html:
        Miscellaneous changes.

        * UserInterface/Models/PropertyDescriptor.js:
        (WebInspector.PropertyDescriptor.prototype.isIndexProperty):
        Useful for quickly checking if this property is numeric and possibly
        an array index.

        * UserInterface/Models/PropertyPath.js:
        (WebInspector.PropertyPath.prototype.appendMapKey):
        (WebInspector.PropertyPath.prototype.appendMapValue):
        (WebInspector.PropertyPath.prototype.appendSetIndex):
        Be specific about property paths into maps / sets. Note that a map
        value may be displayable if the key is simple.

        * UserInterface/Protocol/RemoteObject.js:
        (WebInspector.RemoteObject.prototype.hasValue):
        A simple value RemoteObject may have the value "undefined". So provide
        a falsey proof helper that actually checks if we have a value.

        (WebInspector.RemoteObject.prototype.isArray):
        (WebInspector.RemoteObject.prototype.backendGetOwnPropertyDescriptor):
        (WebInspector.RemoteObject.prototype.wrappedCallback):
        (WebInspector.RemoteObject.prototype.getOwnPropertyDescriptor):
        Currently backend APIs exist only to get all properties. In the case
        of collections, we often want to get only one property (__proto__).
        This is a simple implementation on top of callFunctionOn.

        * UserInterface/Views/ConsoleMessageImpl.js:
        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsObject):
        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsArray):
        (WebInspector.ConsoleMessageImpl.prototype.appendUndefined): Deleted.
        (WebInspector.ConsoleMessageImpl.prototype._printArray): Deleted.
        (WebInspector.ConsoleMessageImpl.prototype._formatAsArrayEntry): Deleted.
        Simplify array formatted to just use an ObjectTreeView. Add fixmes
        that we should seed the ObjectTreeView with a starting property path.

        * UserInterface/Views/FormattedValue.css:
        (.formatted-node > ol):
        Sometimes, a node's display was getting overridden by various console styles.
        Force a node to always display block. We may be able to remove this later.

        * UserInterface/Views/FormattedValue.js:
        (WebInspector.FormattedValue.createObjectTreeOrFormattedValueForRemoteObject):
        Helper for formatting a node / object / value more easily. This
        is used by all collection types.

        * UserInterface/Views/ObjectPreviewView.js:
        (WebInspector.ObjectPreviewView.prototype._appendPropertyPreviews):
        We lost the nice sparse array support when switching to the new preview path,
        we should add it back.

        * UserInterface/Views/ObjectTreeArrayIndexTreeElement.css:
        (.object-tree-array-index):
        (.object-tree-array-index > .titles):
        (.object-tree-array-index > .icon):
        (.object-tree-array-index .index-name):
        (.object-tree-array-index .index-value .object-tree):
        (.object-tree-array-index .index-value .object-tree .object-tree-outline):
        (.object-tree-property + ol .object-tree-array-index):
        New styles specific to array index tree elements.

        * UserInterface/Views/ObjectTreeMapEntryTreeElement.css:
        (.object-tree-array-index.object-tree-map-entry > .titles > .title > .index-name):
        (.object-tree-map-entry.key):
        (.object-tree-map-entry.key:first-of-type):
        (.object-tree-map-entry):
        New styles specific to map key/value tree elements.

        * UserInterface/Views/ObjectTreeCollectionTreeElement.js: Removed.
        Remove old collection implementation.

        * UserInterface/Views/ObjectTreeArrayIndexTreeElement.js: Added.
        (WebInspector.ObjectTreeArrayIndexTreeElement):
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype.get property):
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._resolvedValue):
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._propertyPathType):
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._resolvedValuePropertyPath):
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._thisPropertyPath):
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._propertyPathString):
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._updateTitle):
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._titleFragment):
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._createInteractiveGetterElement.):
        (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._createReadOnlyIconElement):
        Index followed by formatted value. Unfortunately a page can hack up an array
        with getter properties, so also support getter values in an array. This ends
        up copying a lot of ObjectTreePropertyTreeElement as a result.

        * UserInterface/Views/ObjectTreeMapEntryTreeElement.js: Added.
        (WebInspector.ObjectTreeMapEntryTreeElement):
        (WebInspector.ObjectTreeMapEntryTreeElement.prototype.get object):
        (WebInspector.ObjectTreeMapEntryTreeElement.prototype._propertyPathString):
        (WebInspector.ObjectTreeMapEntryTreeElement.prototype._titleFragment):
        (WebInspector.ObjectTreeMapKeyTreeElement):
        (WebInspector.ObjectTreeMapKeyTreeElement.prototype.displayPropertyName):
        (WebInspector.ObjectTreeMapKeyTreeElement.prototype.resolvedValuePropertyPath):
        (WebInspector.ObjectTreeMapValueTreeElement):
        (WebInspector.ObjectTreeMapValueTreeElement.prototype.displayPropertyName):
        (WebInspector.ObjectTreeMapValueTreeElement.prototype.resolvedValuePropertyPath):
        Key/value followed by formatted value.

        * UserInterface/Views/ObjectTreeSetIndexTreeElement.js: Added.
        (WebInspector.ObjectTreeSetIndexTreeElement):
        (WebInspector.ObjectTreeSetIndexTreeElement.prototype.get object):
        (WebInspector.ObjectTreeSetIndexTreeElement.prototype._resolvedValuePropertyPath):
        (WebInspector.ObjectTreeSetIndexTreeElement.prototype._titleFragment):
        Dot followed by formatted value.

        * UserInterface/Views/ObjectTreePropertyTreeElement.css:
        (.object-tree-property > .titles):
        Reformat.

        * UserInterface/Views/ObjectTreeView.css:
        (.object-tree-property :matches(.formatted-string, .formatted-regexp)):
        Upgrade generic styles.

        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        (WebInspector.ObjectTreePropertyTreeElement.prototype._resolvedValue):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._resolvedValuePropertyPath):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateChildren):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateChildrenInternal):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateEntries):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateProperties):
        * UserInterface/Views/ObjectTreeView.js:
        (WebInspector.ObjectTreeView):
        (WebInspector.ObjectTreeView.emptyMessageElement):
        (WebInspector.ObjectTreeView.prototype.expand):
        (WebInspector.ObjectTreeView.prototype.collapse):
        (WebInspector.ObjectTreeView.prototype.update):
        (WebInspector.ObjectTreeView.prototype._updateChildren):
        (WebInspector.ObjectTreeView.prototype._updateEntries):
        (WebInspector.ObjectTreeView.prototype._updateProperties):
        (WebInspector.ObjectTreeView.prototype._handlePreviewOrTitleElementClick):
        Both ObjectTreeView and ObjectTreePropertyTreeElement will fetch only collection
        entries or properties depending on the type of the object being expanded.

        (WebInspector.ObjectTreeView.prototype._trackWeakEntries):
        (WebInspector.ObjectTreeView.prototype._untrackWeakEntries):
        Allow WeakMap entries to be Garbage Collected when the ObjectTreeView
        collapses or the console is cleared. FIXME for handling sub-tree WeakMaps.

2015-02-26  Brent Fulgham  <bfulgham@apple.com>

        [Win] Make build logs more legible by reducing noise
        https://bugs.webkit.org/show_bug.cgi?id=142034

        Reviewed by Alexey Proskuryakov.

        Modify batch files, makefiles, and DOS commands to remove
        uninteresting/unhelpful output.

        * WebInspectorUI.vcxproj/WebInspectorUI.make:

2015-02-25  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Improve Regex/Error output in Object Tree and Previews
        https://bugs.webkit.org/show_bug.cgi?id=142010

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ObjectPreviewView.js:
        (WebInspector.ObjectPreviewView):
        (WebInspector.ObjectPreviewView.prototype._initTitleElement):
        Since some object types may be formatted as simple values, ensure they get
        the formatted style even in the title view.

        (WebInspector.ObjectPreviewView.prototype._appendPreview):
        Those object types that can be formatted as simple values should skip
        to the value formatting phase.

        (WebInspector.ObjectPreviewView.prototype._appendPropertyPreviews):
        Do not show property previews for error objects. Always assume lossy
        so that it can be expanded.

        * UserInterface/Views/ObjectTreeView.js:
        (WebInspector.ObjectTreeView):
        Make a similiar improvement for ObjectTree titles when previews are
        unavailable. This will make dir(value) show a stylized value in the
        title of the Object Tree.

2015-02-25  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Improve PropertyPath display strings for getters / values
        https://bugs.webkit.org/show_bug.cgi?id=142008

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/Utilities.js:
        (doubleQuotedString):
        Helper to double quote a string and escape double quotes with-in it.

        * UserInterface/Models/PropertyPath.js:
        (WebInspector.PropertyPath.prototype.get reducedPath):
        Compute the path eliminating unnecessary __proto__s. Note we don't
        property handle the case where a .__proto__.x is override earlier
        by a .x, but that case is rare.

        (WebInspector.PropertyPath.prototype.displayPath):
        Helper for choosing fullPath or reducedPath display strings.

        (WebInspector.PropertyPath.prototype.appendPropertyName):
        (WebInspector.PropertyPath.prototype.appendGetterPropertyName):
        (WebInspector.PropertyPath.prototype.appendSetterPropertyName):
        (WebInspector.PropertyPath.prototype.appendPropertyDescriptor):
        When appending a descriptor, specify if it is for a getter/setter or value.
        For getters / setters the actual function can be directly fetched via
        __lookupGetter__/__lookupSetter__. Continue to use the property name for values.

        * UserInterface/Views/FormattedValue.js:
        (WebInspector.FormattedValue.createElementForTypesAndValue):

        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        (WebInspector.ObjectTreePropertyTreeElement.prototype._propertyPathType):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._resolvedValuePropertyPath):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._thisPropertyPath):
        (WebInspector.ObjectTreePropertyTreeElement.prototype):

2015-02-24  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Eliminate console-formatted-* class names in favor of formatted-*
        https://bugs.webkit.org/show_bug.cgi?id=141948

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/FormattedValue.js:
        (WebInspector.FormattedValue.createElementForNode):
        Helper for formatting a node as a DOMTreeOutline.

        * UserInterface/Views/ConsoleMessageImpl.js:
        (WebInspector.ConsoleMessageImpl.prototype._formatParameter):
        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsString):
        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsNode):
        (WebInspector.ConsoleMessageImpl.prototype.appendUndefined):
        (WebInspector.ConsoleMessageImpl.prototype._printArray):
        (WebInspector.ConsoleMessageImpl.prototype.): Deleted.
        * UserInterface/Views/LogContentView.css:
        (.console-user-command-result):
        (.console-formatted-object): Deleted.
        (.console-object-preview): Deleted.
        (.expanded .console-object-preview): Deleted.
        (.console-object-preview .name): Deleted.
        (.expanded .console-object-preview > .console-object-preview-body): Deleted.
        (.console-object-preview > .console-object-preview-name.console-object-preview-name-Object): Deleted.
        (.console-object-preview-body .console-object-preview-name.console-object-preview-name-Object): Deleted.
        (.expanded .console-object-preview > .console-object-preview-name.console-object-preview-name-Object): Deleted.
        (.console-formatted-object, .console-formatted-node, .console-formatted-error, .console-formatted-map, .console-formatted-set, .console-formatted-weakmap): Deleted.
        (:matches(.console-formatted-object, .console-formatted-node, .console-formatted-error, .console-formatted-map, .console-formatted-set, .console-formatted-weakmap) .section): Deleted.

        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype._leftArrowWasPressed):
        (WebInspector.LogContentView.prototype._rightArrowWasPressed):
        Add FIXMEs since this will no longer work with ObjectTree.

        * UserInterface/Views/ObjectPreviewView.css:
        (.object-preview):
        * UserInterface/Views/ObjectTreeView.css:
        (.object-tree):
        Copy over the font styles from console-formatted-object.

        * UserInterface/Views/ObjectPropertiesSection.js:
        (WebInspector.ObjectPropertyTreeElement.prototype.update):
        * UserInterface/Views/SourceCodeTextEditor.js:
        (WebInspector.SourceCodeTextEditor.prototype._showPopoverForFunction.didGetDetails):
        (WebInspector.SourceCodeTextEditor.prototype._showPopoverForFunction):
        (WebInspector.SourceCodeTextEditor.prototype._showPopoverForString):
        (WebInspector.SourceCodeTextEditor.prototype._showPopoverForRegExp):
        (WebInspector.SourceCodeTextEditor.prototype._showPopoverForNumber):
        (WebInspector.SourceCodeTextEditor.prototype._showPopoverForBoolean):
        (WebInspector.SourceCodeTextEditor.prototype._showPopoverForNull):
        (WebInspector.SourceCodeTextEditor.prototype._showPopoverForUndefined):
        Convert to formatted value class names.

2015-02-24  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Make Getter/Setter RemoteObject property and ObjectPreview handling consistent
        https://bugs.webkit.org/show_bug.cgi?id=141587

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/CallFrame.js:
        (WebInspector.CallFrame.prototype.collectScopeChainVariableNames):
        * UserInterface/Models/PropertyDescriptor.js:
        (WebInspector.PropertyDescriptor.prototype.get nativeGetter):
        * UserInterface/Protocol/RemoteObject.js:
        (WebInspector.RemoteObject.fromPayload):
        (WebInspector.RemoteObject.prototype.getOwnPropertyDescriptors):
        (WebInspector.RemoteObject.prototype.getAllPropertyDescriptors):
        (WebInspector.RemoteObject.prototype.getDisplayablePropertyDescriptors):
        (WebInspector.RemoteObject.prototype._getPropertyDescriptors):
        (WebInspector.RemoteObject.prototype.if):
        (WebInspector.RemoteObject.prototype.deprecatedGetOwnProperties):
        (WebInspector.RemoteObject.prototype.deprecatedGetAllProperties):
        (WebInspector.RemoteObject.prototype._deprecatedGetProperties):
        (WebInspector.RemoteObject.prototype.getOwnAndGetterPropertyDescriptors): Deleted.
        (WebInspector.RemoteObject.prototype.callback): Deleted.
        (WebInspector.RemoteObject.prototype.getOwnProperties): Deleted.
        (WebInspector.RemoteObject.prototype.getOwnAndGetterProperties): Deleted.
        (WebInspector.RemoteObject.prototype.getAllProperties): Deleted.
        (WebInspector.RemoteObject.prototype.set else): Deleted.
        * UserInterface/Views/ConsoleMessageImpl.js:
        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsArray):
        * UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
        (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties.nodePrototypesReady):
        * UserInterface/Views/ObjectPropertiesSection.js:
        (WebInspector.ObjectPropertiesSection.prototype.update):
        (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        (WebInspector.ObjectTreePropertyTreeElement.prototype.):
        (WebInspector.ObjectTreePropertyTreeElement.prototype):
        * UserInterface/Views/ObjectTreeView.js:
        (WebInspector.ObjectTreeView.prototype.update):

2015-02-24  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: New Object Tree View UI
        https://bugs.webkit.org/show_bug.cgi?id=141932

        Reviewed by Timothy Hatcher.

        Part 1: Majority of the UI.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Images/Eye.svg: Added.
        * UserInterface/Images/TypeBoolean.svg: Added.
        * UserInterface/Images/TypeNull.svg: Added.
        * UserInterface/Images/TypeNumber.svg: Added.
        * UserInterface/Images/TypeObject.svg: Added.
        * UserInterface/Images/TypeRegex.svg: Added.
        * UserInterface/Images/TypeString.svg: Added.
        * UserInterface/Images/TypeSymbol.svg: Added.
        * UserInterface/Images/TypeUndefined.svg: Added.
        * UserInterface/Main.html:
        Miscellaneous.

        * UserInterface/Views/FormattedValue.css:
        (.formatted-boolean):
        Give booleans a light purple color.

        * UserInterface/Views/FormattedValue.js:
        (WebInspector.FormattedValue.createElementForTypesAndValue):
        Previously we were truncating function value logging in the console. E.g.
          js> multiLineFunction
          <-  function multiLineFunction() {
        No longer truncate so we display the full string.

        * UserInterface/Models/PropertyPath.js: Added.
        (WebInspector.PropertyPath):
        (WebInspector.PropertyPath.prototype.get object):
        (WebInspector.PropertyPath.prototype.get parent):
        (WebInspector.PropertyPath.prototype.get isPrototype):
        (WebInspector.PropertyPath.prototype.get rootObject):
        (WebInspector.PropertyPath.prototype.get lastNonPrototypeObject):
        (WebInspector.PropertyPath.prototype.get pathComponent):
        (WebInspector.PropertyPath.prototype.get fullPath):
        (WebInspector.PropertyPath.prototype.isRoot):
        (WebInspector.PropertyPath.prototype.isPathComponentImpossible):
        (WebInspector.PropertyPath.prototype.isFullPathImpossible):
        (WebInspector.PropertyPath.prototype.appendPropertyName):
        (WebInspector.PropertyPath.prototype.appendPropertySymbol):
        (WebInspector.PropertyPath.prototype.appendInternalPropertyName):
        (WebInspector.PropertyPath.prototype.appendArrayIndex):
        (WebInspector.PropertyPath.prototype.appendCollectionIndex):
        (WebInspector.PropertyPath.prototype.appendPropertyDescriptor):
        (WebInspector.PropertyPath.prototype._canPropertyNameBeDotAccess):
        PropertyPaths are a linked list of remote object / patch component pairs.
        For a property like "foo['property 1'].__proto__.baz" we will have a PropertyPath
        chain with the RemoteObject for each component. This allows us to accurately
        select the RemoteObject on which we should invoke a getter. It also allows
        us to display the property path string from the root object, if possible.

        * UserInterface/Protocol/RemoteObject.js:
        (WebInspector.RemoteObject.prototype.callFunction):
        (WebInspector.RemoteObject.prototype.backendInvokeGetter):
        (WebInspector.RemoteObject.prototype.invokeGetter):
        Provide a way to invoke a getter function on a remote object if we
        have a reference to the getter function. At the same time, improve
        the mostly unused callFunction API to automatically convert
        RemoteObjects / values to their Runtime.CallArgument format.

        * UserInterface/Views/ObjectTreePropertyTreeElement.css: Added.
        (.object-tree-property):
        (.object-tree-property > .disclosure-button):
        (.object-tree-property.parent > .disclosure-button):
        (.object-tree-property.parent.expanded > .disclosure-button):
        (.object-tree-property > .titles):
        Focused styles for the ObjectTree property GeneralTreeElements.
        Reuse navigation sidebar disclosure-triangles.

        (.object-tree-property > .icon):
        (.object-tree-property.boolean > .icon):
        (.object-tree-property.function > .icon):
        (.object-tree-property.number > .icon):
        (.object-tree-property.object > .icon):
        (.object-tree-property.object.null > .icon):
        (.object-tree-property.object.node > .icon):
        (.object-tree-property.regex > .icon):
        (.object-tree-property.string > .icon):
        (.object-tree-property.symbol > .icon):
        (.object-tree-property.undefined > .icon):
        Use different icons for different object types. Special case
        "accessor" to be undefined.

        (.object-tree-property .prototype-name):
        (.object-tree-property .property-name.not-enumerable):
        Style property names in sans-serif font.
        Give non-enumerable properties a slightly transparent look.

        (.object-tree-property.prototype-property):
        (.object-tree-property.prototype-property > .icon):
        (.object-tree-property.prototype-property + ol):
        Special styles for prototype properties and their children.

        (.object-tree-property .getter):
        (.object-tree-property .getter:hover):
        (.object-tree-property .read-only):
        Styles for clickable getter button and non-interactive read-only indicator.

        (.object-tree-property :matches(.formatted-string, .formatted-regexp)):
        Do not allow wrapping for values that previously allowed wrapping.

        (.object-tree-property .value.error):
        If getting a value resulted in an error, display that error in red.

        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        (WebInspector.ObjectTreePropertyTreeElement):
        Extend from GeneralTreeElement and set up class names on the root <li> object.

        (WebInspector.ObjectTreePropertyTreeElement.prototype.onattach): Deleted.
        No longer needed by using GeneralTreeElement.

        (WebInspector.ObjectTreePropertyTreeElement.prototype.onexpand):
        (WebInspector.ObjectTreePropertyTreeElement.prototype.oncollapse):
        Expand / collapse an associated ObjectPreview if we have one.

        (WebInspector.ObjectTreePropertyTreeElement.prototype._resolvedValue):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._resolvedValuePropertyPath):
        This PropertyTreeElement may be displaying for a value, or a getter that has
        gotten a value. Refer to this as the "resolvedValue".

        (WebInspector.ObjectTreePropertyTreeElement.prototype._thisPropertyPath):
        A PropertyPath leaf used for tooltips.

        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateHasChildren):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTooltips):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTitleAndIcon):
        Helpers for updating small parts of the UI. When a getter is invoked,
        we need to update the entire UI of this TreeElement.

        (WebInspector.ObjectTreePropertyTreeElement.prototype._titleFragment):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTitle): Deleted.
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTitlePropertyStyle): Deleted.
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTitleAPIStyle): Deleted.
        (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitlePrototype):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitlePropertyStyle):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitleAPIStyle):
        Create the UI for the mainTitle of this PropertyTreeElement.
        
        (WebInspector.ObjectTreePropertyTreeElement.prototype._createInteractiveGetterElement):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._createReadOnlyIconElement):
        Helpers for creating the small components of the title UI.

        (WebInspector.ObjectTreePropertyTreeElement.prototype._alwaysDisplayAsProperty):
        Establish when a property should still be displayed as a "property" even when in API mode.
        For example a value property on a prototype, should still display as an expandable property.

        * UserInterface/Views/ObjectTreeView.css:
        (.object-tree > :matches(.title, .object-preview)::before):
        (.object-tree:not(.lossless-preview) > :matches(.title, .object-preview)):
        (.object-tree.expanded > :matches(.title, .object-preview)::before):
        (.object-tree .object-tree-outline):
        (.object-tree-outline ol):
        (.object-tree-outline li .empty-message):
        (:matches(.console-formatted-object, .console-formatted-node, .console-formatted-error, .console-formatted-map, .console-formatted-set, .console-formatted-weakmap) .object-tree-outline):
        (.object-tree > .title): Deleted.
        (.object-tree-outline): Deleted.
        (.object-tree-outline li): Deleted.
        (.object-tree-outline li.parent): Deleted.
        (.object-tree-outline li.parent::before): Deleted.
        (.object-tree-outline li.parent.expanded::before): Deleted.
        (.object-tree-property .name): Deleted.
        (.object-tree-property .name.not-enumerable): Deleted.
        (.object-tree-property .value.error): Deleted.
        (.console-group-messages .object-tree:not(.lossless-preview)): Deleted.
        (.console-group-messages .object-tree:not(.lossless-preview) > :matches(.title, .object-preview)): Deleted.
        (.console-group-messages .object-tree:not(.lossless-preview) > :matches(.title, .object-preview)::before): Deleted.
        (.console-group-messages :matches(.console-formatted-object, .console-formatted-node, .console-formatted-error, .console-formatted-map, .console-formatted-set, .console-formatted-weakmap) .object-tree): Deleted.
        (.console-group-messages :matches(.console-formatted-object, .console-formatted-node, .console-formatted-error, .console-formatted-map, .console-formatted-set, .console-formatted-weakmap) .object-tree-outline): Deleted.
        Move most PropertyTreeElement specific styles into ObjectPropertyTreeElement.css.
        Plenty of console specific files were eliminated.

        * UserInterface/Views/ObjectTreeView.js:
        (WebInspector.ObjectTreeView.prototype.update):
        (WebInspector.ObjectTreeView.prototype._updateProperties):


        Part 2: Provide better parameter lists for native functions.

        When expanding an object's prototype chain, with authored code
        you will accurately see parameter lists for user authored functions
        because we can get this by parsing Function.prototype.toString.
        For native code, we don't get any parameter information. In such cases
        we can detect we are a native function, and provide our own strings.

        This fills in most of the JavaScript built-ins and some DOM
        functions, however we should autogenerate the rest of the DOM.

        * UserInterface/Base/Utilities.js:
        (isFunctionStringNativeCode):
        Helper to check if a function is native or not based on its string.

        * UserInterface/Main.html:
        * UserInterface/Models/NativeFunctionParameters.js: Added.
        Dictionary of parameter lists for native constructor functions
        and prototype functions.

        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        (WebInspector.ObjectTreePropertyTreeElement):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._functionPropertyString):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._functionParameterString):
        (WebInspector.ObjectTreePropertyTreeElement.prototype):
        When we have a native function, try to provide a better parameter string.


        Part 3: Better handle errors when invoking getters.

        * UserInterface/Protocol/RemoteObject.js:
        (WebInspector.RemoteObject.prototype.callFunction):
        (WebInspector.RemoteObject.prototype.invokeGetter):
        Pass the error, wasThrown, and result through to the caller so they can
        act on all the information possible. Provide encapsulation though
        and auto-convert the result to a RemoteObject for the callback.

        * UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
        (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties.nodeResolved):
        (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties.nodePrototypesReady):
        * UserInterface/Views/DOMTreeElement.js:
        (WebInspector.DOMTreeElement.prototype._createTooltipForNode.setTooltip):
        (WebInspector.DOMTreeElement.prototype._createTooltipForNode.resolvedNode):
        (WebInspector.DOMTreeElement.prototype._createTooltipForNode):
        Update current users of callFunctionOn for the new callback parameters.

        * UserInterface/Views/ObjectTreePropertyTreeElement.css:
        (.object-tree-property.had-error > .icon):
        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        (WebInspector.ObjectTreePropertyTreeElement):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateHasChildren):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTitleAndIcon):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitlePropertyStyle):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._createInteractiveGetterElement.):
        Better style getters with errors.

2015-02-24  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Do not show "{}" after Date description in Object Previews
        https://bugs.webkit.org/show_bug.cgi?id=141898

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ObjectPreviewView.js:
        (WebInspector.ObjectPreviewView.prototype._appendPropertyPreviews):
        Only show "{...}" section for Date objects that have user
        defined properties. Otherwise, Dates do not have properties.

2015-02-23  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Remove unused console-object-preview styles - replaced by ObjectPreviewView
        https://bugs.webkit.org/show_bug.cgi?id=141945

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/LogContentView.css:
        (.console-object-preview): Deleted.
        (.expanded .console-object-preview): Deleted.
        (.console-object-preview .name): Deleted.
        (.expanded .console-object-preview > .console-object-preview-body): Deleted.
        (.console-object-preview > .console-object-preview-name.console-object-preview-name-Object): Deleted.
        (.console-object-preview-body .console-object-preview-name.console-object-preview-name-Object): Deleted.
        (.expanded .console-object-preview > .console-object-preview-name.console-object-preview-name-Object): Deleted.

2015-02-23  Saam Barati  <saambarati1@gmail.com>

        Web Inspector: BasicBlockAnnotator ranges should be inclusive of both the start and end offset
        https://bugs.webkit.org/show_bug.cgi?id=141334

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/TextEditor.js:
        (WebInspector.TextEditor.prototype.addStyleToTextRange):

2015-02-22  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Lazily Create GeneralTreeElement Status Elements
        https://bugs.webkit.org/show_bug.cgi?id=141873

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/GeneralTreeElement.js:
        (WebInspector.GeneralTreeElement.prototype.set status):
        (WebInspector.GeneralTreeElement.prototype.onattach):
        (WebInspector.GeneralTreeElement.prototype._createElementsIfNeeded):
        (WebInspector.GeneralTreeElement.prototype._updateStatusElement):
        Lazily create and attach the status element container if
        "this.status" is actually used by a GeneralTreeElement subclass.

        * UserInterface/Views/ResourceTreeElement.js:
        (WebInspector.ResourceTreeElement.prototype._updateStatus):
        Set to the empty string instead of null to avoid inadvertently
        creating status elements for no reason.

2015-02-22  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Give ObjectPreviewView a showTitle/showPreview toggle
        https://bugs.webkit.org/show_bug.cgi?id=141874

        Reviewed by Timothy Hatcher.

        Refactor ObjectTree/ObjectPreview a bit to make it easier
        to use expanding/collapsing previews in other places.

        * UserInterface/Views/ObjectPreviewView.js:
        (WebInspector.ObjectPreviewView):
        (WebInspector.ObjectPreviewView.prototype.showTitle):
        (WebInspector.ObjectPreviewView.prototype.showPreview):
        Maintain both a titleElement and previewElement. Show only
        one at a time based on showTitle/showPreview APIs.

        * UserInterface/Views/ObjectTreeView.css:
        (.object-tree.expanded .object-preview):
        * UserInterface/Views/ObjectTreeView.js:
        (WebInspector.ObjectTreeView):
        (WebInspector.ObjectTreeView.prototype.expand):
        (WebInspector.ObjectTreeView.prototype.collapse):
        If we have a preview, let PreviewView handle toggling
        between a title and preview display.

2015-02-22  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Make Console UI icons / lines slightly larger
        https://bugs.webkit.org/show_bug.cgi?id=141876

        Reviewed by Timothy Hatcher.

        In preparation for a new ObjectTree design with larger icons,
        increase the size of existing output in the Console / Log
        so they don't look so small in comparison. This:

          - bumps minimum height of lines from 16px to 21px
          - 10x10 icons to be 12x12
          - recenters icons to match console prompt
          - realigns icons with console log / object output

        * UserInterface/Views/LogContentView.css:
        (.console-user-command-result.console-log-level::before):
        (.console-message, .console-user-command):
        (.console-item::before):
        (.console-user-command::before):
        (:matches(.console-warning-level, .console-error-level, .console-log-level).console-message):
        (:matches(.console-warning-level, .console-error-level, .console-log-level)::before):
        (.outline-disclosure li):
        (.outline-disclosure .expanded li):
        Fix a case breaking single-line message height.
        Only add padding to expanded trees, not collapsed trees.

        * UserInterface/Views/QuickConsole.css:
        (.quick-console > .console-prompt::before):

2015-02-21  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Generate Previews more often for RemoteObject interaction
        https://bugs.webkit.org/show_bug.cgi?id=141875

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/PropertyDescriptor.js:
        (WebInspector.PropertyDescriptor.fromPayload):
        Fix InternalPropertyDescriptor ingestion. There was no ".internal"
        property on these objects, so take a flag.

        * UserInterface/Protocol/RemoteObject.js:
        (WebInspector.RemoteObject.prototype._getPropertyDescriptors):
        Fix InternalPropertyDescriptor ingestion by specifying during
        importing the internal properties. Also, get previews.

        (WebInspector.RemoteObject.prototype.callFunction):
        Always get previews when using callFunctionOn.

2015-02-20  Ronald Jett  <rjett@apple.com>

        Web Inspector: Add a setting for clearing the console on page reload
        https://bugs.webkit.org/show_bug.cgi?id=134414

        Reviewed by Timothy Hatcher.

        Created a new setting "clear-log-on-reload", which defaults to true.
        Users can toggle this setting with an item added to the console's context menu. 
        When enabled, the console will clear on page reload. When disabled, the console
        content will remain during page reloads. 

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView):
        (WebInspector.LogContentView.prototype._sessionStarted):
        (WebInspector.LogContentView.prototype._handleContextMenuEvent):
        (WebInspector.LogContentView.prototype._toggleClearLogOnReloadSetting):

2015-02-19  Saam Barati  <saambarati1@gmail.com>

        Web Inspector: merge in upstream Esprima to support parsing more of ES6
        https://bugs.webkit.org/show_bug.cgi?id=141215

        Reviewed by Timothy Hatcher.

        This patch merges in a new esprima that has some ES6 support.
        Specifically, the ES6 support ScriptSyntaxTree now has is:
        - ForOf loops
        - Object destructuring
        - Array destructuring

        ScriptSyntaxTree now uses Symbols for identifying AST node types
        instead of strings. This will prevent any direct usage of strings 
        for node types instead of a direct property access off the 
        ScriptSyntaxTree constructor.

        This patch also does some gardening work: 
        - TypeTokenAnnotator only walks over the incoming type information
          data once to be more efficient. 
        - TypeTokenView is now smarter about updating its associated DOM node
          only if its display name has changed.

        * UserInterface/Controllers/TypeTokenAnnotator.js:
        (WebInspector.TypeTokenAnnotator.prototype._insertTypeTokensForEachNode):
        * UserInterface/External/Esprima/esprima.js:
        (.):
        * UserInterface/Models/ScriptSyntaxTree.js:
        (WebInspector.ScriptSyntaxTree.prototype.gatherIdentifiersInVariableDeclaration):
        (WebInspector.ScriptSyntaxTree.prototype._recurse):
        (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):
        * UserInterface/Views/TypeTokenView.js:
        (WebInspector.TypeTokenView.prototype.update):

2015-02-19  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Use of Array.from for NodeList/Arguments to Array conversion
        https://bugs.webkit.org/show_bug.cgi?id=141819

        Reviewed by Timothy Hatcher.

        Array.from is clearer than Array.prototype.slice.call(arrayLike).

        * UserInterface/Base/Test.js:
        (.console.logType):
        * UserInterface/Protocol/InspectorBackend.js:
        (InspectorBackend.Command.prototype.promise):
        (InspectorBackend.Command.prototype._invokeWithArguments):
        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype._allMessages):

2015-02-19  Joseph Pecoraro  <pecoraro@apple.com>

        Follow-up fix to r180371. formatParameterAsValue expects full object, not just a description.

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ConsoleMessageImpl.js:
        (WebInspector.ConsoleMessageImpl.prototype._formatParameter):

2015-02-19  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Introduce FormattedValue helpers and use them in Console/ObjectTree
        https://bugs.webkit.org/show_bug.cgi?id=141812

        Reviewed by Timothy Hatcher.

        There were a few different ways to get styled values. Try to consolidate them
        all in FormattedValue. That is also a convenient place to have the styles.

        * UserInterface/Main.html:
        * UserInterface/Views/ConsoleMessageImpl.js:
        (WebInspector.ConsoleMessageImpl.prototype._formatMessage):
        (WebInspector.ConsoleMessageImpl.prototype._formatParameter):
        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsValue):
        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsString):

        (WebInspector.ConsoleMessageImpl.prototype._userProvidedColumnNames):
        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsTable):
        (WebInspector.ConsoleMessageImpl.prototype._populateStackTraceTreeElement):
        (WebInspector.ConsoleMessageImpl.prototype._propertyPreviewElement): Deleted.
        Fix console.table after renaming ObjectPreview.properties to ObjectPreview.propertyPreviews.
        Also, use FormattedValue to create the value elements. Also, remove class
        "source-code" as I do not see it actually being used in a meaningful way.

        * UserInterface/Views/FormattedValue.css: Added.
        (.formatted-object, .formatted-node, .formatted-error, .formatted-map, .formatted-set, .formatted-weakmap):
        (.formatted-number):
        (.formatted-string, .formatted-regexp):
        (.formatted-string):
        (.formatted-regexp):
        (.formatted-symbol):
        (.formatted-null, .formatted-undefined):
        * UserInterface/Views/FormattedValue.js: Added.
        (WebInspector.FormattedValue.classNameForTypes):
        (WebInspector.FormattedValue.classNameForObject):
        (WebInspector.FormattedValue.createLinkifiedElementString):
        (WebInspector.FormattedValue.createElementForTypesAndValue):
        (WebInspector.FormattedValue.createElementForRemoteObject):
        (WebInspector.FormattedValue.createElementForObjectPreview):
        (WebInspector.FormattedValue.createElementForPropertyPreview):
        Styles and formatted value element creation.

        * UserInterface/Views/LogContentView.css:
        (.expandable.source-code): Deleted.
        Remove ".source-code". I do not see it actually being used in a meaningful way.

        * UserInterface/Views/ObjectPreviewView.js:
        (WebInspector.ObjectPreviewView.prototype._appendPropertyPreviews):
        (WebInspector.ObjectPreviewView.prototype._appendValuePreview):
        (WebInspector.ObjectPreviewView.prototype._formattedObjectElementForPreview): Deleted.
        * UserInterface/Views/ObjectTreePropertyTreeElement.js:
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTitlePropertyStyle):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._descriptionString): Deleted.
        * UserInterface/Views/ObjectTreeView.css:
        (.formatted-object, .formatted-node, .formatted-error, .formatted-map, .formatted-set, .formatted-weakmap): Deleted.
        (.formatted-number): Deleted.
        (.formatted-string, .formatted-regexp): Deleted.
        (.formatted-string): Deleted.
        (.formatted-regexp): Deleted.
        (.formatted-symbol): Deleted.
        (.formatted-null, .formatted-undefined): Deleted.
        * UserInterface/Views/ObjectTreeView.js:
        (WebInspector.ObjectTreeView.classNameForObject): Deleted.
        Extract styles and value formatting to FormattedValue helpers.

2015-02-19  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Disable DOM Tree Editing / Styles Editing of Shadow DOM Nodes
        https://bugs.webkit.org/show_bug.cgi?id=141793

        Unreviewed follow-up. Fix prototypes.

        * UserInterface/Views/ObjectPreviewView.js:
        * UserInterface/Views/ObjectTreeView.js:

2015-02-19  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Create Separate Model and View Objects for RemoteObjects / ObjectPreview / PropertyDescriptor
        https://bugs.webkit.org/show_bug.cgi?id=141696

        Reviewed by Timothy Hatcher.

        * UserInterface/Main.html:
        Add new files.

        * UserInterface/Models/CollectionEntry.js: Added.
        (WebInspector.CollectionEntry):
        (WebInspector.CollectionEntry.fromPayload):
        (WebInspector.CollectionEntry.prototype.get key):
        (WebInspector.CollectionEntry.prototype.get value):
        * UserInterface/Models/CollectionEntryPreview.js: Added.
        (WebInspector.CollectionEntryPreview):
        (WebInspector.CollectionEntryPreview.fromPayload):
        (WebInspector.CollectionEntryPreview.prototype.get keyPreview):
        (WebInspector.CollectionEntryPreview.prototype.get valuePreview):
        * UserInterface/Models/ObjectPreview.js: Added.
        (WebInspector.ObjectPreview):
        (WebInspector.ObjectPreview.fromPayload):
        (WebInspector.ObjectPreview.prototype.get type):
        (WebInspector.ObjectPreview.prototype.get subtype):
        (WebInspector.ObjectPreview.prototype.get description):
        (WebInspector.ObjectPreview.prototype.get lossless):
        (WebInspector.ObjectPreview.prototype.get overflow):
        (WebInspector.ObjectPreview.prototype.get properties):
        (WebInspector.ObjectPreview.prototype.get entries):
        * UserInterface/Models/PropertyPreview.js: Added.
        (WebInspector.PropertyPreview):
        (WebInspector.PropertyPreview.fromPayload):
        (WebInspector.PropertyPreview.prototype.get name):
        (WebInspector.PropertyPreview.prototype.get type):
        (WebInspector.PropertyPreview.prototype.get subtype):
        (WebInspector.PropertyPreview.prototype.get value):
        (WebInspector.PropertyPreview.prototype.get valuePreview):
        * UserInterface/Models/PropertyDescriptor.js: Added.
        (WebInspector.PropertyDescriptor.fromPayload):
        (WebInspector.PropertyDescriptor.prototype.get name):
        (WebInspector.PropertyDescriptor.prototype.get value):
        (WebInspector.PropertyDescriptor.prototype.get writable):
        (WebInspector.PropertyDescriptor.prototype.get configurable):
        (WebInspector.PropertyDescriptor.prototype.get enumerable):
        (WebInspector.PropertyDescriptor.prototype.get isOwnProperty):
        (WebInspector.PropertyDescriptor.prototype.get wasThrown):
        (WebInspector.PropertyDescriptor.prototype.get isInternalProperty):
        (WebInspector.PropertyDescriptor.prototype.hasValue):
        (WebInspector.PropertyDescriptor.prototype.hasGetter):
        (WebInspector.PropertyDescriptor.prototype.hasSetter):
        New Model objects for different Protocol types.
        The only customizations right now are compatibility modifications
        and PropertyDescriptor's "hasValue", "hasGetter", and "hasSetter"
        functions to return reliable checks based on the descriptors contents.

        * UserInterface/Protocol/RemoteObject.js:
        (WebInspector.RemoteObject):
        (WebInspector.RemoteObject.fromPayload):
        (WebInspector.RemoteObject.resolveNode):
        (WebInspector.RemoteObject.prototype.get value):
        (WebInspector.RemoteObject.prototype._isSymbol):
        (WebInspector.RemoteObject.prototype.isCollectionType):
        (WebInspector.RemoteObject.prototype.isWeakCollection):
        (WebInspector.RemoteObject.prototype.getCollectionEntries):
        (WebInspector.RemoteObject.prototype.arrayLength):
        Clean up the existing code to enforce more checks and use our
        style of member variables and public accessors.

        (WebInspector.RemoteObject.prototype.getOwnPropertyDescriptors):
        (WebInspector.RemoteObject.prototype.getOwnAndGetterPropertyDescriptors):
        (WebInspector.RemoteObject.prototype.getAllPropertyDescriptors):
        (WebInspector.RemoteObject.prototype.callback):
        Provide a new way of getting properties that returns Model objects
        instead of raw protocol types.

        * UserInterface/Views/ConsoleMessageImpl.js:
        (WebInspector.ConsoleMessageImpl.prototype._format):
        (WebInspector.ConsoleMessageImpl.prototype._formatParameter):
        (WebInspector.ConsoleMessageImpl.prototype._propertyPreviewElement):
        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsNode):
        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsTable):
        (WebInspector.ConsoleMessageImpl.prototype._formatAsArrayEntry):
        Always include a preview when possible. Now, when forced to be an object,
        force expansion even if the preview is lossless.

        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsObject):
        Use an ObjectTreeView instead of ObjectPropertiesSection.

        (WebInspector.ConsoleMessageImpl.prototype._appendPreview): Deleted.
        (WebInspector.ConsoleMessageImpl.prototype._appendEntryPreviews): Deleted.
        (WebInspector.ConsoleMessageImpl.prototype._appendPropertyPreviews): Deleted.
        (WebInspector.ConsoleMessageImpl.prototype._appendValuePreview): Deleted.
        This code is moved into ObjectPreviewView.


        * UserInterface/Views/ObjectPropertiesSection.js:
        (WebInspector.CollectionEntriesMainTreeElement.prototype.onexpand.callback):
        (WebInspector.CollectionEntriesMainTreeElement.prototype.onexpand):
        These types are now converted to Model types in Model objects, so do not do it here.

        * UserInterface/Views/ObjectPreviewView.css: Added.
        (.object-preview):
        (.object-preview.lossless):
        (.object-preview .name):
        * UserInterface/Views/ObjectPreviewView.js: Added.
        (WebInspector.ObjectPreviewView):
        (WebInspector.ObjectPreviewView.prototype.get preview):
        (WebInspector.ObjectPreviewView.prototype.get element):
        (WebInspector.ObjectPreviewView.prototype.get mode):
        (WebInspector.ObjectPreviewView.prototype.get lossless):
        (WebInspector.ObjectPreviewView.prototype._numberOfPropertiesToShowInMode):
        (WebInspector.ObjectPreviewView.prototype._appendPreview):
        (WebInspector.ObjectPreviewView.prototype._appendEntryPreviews):
        (WebInspector.ObjectPreviewView.prototype._appendPropertyPreviews):
        (WebInspector.ObjectPreviewView.prototype._appendValuePreview):
        (WebInspector.ObjectPreviewView.prototype._formattedObjectElementForPreview):
        An ObjectPreviewView can create a full/brief view given a ObjectPreview.
        The view will contain formatted values everywhere possible.

        * UserInterface/Views/ObjectTreePropertyTreeElement.js: Added.
        (WebInspector.ObjectTreePropertyTreeElement):
        (WebInspector.ObjectTreePropertyTreeElement.prototype.get property):
        (WebInspector.ObjectTreePropertyTreeElement.prototype.onpopulate):
        (WebInspector.ObjectTreePropertyTreeElement.prototype.onattach):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTitle):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTitlePropertyStyle):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTitleAPIStyle):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._descriptionString):
        (WebInspector.ObjectTreePropertyTreeElement.prototype._functionParameterString):
        (WebInspector.ObjectTreePropertyTreeElement.prototype.mode):
        (WebInspector.ObjectTreePropertyTreeElement.prototype):
        * UserInterface/Views/ObjectTreeView.js: Added.
        (WebInspector.ObjectTreeView):
        (WebInspector.ObjectTreeView.classNameForObject):
        (WebInspector.ObjectTreeView.ComparePropertyDescriptors):
        (WebInspector.ObjectTreeView.prototype.get object):
        (WebInspector.ObjectTreeView.prototype.get element):
        (WebInspector.ObjectTreeView.prototype.get expanded):
        (WebInspector.ObjectTreeView.prototype.expand):
        (WebInspector.ObjectTreeView.prototype.collapse):
        (WebInspector.ObjectTreeView.prototype.update):
        (WebInspector.ObjectTreeView.prototype._updateProperties):
        (WebInspector.ObjectTreeView.prototype._handlePreviewOrTitleElementClick):
        Re-implementation of ObjectPropertiesSection for our Model objects
        without "Section" semantics / dependencies. An ObjectTree will creates
        an expandable tree for a RemoteObject. The top level clickable item
        will be an ObjectPreview if possible, otherwise just a title element.

        * UserInterface/Views/ObjectTreeView.css: Added.
        (.object-tree):
        (.object-tree > .title):
        (.object-tree > :matches(.title, .object-preview)::before):
        (.object-tree.expanded > :matches(.title, .object-preview)::before):
        (.object-tree.lossless-preview > :matches(.title, .object-preview)::before):
        (.object-tree-outline):
        (.object-tree.expanded > .object-tree-outline):
        (.object-tree-outline li):
        (.object-tree-outline li.parent):
        (.object-tree-outline li.parent::before):
        (.object-tree-outline li.parent.expanded::before):
        (.object-tree-outline ol):
        (.object-tree-outline ol.expanded):
        (.object-tree-outline li .empty-message):
        (.object-tree-property .name):
        (.object-tree-property .name.not-enumerable):
        (.object-tree-property .value.error):
        (.formatted-object, .formatted-node, .formatted-error, .formatted-map, .formatted-set, .formatted-weakmap):
        (.formatted-number):
        (.formatted-string, .formatted-regexp):
        (.formatted-string):
        (.formatted-regexp):
        (.formatted-symbol):
        (.formatted-null, .formatted-undefined):
        (.console-group-messages .object-tree:not(.lossless-preview)):
        (.console-group-messages .object-tree:not(.lossless-preview) > :matches(.title, .object-preview)):
        (.console-group-messages .object-tree:not(.lossless-preview) > :matches(.title, .object-preview)::before):
        (.console-group-messages :matches(.console-formatted-object, .console-formatted-node, .console-formatted-error, .console-formatted-map, .console-formatted-set, .console-formatted-weakmap) .object-tree):
        (.console-group-messages :matches(.console-formatted-object, .console-formatted-node, .console-formatted-error, .console-formatted-map, .console-formatted-set, .console-formatted-weakmap) .object-tree-outline):
        All styles for ObjectTree / ObjectPreview. Independent from
        other styles in the inspector. Most of this is a copy of
        the styles applied to ObjectPropertiesSection, renamed.


        * UserInterface/Views/ObjectTreeCollectionTreeElement.js: Added.
        (WebInspector.ObjectTreeCollectionTreeElement):
        (WebInspector.ObjectTreeCollectionTreeElement.propertyDescriptorForEntry):
        (WebInspector.ObjectTreeCollectionTreeElement.prototype.get remoteObject):
        (WebInspector.ObjectTreeCollectionTreeElement.prototype.onexpand.callback):
        (WebInspector.ObjectTreeCollectionTreeElement.prototype.onexpand):
        (WebInspector.ObjectTreeCollectionTreeElement.prototype.oncollapse):
        (WebInspector.ObjectTreeCollectionTreeElement.prototype.ondetach):
        (WebInspector.ObjectTreeCollectionTreeElement.prototype._trackWeakEntries):
        (WebInspector.ObjectTreeCollectionTreeElement.prototype._untrackWeakEntries):
        (WebInspector.ObjectTreeCollectionEntryTreeElement):
        (WebInspector.ObjectTreeCollectionEntryTreeElement.prototype.onpopulate):
        (WebInspector.ObjectTreeCollectionEntryTreeElement.prototype.onattach):
        (WebInspector.ObjectTreeEmptyCollectionTreeElement):
        Essentially a copy of ObjectPropertiesSection Collection handling using
        the ObjectTree class names.

        * UserInterface/Views/TreeOutlineDataGridSynchronizer.js:
        Fix prototype typo.

2015-02-19  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: DOMTree / Node Details Sidebar do not update as <input> content changes
        https://bugs.webkit.org/show_bug.cgi?id=141790

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
        (WebInspector.DOMNodeDetailsSidebarPanel):
        (WebInspector.DOMNodeDetailsSidebarPanel.prototype._characterDataModified):
        Update Node "Value" details if character data changes.

        * UserInterface/Views/DOMTreeUpdater.js:
        (WebInspector.DOMTreeUpdater.prototype._updateModifiedNodes):
        Update the title of the parent. If the parent had a single text node child
        and now doesn't, it will need to update its display.

2015-02-19  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Disable DOM Tree Editing / Styles Editing of Shadow DOM Nodes
        https://bugs.webkit.org/show_bug.cgi?id=141793

        Reviewed by Timothy Hatcher.

        Currently the backend disallows editing of Shadow DOM nodes,
        so the frontend should not provide options that do not work.
        Long term we should allow editing Shadow DOM nodes.

        * UserInterface/Models/CSSStyleDeclaration.js:
        (WebInspector.CSSStyleDeclaration.prototype.get editable):
        Inline styles on a Shadow DOM node are not editable.

        * UserInterface/Views/DOMTreeElement.js:
        (WebInspector.DOMTreeElement.prototype.ondelete):
        (WebInspector.DOMTreeElement.prototype._startEditingTarget):
        (WebInspector.DOMTreeElement.prototype._populateTagContextMenu):
        (WebInspector.DOMTreeElement.prototype._populateTextContextMenu):
        (WebInspector.DOMTreeElement.prototype._populateNodeContextMenu):
        (WebInspector.DOMTreeElement.prototype._startEditing):
        Disable context menus and keyboard shortcuts on Shadow DOM nodes.
        Only Context Menu item we keep is "Copy as HTML".

        * UserInterface/Views/DOMTreeOutline.js:
        (WebInspector.DOMTreeOutline.prototype._contextMenuEventFired):
        (WebInspector.DOMTreeOutline.prototype.populateContextMenu):
        Eliminate double look-up.

        * UserInterface/Views/RulesStyleDetailsPanel.js:
        (WebInspector.RulesStyleDetailsPanel.prototype.refresh.addNewRuleButton):
        Do not add the New Rule Button to the Styles Sidebar of Shadow DOM Nodes.
        Instead this will just be an empty divider.

2015-02-18  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: REGRESSION: Missing Divider line between console.log and console evaluation
        https://bugs.webkit.org/show_bug.cgi?id=141770

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/LogContentView.css:
        (.console-item):
        (.console-message): Deleted.

2015-02-18  Jono Wells  <jonowells@apple.com>

        Web Inspector: Inspecting a page where resources are in folders forces folder organization on every subsequent page
        https://bugs.webkit.org/show_bug.cgi?id=141397

        Reviewed by Timothy Hatcher.

        When removeChildren is called on an instance of a FolderizedTreeElement, the element's _groupedIntoFolders flag
        will now be set to false. This will prevent unnecessary folderization upon a frame navigation. Also during an
        onpopulate event, addChildForRepresentedObject is called repeatedly and much of the work done during each call
        was unnecessary. That work has now been partially removed and partially relocated to a function that is only
        called at the beginning of an onpopulate event.

        * UserInterface/Views/FolderizedTreeElement.js:
        (WebInspector.FolderizedTreeElement.prototype.set removeChildren): Set _groupedIntoFolders to false.
        (WebInspector.FolderizedTreeElement.prototype.addChildForRepresentedObject): Remove unnecessary treeOutline
        emptiness check, and move _shouldGroupIntoFolders() check to new function prepareToPopulate().
        (WebInspector.FolderizedTreeElement.prototype.prepareToPopulate): Create.
        (WebInspector.FolderizedTreeElement.prototype._populateFromNewChildQueue): Call prepareToPopulate().

        * UserInterface/Views/FrameTreeElement.js:
        (WebInspector.FrameTreeElement.prototype.onpopulate): Call prepareToPopulate().

        * UserInterface/Views/GeneralTreeElement.js: Drive-by inheritance style fix.
        * UserInterface/Views/ResourceTreeElement.js: Drive-by inheritance style fix.

2015-02-16  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: ES6: Improved Console Support for Promise Objects
        https://bugs.webkit.org/show_bug.cgi?id=141634

        Reviewed by Timothy Hatcher.

        * UserInterface/Protocol/RemoteObject.js:
        For now just add Internal Properties and regular properties.
        We will address the UI later.

2015-02-16  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Tweak the styles on the Console
        https://bugs.webkit.org/show_bug.cgi?id=140580

            - Use non-monospace (default sans-serif) font for console messages, but keep using monospace font
              for objects, functions, and anything else that presumably code.
            - Display all expandable objects on a separate row.

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ConsoleCommand.js:
        (WebInspector.ConsoleCommand.prototype.decorateMessageElement):
        (WebInspector.ConsoleCommand.prototype.toMessageElement):
        * UserInterface/Views/ConsoleGroup.js:
        (WebInspector.ConsoleGroup.prototype.addMessage):
        * UserInterface/Views/ConsoleMessageImpl.js:
        (WebInspector.ConsoleMessageImpl.prototype._format):
        (WebInspector.ConsoleMessageImpl.prototype._isExpandable):
        (WebInspector.ConsoleMessageImpl.prototype._formatParameter):
        (WebInspector.ConsoleMessageImpl.prototype.append):
        (WebInspector.ConsoleMessageImpl.prototype._formatWithSubstitutionString):
        (WebInspector.ConsoleMessageImpl.prototype.decorateMessageElement):
        (WebInspector.ConsoleMessageImpl.prototype.toMessageElement):
        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsString): Deleted.
        * UserInterface/Views/LogContentView.css:
        (.console-messages):
        (.console-formatted-object):
        (.expandable.source-code):
        (.console-message):
        (.console-item.selected::after):
        (.console-messages:focus .console-item.selected::after):
        (.console-user-command-result.console-log-level::before):
        (.console-item::before):
        (.console-message .bubble):
        (.console-error-level):
        (.console-error-level .section .header .title):
        (.console-error-level::before):
        (.console-warning-level):
        (.console-warning-level .console-message-text):
        (.console-warning-level::before):
        (.console-user-command::before):
        (.console-group-messages .section):
        (.console-group-messages .section .header::before):
        (.console-group-messages .section .header .title):
        (.console-formatted-object, .console-formatted-node, .console-formatted-error, .console-formatted-map, .console-formatted-set, .console-formatted-weakmap):
        (.outline-disclosure li):
        (.outline-disclosure li.parent::before):
        (.console-item): Deleted.
        (.console-item.selected): Deleted.
        (.console-messages:focus .console-item.selected): Deleted.
        (.console-item.selected .console-message::after): Deleted.
        (.console-messages:focus .console-item.selected .data-grid tr.selected): Deleted.
        (.console-messages:focus .console-item.selected .console-message::after): Deleted.
        (.console-message, .console-user-command): Deleted.
        (.console-message::before, .console-user-command::before, .javascript-prompt::before, .console-group-title::before): Deleted.
        (.console-group): Deleted.
        (.console-debug-level .console-message-text): Deleted.
        (.console-debug-level::before): Deleted.
        (.console-group-messages .section .header): Deleted.
        (.console-group-messages .outline-disclosure): Deleted.
        (.console-group-messages .outline-disclosure > ol): Deleted.
        (.outline-disclosure li.elements-drag-over .selection): Deleted.
        (.outline-disclosure ol:focus li.selected .selection): Deleted.
        (.outline-disclosure > ol): Deleted.
        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype._mousemove):
        (WebInspector.LogContentView.prototype._updateMessagesSelection):
        (WebInspector.LogContentView.prototype._isMessageVisible):
        (WebInspector.LogContentView.prototype._isMessageSelected):
        (WebInspector.LogContentView.prototype._selectAllMessages):
        (WebInspector.LogContentView.prototype._unfilteredMessages):
        (WebInspector.LogContentView.prototype._visibleMessages):
        (WebInspector.LogContentView.prototype._filterMessages):
        (WebInspector.LogContentView.prototype._leftArrowWasPressed):
        (WebInspector.LogContentView.prototype._propertiesSectionDidUpdateContent):
        (WebInspector.LogContentView.prototype._performSearch):
        * UserInterface/Views/Section.css:
        (.section .header .title::before):
        (.section.expanded .header .title::before):
        (.section .header .title, .event-bar .header .title):
        (.properties-tree li.parent::before):
        (.section .header::before): Deleted.
        (.section.expanded .header::before): Deleted.

2015-02-15  Brian J. Burg  <burg@cs.washington.edu>

        Web Inspector: remove unused XHR replay code
        https://bugs.webkit.org/show_bug.cgi?id=141622

        Reviewed by Timothy Hatcher.

        * UserInterface/Protocol/Legacy/7.0/InspectorBackendCommands.js:
        * UserInterface/Protocol/Legacy/8.0/InspectorBackendCommands.js:
        * Versions/Inspector-iOS-7.0.json:
        * Versions/Inspector-iOS-8.0.json:

2015-02-14  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Remove specificity approximation
        https://bugs.webkit.org/show_bug.cgi?id=141600

        Reviewed by Timothy Hatcher.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Views/CSSStyleDeclarationSection.js:
        (WebInspector.CSSStyleDeclarationSection.prototype.refresh.appendSelector):

2015-02-13  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: support better git diff of localizedStrings.js
        https://bugs.webkit.org/show_bug.cgi?id=137237

        Reviewed by Joseph Pecoraro.

        * .gitattributes: Added.

2015-02-12  Brian J. Burg  <burg@cs.washington.edu>

        Web Inspector: add keyboard shortcut to enable/disable all breakpoints
        https://bugs.webkit.org/show_bug.cgi?id=141527

        Reviewed by Joseph Pecoraro.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Views/DebuggerSidebarPanel.js:
        (WebInspector.DebuggerSidebarPanel): Bind Command/Control + Y to toggle breakpoints button.

2015-02-12  Brian J. Burg  <burg@cs.washington.edu>

        Web Inspector: support adding and removing timelines to the timeline sidebar panel and overview
        https://bugs.webkit.org/show_bug.cgi?id=138434

        Reviewed by Timothy Hatcher.

        A timeline recording's timelines should not be static. This patch adds relevant machinery to
        dynamically add and remove timelines from the Timeline model object and its various views.

        From the model side, this is a simple change that adds TimelineAdded and TimelineRemoved events.
        The timeline views and timeline sidebar require more extensive changes to support this functionality.
        Instead of keeping a fixed set of timeline tree elements, the sidebar view now adds and removes
        tree elements to reflect the available timelines for the displayed timeline recording.

        This change also includes several minor cleanups, such as appending 'Element' to view properties that
        are DOM elements, and renaming TimelineContentView to TimelineRecordingContentView.

        * UserInterface/Controllers/TimelineManager.js:
        (WebInspector.TimelineManager.prototype._loadNewRecording):
        Populate predefined network, layout, and script timelines here after constructing the recording.

        * UserInterface/Main.html:
        * UserInterface/Models/Timeline.js:
        Move hardcoded class names and localized strings to these base class methods. This is not implemented
        using overridden methods because not all timeline types have their own subclasses. Add a dummy
        implementation of saveIdentityToCookie() to avoid warnings when saving sidebar panel selection state.

        (WebInspector.Timeline.prototype.get type):
        (WebInspector.Timeline.prototype.get displayName): Added.
        (WebInspector.Timeline.prototype.get iconClassName): Added.
        (WebInspector.Timeline.prototype.addRecord):
        * UserInterface/Models/TimelineRecording.js:
        (WebInspector.TimelineRecording):
        (WebInspector.TimelineRecording.prototype.addTimeline.set timeline): Added.
        (WebInspector.TimelineRecording.prototype.addTimeline): Added.
        (WebInspector.TimelineRecording.prototype.removeTimeline.get this): Added.
        (WebInspector.TimelineRecording.prototype.removeTimeline): Added.
        * UserInterface/Views/ContentView.js:
        (WebInspector.ContentView):
        * UserInterface/Views/LayoutTimelineView.css:
        (.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .navigation-sidebar-panel-content-tree-outline.layout .item .subtitle):
        (.sidebar > .panel.navigation.timeline.timeline-content-view-showing .navigation-sidebar-panel-content-tree-outline.layout .item .subtitle): Deleted.
        * UserInterface/Views/LayoutTimelineView.js:
        (WebInspector.LayoutTimelineView.prototype._treeElementSelected):
        (WebInspector.LayoutTimelineView.prototype._closeStatusButtonClicked):
        * UserInterface/Views/NavigationSidebarPanel.js:
        (WebInspector.NavigationSidebarPanel.prototype.saveStateToCookie): Fix error message formatting.
        (WebInspector.NavigationSidebarPanel.prototype._updateFilter):
        * UserInterface/Views/NetworkTimelineView.css:
        (.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .navigation-sidebar-panel-content-tree-outline.network .item .subtitle):
        (.sidebar > .panel.navigation.timeline.timeline-content-view-showing .navigation-sidebar-panel-content-tree-outline.network .item .subtitle): Deleted.
        * UserInterface/Views/NetworkTimelineView.js:
        (WebInspector.NetworkTimelineView.prototype._closeStatusButtonClicked):
        * UserInterface/Views/ScriptTimelineView.css:
        (.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .navigation-sidebar-panel-content-tree-outline.script .item .subtitle):
        (.sidebar > .panel.navigation.timeline.timeline-content-view-showing .navigation-sidebar-panel-content-tree-outline.script .item .subtitle): Deleted.
        * UserInterface/Views/ScriptTimelineView.js:
        (WebInspector.ScriptTimelineView.prototype._treeElementSelected):
        (WebInspector.ScriptTimelineView.prototype._closeStatusButtonClicked):
        * UserInterface/Views/TimelineOverview.js:
        Convert this class to use the representedObject class pattern. It manages its own mapping from timelines
        to overview graph views. Append 'Element' to some properties holding DOM elements.
        (WebInspector.TimelineOverview):
        (WebInspector.TimelineOverview.prototype.get visibleDuration):
        (WebInspector.TimelineOverview.prototype.reset):
        (WebInspector.TimelineOverview.prototype.updateLayout):
        (WebInspector.TimelineOverview.prototype._handleScrollEvent):
        (WebInspector.TimelineOverview.prototype._handleWheelEvent):
        (WebInspector.TimelineOverview.prototype._timelineRemoved):
        (WebInspector.TimelineOverview.prototype.updateLayoutIfNeeded):
        (WebInspector.TimelineOverview.prototype._timeRangeSelectionChanged):
        * UserInterface/Views/TimelineRecordingContentView.css: Renamed from Source/WebInspectorUI/UserInterface/Views/TimelineContentView.css.
        Remove hard-coded top offsets and heights that need to be dynamically calculated.
        (.content-view.timeline-recording > .timeline-overview):
        (.content-view.timeline-recording > .view-container):
        (.content-view.timeline-recording > .view-container > .timeline-view > .data-grid td):
        (.content-view.timeline-recording > .view-container > .timeline-view > .data-grid table.data):
        * UserInterface/Views/TimelineRecordingContentView.js: Renamed from Source/WebInspectorUI/UserInterface/Views/TimelineContentView.js.
        Manage timeline views and path components dynamically. Adjust view heights as necessary. Append 'Element'
        to some properties holding DOM elements.
        (WebInspector.TimelineRecordingContentView):
        (WebInspector.TimelineRecordingContentView.prototype.showOverviewTimelineView):
        (WebInspector.TimelineRecordingContentView.prototype.showTimelineViewForTimeline):
        (WebInspector.TimelineRecordingContentView.prototype.get allowedNavigationSidebarPanels):
        (WebInspector.TimelineRecordingContentView.prototype.get supportsSplitContentBrowser):
        (WebInspector.TimelineRecordingContentView.prototype.get navigationItems):
        (WebInspector.TimelineRecordingContentView.prototype.get currentTimelineView):
        (WebInspector.TimelineRecordingContentView.prototype.shown):
        (WebInspector.TimelineRecordingContentView.prototype.hidden):
        (WebInspector.TimelineRecordingContentView.prototype.filterDidChange):
        (WebInspector.TimelineRecordingContentView.prototype.updateLayout):
        (WebInspector.TimelineRecordingContentView.prototype.saveToCookie):
        (WebInspector.TimelineRecordingContentView.prototype.restoreFromCookie):
        (WebInspector.TimelineRecordingContentView.prototype.get matchTreeElementAgainstCustomFilters.checkTimeBounds):
        (WebInspector.TimelineRecordingContentView.prototype.get matchTreeElementAgainstCustomFilters):
        (WebInspector.TimelineRecordingContentView.prototype._pathComponentSelected):
        (WebInspector.TimelineRecordingContentView.prototype._timelineViewSelectionPathComponentsDidChange):
        (WebInspector.TimelineRecordingContentView.prototype._showTimelineView):
        (WebInspector.TimelineRecordingContentView.prototype._update):
        (WebInspector.TimelineRecordingContentView.prototype._updateTimes):
        (WebInspector.TimelineRecordingContentView.prototype._startUpdatingCurrentTime):
        (WebInspector.TimelineRecordingContentView.prototype._stopUpdatingCurrentTime):
        (WebInspector.TimelineRecordingContentView.prototype._capturingStarted):
        (WebInspector.TimelineRecordingContentView.prototype._capturingStopped):
        (WebInspector.TimelineRecordingContentView.prototype._debuggerPaused):
        (WebInspector.TimelineRecordingContentView.prototype._debuggerResumed):
        Fix a minor regression where we make a useless call to stop updating the time.

        (WebInspector.TimelineRecordingContentView.prototype._recordingTimesUpdated):
        (WebInspector.TimelineRecordingContentView.prototype._clearTimeline):
        (WebInspector.TimelineRecordingContentView.prototype._timelineRemoved):
        (WebInspector.TimelineRecordingContentView.prototype._timelineCountChanged):
        (WebInspector.TimelineRecordingContentView.prototype._recordingReset):
        (WebInspector.TimelineRecordingContentView.prototype._recordingUnloaded):
        (WebInspector.TimelineRecordingContentView.prototype._timeRangeSelectionChanged):
        * UserInterface/Views/TimelineSidebarPanel.css:
        (.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing > .content):
        (.sidebar > .panel.navigation.timeline.timeline-content-view-showing > .content): Deleted.
        * UserInterface/Views/TimelineSidebarPanel.js:
        Manage timeline tree elements dynamically. Adjust view heights as necessary. Append 'Element'
        to some properties holding DOM elements. Keep track of the displayed recording and view explicitly.
        (WebInspector.TimelineSidebarPanel):
        (WebInspector.TimelineSidebarPanel.prototype.shown):
        (WebInspector.TimelineSidebarPanel.prototype.showDefaultContentView):
        (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject.looselyCompareRepresentedObjects):
        (WebInspector.TimelineSidebarPanel.prototype.showTimelineOverview):
        (WebInspector.TimelineSidebarPanel.prototype.updateFilter):
        (WebInspector.TimelineSidebarPanel.prototype.matchTreeElementAgainstCustomFilters):
        (WebInspector.TimelineSidebarPanel.prototype.canShowDifferentContentView):
        (WebInspector.TimelineSidebarPanel.prototype.saveStateToCookie):
        (WebInspector.TimelineSidebarPanel.prototype.get if):
        (WebInspector.TimelineSidebarPanel.prototype._contentBrowserCurrentContentViewDidChange):
        (WebInspector.TimelineSidebarPanel.prototype._recordingCountChanged):
        (WebInspector.TimelineSidebarPanel.prototype._recordingSelected):
        (WebInspector.TimelineSidebarPanel.prototype._recordingLoaded):
        (WebInspector.TimelineSidebarPanel.prototype._timelineRemoved):
        (WebInspector.TimelineSidebarPanel.prototype._timelineCountChanged):
        (WebInspector.TimelineSidebarPanel.createTimelineTreeElement): Deleted.
        (WebInspector.TimelineSidebarPanel.prototype.restoreStateFromCookie):
        * UserInterface/Views/TimelineView.css:
        (.panel.navigation.timeline.timeline-recording-content-view-showing > .content > .navigation-sidebar-panel-content-tree-outline):
        (.panel.navigation.timeline.timeline-content-view-showing > .content > .navigation-sidebar-panel-content-tree-outline): Deleted.

2015-02-12  Brian J. Burg  <burg@cs.washington.edu>

        Web Inspector: Large background image fails to load in inspector
        https://bugs.webkit.org/show_bug.cgi?id=141405

        Reviewed by Timothy Hatcher.

        Convert base64-encoded resource data to binary data using Uint8Array and Blobs.
        Use object URLs for blobs instead of data URLs when setting image 'src' attribute
        and in @font-face urls. This conversion happens when the backend indicates that
        resource content is base64-encoded.

        Update image and font clients of resource-fetching functionality so that they use
        object URLs correctly. Add some plumbing so that Blobs can be constructed with
        the correct mime-type.

        * UserInterface/Base/Utilities.js:
        (decodeBase64ToBlob): Added.
        * UserInterface/Models/CSSStyleSheet.js:
        (WebInspector.CSSStyleSheet.prototype.get mimeType): Added.
        * UserInterface/Models/Resource.js:
        (WebInspector.Resource.prototype.createObjectURL): Added.
        (WebInspector.Resource.prototype.getImageSize.imageDidLoad):
        (WebInspector.Resource.prototype.getImageSize):
        (WebInspector.Resource.prototype.get contentURL): Deleted.
        * UserInterface/Models/Script.js:
        (WebInspector.Script.prototype.get mimeType): Added.
        * UserInterface/Models/SourceCode.js:
        (WebInspector.SourceCode.prototype.get mimeType): Added.
        (WebInspector.SourceCode.prototype._processContent):
        (WebInspector.SourceCode.prototype.get contentIsBase64Encoded): Deleted.
        * UserInterface/Models/SourceCodeRevision.js:
        (WebInspector.SourceCodeRevision):
        (WebInspector.SourceCodeRevision.prototype.copy):
        (WebInspector.SourceCodeRevision.prototype.get contentIsBase64Encoded): Deleted.
        (WebInspector.SourceCodeRevision.prototype.set contentIsBase64Encoded): Deleted.
        * UserInterface/Views/FontResourceContentView.js:
        (WebInspector.FontResourceContentView.prototype.hidden):
        (WebInspector.FontResourceContentView.prototype.closed):
        * UserInterface/Views/ImageResourceContentView.js:
        (WebInspector.ImageResourceContentView.prototype.contentAvailable):

2015-02-11  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: REGRESSION: Clicking selected item in the sidebar second time should scroll to the corresponding line
        https://bugs.webkit.org/show_bug.cgi?id=140280

        Reviewed by Brian Burg.

        * UserInterface/Views/ContentViewContainer.js:
        (WebInspector.ContentViewContainer.prototype.showContentView):
        Perform scolling regardless of the navigation history. Since scrolling source code doesn't introduce a BackForwardEntry,
        it's possible that the actual content view has a different scroll position.

2015-02-10  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Better handle unknown release versions
        https://bugs.webkit.org/show_bug.cgi?id=141454

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/Platform.js:
        If given an unknown Mac OS X version, at least parse
        the version number in WebInspector.Platform.

2015-02-10  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Make collapsed sidebars undraggable
        https://bugs.webkit.org/show_bug.cgi?id=140664

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/Sidebar.css:
        (.sidebar.collapsed):
        (.sidebar.collapsed.right > .resizer): Deleted.
        (.sidebar.collapsed.left > .resizer): Deleted.
        * UserInterface/Views/Sidebar.js:
        (WebInspector.Sidebar):
        (WebInspector.Sidebar.prototype._resizerMouseDown):
        (WebInspector.Sidebar.prototype._resizerMouseMoved):
        (WebInspector.Sidebar.prototype._resizerDoubleClicked): Deleted.

2015-02-10  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: CSS Pretty Printing: still fails fails to put space between rgb(...) and numbers in minified gradients
        https://bugs.webkit.org/show_bug.cgi?id=141411

        Reviewed by Timothy Hatcher.

        * Tools/PrettyPrinting/CodeMirrorFormatters.js:
        * UserInterface/Views/CodeMirrorFormatters.js:
        Token actually was "number m-css" so we should check token strings
        more robustly, like elsewhere in the formatters.

2015-02-09  Brian J. Burg  <burg@cs.washington.edu>

        Web Inspector: Uncaught exception when reporting wrong backend command call signature
        https://bugs.webkit.org/show_bug.cgi?id=141401

        Reviewed by Joseph Pecoraro.

        * UserInterface/Protocol/InspectorBackend.js:
        (InspectorBackend.Command.prototype._invokeWithArguments): Fix wrong variable name.

2015-02-06  Jono Wells  <jonowells@apple.com>

        Web Inspector: REGRESSION: CSS Resource appears as empty after editing it via Styles sidebar
        https://bugs.webkit.org/show_bug.cgi?id=140586

        Reviewed by Timothy Hatcher.

        Update SourceCode#_processContent to properly handle the promise returned from CSSAgent so that the content
        will properly update when a style has changed. Properly clear the existing _requestContentPromise on the
        stylesheet so that the content will update correctly.

        * UserInterface/Controllers/CSSStyleManager.js: Drive-by style updates.
        (WebInspector.CSSStyleManager.prototype._fetchInfoForAllStyleSheets):
        * UserInterface/Models/CSSStyleSheet.js: Drive-by inheritance style update.
        (WebInspector.CSSStyleSheet.prototype.requestContentFromBackend): Remove unnecessary backend promise function call.
        * UserInterface/Models/Resource.js: Drive-by removal of unused variable.
        * UserInterface/Models/SourceCode.js:
        (WebInspector.SourceCode.prototype.markContentAsStale): Clear _requestContentPromise.
        (WebInspector.SourceCode.prototype._processContent): Handle `parameters.text` correctly.

2015-02-04  Jono Wells  <jonowells@apple.com>

        Web Inspector: REGRESSION: Inline SourceMap resources show empty content when opened.
        https://bugs.webkit.org/show_bug.cgi?id=141225

        Reviewed by Timothy Hatcher.

        Change WebInspector.SourceMapResource.prototype.requestContentFromBackend to correctly and consistently handle
        calls to NetworkAgent. The helper function sourceMapResourceLoaded will now properly handle parameters as a single
        payload, including manual calls in the case where the source map content is in a data URI. Also
        WebInspector.SourceCode.prototype._processContent now properly handles an error string used for displaying
        resource loading error messages in the resource content view.

        * UserInterface/Models/Resource.js: drive-by style fix.

        * UserInterface/Models/SourceCode.js:
        (WebInspector.SourceCode.prototype._processContent):
        Properly handle error string.

        * UserInterface/Models/SourceMapResource.js:
        (WebInspector.SourceMapResource.prototype.requestContentFromBackend):
        (WebInspector.SourceMapResource.prototype.requestContentFromBackend.sourceMapResourceLoaded):
        Formerly sourceMapResourceLoadError, now handles parameters from the NetworkAgent correctly.

        (WebInspector.SourceMapResource.prototype.requestContentFromBackend.sourceMapResourceLoadError):
        This function now handles NetworkAgent errors only.

2015-02-05  Brian J. Burg  <burg@cs.washington.edu>

        Web Inspector: eliminate some unnecessary layout/painting in timeline overview and ruler
        https://bugs.webkit.org/show_bug.cgi?id=141293

        Reviewed by Timothy Hatcher.

        The timeline overview's ruler was forcing repaints of divider labels even if the labels
        had not changed since the last requestAnimationFrame. Bail out early if nothing changed.

        The timeline overview and its graphs were updating layout using requestAnimationFrame
        even when the TimelineContentView is not visible. Fix this by propagating visibility
        changes to subviews, and not updating layout when hidden.

        The above change also fixes an assertion sometimes encountered when the timeline view
        tries to cache an element's offset width, but cannot because it isn't visible.

        * UserInterface/Views/TimelineContentView.js:
        (WebInspector.TimelineContentView.prototype.shown):
        (WebInspector.TimelineContentView.prototype.hidden):
        * UserInterface/Views/TimelineOverview.js:
        (WebInspector.TimelineOverview.prototype.get visible):
        (WebInspector.TimelineOverview.prototype.shown):
        (WebInspector.TimelineOverview.prototype.hidden):
        (WebInspector.TimelineOverview.prototype._needsLayout):
        * UserInterface/Views/TimelineOverviewGraph.js:
        (WebInspector.TimelineOverviewGraph.prototype.get visible):
        (WebInspector.TimelineOverviewGraph.prototype.shown):
        (WebInspector.TimelineOverviewGraph.prototype.hidden):
        (WebInspector.TimelineOverviewGraph.prototype.needsLayout):
        * UserInterface/Views/TimelineRuler.js:
        (WebInspector.TimelineRuler.prototype.updateLayout):

2015-02-04  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: ES6: Improved Console Support for Symbol Objects
        https://bugs.webkit.org/show_bug.cgi?id=141173

        Reviewed by Timothy Hatcher.

        * UserInterface/Protocol/RemoteObject.js:
        (WebInspector.RemoteObject):
        (WebInspector.RemoteObject.prototype._isSymbol):
        Symbols have an objectId because it is a non-primitive that cannot be passed
        by value, however it cannot have properties, so handle some cases.

        * UserInterface/Views/LogContentView.css:
        (.console-formatted-symbol):
        Give Symbol's their own color.

2015-02-04  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Insertion bar (caret) is hidden behind the placeholder text in the style editor
        https://bugs.webkit.org/show_bug.cgi?id=139659

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/CSSStyleDeclarationTextEditor.css:
        (.css-style-text-editor > .CodeMirror .CodeMirror-placeholder):
        Use non-monospace font to fit the placeholder text on a single line and
        match the color if the native placeholder.

2015-02-04  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: console.table with columnName filter for non-existent property should still show column
        https://bugs.webkit.org/show_bug.cgi?id=141066

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ConsoleMessageImpl.js:
        (WebInspector.ConsoleMessageImpl.prototype._appendPropertyPreviews):
        (WebInspector.ConsoleMessageImpl.prototype._userProvidedColumnNames):
        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsTable):
        If a second argument was provided to console.table, try to extract a list
        of string names to use for the object properties. Output a table with
        the provided column names, in the specified order. Also, use this
        opportunity to mark missing properties with an em dash.

2015-02-02  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: CSS Autocompletion: Autodetect many color supporting properties
        https://bugs.webkit.org/show_bug.cgi?id=141166

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/Utilities.js:
        Add String.prototype.endsWith. Group String extensions together.

        * UserInterface/Models/CSSKeywordCompletions.js:
        (WebInspector.CSSKeywordCompletions.forProperty):
        If a property name ends in "color", provide CSS color completions.

        (WebInspector.CSSKeywordCompletions.isColorAwareProperty): Deleted.
        This was unused and disagrees slightly with the implementation above.

2015-02-02  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Support console.table
        https://bugs.webkit.org/show_bug.cgi?id=141058

        Reviewed by Timothy Hatcher.

        * Localizations/en.lproj/localizedStrings.js:
        New "Index", "(Index)", "Value", table header strings.

        * UserInterface/Views/ConsoleMessage.js:
        Add "Table", but add FIXMEs to consider using the protocol generated enums.

        * UserInterface/Views/ConsoleMessageImpl.js:
        (WebInspector.ConsoleMessageImpl.prototype._format):
        Special case console.table messages.

        (WebInspector.ConsoleMessageImpl.prototype._appendPropertyPreviews):
        (WebInspector.ConsoleMessageImpl.prototype._propertyPreviewElement):
        Factor out ProjectPreview printing. Also, replace newlines in strings
        with return characters, like we did elsewhere.

        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsTable):
        Ultimately try to create a DataGrid from the output. Search first
        for rich object data in the list. If no rich object data is found
        just check for simple values. If the table is lossy, also do
        a log of the object in case the user wants to see more data.


        * UserInterface/Views/DataGrid.js:
        (WebInspector.DataGrid):
        The for..in enumeration is unordered and may not give us the
        column ordering we wanted. So include an optional preferred
        column names list to get the preferred order.

        (WebInspector.DataGrid.createSortableDataGrid):
        Numerous bug fixes here. Accidental globals, typos, and sorting failures.

        (WebInspector.DataGrid.prototype.autoSizeColumns):
        (WebInspector.DataGrid.prototype.textForDataGridNodeColumn):
        (WebInspector.DataGrid.prototype._copyTextForDataGridNode):
        Create a generic method to get the text for a datagrid node in a column.
        This is important for getting the text from console.table previews which
        contains Nodes.

        * UserInterface/Views/LogContentView.css:
        (.console-messages:focus .console-item.selected .data-grid tr.selected):
        (.console-item .data-grid tr.selected):
        DataGrid selection colors while in the console which may or may
        not have selected console items.

2015-02-02  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Extend CSS.getSupportedCSSProperties to provide values for properties for CSS Augmented JSContext
        https://bugs.webkit.org/show_bug.cgi?id=141064

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/CSSCompletions.js:
        * UserInterface/Models/CSSKeywordCompletions.js:
        (WebInspector.CSSKeywordCompletions.addCustomCompletions):
        (WebInspector.CSSKeywordCompletions.addPropertyCompletionValues):
        If a property is specified with custom values, extend the
        keyword completions map to make those values available
        in autocompletion.

2015-01-30  Joseph Pecoraro  <pecoraro@apple.com>

        Remote Web Inspector should not show undock toolbar buttons
        https://bugs.webkit.org/show_bug.cgi?id=141061

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/Main.js:
        (WebInspector.contentLoaded):
        Be sure to update the toolbar's dock navigation icons because they
        may need to be hidden (the default state).

2015-01-29  Saam Barati  <saambarati1@gmail.com>

        Web Inspector: Allow text selection when the BasicBlockAnnotator is enabled
        https://bugs.webkit.org/show_bug.cgi?id=140987

        Reviewed by Timothy Hatcher.

        Because the BasicBlockAnnotator no longer sets the background color of
        lines that haven't executed to gray, text selection while the
        BasicBlockAnnotator is enabled no longer results in a bad user interface.
        This patch both allows text selection while the BasicBlockAnnotator is
        enabled and also removes the now unused listeners to CodeMirror's focus
        and blur events.

        * UserInterface/Views/SourceCodeTextEditor.js:
        (WebInspector.SourceCodeTextEditor):
        (WebInspector.SourceCodeTextEditor.prototype._setTypeTokenAnnotatorEnabledState):
        (WebInspector.SourceCodeTextEditor.prototype._makeTypeTokenScrollEventHandler.scrollHandler):
        (WebInspector.SourceCodeTextEditor.prototype._makeTypeTokenScrollEventHandler):
        (WebInspector.SourceCodeTextEditor.prototype.gainedFocus): Deleted.
        (WebInspector.SourceCodeTextEditor.prototype.lostFocus): Deleted.
        * UserInterface/Views/TextEditor.js:
        (WebInspector.TextEditor):
        (WebInspector.TextEditor.prototype.gainedFocus): Deleted.
        (WebInspector.TextEditor.prototype.lostFocus): Deleted.

2015-01-29  Saam Barati  <saambarati1@gmail.com>

        Web Inspector: Make BasicBlockAnnotator lessen the saturation of syntax highlighting instead of graying out unexecuted code
        https://bugs.webkit.org/show_bug.cgi?id=141011

        Reviewed by Timothy Hatcher.

        This patch removes a lot of the complicated logic associated around 
        determining which code can be grayed out by the BasicBlockAnnotator. 
        Instead, the BasicBlockAnnotator now applies a CSS class to all the
        code that has not executed which lessens the saturation of the 
        syntax coloring for the code. This creates both a nicer user
        interface and a nicer user experience because it makes reading
        source code with the BasicBlockAnnotator enabled more pleasant.

        * UserInterface/Controllers/BasicBlockAnnotator.js:
        (WebInspector.BasicBlockAnnotator.prototype._annotateBasicBlockExecutionRanges.):
        (WebInspector.BasicBlockAnnotator.prototype._annotateBasicBlockExecutionRanges):
        (WebInspector.BasicBlockAnnotator.prototype.set _highlightTextForBasicBlock):
        (WebInspector.BasicBlockAnnotator.prototype._isTextRangeOnlyWhitespace): Deleted.
        (WebInspector.BasicBlockAnnotator.prototype._isTextRangeOnlyClosingBrace): Deleted.
        (_canGrayOutEntireLine): Deleted.
        (_grayOutLine): Deleted.
        (_clearRangeForBasicBlockMarker.get marker): Deleted.
        (_clearRangeForBasicBlockMarker): Deleted.
        * UserInterface/Views/SourceCodeTextEditor.css:
        (.hover-menu.color > img):
        (.basic-block-has-not-executed): Deleted.
        (.basic-block-has-not-executed-prepend::before): Deleted.
        * UserInterface/Views/SyntaxHighlightingDefaultTheme.css:
        (.cm-s-default .basic-block-has-not-executed):
        (.cm-s-default .basic-block-has-not-executed.cm-comment):
        (.cm-s-default .basic-block-has-not-executed.cm-m-css:matches(.cm-atom, .cm-meta, .cm-variable-3, .cm-property)):
        (.cm-s-default .basic-block-has-not-executed:matches(.cm-number, .cm-atom.cm-hex-color)):
        (.cm-s-default .basic-block-has-not-executed.cm-string):
        (.cm-s-default .basic-block-has-not-executed.cm-m-xml.cm-meta):
        (.cm-s-default .basic-block-has-not-executed.cm-m-xml.cm-attribute):

2015-01-29  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: ES6: Improved Console Format for Set and Map Objects (like Arrays)
        https://bugs.webkit.org/show_bug.cgi?id=122867

        Reviewed by Timothy Hatcher.

        This includes Set/Map/WeakMap previews:

            - Set previews: Set {1, 2, 3}
            - Map/WeakMap previews: Map {1 => 2, "key" => "value"}

        For WeakMaps:
        
            - the preview itself shows up to 5 key/value pairs from when the object was logged
            - the previews are strings only, and thus do not retain the actual keys/values
            - when expanding, we get RemoteObjects and strongly retain the keys/values
            - when collapsing / clearing, we release the RemoteObjects so they can get collected

        Currently you collapse the <entries> section, and re-expand later the
        collection may show you knew keys/values. The UI for this will change.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Protocol/RemoteObject.js:
        (WebInspector.RemoteObject.prototype.isCollectionType):
        (WebInspector.RemoteObject.prototype.isWeakCollection):
        (WebInspector.RemoteObject.prototype.getCollectionEntries):
        (WebInspector.RemoteObject.prototype.releaseWeakCollectionEntries):
        (WebInspector.RemoteObject.prototype.arrayLength):
        (WebInspector.RemoteObject.prototype._weakCollectionObjectGroup):
        High level functions for dealing with a RemoteObject that may be a
        collection / weak collection.

        * UserInterface/Views/ConsoleMessageImpl.js:
        (WebInspector.ConsoleMessageImpl):
        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsObject):
        Include default formatters for collection types.

        (WebInspector.ConsoleMessageImpl.prototype._appendPreview):
        (WebInspector.ConsoleMessageImpl.prototype._appendEntryPreviews):
        (WebInspector.ConsoleMessageImpl.prototype._appendPropertyPreviews):
        (WebInspector.ConsoleMessageImpl.prototype._appendValuePreview):
        (WebInspector.ConsoleMessageImpl.prototype._appendObjectPreview): Deleted.
        Refactor preview generation a bit and include a specific path for
        generation the output of a preview with "entries".

        * UserInterface/Views/LogContentView.css:
        (.console-object-preview-body .console-object-preview-name.console-object-preview-name-Object):
        With nested Object previews ("Map {{a:1} => 1}") don't show "Object" for the inner
        object preview. Only show it if it has a unique type ("Map {Foo {a:1} => 1}")

        (.console-formatted-object, .console-formatted-node, .console-formatted-error, .console-formatted-map, .console-formatted-set, .console-formatted-weakmap):
        (:matches(.console-formatted-object, .console-formatted-node, .console-formatted-error, .console-formatted-map, .console-formatted-set, .console-formatted-weakmap) .section):
        (:matches(.console-formatted-object, .console-formatted-node, .console-formatted-error, .console-formatted-map, .console-formatted-set, .console-formatted-weakmap) .properties):
        Make map/set/weakmap display like Objects.

        * UserInterface/Views/ObjectPropertiesSection.js:
        (WebInspector.ObjectPropertiesSection.prototype.update):
        (WebInspector.ObjectPropertiesSection.prototype.updateProperties):
        (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate.callback):
        (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
        (WebInspector.CollectionEntriesMainTreeElement):
        (WebInspector.CollectionEntriesMainTreeElement.prototype.onexpand.callback):
        (WebInspector.CollectionEntriesMainTreeElement.prototype.onexpand):
        (WebInspector.CollectionEntriesMainTreeElement.prototype.oncollapse):
        (WebInspector.CollectionEntriesMainTreeElement.prototype.ondetach):
        (WebInspector.CollectionEntriesMainTreeElement.prototype._trackWeakEntries):
        (WebInspector.CollectionEntriesMainTreeElement.prototype._untrackWeakEntries):
        (WebInspector.CollectionEntryTreeElement):
        (WebInspector.CollectionEntryTreeElement.prototype.onpopulate):
        (WebInspector.CollectionEntryTreeElement.prototype.onattach):
        (WebInspector.EmptyCollectionTreeElement):
        (WebInspector.ObjectPropertiesSection.prototype.update.callback): Deleted.
        Add a quick UI for exploring the entries of a collection. We are actively
        changing the styles of objects in the Console, so this should change soon.

2015-01-28  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Change Main Frame Status Buttons when debugging Augmented JSContext
        https://bugs.webkit.org/show_bug.cgi?id=141006

        Reviewed by Timothy Hatcher.

        * Localizations/en.lproj/localizedStrings.js:
        New "Restart" string.

        * UserInterface/Base/Main.js:
        (WebInspector.canArchiveMainFrame):
        * UserInterface/Views/FrameTreeElement.js:
        (WebInspector.FrameTreeElement.prototype.updateStatusForMainFrame):
        (WebInspector.FrameTreeElement.prototype._updateDownloadButton):
        Update the tooltip when in a non-Web debuggable, and only show
        the Download button when in a Web debuggable.

        * UserInterface/Views/TreeElementStatusButton.js:
        (WebInspector.TreeElementStatusButton.prototype.set hidden):
        Oops! The implementation was backwards. Simplify with classList.toggle.

2015-01-28  Brian J. Burg  <burg@cs.washington.edu>

        Web Inspector: remove CSS.setPropertyText, CSS.toggleProperty and related dead code
        https://bugs.webkit.org/show_bug.cgi?id=140961

        Reviewed by Timothy Hatcher.

        Setters for CSSProperty (except override) are not used, so delete them. These setters
        and their callees in DOMNodeStyles were the only clients of the removed protocol commands.

        * UserInterface/Models/CSSProperty.js:
        (WebInspector.CSSProperty.prototype.update):
        (WebInspector.CSSProperty.prototype.get name):
        (WebInspector.CSSProperty.prototype.get value):
        (WebInspector.CSSProperty.prototype.get priority):
        (WebInspector.CSSProperty.prototype.hasOtherVendorNameOrKeyword):
        (WebInspector.CSSProperty.prototype.set text): Deleted.
        (WebInspector.CSSProperty.prototype.set name): Deleted.
        (WebInspector.CSSProperty.prototype.set value): Deleted.
        (WebInspector.CSSProperty.prototype.set important): Deleted.
        (WebInspector.CSSProperty.prototype.set priority): Deleted.
        (WebInspector.CSSProperty.prototype.set enabled): Deleted.
        (WebInspector.CSSProperty.prototype.add): Deleted.
        (WebInspector.CSSProperty.prototype.remove): Deleted.
        (WebInspector.CSSProperty.prototype._updatePropertySoon.performUpdate): Deleted.
        (WebInspector.CSSProperty.prototype._updatePropertySoon): Deleted.
        (WebInspector.CSSProperty.prototype._cancelPendingUpdate): Deleted.
        * UserInterface/Models/CSSStyleDeclaration.js:
        (WebInspector.CSSStyleDeclaration.prototype.addProperty): Deleted.
        (WebInspector.CSSStyleDeclaration.prototype.removeProperty): Deleted.
        * UserInterface/Models/DOMNodeStyles.js:
        (WebInspector.DOMNodeStyles.prototype.addEmptyRule):
        (WebInspector.DOMNodeStyles.prototype.addRule): Deleted.
        (WebInspector.DOMNodeStyles.prototype.changeProperty): Deleted.
        (WebInspector.DOMNodeStyles.prototype.changePropertyText): Deleted.
        (WebInspector.DOMNodeStyles.prototype.changePropertyEnabledState): Deleted.
        (WebInspector.DOMNodeStyles.prototype.addProperty): Deleted.
        (WebInspector.DOMNodeStyles.prototype.removeProperty): Deleted.
        (WebInspector.DOMNodeStyles.prototype._handlePropertyChange): Deleted.
        * UserInterface/Protocol/Legacy/6.0/InspectorBackendCommands.js:
        * UserInterface/Protocol/Legacy/7.0/InspectorBackendCommands.js:
        * UserInterface/Protocol/Legacy/8.0/InspectorBackendCommands.js:
        * UserInterface/Views/RulesStyleDetailsPanel.js:
        (WebInspector.RulesStyleDetailsPanel.prototype._newRuleClicked):
        * Versions/Inspector-iOS-6.0.json:
        * Versions/Inspector-iOS-7.0.json:
        * Versions/Inspector-iOS-8.0.json:

2015-01-28  Dana Burkart  <dburkart@apple.com>

        Move ASan flag settings from DebugRelease.xcconfig to Base.xcconfig
        https://bugs.webkit.org/show_bug.cgi?id=136765

        Reviewed by Alexey Proskuryakov.

        * Configurations/Base.xcconfig:
        * Configurations/DebugRelease.xcconfig:

2015-01-23  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Object Previews in the Console
        https://bugs.webkit.org/show_bug.cgi?id=129204

        Reviewed by Timothy Hatcher.

        * UserInterface/Controllers/JavaScriptLogViewController.js:
        (WebInspector.JavaScriptLogViewController.prototype.consolePromptTextCommitted):
        * UserInterface/Controllers/JavaScriptRuntimeCompletionProvider.js:
        (get WebInspector.JavaScriptRuntimeCompletionProvider.prototype.):
        Update RuntimeManager callsites that do not need object previews.

        * UserInterface/Controllers/RuntimeManager.js:
        (WebInspector.RuntimeManager.prototype.evalCallback):
        (WebInspector.RuntimeManager.prototype.evaluateInInspectedWindow):
        Update the main evaluate method to include a boolean parameter for
        object previews. Most callers do not need them. Also, since previews
        were not available on iOS 6, switch to invoke, to conditionally
        include the command parameter.

        * UserInterface/Protocol/RemoteObject.js:
        (WebInspector.RemoteObject):
        (WebInspector.RemoteObject.fromPayload):
        (WebInspector.RemoteObject.prototype.get preview):
        Store the preview from the payload.

        * UserInterface/Views/ConsoleMessageImpl.js:
        (WebInspector.ConsoleMessageImpl.prototype._format):
        (WebInspector.ConsoleMessageImpl.prototype._formatParameter):
        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsNode):
        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsString):
        (WebInspector.ConsoleMessageImpl.prototype._formatAsArrayEntry):
        Pass an explicit false for most formatters to not use a preview if available.
        
        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsArray):
        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsObject):
        Currently only object types are previewed. Though we request previews
        for arrays, we don't use the preview because we show a better preview
        by just immediately requesting for a full non-preview property list.
        
        (WebInspector.ConsoleMessageImpl.prototype._appendObjectPreview):
        Quickly output an object preview into the title element. The format
        is "ClassName {prop: value...}". Elide the class name if it is "Object".
        Also skip over certain preview properties that may not be useful
        at a glance (like constructor, or accessors without values).

        * UserInterface/Views/LogContentView.css:
        (.console-object-preview):
        (.console-formatted-array .console-object-preview):
        (.console-object-preview-lossless):
        (.expanded .console-object-preview):
        Show lossy previews in italics.
        Show lossless previews and array previews without italics.
        Do not show the class name in the preview in italics when expanded.

        (.console-object-preview .name):
        Give preview property names the same color as ObjectPropertiesSection property names.
        
        (.expanded .console-object-preview > .console-object-preview-body):
        When expanding an object, hide the preview.

        (.console-object-preview > .console-object-preview-name.console-object-preview-name-Object):
        (.expanded .console-object-preview > .console-object-preview-name.console-object-preview-name-Object):
        For "Object" previews, hide the name "Object" when not expanded, and show it when expanded.

2015-01-23  Saam Barati  <saambarati1@gmail.com>

        Web Inspector: Disable *Annotators on minified files that aren't pretty printed
        https://bugs.webkit.org/show_bug.cgi?id=140550

        Reviewed by Timothy Hatcher.

        When SourceCodeTextEditor speculates that a file is minified it 
        sets a flag on itself that the Annotators will notice when pretty 
        printing and turning on type profiling. 

        SourceCodeTextEditor enforces the following two behaviors:

        1. Always pretty print a file if we think it's minified while 
        viewing type annotations. So, while viewing a minified file, 
        if you press the type profiling button, the pretty printer will 
        first reformat the file, then the type profiler will insert type annotations.

        2. If the type profiler is enabled and we're viewing a pretty 
        printed file that we think originally was minified, and the 
        pretty printer is disabled via pressing the button, then the 
        type profiler will also be disabled.

        These two behaviors maintain a good user experience because 
        it prevents a bad visual representation of profiler data and 
        also prevents bad performance.

        * UserInterface/Controllers/TypeTokenAnnotator.js:
        (WebInspector.TypeTokenAnnotator.prototype.toggleTypeAnnotations): Deleted.
        * UserInterface/Views/SourceCodeTextEditor.js:
        (WebInspector.SourceCodeTextEditor):
        (WebInspector.SourceCodeTextEditor.prototype.shown):
        (WebInspector.SourceCodeTextEditor.prototype.contentDidChange):
        (WebInspector.SourceCodeTextEditor.prototype.toggleTypeAnnotations):
        (WebInspector.SourceCodeTextEditor.prototype.prettyPrint):
        (WebInspector.SourceCodeTextEditor.prototype._contentWillPopulate):
        (WebInspector.SourceCodeTextEditor.prototype._populateWithContent):
        (WebInspector.SourceCodeTextEditor.prototype._setTypeTokenAnnotatorEnabledState):

2015-01-22  Jonathan Wells  <jonowells@apple.com>

        Web Inspector: ResourceContentView.js incorrectly contains call to WebInspector.UIString with a variable parameter
        https://bugs.webkit.org/show_bug.cgi?id=140268

        Reviewed by Timothy Hatcher.

        UIString no longer incorrectly used around variables. Drive-by fixes to prototype inheritance style.
        Use of Promises corrected such that requesting content for a resource resolves rather than rejects if
        a resource can't be found or has another error that isn't a web inspector error.

        * Localizations/en.lproj/localizedStrings.js: Updated.
        * UserInterface/Models/Resource.js: Change reject to resolve.
        * UserInterface/Models/Script.js:
        (WebInspector.Script.prototype.requestContentFromBackend): Proper use of Error object.
        * UserInterface/Models/SourceCode.js: Use correct inheritance style.
        * UserInterface/Views/ResourceContentView.js:
        (WebInspector.ResourceContentView.prototype._contentAvailable): Handle error now that promise resolves.
        (WebInspector.ResourceContentView.prototype._contentError): Remove incorrect use of UIString.
        * UserInterface/Views/SourceCodeTextEditor.js:
        (WebInspector.SourceCodeTextEditor.prototype._contentAvailable): Handle error now that promise resolves.

2015-01-22  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Expected gutter highlight when selecting console input line, just like output line
        https://bugs.webkit.org/show_bug.cgi?id=140696

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/LogContentView.css:

2015-01-21  Saam Barati  <saambarati1@gmail.com>

        Web Inspector: Change Annotator's isActive getter into an isActive() function.
        https://bugs.webkit.org/show_bug.cgi?id=140729

        Reviewed by Timothy Hatcher.

        This patch also makes the child classes of Annotator use
        the function instead of accessing the property directly.

        * UserInterface/Controllers/Annotator.js:
        (WebInspector.Annotator.prototype.isActive):
        (WebInspector.Annotator.prototype.get isActive): Deleted.
        * UserInterface/Controllers/BasicBlockAnnotator.js:
        (WebInspector.BasicBlockAnnotator.prototype.insertAnnotations):
        * UserInterface/Controllers/TypeTokenAnnotator.js:
        (WebInspector.TypeTokenAnnotator.prototype.toggleTypeAnnotations):
        * UserInterface/Views/SourceCodeTextEditor.js:
        (WebInspector.SourceCodeTextEditor.prototype.toggleTypeAnnotations):
        (WebInspector.SourceCodeTextEditor.prototype.prettyPrint):
        (WebInspector.SourceCodeTextEditor.prototype._debuggerDidPause):
        (WebInspector.SourceCodeTextEditor.prototype._debuggerDidResume):
        (WebInspector.SourceCodeTextEditor.prototype._updateTokenTrackingControllerState):

2015-01-21  Saam Barati  <saambarati1@gmail.com>

        Web Inspector: Don't allow the BasicBlockAnnotator to highlight a section if it's only a closing brace
        https://bugs.webkit.org/show_bug.cgi?id=140727

        Reviewed by Timothy Hatcher.

        * UserInterface/Controllers/BasicBlockAnnotator.js:
        (WebInspector.BasicBlockAnnotator.prototype.set _highlightTextForBasicBlock):
        (WebInspector.BasicBlockAnnotator.prototype._isTextRangeOnlyClosingBrace):
        BasicBlockAnnotator tries to no longer highlight a basic block if it is only
        whitespace and a closing brace. These ranges are often after statements
        that make these basic blocks unreachable, such as a return/break/continue
        statement occurring inside a if/else/while/for block. This check won't
        match every highlighted empty closing brace, but catches most of them 
        because it only does intra block analysis instead of inter block analysis.

2015-01-20  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Use spread operator in a few places
        https://bugs.webkit.org/show_bug.cgi?id=140699

        Reviewed by Geoffrey Garen.

        * UserInterface/Controllers/ProbeManager.js:
        (WebInspector.ProbeManager.prototype.get probeSets):
        Simplify by using the spread operator.

        * UserInterface/Models/TimelineRecording.js:
        This actually fixes an issue. The one place this was used was expecting
        an array and called ".length" on the result. However, the iterator being
        returned does not have a ".length" property so it was always undefined.

2015-01-20  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Expanding event objects in console shows undefined for most values, it should have real values
        https://bugs.webkit.org/show_bug.cgi?id=137306

        Reviewed by Timothy Hatcher.

        When first expanding an object, show all the object's own properties and any
        getter properties that may be on its prototype chain. Now, we only fetch
        own properties, for __proto__ properties.

        * UserInterface/Protocol/RemoteObject.js:
        (WebInspector.RemoteObject.prototype.getOwnProperties):
        (WebInspector.RemoteObject.prototype.getOwnAndGetterProperties):
        (WebInspector.RemoteObject.prototype.getAllProperties):
        (WebInspector.RemoteObject.prototype.get hasChildren): Deleted.
        * UserInterface/Views/ObjectPropertiesSection.js:
        (WebInspector.ObjectPropertiesSection):
        (WebInspector.ObjectPropertiesSection.prototype.update):
        (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):

2015-01-20  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Should show dynamic specificity values
        https://bugs.webkit.org/show_bug.cgi?id=140647

        Reviewed by Benjamin Poulain.

        For dynamic selectors, provide text in the tooltip describing that the
        specificity is dynamic and may change, and pointing out the element
        the current value was calculated against.

        * Localizations/en.lproj/localizedStrings.js:
        * UserInterface/Models/CSSSelector.js:
        (WebInspector.CSSSelector):
        (WebInspector.CSSSelector.prototype.get specificity):
        (WebInspector.CSSSelector.prototype.get dynamic):
        * UserInterface/Models/DOMNodeStyles.js:
        (WebInspector.DOMNodeStyles.prototype._parseSelectorListPayload.return):
        (WebInspector.DOMNodeStyles.prototype._parseSelectorListPayload):
        * UserInterface/Views/CSSStyleDeclarationSection.js:
        (WebInspector.CSSStyleDeclarationSection.prototype.refresh.appendSelector):

2015-01-19  Saam Barati  <saambarati1@gmail.com>

        Web Inspector: Provide a front end for JSC's Control Flow Profiler
        https://bugs.webkit.org/show_bug.cgi?id=138454

        Reviewed by Timothy Hatcher.

        This patch creates a user interface for JSC's control flow profiler.
        The Web Inspector gets basic block ranges from JSC, and displays
        basic blocks that have not executed as having a gray background.
        
        BasicBlockAnnotator is the class responsible for this UI logic.
        It also does a few nifty things when presenting a UI for this gray
        background color: if an entire line of code is within the basic 
        block's boundary, the annotator will not just highlight the background 
        behind the text, but the background of the entire line itself. This
        provides a nicer experience when glancing through large JavaScript files.

        This patch also adds some necessary wrapper methods inside TextEditor
        for accessing CodeMirror's text highlighting functionality. It also
        creates a way for TextEditor and SourceCodeTextEditor to listen
        for focus events inside CodeMirror.

        * UserInterface/Controllers/AnnotatorManager.js: Removed.
        * UserInterface/Controllers/BasicBlockAnnotator.js: Added.
        (WebInspector.BasicBlockAnnotator):
        (WebInspector.BasicBlockAnnotator.prototype.clearAnnotations):
        (WebInspector.BasicBlockAnnotator.prototype.insertAnnotations):
        (WebInspector.BasicBlockAnnotator.prototype._annotateBasicBlockExecutionRanges.):
        (WebInspector.BasicBlockAnnotator.prototype._annotateBasicBlockExecutionRanges):
        (WebInspector.BasicBlockAnnotator.prototype.set _highlightTextForBasicBlock):
        (WebInspector.BasicBlockAnnotator.prototype._isTextRangeOnlyWhitespace):
        (WebInspector.BasicBlockAnnotator.prototype._canGrayOutEntireLine):
        (WebInspector.BasicBlockAnnotator.prototype._grayOutLine):
        (WebInspector.BasicBlockAnnotator.prototype._clearRangeForBasicBlockMarker.get marker):
        (WebInspector.BasicBlockAnnotator.prototype._clearRangeForBasicBlockMarker):
        * UserInterface/Main.html:
        * UserInterface/Views/SourceCodeTextEditor.css:
        (.basic-block-has-not-executed):
        (.basic-block-has-not-executed-prepend::before):
        * UserInterface/Views/SourceCodeTextEditor.js:
        (WebInspector.SourceCodeTextEditor):
        (WebInspector.SourceCodeTextEditor.prototype.shown):
        (WebInspector.SourceCodeTextEditor.prototype.hidden):
        (WebInspector.SourceCodeTextEditor.prototype.canShowTypeAnnotations):
        (WebInspector.SourceCodeTextEditor.prototype.contentDidChange):
        (WebInspector.SourceCodeTextEditor.prototype.gainedFocus):
        (WebInspector.SourceCodeTextEditor.prototype.lostFocus):
        (WebInspector.SourceCodeTextEditor.prototype.toggleTypeAnnotations):
        (WebInspector.SourceCodeTextEditor.prototype.prettyPrint):
        (WebInspector.SourceCodeTextEditor.prototype._populateWithContent):
        (WebInspector.SourceCodeTextEditor.prototype._debuggerDidPause):
        (WebInspector.SourceCodeTextEditor.prototype._debuggerDidResume):
        (WebInspector.SourceCodeTextEditor.prototype._updateTokenTrackingControllerState):
        (WebInspector.SourceCodeTextEditor.prototype._makeTypeTokenAnnotator):
        (WebInspector.SourceCodeTextEditor.prototype._makeBasicBlockAnnotator):
        (WebInspector.SourceCodeTextEditor.prototype._makeTypeTokenScrollEventHandler.scrollHandler):
        (WebInspector.SourceCodeTextEditor.prototype._makeTypeTokenScrollEventHandler):
        * UserInterface/Views/TextEditor.js:
        (WebInspector.TextEditor):
        (WebInspector.TextEditor.prototype.getTextInRange):
        (WebInspector.TextEditor.prototype.addStyleToTextRange):
        (WebInspector.TextEditor.prototype.gainedFocus):
        (WebInspector.TextEditor.prototype.lostFocus):

2015-01-16  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Make message selection in the console more readable
        https://bugs.webkit.org/show_bug.cgi?id=140385

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/LogContentView.css:
        (.console-item.selected):
        (.console-messages:focus .console-item.selected):
        (.console-item.selected .console-message::after):
        (.console-messages:focus .console-item.selected .console-message::after):
        (.console-messages:focus .console-item.selected .go-to-link):
        * UserInterface/Views/Main.css:
        (.go-to-link):
        !important statements seem to be unnecessary, remove them.

2015-01-16  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Remove unused WebInspector.LocalJSONObject
        https://bugs.webkit.org/show_bug.cgi?id=140570

        Reviewed by Timothy Hatcher.

        * UserInterface/Protocol/RemoteObject.js:
        (WebInspector.RemoteObject.fromLocalObject): Deleted.
        (WebInspector.LocalJSONObject): Deleted.
        (WebInspector.LocalJSONObject.prototype.get description.switch.case.string_appeared_here): Deleted.
        (WebInspector.LocalJSONObject.prototype.get description.switch.default): Deleted.
        (WebInspector.LocalJSONObject.prototype.get description): Deleted.
        (WebInspector.LocalJSONObject.prototype._concatenate): Deleted.
        (WebInspector.LocalJSONObject.prototype.get type): Deleted.
        (WebInspector.LocalJSONObject.prototype.get subtype): Deleted.
        (WebInspector.LocalJSONObject.prototype.get hasChildren): Deleted.
        (WebInspector.LocalJSONObject.prototype.getOwnProperties): Deleted.
        (WebInspector.LocalJSONObject.prototype.getAllProperties): Deleted.
        (WebInspector.LocalJSONObject.prototype._children.buildProperty): Deleted.
        (WebInspector.LocalJSONObject.prototype._children): Deleted.
        (WebInspector.LocalJSONObject.prototype.isError): Deleted.

2015-01-15  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Uncaught exceptions, attempting to dispatch unimplemented Network WebSocket methods
        https://bugs.webkit.org/show_bug.cgi?id=140532

        Reviewed by Timothy Hatcher.

        * UserInterface/Protocol/NetworkObserver.js:
        (WebInspector.NetworkObserver.prototype.webSocketFrameReceived):
        (WebInspector.NetworkObserver.prototype.webSocketFrameError):
        (WebInspector.NetworkObserver.prototype.webSocketFrameSent):
        Add stubs to prevent an exception when trying to dispatch the event.

2015-01-15  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Reopening the inspector can selects a sub-frame instead of the Main Frame's DOM
        https://bugs.webkit.org/show_bug.cgi?id=140513

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/Frame.js:
        (WebInspector.Frame.prototype.saveIdentityToCookie):
        Specifically identify the main frame, so that any sub-frames with the same
        URL, don't get choosen over the main frame when restoring state from cookie.

2015-01-15  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: selecting Paint timeline records from sidebar does not trigger preview of paint quad
        https://bugs.webkit.org/show_bug.cgi?id=139151

        Reviewed by Brian Burg.

        * UserInterface/Views/LayoutTimelineDataGrid.js:
        (WebInspector.LayoutTimelineDataGrid):
        (WebInspector.LayoutTimelineDataGrid.prototype.callFramePopoverAnchorElement):
        (WebInspector.LayoutTimelineDataGrid.prototype.reset): Deleted.
        (WebInspector.LayoutTimelineDataGrid.prototype.hidden): Deleted.
        (WebInspector.LayoutTimelineDataGrid.prototype._layoutDataGridSelectedNodeChanged): Deleted.
        (WebInspector.LayoutTimelineDataGrid.prototype._hideHighlightIfNeeded): Deleted.
        Move the node highlight from the datagrid to the timeline view because
        we want this to happen on both the Navigation sidebar and the datagrid.

        * UserInterface/Views/LayoutTimelineView.js:
        (WebInspector.LayoutTimelineView.prototype.shown):
        (WebInspector.LayoutTimelineView.prototype.hidden):
        (WebInspector.LayoutTimelineView.prototype.filterDidChange):
        (WebInspector.LayoutTimelineView.prototype.reset):
        (WebInspector.LayoutTimelineView.prototype._treeElementDeselected):
        (WebInspector.LayoutTimelineView.prototype._treeElementSelected):
        Update the highlight for major view updates.

        (WebInspector.LayoutTimelineView.prototype._updateHighlight):
        (WebInspector.LayoutTimelineView.prototype._showHighlightForRecord):
        (WebInspector.LayoutTimelineView.prototype._hideHighlightIfNeeded):
        (WebInspector.LayoutTimelineView.prototype._hoveredOrSelectedRecord):
        Show a highlight for what we are hovering, or what is selected.
        Note the selected node may not be visible due to filtering.

        (WebInspector.LayoutTimelineView.prototype._mouseOverDataGrid):
        (WebInspector.LayoutTimelineView.prototype._mouseLeaveDataGrid):
        (WebInspector.LayoutTimelineView.prototype._mouseOverTreeOutline):
        (WebInspector.LayoutTimelineView.prototype._mouseLeaveTreeOutline):
        Update hovered information mousing over the datagrid and tree outline.

        * UserInterface/Views/TimelineContentView.js:
        (WebInspector.TimelineContentView.prototype.filterDidChange):
        * UserInterface/Views/TimelineSidebarPanel.js:
        (WebInspector.TimelineSidebarPanel.prototype.updateFilter):
        * UserInterface/Views/TimelineView.js:
        (WebInspector.TimelineView.prototype.filterDidChange):
        Include a "filterDidChange" TimelineView method that gets called after
        updateFilter (things like the filter bar or timeline range changes).

        * UserInterface/Views/TreeOutline.js:
        (TreeOutline.prototype.treeElementFromNode):
        (TreeOutline.prototype.treeElementFromPoint):
        Provide a helper to get a tree element from an event target.

2015-01-13  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: TextEditor doesn't update when resizing console, white space instead of content
        https://bugs.webkit.org/show_bug.cgi?id=140240

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/Main.js:
        (WebInspector._consoleResizerMouseDown.dockedResizerDrag):
        Dispatch the event that signals the console has changed size.

2015-01-13  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: I do not expect to see the same rule multiple times in styles sidebar
        https://bugs.webkit.org/show_bug.cgi?id=138185

        Reviewed by Timothy Hatcher.

        In the styles sidebar, don't show a duplicate, lesser-specificity rule even
        if it matches the selected element multiple times with different selectors
        in the list.

        * UserInterface/Models/CSSRule.js:
        (WebInspector.CSSRule.prototype.isEqualTo):
        CSSRule identifiers are objects.

        * UserInterface/Views/RulesStyleDetailsPanel.js:
        (WebInspector.RulesStyleDetailsPanel.prototype.refresh):
        Remove duplicates from the ordered list of style declarations.

2015-01-12  Jonathan Wells  <jonowells@apple.com>

        Web Inspector: Timeline: when Network Requests view is selected, in progress requests are absent.
        https://bugs.webkit.org/show_bug.cgi?id=140090

        Reviewed by Timothy Hatcher.

        TimelineContentView#_updateTimes() changed to call WebInspector.timelineSidebarPanel.updateFilter() in addition
        to updating the layout of the current timeline view. TimelineSidebarPanel.updateFilter() now responsible for
        updating filtered resources in a TimelineView.

        * UserInterface/Views/NavigationSidebarPanel.js:
        (WebInspector.NavigationSidebarPanel.prototype._updateFilter):
        Now handles updating the UI associated with filtering of navigation sidebar tree elements.

        * UserInterface/Views/OverviewTimelineView.js:
        (WebInspector.OverviewTimelineView.prototype.updateLayout):
        No longer handles updating other UI along with the navigation sidebar tree elements. That is now handled by
        WebInspector.TimelineView.prototype.filterUpdated.
        (WebInspector.OverviewTimelineView.prototype._compareTreeElementsByDetails): Drive-by fix. Missing vars.

        * UserInterface/Views/TimelineContentView.js:
        (WebInspector.TimelineContentView.prototype._updateTimes): Add call to updateFilter().

        * UserInterface/Views/TimelineView.js:
        (WebInspector.TimelineView.prototype.filterUpdated):
        Function added to dispatch a SelectionPathComponentsDidChange event.

2015-01-09  Enrica Casucci  <enrica@apple.com>

        [iOS] Support additional text styles.
        https://bugs.webkit.org/show_bug.cgi?id=140310
        rdar://problem/18568864

        Reviewed by Joseph Pecoraro.

        Add support for three new text styles.

        * UserInterface/Models/CSSKeywordCompletions.js:

2015-01-09  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: REGRESSION: Navigation sidebar can show blank next to the Console view
        https://bugs.webkit.org/show_bug.cgi?id=140291

        Reviewed by Joseph Pecoraro.

        * UserInterface/Base/Main.js:
        (WebInspector.contentLoaded): Don't restore collapsed false if selectedSidebarPanel is null.
        (WebInspector._sidebarCollapsedStateDidChange): Support a _ignoreNavigationSidebarPanelCollapsedEvent flag
        to avoid setting _navigationSidebarCollapsedSetting.
        (WebInspector._navigationSidebarPanelSelected): Force collapsed if selectedSidebarPanel is null.
        (WebInspector._contentBrowserCurrentContentViewDidChange): Set _ignoreNavigationSidebarPanelCollapsedEvent
        when forcing the collapsed state to avoid setting _navigationSidebarCollapsedSetting and calling
        _updateContentViewForCurrentNavigationSidebar.

2015-01-08  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: REGRESSION Showing debugger sidebar shouldn't change selected JS file
        https://bugs.webkit.org/show_bug.cgi?id=139526

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/Main.js:
        (WebInspector._revealAndSelectRepresentedObjectInNavigationSidebar):
        When switching to Debugger, show last selected JS or HTML resource.

        (WebInspector.showSplitConsole):
        (WebInspector.showFullHeightConsole):
        (WebInspector.toggleConsoleView):
        (WebInspector._sidebarCollapsedStateDidChange):
        (WebInspector._updateContentViewForCurrentNavigationSidebar):
        (WebInspector._navigationSidebarPanelSelected):
        (WebInspector._contentBrowserCurrentContentViewDidChange):
        (WebInspector._updateNavigationSidebarForCurrentContentView): Deleted.
        * UserInterface/Views/ApplicationCacheFrameContentView.js:
        (WebInspector.ApplicationCacheFrameContentView.prototype.get allowedNavigationSidebarPanels):
        * UserInterface/Views/CookieStorageContentView.js:
        (WebInspector.CookieStorageContentView.prototype.get allowedNavigationSidebarPanels):
        * UserInterface/Views/DOMStorageContentView.js:
        (WebInspector.DOMStorageContentView.prototype.get allowedNavigationSidebarPanels):
        * UserInterface/Views/DOMTreeContentView.js:
        (WebInspector.DOMTreeContentView.prototype.get allowedNavigationSidebarPanels):
        * UserInterface/Views/DatabaseContentView.js:
        (WebInspector.DatabaseContentView.prototype.get allowedNavigationSidebarPanels):
        * UserInterface/Views/DatabaseTableContentView.js:
        (WebInspector.DatabaseTableContentView.prototype.get allowedNavigationSidebarPanels):
        * UserInterface/Views/FontResourceContentView.js:
        (WebInspector.FontResourceContentView.prototype.get allowedNavigationSidebarPanels):
        * UserInterface/Views/FrameDOMTreeContentView.js:
        (WebInspector.FrameDOMTreeContentView.prototype.get allowedNavigationSidebarPanels):
        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView.prototype.get allowedNavigationSidebarPanels):
        * UserInterface/Views/ResourceClusterContentView.js:
        (WebInspector.ResourceClusterContentView.prototype.get allowedNavigationSidebarPanels):
        * UserInterface/Views/ResourceSidebarPanel.js:
        (WebInspector.ResourceSidebarPanel.prototype.showDefaultContentView):
        (WebInspector.ResourceSidebarPanel.prototype.showMainFrame):
        * UserInterface/Views/Sidebar.js:
        (WebInspector.Sidebar.prototype.removeSidebarPanel):
        * UserInterface/Views/TimelineContentView.js:
        (WebInspector.TimelineContentView.prototype.get allowedNavigationSidebarPanels):

2015-01-08  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Phantom breakpoint appears on empty line after reload of minified file with a breakpoint
        https://bugs.webkit.org/show_bug.cgi?id=140276

        Reviewed by Timothy Hatcher.

        Styles being set on lines (e.g. breakpoint styles) before content loaded can
        carry forward with the empty line. It is safe for us to just remove all
        the styles from the intial empty line before we load the initial content.

        * UserInterface/Views/TextEditor.js:
        (WebInspector.TextEditor.prototype.set string.update):
        (WebInspector.TextEditor.prototype.set string):

2015-01-08  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Pause Reason Improvements (Breakpoint, Debugger Statement, Pause on Next Statement)
        https://bugs.webkit.org/show_bug.cgi?id=138991

        Reviewed by Timothy Hatcher.

        * Localizations/en.lproj/localizedStrings.js:
        New UI strings for Pause Reasons.

        * UserInterface/Controllers/DebuggerManager.js:
        (WebInspector.DebuggerManager.prototype.breakpointForIdentifier):
        Provide a way to get the breakpoint with an identifier.

        * UserInterface/Images/PausedBreakpoint.svg: Added.
        * UserInterface/Images/gtk/PausedBreakpoint.svg: Added.
        Copy PseudoElement.svg icon and give it a new name.

        * UserInterface/Views/BreakpointTreeElement.css:
        (.breakpoint-paused-icon .icon):
        New icon for a breakpoint causing a pause.

        * UserInterface/Views/BreakpointTreeElement.js:
        (WebInspector.BreakpointTreeElement.prototype.removeStatusImage):
        (WebInspector.BreakpointTreeElement.prototype._updateStatus):
        Give API to remove the breakpoint status icon from a BreakpointTreeElement.

        * UserInterface/Views/DebuggerSidebarPanel.js:
        (WebInspector.DebuggerSidebarPanel):
        (WebInspector.DebuggerSidebarPanel.prototype.get hasSelectedElement):
        (WebInspector.DebuggerSidebarPanel.prototype.deselectBreakpointContentTreeElements):
        (WebInspector.DebuggerSidebarPanel.prototype.deselectPauseReasonContentTreeElements):
        (WebInspector.DebuggerSidebarPanel.prototype._treeElementSelected):
        Give DebuggerSidebarPanel an optional pause reason tree outline. When available
        include it in the pattern of ensuring a single exclusive selection.

        (WebInspector.DebuggerSidebarPanel.prototype._breakpointRemoved):
        When a breakpoint is removed, check if we should update the pause reason tree outline.

        (WebInspector.DebuggerSidebarPanel.prototype._updatePauseReason):
        (WebInspector.DebuggerSidebarPanel.prototype._updatePauseReasonSection):
        Update Pause Reason section contents depending on the reason.

        (WebInspector.DebuggerSidebarPanel.prototype._updatePauseReasonGotoArrow):
        Always try to include a goto arrow to jump to the original pause location
        if it is available at the time of pausing.

2015-01-08  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Expected UserAgent styles to be crossed-out if overridden
        https://bugs.webkit.org/show_bug.cgi?id=140154

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/DOMNodeStyles.js:
        (WebInspector.DOMNodeStyles.prototype._parseStylePropertyPayload):
        Add a comment about anonymous styles. The getter is no longer used, and it is not
        clear if we really care about this state, or if "anonymous" is an appropriate name.

        (WebInspector.DOMNodeStyles.prototype._markOverriddenProperties):
        Allow browser styles (user agent / html attributes) to be overridden.

        (WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload):
        When refreshing styles after changes, the Style object backing HTML attributes
        was being completely replaced. Allow it to be remembered by a unique key.

2015-01-07  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Do not create rulesMap entries for rules without identifiers
        https://bugs.webkit.org/show_bug.cgi?id=140237

        Reviewed by Timothy Hatcher.

        * UserInterface/Models/DOMNodeStyles.js:
        (WebInspector.DOMNodeStyles.prototype._parseRulePayload):
        We were accidentally converting a null into a string with a loose string
        concatenation. Only do this if the mapKey is not-null.

2015-01-07  Saam Barati  <saambarati1@gmail.com>

        Web Inspector: Abstract common functions from TypeTokenAnnotator into a parent class and introduce an AnnotatorManager
        https://bugs.webkit.org/show_bug.cgi?id=139426

        Reviewed by Timothy Hatcher.

        This patch creates a parent class, Annotator, that TypeTokenAnnotator
        inherits from. Annotator defines a common set of functionality
        that a text editor annotator can use to mark up UI. This 
        is in preparation other classes that will inherit from Annotator.
        
        This patch also introduces AnnotatorManager which controls a
        set of Annotators and provides a single interface for
        controlling them.

        * UserInterface/Controllers/Annotator.js: Added.
        (WebInspector.Annotator):
        (WebInspector.Annotator.prototype.get sourceCodeTextEditor):
        (WebInspector.Annotator.prototype.get isActive):
        (WebInspector.Annotator.prototype.pause):
        (WebInspector.Annotator.prototype.resume):
        (WebInspector.Annotator.prototype.refresh):
        (WebInspector.Annotator.prototype.reset):
        (WebInspector.Annotator.prototype.clear):
        (WebInspector.Annotator.prototype.insertAnnotations):
        (WebInspector.Annotator.prototype.clearAnnotations):
        (WebInspector.Annotator.prototype._clearTimeoutIfNeeded):
        * UserInterface/Controllers/AnnotatorManager.js: Added.
        (WebInspector.AnnotatorManager):
        (WebInspector.AnnotatorManager.prototype.addAnnotator):
        (WebInspector.AnnotatorManager.prototype.isAnnotatorActive):
        (WebInspector.AnnotatorManager.prototype.pauseAll):
        (WebInspector.AnnotatorManager.prototype.resumeAll):
        (WebInspector.AnnotatorManager.prototype.refreshAllIfActive):
        (WebInspector.AnnotatorManager.prototype.resetAllIfActive):
        (WebInspector.AnnotatorManager.prototype.clearAll):
        (WebInspector.AnnotatorManager.prototype.removeAllAnnotators):
        (WebInspector.AnnotatorManager.prototype._getAnnotators):
        * UserInterface/Controllers/TypeTokenAnnotator.js:
        (WebInspector.TypeTokenAnnotator):
        (WebInspector.TypeTokenAnnotator.prototype.insertAnnotations.):
        (WebInspector.TypeTokenAnnotator.prototype.clearAnnotations):
        (WebInspector.TypeTokenAnnotator.prototype._insertToken):
        (WebInspector.TypeTokenAnnotator.prototype.get isActive): Deleted.
        (WebInspector.TypeTokenAnnotator.prototype.get sourceCodeTextEditor): Deleted.
        (WebInspector.TypeTokenAnnotator.prototype.pause): Deleted.
        (WebInspector.TypeTokenAnnotator.prototype.resume): Deleted.
        (WebInspector.TypeTokenAnnotator.prototype.refresh): Deleted.
        (WebInspector.TypeTokenAnnotator.prototype.reset): Deleted.
        (WebInspector.TypeTokenAnnotator.prototype._insertAnnotations.): Deleted.
        (WebInspector.TypeTokenAnnotator.prototype._clearTimeoutIfNeeded): Deleted.
        * UserInterface/Main.html:
        * UserInterface/Views/SourceCodeTextEditor.js:
        (WebInspector.SourceCodeTextEditor):
        (WebInspector.SourceCodeTextEditor.prototype.shown):
        (WebInspector.SourceCodeTextEditor.prototype.hidden):
        (WebInspector.SourceCodeTextEditor.prototype.canShowTypeAnnotations):
        (WebInspector.SourceCodeTextEditor.prototype.contentDidChange):
        (WebInspector.SourceCodeTextEditor.prototype.toggleTypeAnnotations):
        (WebInspector.SourceCodeTextEditor.prototype.prettyPrint):
        (WebInspector.SourceCodeTextEditor.prototype._debuggerDidPause):
        (WebInspector.SourceCodeTextEditor.prototype._debuggerDidResume):
        (WebInspector.SourceCodeTextEditor.prototype._updateTokenTrackingControllerState):
        (WebInspector.SourceCodeTextEditor.prototype._getAssociatedScript):
        (WebInspector.SourceCodeTextEditor.prototype._makeTypeTokenAnnotator):
        (WebInspector.SourceCodeTextEditor.prototype._makeTypeTokenScrollEventHandler.scrollHandler):
        (WebInspector.SourceCodeTextEditor.prototype._makeTypeTokenScrollEventHandler):

2015-01-06  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Do not style implicit CSS properties in the Style Rules section
        https://bugs.webkit.org/show_bug.cgi?id=140161

        Reviewed by Timothy Hatcher.

        Previously, implicit properties being transparent in the Rules section
        was confusing and not useful. Lets simplify what transparency means:

            - Rules:  transparency means a non-inheritable property in an inherited rule
            - Computed: transparency means an implicit value

        * UserInterface/Views/CSSStyleDeclarationTextEditor.css:
        (.css-style-text-editor > .CodeMirror .CodeMirror-lines .css-style-declaration-property.not-inherited):
        (.css-style-text-editor > .CodeMirror .CodeMirror-lines .css-style-declaration-property:matches(.implicit, .not-inherited)): Deleted.

2015-01-06  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Uncaught Exception when dismissing Go To Line dialog
        https://bugs.webkit.org/show_bug.cgi?id=139663

        Reviewed by Timothy Hatcher.

        Calling removeChild would trigger the blur event handler and do a
        nested call of dismiss(), re-entering and removing while in the middle
        of removing. Avoid re-entrancy to avoid the exception.

        * UserInterface/Views/GoToLineDialog.js:
        (WebInspector.GoToLineDialog):
        (WebInspector.GoToLineDialog.prototype.dismiss):

2015-01-01  Darin Adler  <darin@apple.com>

        We often misspell identifier as "identifer"
        https://bugs.webkit.org/show_bug.cgi?id=140025

        Reviewed by Michael Saboff.

        * UserInterface/Base/Main.js:
        (WebInspector._updateNavigationSidebarForCurrentContentView):
        (WebInspector._contentBrowserCurrentContentViewDidChange):
        Fix misspellings.

2014-12-29  Jonathan Wells  <jonowells@apple.com>

        Web Inspector: SourceCode.requestContent should return a promise
        https://bugs.webkit.org/show_bug.cgi?id=135777

        Reviewed by Brian Burg.

        Change SourceCode.js to request content from the backend using Promises. Change Resource.js to use this new
        approach when determining whether a resource load has finished. Change all calls to the older
        SourceCode#requestContentFromBackendIfNeeded to simply use requestContent and use a catch function
        if a content request error needs to be handled. Fix a bug where the appropriate error message for an
        invalid resource wasn't showing in the resource content view.

        * UserInterface/Controllers/AnalyzerManager.js:
        (set WebInspector.AnalyzerManager.prototype.getAnalyzerMessagesForSourceCode.):
        (set WebInspector.AnalyzerManager.prototype.getAnalyzerMessagesForSourceCode):
        * UserInterface/Controllers/CSSStyleManager.js:
        (WebInspector.CSSStyleManager.prototype._updateResourceContent.fetchedStyleSheetContent):
        (WebInspector.CSSStyleManager.prototype._updateResourceContent.styleSheetReady):
        * UserInterface/Models/CSSStyleSheet.js:
        (WebInspector.CSSStyleSheet.prototype.requestContentFromBackend):
        (WebInspector.CSSStyleSheet.prototype.canRequestContentFromBackend): Deleted.
        * UserInterface/Models/DOMNodeStyles.js:
        (WebInspector.DOMNodeStyles.prototype.changeStyleText):
        * UserInterface/Models/Resource.js:
        (WebInspector.Resource.prototype.canRequestContent):
        (WebInspector.Resource.prototype.requestContentFromBackend):
        (WebInspector.Resource.prototype.markAsFinished):
        (WebInspector.Resource.prototype.markAsFailed):
        (WebInspector.Resource.prototype.getImageSize):
        (WebInspector.Resource.prototype.canRequestContentFromBackend): Deleted.
        * UserInterface/Models/Script.js:
        (WebInspector.Script.prototype.requestContentFromBackend):
        (WebInspector.Script.prototype.requestScriptSyntaxTree.catch):
        (WebInspector.Script.prototype.canRequestContentFromBackend): Deleted.
        * UserInterface/Models/SourceCode.js:
        (WebInspector.SourceCode):
        (WebInspector.SourceCode.prototype.requestContent):
        (WebInspector.SourceCode.prototype.requestContentFromBackend):
        (WebInspector.SourceCode.prototype._processContent):
        (WebInspector.SourceCode.prototype.canRequestContentFromBackend): Deleted.
        (WebInspector.SourceCode.prototype.requestContentFromBackendIfNeeded): Deleted.
        (WebInspector.SourceCode.prototype.servicePendingContentRequests): Deleted.
        * UserInterface/Models/SourceMapResource.js:
        (WebInspector.SourceMapResource):
        (WebInspector.SourceMapResource.prototype.requestContentFromBackend.sourceMapResourceLoadError):
        (WebInspector.SourceMapResource.prototype.requestContentFromBackend):
        (WebInspector.SourceMapResource.prototype.canRequestContentFromBackend): Deleted.
        (WebInspector.SourceMapResource.prototype.requestContentFromBackend.sourceMapResourceLoaded): Deleted.
        * UserInterface/Views/ResourceContentView.js:
        (WebInspector.ResourceContentView):
        (WebInspector.ResourceContentView.prototype._contentAvailable):
        (WebInspector.ResourceContentView.prototype._contentError):
        * UserInterface/Views/SourceCodeTextEditor.js:
        (WebInspector.SourceCodeTextEditor):
        (WebInspector.SourceCodeTextEditor.prototype._contentAvailable):
        (WebInspector.SourceCodeTextEditor.prototype._populateWithInlineScriptContent.scriptContentAvailable):
        (WebInspector.SourceCodeTextEditor.prototype._populateWithInlineScriptContent):
        (WebInspector.SourceCodeTextEditor.prototype._populateWithScriptContent):

2014-12-26  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/19348208> REGRESSION (r177027): iOS builds use the wrong toolchain
        https://bugs.webkit.org/show_bug.cgi?id=139950

        Reviewed by David Kilzer.

        * Configurations/Base.xcconfig: Only define TOOLCHAINS when building for OS X, doing so
        in a manner that works with Xcode 5.1.1.

2014-12-20  David Kilzer  <ddkilzer@apple.com>

        Switch from using PLATFORM_NAME to SDK selectors in WebCore, WebInspectorUI, WebKit, WebKit2
        <http://webkit.org/b/139463>

        Reviewed by Mark Rowe.

        * Configurations/Base.xcconfig:
        - Only set TOOLCHAINS on OS X.
        * Configurations/DebugRelease.xcconfig:
        - Only set MACOSX_DEPLOYMENT_TARGET and SDKROOT on OS X.
        * Configurations/Version.xcconfig:
        - Set SYSTEM_VERSION_PREFIX separately for iOS and OS X.
        * Configurations/WebInspectorUIFramework.xcconfig:
        - Set NORMAL_PRODUCTION_FRAMEWORKS_DIR,
          PRODUCTION_FRAMEWORKS_DIR and
          JAVASCRIPTCORE_PRIVATE_HEADERS_DIR_Production by SDK.

2014-12-19  Commit Queue  <commit-queue@webkit.org>

        Unreviewed, rolling out r177574.
        https://bugs.webkit.org/show_bug.cgi?id=139821

        "Broke Production builds by installing
        libWebCoreTestSupport.dylib in the wrong directory" (Requested
        by ddkilzer on #webkit).

        Reverted changeset:

        "Switch from using PLATFORM_NAME to SDK selectors in WebCore,
        WebInspectorUI, WebKit, WebKit2"
        https://bugs.webkit.org/show_bug.cgi?id=139463
        http://trac.webkit.org/changeset/177574

2014-12-19  David Kilzer  <ddkilzer@apple.com>

        Switch from using PLATFORM_NAME to SDK selectors in WebCore, WebInspectorUI, WebKit, WebKit2
        <http://webkit.org/b/139463>

        Reviewed by Mark Rowe.

        * Configurations/Base.xcconfig:
        - Only set TOOLCHAINS on OS X.
        * Configurations/DebugRelease.xcconfig:
        - Only set MACOSX_DEPLOYMENT_TARGET and SDKROOT on OS X.
        * Configurations/Version.xcconfig:
        - Set SYSTEM_VERSION_PREFIX separately for iOS and OS X.
        * Configurations/WebInspectorUIFramework.xcconfig:
        - Set NORMAL_PRODUCTION_FRAMEWORKS_DIR,
          PRODUCTION_FRAMEWORKS_DIR and
          JAVASCRIPTCORE_PRIVATE_HEADERS_DIR_Production by SDK.

2014-12-16  Matt Baker  <mattbaker@apple.com>

        Web Inspector: REGRESSION: Dragging undocked web inspector causes mouse to change from pointer to i-bar cursor over window title
        https://bugs.webkit.org/show_bug.cgi?id=139720

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/Main.js:
        Prevent default handling of the mouse event when clicking in the titlebar area. WebCore won't continue handling the event,
        but docking buttons/context menu still function.

2014-12-15  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Clicking on the expand object arrow should always expand an object
        https://bugs.webkit.org/show_bug.cgi?id=139382

        Reviewed by Joseph Pecoraro.

        * UserInterface/Views/LogContentView.js:
        (WebInspector.LogContentView):
        (WebInspector.LogContentView.prototype._click): Deleted.
        stopPropagation was preventing the object expansion from happening as expecting.

2014-12-15  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: CSSStyleDeclarationTextEditor fails to update if computed properties changed from empty to non-empty
        https://bugs.webkit.org/show_bug.cgi?id=139610

        Reviewed by Timothy Hatcher.

        The CSSStyleDeclarationTextEditor for Computed Style Properties always has
        empty DOMNodeStyles text. However we would not reset contents if properties
        changed and the actualy content was empty. So once empty, we could never
        recover. In fact, we should always refresh for Computed Styles.

        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
        (WebInspector.CSSStyleDeclarationTextEditor.prototype._propertiesChanged):

2014-12-08  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Hide Compositing Borders Button if backend returns an error that it is unsupported
        https://bugs.webkit.org/show_bug.cgi?id=139307

        Reviewed by Darin Adler.

        * UserInterface/Views/DOMTreeContentView.js:
        (WebInspector.DOMTreeContentView.prototype._updateCompositingBordersButtonToMatchPageSettings):

2014-12-05  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Uncaught Exceptions when attempting to show Content Flow
        https://bugs.webkit.org/show_bug.cgi?id=139276

        Reviewed by Brian Burg.

        * UserInterface/Views/ContentView.js:
        (WebInspector.ContentView):
        (WebInspector.ContentView.isViewable):
        LegacyJavaScriptProfileObject no longer exists, these references should be removed.

        * UserInterface/Views/FolderizedTreeElement.js:
        (WebInspector.FolderizedTreeElement.prototype._insertChildTreeElement):
        This sort function references "this" and needed to be bound.

2014-12-04  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Network Timeline Filter Bar only has "All", missing Resource Type filters
        https://bugs.webkit.org/show_bug.cgi?id=139268

        Reviewed by Brian Burg.

        * UserInterface/Views/TimelineDataGrid.js:
        (WebInspector.TimelineDataGrid.createColumnScopeBar):
        Users of createColumnScopeBar pass a Map object now instead of a dictionary.
        Iterate over the map appropriately.

2014-12-04  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: LayoutTests/inspector tests fail in Production builds due to missing test resources
        https://bugs.webkit.org/show_bug.cgi?id=138898

        Reviewed by Mark Rowe.

        In Production builds, if FORCE_TOOL_INSTALL=YES is in the environment
        we will copy all resources (for Tests) and still do the combine and
        optimize phase for normal Production inspection resources.

        * Scripts/copy-user-interface-resources.pl:

2014-12-03  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Missing getter, clients never see DragToAdjustController is enabled
        https://bugs.webkit.org/show_bug.cgi?id=139228

        Reviewed by Simon Fraser.

        * UserInterface/Controllers/DragToAdjustController.js:
        (WebInspector.DragToAdjustController.prototype.get enabled):

2014-12-02  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: CSS Minification breaks some selectors with colons
        https://bugs.webkit.org/show_bug.cgi?id=139206

        Reviewed by Simon Fraser.

        Do not remove spaces preceeding colons, as they may change the semantics
        of selectors with colon prefixes (e.g. "a :not(b)").

        At the same time, we can strip spaces around "!" characters, for example
        a space is not required before "!important" priority.

        * Scripts/cssmin.py:
        (cssminify):

2014-12-01  Benjamin Poulain  <benjamin@webkit.org>

        Web Inspector: add more :not() and :matches() awesomeness
        https://bugs.webkit.org/show_bug.cgi?id=138997

        Reviewed by Joseph Pecoraro.

        Simplify the Inspector's CSS when possible.

        * UserInterface/Views/DatabaseContentView.css:
        (:matches(.database-user-query, .database-query-prompt, .database-query-result)::before):
        (.database-user-query::before, .database-query-prompt::before, .database-query-result::before): Deleted.
        * UserInterface/Views/GradientSlider.css:
        (.gradient-slider-knob > :matches(img, div)):
        (.gradient-slider-knob > div): Deleted.
        * UserInterface/Views/HoverMenu.css:
        (.hover-menu > svg > :matches(path, rect)):
        (.hover-menu > svg > rect): Deleted.
        * UserInterface/Views/LayerTreeDetailsSidebarPanel.css:
        (.panel.details.layer-tree .name-column :matches(.pseudo-element, .reflection)):
        (.panel.details.layer-tree tr.selected .name-column :matches(.pseudo-element, .reflection)):
        (.panel.details.layer-tree .name-column .reflection): Deleted.
        (.panel.details.layer-tree tr.selected .name-column .reflection): Deleted.
        * UserInterface/Views/ProbeDetailsSidebarPanel.css:
        (.details-section.probe-set .options > :matches(.probe-remove, .probe-clear-samples, .probe-add)):
        (.details-section.probe-set .options > .probe-add): Deleted.
        * UserInterface/Views/ResourceSidebarPanel.css:
        (.sidebar > .panel.navigation.resource > :matches(.content, .empty-content-placeholder)):
        (body.mac-platform.legacy .sidebar > .panel.navigation.resource > :matches(.content, .empty-content-placeholder)):
        (.sidebar > .panel.navigation.resource > .empty-content-placeholder): Deleted.
        (body.mac-platform.legacy .sidebar > .panel.navigation.resource > .empty-content-placeholder): Deleted.
        * UserInterface/Views/ScopeBar.css:
        (.scope-bar > li:matches(.selected, :active)):
        (.scope-bar > li:active): Deleted.
        * UserInterface/Views/SyntaxHighlightingDefaultTheme.css:
        (.syntax-highlighted :matches(.css-comment, .javascript-comment, .html-comment)):
        (.syntax-highlighted :matches(.css-keyword, .css-tag, .css-at-rule, .css-important, .javascript-keyword, .html-tag)):
        (.syntax-highlighted :matches(.css-number, .javascript-number)):
        (.syntax-highlighted :matches(.css-property, .css-selector, .javascript-ident)):
        (.syntax-highlighted :matches(.css-string, .javascript-string, .javascript-regexp, .html-attribute-value)):
        (.syntax-highlighted :matches(.html-doctype, .html-processing-instruction)):
        (.syntax-highlighted .html-comment): Deleted.
        (.syntax-highlighted .html-tag): Deleted.
        (.syntax-highlighted .javascript-number): Deleted.
        (.syntax-highlighted .javascript-ident): Deleted.
        (.syntax-highlighted .html-attribute-value): Deleted.
        (.syntax-highlighted .html-processing-instruction): Deleted.
        It looks like ".cm-tag.cm-bracket" was there only to override the rule below.
        From basic testing, it looks like "cm-tag" and "cm-bracket" always appear together. I removed the "cm-bracket" rule
        from the second rule, and simplified the first rule.

        * UserInterface/Views/TimelineSidebarPanel.css:
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > :matches(.content, .empty-content-placeholder)):
        (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .empty-content-placeholder): Deleted.
        * UserInterface/Views/Toolbar.css:
        (body.mac-platform:not(.legacy, .docked) .toolbar):
        (body.mac-platform:not(.legacy, .docked) .toolbar.icon-and-label-vertical):
        (body.mac-platform:not(.legacy, .docked) .toolbar.icon-and-label-vertical.small-size):
        (body.mac-platform:not(.legacy, .docked) .toolbar:matches(.icon-and-label-horizontal, .icon-only)):
        (body.mac-platform:not(.legacy, .docked) .toolbar:matches(.icon-and-label-horizontal.small-size, .icon-only.small-size, .label-only)):
        (.toolbar:matches(.icon-and-label-horizontal.small-size, .icon-only.small-size, .label-only) .control-section):
        (body.mac-platform:not(.legacy):not(.docked) .toolbar): Deleted.
        (body.mac-platform:not(.legacy):not(.docked) .toolbar.icon-and-label-vertical): Deleted.
        (body.mac-platform:not(.legacy):not(.docked) .toolbar.icon-and-label-vertical.small-size): Deleted.
        (body.mac-platform:not(.legacy):not(.docked) .toolbar.icon-only): Deleted.
        (body.mac-platform:not(.legacy):not(.docked) .toolbar.label-only): Deleted.
        (.toolbar.label-only .control-section): Deleted.

2014-11-27  Andres Gomez  <agomez@igalia.com>

        Web Inspector: Update NavigationItemProbes icon for the GTK+ port
        https://bugs.webkit.org/show_bug.cgi?id=139074

        Reviewed by Carlos Garcia Campos.

        NavigationItemProbes was updated for the Mac port and we are now
        having a similar ideogram in GTK+.

        * UserInterface/Images/gtk/NavigationItemProbes.svg: Updated.

2014-11-21  Benjamin Poulain  <bpoulain@apple.com>

        Start using the new :not() and :matches() in the Web Inspector
        https://bugs.webkit.org/show_bug.cgi?id=138978

        Reviewed by Joseph Pecoraro.

        Start simpifying some definitions by using modern CSS.

        * UserInterface/Views/CSSStyleDeclarationSection.css:
        (body.mac-platform.legacy .style-declaration-section.last-in-group + .style-declaration-section:matches(.last-in-group, :last-child)):
        (.style-declaration-section:matches(.locked, .selector-locked) > .header > .selector):
        (body.mac-platform.legacy .style-declaration-section.last-in-group + .style-declaration-section:last-child): Deleted.
        (.style-declaration-section.selector-locked > .header > .selector): Deleted.
        * UserInterface/Views/CSSStyleDeclarationTextEditor.css:
        (.css-style-text-editor > .CodeMirror .CodeMirror-lines .css-style-declaration-property:matches(.disabled, .invalid, .other-vendor, .not-inherited, .overridden)):
        (.css-style-text-editor > .CodeMirror .CodeMirror-lines .css-style-declaration-property:matches(.implicit, .not-inherited)):
        (.css-style-text-editor > .CodeMirror .CodeMirror-lines .editing-line .css-style-declaration-property:matches(.disabled, .other-vendor, .not-inherited, .overridden)):
        (.css-style-text-editor > .CodeMirror .CodeMirror-lines .css-style-declaration-property.overridden): Deleted.
        (.css-style-text-editor > .CodeMirror .CodeMirror-lines .css-style-declaration-property.not-inherited): Deleted.
        (.css-style-text-editor > .CodeMirror .CodeMirror-lines .editing-line .css-style-declaration-property.overridden): Deleted.
        * UserInterface/Views/ControlToolbarItem.css:
        (.toolbar:matches(.icon-and-label-horizontal, .toolbar.icon-only) .item.control):
        (.toolbar.icon-only .item.control): Deleted.
        * UserInterface/Views/DOMStorageContentView.css:
        * UserInterface/Views/DashboardContainerView.css:
        (.toolbar.icon-and-label-vertical:matches(.small-size, .normal-size) .dashboard-container):
        (.toolbar:matches(.label-only, .small-size:matches(.icon-only, .icon-and-label-vertical, .icon-and-label-horizontal)) .dashboard-container):
        (.toolbar.normal-size:matches(.icon-only, .icon-and-label-vertical, .icon-and-label-horizontal) .dashboard-container):
        (.toolbar.normal-size.icon-and-label-vertical .dashboard-container): Deleted.
        (.toolbar.small-size.icon-and-label-horizontal .dashboard-container): Deleted.
        (.toolbar.normal-size.icon-and-label-horizontal .dashboard-container): Deleted.
        * UserInterface/Views/DataGrid.css:
        (.data-grid :matches(th, td):not(:last-child)):
        (.data-grid th:matches(.sort-ascending, .sort-descending)):
        (.data-grid :matches(th, td) > div):
        (.data-grid th:matches(.sort-ascending, .sort-descending) > div:first-child):
        (.data-grid tr:matches(.selected, :hover) .go-to-arrow):
        (.data-grid :-webkit-any(th, td):not(:last-child)): Deleted.
        (.data-grid th:-webkit-any(.sort-ascending, .sort-descending)): Deleted.
        (.data-grid :-webkit-any(th, td) > div): Deleted.
        (.data-grid th:-webkit-any(.sort-ascending, .sort-descending) > div:first-child): Deleted.
        (.data-grid tr:-webkit-any(.selected, :hover) .go-to-arrow): Deleted.
        * UserInterface/Views/DebuggerDashboardView.css:
        (.toolbar.collapsed .dashboard.debugger > :not(.message, .navigation-bar )):
        (.toolbar.collapsed .dashboard.debugger > :not(.message):not(.navigation-bar )): Deleted.
        * UserInterface/Views/DefaultDashboardView.css:
        (body.web .toolbar.collapsed .dashboard.default > :matches(.time, .resourcesSize, .logs)):
        (body.javascript .toolbar .dashboard.default > :matches(.time, .resourcesSize, .resourcesCount)):
        (.toolbar:matches(.label-only, .small-size:matches(.icon-only, .icon-and-label-vertical, .icon-and-label-horizontal)) .dashboard.default > .item):
        (.toolbar.normal-size:matches(.icon-only, .icon-and-label-vertical, .icon-and-label-horizontal) .dashboard.default > .item):
        (body.web .toolbar.collapsed .dashboard.default > .logs): Deleted.
        (body.javascript .toolbar .dashboard.default > .resourcesCount): Deleted.
        (.toolbar.small-size.icon-and-label-horizontal .dashboard.default > .item): Deleted.
        (.toolbar.normal-size.icon-and-label-horizontal .dashboard.default > .item): Deleted.
        * UserInterface/Views/DetailsSection.css:
        (.details-section > .header > :matches(.node-link, .go-to-arrow)):
        (.details-section > .content > .group:nth-child(even) > .row:matches(.simple:first-child > *, :not(.simple):first-child)):
        (body.mac-platform.legacy .details-section > .content > .group:matches(:nth-child(even), :last-child) > .row.simple:last-child > *):
        (.details-section > .content > .group > .row:matches(.empty, .text)):
        (body.mac-platform.legacy .details-section > .content > .group > .row:matches(.empty, .text)):
        (.details-section > .header > .go-to-arrow): Deleted.
        (.details-section > .content > .group:nth-child(even) > .row.simple:first-child > *): Deleted.
        (body.mac-platform.legacy .details-section > .content > .group:last-child > .row.simple:last-child > *): Deleted.
        (.details-section > .content > .group > .row.text): Deleted.
        (body.mac-platform.legacy .details-section > .content > .group > .row.text): Deleted.
        * UserInterface/Views/FindBanner.css:
        (:matches(.find-banner, .supports-find-banner).no-find-banner-transition):
        (.supports-find-banner.no-find-banner-transition): Deleted.
        * UserInterface/Views/FlexibleSpaceNavigationItem.css:
        (:matches(.navigation-bar, .toolbar) .item.flexible-space):
        (.toolbar .item.flexible-space): Deleted.

2014-11-19  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: LayoutTests/inspector should not have localStorage side effects
        https://bugs.webkit.org/show_bug.cgi?id=138895

        Reviewed by Brian Burg.

        When running inspector tests, do not restore/save WebInspector.Settings
        to localStorage, as that will cause side effects. Instead each Setting
        will be initialized with its default value and can be modified during
        the run of the test.

        * UserInterface/Base/Test.js:
        (WebInspector.loaded):
        Name the setting to match the normal setting name now that persistence
        is not an issue.

        * UserInterface/Models/Setting.js:
        (WebInspector.Setting.prototype.get value):
        (WebInspector.Setting.prototype.set value):
        Do not restore/save when in tests.

2014-11-19  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: JSContext inspection Resource search does not work
        https://bugs.webkit.org/show_bug.cgi?id=131252

        Reviewed by Timothy Hatcher.

        * UserInterface/Views/ResourceSidebarPanel.js:
        (WebInspector.ResourceSidebarPanel.prototype.performSearch.resourceCallback):
        (WebInspector.ResourceSidebarPanel.prototype.performSearch.resourcesCallback):
        Cleanup by reordering things a bit.

        (WebInspector.ResourceSidebarPanel.prototype.performSearch.searchScripts.scriptCallback):
        (WebInspector.ResourceSidebarPanel.prototype.performSearch.searchScripts):
        (WebInspector.ResourceSidebarPanel.prototype.performSearch):
        Search non-resource scripts individually.

        (WebInspector.ResourceSidebarPanel.prototype._searchTreeElementForScript):
        Lazily create a ScriptTreeElement for the search tree outline as needed.

        (WebInspector.ResourceSidebarPanel.prototype._scriptsToSearch):
        When searching scripts, just perform a shallow walk of the tree outline to find
        Script resources that are not also Resources. Scripts are always guarenteed to
        be in a folder when inspecting a web resource. For JSContext inspection, scripts
        are promoted to the top level.

        * UserInterface/Main.html:
        * UserInterface/Models/SourceCodeSearchMatchObject.js: Renamed from Source/WebInspectorUI/UserInterface/Models/ResourceSearchMatchObject.js.
        (WebInspector.SourceCodeSearchMatchObject):
        * UserInterface/Views/SearchIcons.css:
        (.source-code-match-icon .icon):
        (.resource-match-icon .icon): Deleted.
        * UserInterface/Views/SearchResultTreeElement.js:
        (WebInspector.SearchResultTreeElement):
        Rename ResourceSearchMatchObject to SourceCodeSearchMatchObject.

2014-11-19  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Provide $exception in the console for the thrown exception value
        https://bugs.webkit.org/show_bug.cgi?id=138726

        Reviewed by Timothy Hatcher.

        * UserInterface/Base/Test.js:
        (WebInspector.loaded):
        In order to use RuntimeManager to execute in the global context or on the
        active debugger call frame, we need to expose the quickConsole controller.

        * UserInterface/Controllers/JavaScriptRuntimeCompletionProvider.js:
        Expose $exception to completion when we paused because of an exception.

2014-11-19  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Debugger should not mutate variable when hovering mouse over ++n expression
        https://bugs.webkit.org/show_bug.cgi?id=138839

        Reviewed by Timothy Hatcher.

        * UserInterface/Controllers/CodeMirrorTokenTrackingController.js:
        (WebInspector.CodeMirrorTokenTrackingController.prototype._processJavaScriptExpression):

2014-11-19  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Improve basic JavaScript completion in inline <script>s
        https://bugs.webkit.org/show_bug.cgi?id=138845

        Reviewed by Timothy Hatcher.

        * UserInterface/Controllers/CodeMirrorCompletionController.js:
        (WebInspector.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions):
        Fix up CodeMirror mode handling for JavaScript completion when inside of mixed mode
        input (html). Also add completion for CodeMirror's localVars list.

== Rolled over to ChangeLog-2014-11-19 ==