| 2017-03-16 Devin Rousso <webkit@devinrousso.com> |
| |
| Web Inspector: Console Evaluation links in the Console should not show normally |
| https://bugs.webkit.org/show_bug.cgi?id=157483 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Models/CallFrame.js: |
| (WebInspector.CallFrame): |
| (WebInspector.CallFrame.prototype.get isConsoleEvaluation): |
| (WebInspector.CallFrame.fromDebuggerPayload): |
| (WebInspector.CallFrame.fromPayload): |
| Move console evaluation check to the constructor for consistency. |
| |
| * UserInterface/Views/ConsoleMessageView.js: |
| (WebInspector.ConsoleMessageView.prototype._appendLocationLink): |
| * UserInterface/Views/StackTraceView.js: |
| (WebInspector.StackTraceView): |
| Only add CallFrameView elements if the corresponding CallFame is not a console evaluation. |
| |
| 2017-03-16 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: REGRESSION (r213691): Saving DOM breakpoints broken after refactoring |
| https://bugs.webkit.org/show_bug.cgi?id=169779 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| Use correct method: _saveBreakpoints -> _saveDOMBreakpoints. |
| |
| * UserInterface/Controllers/DOMDebuggerManager.js: |
| (WebInspector.DOMDebuggerManager.prototype.addDOMBreakpoint): |
| Remove check before saving to be consistent with similar code in |
| DebuggerManager and DOMDebuggerManager. |
| |
| 2017-03-16 Devin Rousso <webkit@devinrousso.com> |
| |
| Web Inspector: add "Save Selected" context menu item to Console |
| https://bugs.webkit.org/show_bug.cgi?id=151837 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Base/Main.js: |
| (WebInspector.saveDataToFile): |
| Allow data to be saved without a provided URL. It will default to localized "Untitled". |
| |
| * UserInterface/Views/LogContentView.js: |
| (WebInspector.LogContentView.prototype._handleContextMenuEvent): |
| |
| 2017-03-16 Devin Rousso <webkit@devinrousso.com> |
| |
| Web Inspector: RTL: selected frame indicator is not positioned correctly |
| https://bugs.webkit.org/show_bug.cgi?id=169763 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/RenderingFrameTimelineOverviewGraph.js: |
| (WebInspector.RenderingFrameTimelineOverviewGraph.prototype._updateFrameMarker): |
| (WebInspector.RenderingFrameTimelineOverviewGraph.prototype._mouseClicked): |
| Treat the current mouse position (event.pageX) as a negative value when in RTL, meaning that |
| the delta movement from the starting position is flipped. |
| |
| * UserInterface/Views/TimelineRuler.css: |
| (body[dir=ltr] .timeline-ruler > .header > .divider,): |
| (body[dir=rtl] .timeline-ruler > .header > .divider,): |
| (.timeline-ruler > .header > .divider): |
| (.timeline-ruler > .header > .divider > .label): |
| (body[dir=ltr] .timeline-ruler > .header > .divider > .label): |
| (body[dir=rtl] .timeline-ruler > .header > .divider > .label): |
| (.timeline-ruler > .markers > .divider): |
| (.timeline-ruler > .markers > .marker): |
| (body[dir=ltr] .timeline-ruler > .markers > .marker): |
| (body[dir=rtl] .timeline-ruler > .markers > .marker): |
| (.timeline-ruler > .markers > .marker::before): |
| (body[dir=ltr] .timeline-ruler > .markers > .marker::before): |
| (body[dir=rtl] .timeline-ruler > .markers > .marker::before): |
| (body[dir=ltr] .timeline-ruler > .markers > .marker.current-time): |
| (body[dir=rtl] .timeline-ruler > .markers > .marker.current-time): |
| (.timeline-ruler > .markers > .marker.current-time::before): |
| (.timeline-ruler > .markers > .marker.current-time): Deleted. |
| |
| (.timeline-ruler > .selection-handle): |
| (body[dir=ltr] .timeline-ruler > .selection-handle.left): |
| (body[dir=rtl] .timeline-ruler > .selection-handle.left): |
| (body[dir=ltr] .timeline-ruler > .selection-handle.right): |
| (body[dir=rtl] .timeline-ruler > .selection-handle.right): |
| Drive-by: add CSS variable for clarity. |
| |
| 2017-03-16 Devin Rousso <webkit@devinrousso.com> |
| |
| Web Inspector: RTL: filter mode icon in Debugger sidebar is misaligned |
| https://bugs.webkit.org/show_bug.cgi?id=169766 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/FilterBar.css: |
| (.filter-bar > .navigation-bar > .item): |
| (body[dir=ltr] .filter-bar > .navigation-bar > .item): |
| (body[dir=rtl] .filter-bar > .navigation-bar > .item): |
| |
| 2017-03-16 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Refactoring: remove DebuggerTreeElement class |
| https://bugs.webkit.org/show_bug.cgi?id=169697 |
| |
| Reviewed by Devin Rousso. |
| |
| Remove unnecessary class DebuggerTreeElement from TreeElement class hierarchy. |
| The `sourceCodeLocation` property on IssueMessage and Breakpoint (the debugger |
| objects) can be tested for generically using TreeElement.prototype.representedObject. |
| |
| * UserInterface/Main.html: |
| Remove file. |
| |
| * UserInterface/Views/BreakpointTreeElement.js: |
| * UserInterface/Views/IssueTreeElement.js: |
| Change base class to GeneralTreeElement. |
| |
| * UserInterface/Views/DebuggerSidebarPanel.js: |
| (WebInspector.DebuggerSidebarPanel.prototype._addBreakpoint): |
| (WebInspector.DebuggerSidebarPanel.prototype._compareTreeElements): |
| (WebInspector.DebuggerSidebarPanel.prototype._addIssue): |
| (WebInspector.DebuggerSidebarPanel.prototype._compareDebuggerTreeElements): Deleted. |
| Renamed to just "_compareTreeElements". |
| |
| * UserInterface/Views/DebuggerTreeElement.js: Removed. |
| |
| 2017-03-16 Devin Rousso <webkit@devinrousso.com> |
| |
| Web Inspector: RTL: goto arrow for source locations is pointing wrong way in Timeline data grids |
| https://bugs.webkit.org/show_bug.cgi?id=169764 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/DataGrid.css: |
| (body[dir=rtl] .data-grid td .go-to-arrow): |
| |
| 2017-03-16 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: RTL: add FindBanner support for RTL layout |
| https://bugs.webkit.org/show_bug.cgi?id=168723 |
| |
| Reviewed by Timothy Hatcher. |
| |
| Due to the large number of CSS tricks used by this widget, adding RTL |
| support involves changing a large number of rules. The important parts: |
| |
| - Use '.segmented.{previous,next}-result' instead of '.segmented. |
| {left,right}', this makes the style rules way less confusing for RTL. |
| |
| - Flip icons so icons look like "< >" but actions are reversed. |
| |
| - Get rid of the weird expanding button divider. This is impossible |
| to mirror with the existing adjacent sibling combinator, and it does |
| not match the system appearance. Just replace the mini-divider with a |
| full divider and remove related dynamic rules that trigger on :active. |
| |
| - Always keep the button divider between next/previous on the rightmost |
| button, to avoid subtle differences between LTR and RTL. |
| |
| - Fix some mistakes where we weren't using --border-color and also |
| didn't adjust the handcoded border color for the inactive window case. |
| |
| * UserInterface/Views/FindBanner.css: |
| (.find-banner): |
| (body[dir=ltr] .find-banner > :first-child,): |
| (body[dir=ltr] .find-banner > :last-child,): |
| (.find-banner > input[type="search"]): |
| (body[dir=ltr] .find-banner > input[type="search"]): |
| (body[dir=rtl] .find-banner > input[type="search"]): |
| (.find-banner > button:active:not(:disabled)): |
| (.find-banner > button.segmented): |
| (.find-banner > button.segmented.previous-result): |
| (body[dir=ltr] .find-banner > button.segmented.previous-result): |
| (body[dir=rtl] .find-banner > button.segmented.previous-result): |
| (body[dir=ltr] .find-banner > button.segmented.previous-result > .glyph): |
| (body[dir=rtl] .find-banner > button.segmented.previous-result > .glyph): |
| (body[dir=ltr] .find-banner > button.segmented.previous-result:active:not(:disabled) > .glyph): |
| (body[dir=rtl] .find-banner > button.segmented.previous-result:active:not(:disabled) > .glyph): |
| (.find-banner > button.segmented.next-result): |
| (body[dir=ltr] .find-banner > button.segmented.next-result): |
| (body[dir=rtl] .find-banner > button.segmented.next-result): |
| (body[dir=ltr] .find-banner > button.segmented.next-result > .glyph): |
| (body[dir=rtl] .find-banner > button.segmented.next-result > .glyph): |
| (body[dir=ltr] .find-banner > button.segmented.next-result:active:not(:disabled) > .glyph): |
| (body[dir=rtl] .find-banner > button.segmented.next-result:active:not(:disabled) > .glyph): |
| (.find-banner.console-find-banner > input[type="search"]): |
| (body[dir=ltr] .find-banner.console-find-banner > input[type="search"]): |
| (body[dir=rtl] .find-banner.console-find-banner > input[type="search"]): |
| (body[dir=ltr] .find-banner.console-find-banner > input[type="search"]::-webkit-textfield-decoration-container): |
| (body[dir=rtl] .find-banner.console-find-banner > input[type="search"]::-webkit-textfield-decoration-container): |
| (.find-banner > :first-child): Deleted. |
| (.find-banner > :last-child): Deleted. |
| (.find-banner > button.segmented.left): Deleted. |
| (.find-banner > button:not(:active).segmented.right:before): Deleted. |
| (.find-banner > button.segmented.left:active + button.segmented.right,): Deleted. |
| (.find-banner > button.segmented.left:active + button.segmented.right:before): Deleted. |
| (.find-banner > button.segmented.left > .glyph): Deleted. |
| (.find-banner > button.segmented.left:active:not(:disabled) > .glyph): Deleted. |
| (.find-banner > button.segmented.right): Deleted. |
| (.find-banner > button.segmented.right > .glyph): Deleted. |
| (.find-banner > button.segmented.right:active:not(:disabled) > .glyph): Deleted. |
| (.find-banner.console-find-banner > input[type="search"]::-webkit-textfield-decoration-container): Deleted. |
| |
| * UserInterface/Views/FindBanner.js: |
| (WebInspector.FindBanner): |
| Change left and right to logical names for the buttons, and inline |
| some style classes with single uses. |
| |
| 2017-03-15 Devin Rousso <webkit@devinrousso.com> |
| |
| Web Inspector: Selecting text in the console does not do what I expect |
| https://bugs.webkit.org/show_bug.cgi?id=169570 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/ConsoleMessageView.css: |
| (.console-message-text > span > :matches(.console-message-enclosed, .console-message-preview, .console-message-preview-divider)): |
| (.console-message .console-message-location): |
| (.console-message-location.call-frame): |
| Prevent text selection on anything other than the message text. The other information that |
| is not selectable can still be copied by selecting the message itself and copying. |
| |
| 2017-03-15 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| Web Inspector: WebSockets: Update Arrow Up icon to fit in with the rest of our iconography |
| https://bugs.webkit.org/show_bug.cgi?id=169696 |
| <rdar://problem/31073748> |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Images/ArrowUp.svg: |
| * UserInterface/Images/gtk/ArrowUp.svg: |
| |
| 2017-03-15 Devin Rousso <webkit@devinrousso.com> |
| |
| Web Inspector: Add icons for SVG Image cluster path components |
| https://bugs.webkit.org/show_bug.cgi?id=169687 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Images/Image.svg: Added. |
| * UserInterface/Images/Source.svg: Added. |
| * UserInterface/Images/gtk/Image.svg: Added. |
| * UserInterface/Images/gtk/Source.svg: Added. |
| |
| * UserInterface/Views/PathComponentIcons.css: |
| (.image-icon .icon): |
| (.source-icon .icon): |
| |
| * UserInterface/Views/SVGImageResourceClusterContentView.js: |
| (WebInspector.SVGImageResourceClusterContentView): |
| |
| 2017-03-15 Devin Rousso <webkit@devinrousso.com> |
| |
| Web Inspector: RTL: flip Memory timelines |
| https://bugs.webkit.org/show_bug.cgi?id=169694 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/MemoryCategoryView.css: |
| (body[dir=rtl] .memory-category-view > .graph): |
| |
| 2017-03-15 Joseph Pecoraro <pecoraro@apple.com> |
| |
| JSContext Inspector: NetworkAgent may be unavailable |
| https://bugs.webkit.org/show_bug.cgi?id=169691 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/ResourceDetailsSidebarPanel.js: |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshRequestAndResponse): |
| Check that NetworkAgent even exists. An augmented JSContext may have Resources |
| without having a NetworkAgent. |
| |
| 2017-03-15 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| REGRESSION (r213622): Web Inspector: DataGrid headers should NOT be centered |
| https://bugs.webkit.org/show_bug.cgi?id=169645 |
| <rdar://problem/31051520> |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/DataGrid.css: |
| (.data-grid th): |
| (body[dir=ltr] .data-grid th): |
| (body[dir=rtl] .data-grid th): |
| |
| 2017-03-15 Devin Rousso <webkit@devinrousso.com> |
| |
| Web Inspector: SVG image content view should toggle between image and source |
| https://bugs.webkit.org/show_bug.cgi?id=16079 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Main.html: |
| |
| * UserInterface/Views/ResourceClusterContentView.js: |
| (WebInspector.ResourceClusterContentView.prototype.get responseContentView): |
| Show the SVG cluster content view if the MIME type matches an SVG file. |
| |
| * UserInterface/Views/SVGImageResourceClusterContentView.js: Added. |
| (WebInspector.SVGImageResourceClusterContentView): |
| (WebInspector.SVGImageResourceClusterContentView.prototype.get resource): |
| (WebInspector.SVGImageResourceClusterContentView.prototype.get selectionPathComponents): |
| (WebInspector.SVGImageResourceClusterContentView.prototype.shown): |
| (WebInspector.SVGImageResourceClusterContentView.prototype.closed): |
| (WebInspector.SVGImageResourceClusterContentView.prototype.saveToCookie): |
| (WebInspector.SVGImageResourceClusterContentView.prototype.restoreFromCookie): |
| (WebInspector.SVGImageResourceClusterContentView.prototype._pathComponentForContentView): |
| (WebInspector.SVGImageResourceClusterContentView.prototype._identifierForContentView): |
| (WebInspector.SVGImageResourceClusterContentView.prototype._showContentViewForIdentifier): |
| (WebInspector.SVGImageResourceClusterContentView.prototype._pathComponentSelected): |
| |
| 2017-03-15 Devin Rousso <webkit@devinrousso.com> |
| |
| Web Inspector: RTL: add support for Timeline ruler selections/movement |
| https://bugs.webkit.org/show_bug.cgi?id=169588 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/TimelineOverview.css: |
| (body[dir=ltr] .timeline-overview.frames > .timeline-ruler:not(.both-handles-clamped) > .selection-handle.right): |
| (body[dir=rtl] .timeline-overview.frames > .timeline-ruler:not(.both-handles-clamped) > .selection-handle.left): |
| (body[dir=ltr] .timeline-overview.frames > .timeline-ruler:not(.both-handles-clamped) > .shaded-area.right): |
| (body[dir=rtl] .timeline-overview.frames > .timeline-ruler:not(.both-handles-clamped) > .shaded-area.left): |
| (.timeline-overview.frames > .timeline-ruler:not(.both-handles-clamped) > .selection-handle.right): Deleted. |
| (.timeline-overview.frames > .timeline-ruler:not(.both-handles-clamped) > .shaded-area.right): Deleted. |
| Fixes alignment of selection handles when in Frames view. |
| |
| * UserInterface/Views/TimelineOverview.js: |
| (WebInspector.TimelineOverview.prototype._handleScrollEvent): |
| Support horizontal scrolling in timelines by treating the current scroll value as negative |
| when in RTL, flipping the scroll direction. |
| |
| * UserInterface/Views/TimelineRuler.css: |
| (body[dir=ltr] .timeline-ruler > .selection-handle.left): |
| (body[dir=rtl] .timeline-ruler > .selection-handle.left): |
| (body[dir=ltr] .timeline-ruler > .selection-handle.right): |
| (body[dir=rtl] .timeline-ruler > .selection-handle.right): |
| (body[dir=ltr] .timeline-ruler > .shaded-area.left): |
| (body[dir=rtl] .timeline-ruler > .shaded-area.left): |
| (body[dir=ltr] .timeline-ruler > .shaded-area.right): |
| (body[dir=rtl] .timeline-ruler > .shaded-area.right): |
| (.timeline-ruler > .selection-handle.left): Deleted. |
| (.timeline-ruler > .selection-handle.right): Deleted. |
| (.timeline-ruler > .shaded-area.left): Deleted. |
| (.timeline-ruler > .shaded-area.right): Deleted. |
| Flip the position alignment of the selection handles and shaded areas when in RTL. |
| |
| * UserInterface/Views/TimelineRuler.js: |
| (WebInspector.TimelineRuler.prototype._handleMouseDown): |
| (WebInspector.TimelineRuler.prototype._handleMouseMove): |
| (WebInspector.TimelineRuler.prototype._handleMouseUp): |
| (WebInspector.TimelineRuler.prototype._handleSelectionHandleMouseDown): |
| (WebInspector.TimelineRuler.prototype._handleSelectionHandleMouseMove): |
| Treat the current mouse position (event.pageX) as a negative value when in RTL, meaning that |
| the delta movement from the starting position is flipped. |
| |
| 2017-03-15 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: REGRESSION: Elements Tab > Node Details Sidebar > Properties Section is spammed with TypeErrors |
| https://bugs.webkit.org/show_bug.cgi?id=153911 |
| <rdar://problem/24520098> |
| |
| Reviewed by Devin Rousso. |
| |
| * UserInterface/Views/DOMNodeDetailsSidebarPanel.js: |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties.nodeResolved.inspectedPage_node_collectPrototypes): |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties.nodeResolved): |
| Update due to naming conventions for code that evalutes in the inspected page. |
| |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties.fillSection): |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties): |
| Create a more complete ObjectTreeView for the different sections. |
| |
| * UserInterface/Views/ObjectTreePropertyTreeElement.js: |
| (WebInspector.ObjectTreePropertyTreeElement.prototype._updateChildren): |
| PureAPI behaves the same as ClassAPI and just shows own properties. |
| |
| * UserInterface/Views/ObjectTreeView.js: |
| (WebInspector.ObjectTreeView.prototype.showOnlyProperties): |
| In only properties mode don't show the Prototype expander at the end. |
| |
| (WebInspector.ObjectTreeView.prototype.setPrototypeNameOverride): |
| Allow a prototype name override at the top level. This will allow clients |
| to specify that the object at the top level is a Prototype object, so that |
| ObjectTreePropertyTreeElements can infer the right NativeFunctionParameter |
| information knowing that those properties are on a particular prototype. |
| |
| (WebInspector.ObjectTreeView.prototype.update): |
| For the PureAPI use getOwnProperties instead of getDisplayableProperties. |
| This avoids the special handling we have for DOM native properties which |
| we bubble up to the top as value descriptors even though they are actually |
| accessor descriptors on prototypes. |
| |
| (WebInspector.ObjectTreeView.prototype._updateProperties): |
| Pass the prototype name override onward for object properties. |
| |
| 2017-03-14 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Exception when fetching computed styles can break future updates of section |
| https://bugs.webkit.org/show_bug.cgi?id=169638 |
| <rdar://problem/30588688> |
| |
| Reviewed by Devin Rousso. |
| |
| * UserInterface/Models/DOMNodeStyles.js: |
| (WebInspector.DOMNodeStyles.prototype.refresh.wrap): |
| (WebInspector.DOMNodeStyles.prototype.refresh): |
| Gracefully handle exceptions. If an exception did happen we |
| would be unable to update these in the future. |
| |
| 2017-03-14 Devin Rousso <webkit@devinrousso.com> |
| |
| Web Inspector: RTL: add support for Memory timeline |
| https://bugs.webkit.org/show_bug.cgi?id=169584 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/MemoryCategoryView.css: |
| (.memory-category-view > .details): |
| (body[dir=ltr] .memory-category-view > .details): |
| (body[dir=rtl] .memory-category-view > .details): |
| |
| * UserInterface/Views/MemoryTimelineOverviewGraph.css: |
| (.timeline-overview-graph.memory > .legend): |
| (body[dir=ltr] .timeline-overview-graph.memory > .legend): |
| (body[dir=rtl] .timeline-overview-graph.memory > .legend): |
| (.timeline-overview-graph.memory .memory-pressure-event): |
| (body[dir=ltr] .timeline-overview-graph.memory .memory-pressure-event): |
| (body[dir=rtl] .timeline-overview-graph.memory .memory-pressure-event): |
| |
| * UserInterface/Views/MemoryTimelineOverviewGraph.js: |
| (WebInspector.MemoryTimelineOverviewGraph.prototype.layout): |
| Rework the calculation for the marker offset to use "right" in RTL. |
| |
| * UserInterface/Views/MemoryTimelineView.css: |
| (.timeline-view.memory > .content > .details > .timeline-ruler): |
| (body[dir=ltr] .timeline-view.memory > .content > .details > .timeline-ruler): |
| (body[dir=rtl] .timeline-view.memory > .content > .details > .timeline-ruler): |
| (.timeline-view.memory > .content > .overview > .divider): |
| (body[dir=ltr] .timeline-view.memory > .content > .overview > .divider): |
| (body[dir=rtl] .timeline-view.memory > .content > .overview > .divider): |
| (.timeline-view.memory .legend): |
| (body[dir=ltr] .timeline-view.memory .legend): |
| (body[dir=rtl] .timeline-view.memory .legend): |
| (.timeline-view.memory .legend > .row): |
| (.timeline-view.memory .legend > .row > .swatch): |
| (body[dir=ltr] .timeline-view.memory .legend > .row > .swatch): |
| (body[dir=rtl] .timeline-view.memory .legend > .row > .swatch): |
| (body[dir=ltr] .timeline-view.memory .legend > .row > :matches(.label, .size)): |
| (body[dir=rtl] .timeline-view.memory .legend > .row > :matches(.label, .size)): |
| (.timeline-view.memory .legend > .row > .label): |
| (.timeline-view.memory .legend > .row > .size): |
| |
| 2017-03-14 Devin Rousso <webkit@devinrousso.com> |
| |
| Web Inspector: RTL: add support for Timeline graphs |
| https://bugs.webkit.org/show_bug.cgi?id=169585 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/HeapAllocationsTimelineOverviewGraph.js: |
| (WebInspector.HeapAllocationsTimelineOverviewGraph.prototype.layout): |
| Rework the calculation for the icon offset to use "right" in RTL. |
| |
| * UserInterface/Views/MemoryTimelineOverviewGraph.css: |
| (body[dir=rtl] .timeline-overview-graph.memory > .stacked-line-chart): |
| Flip the chart when in RTL. |
| |
| * UserInterface/Views/TimelineRecordBar.css: |
| (.timeline-record-bar): |
| (body[dir=ltr] .timeline-record-bar > .segment.inactive): |
| (body[dir=rtl] .timeline-record-bar > .segment.inactive): |
| (body[dir=ltr] .timeline-record-bar.unfinished > .segment): |
| (body[dir=rtl] .timeline-record-bar.unfinished > .segment): |
| (body[dir=ltr] .timeline-record-bar.has-inactive-segment > .segment:not(.inactive)): |
| (body[dir=rtl] .timeline-record-bar.has-inactive-segment > .segment:not(.inactive)): |
| (body[dir=ltr] :matches(:focus, .force-focus) .selected .timeline-record-bar.has-inactive-segment > .segment:not(.inactive)): |
| (body[dir=rtl] :matches(:focus, .force-focus) .selected .timeline-record-bar.has-inactive-segment > .segment:not(.inactive)): |
| (.timeline-record-bar > .segment.inactive,): Deleted. |
| (.timeline-record-bar.has-inactive-segment > .segment:not(.inactive)): Deleted. |
| (:matches(:focus, .force-focus) .selected .timeline-record-bar.has-inactive-segment > .segment:not(.inactive)): Deleted. |
| |
| * UserInterface/Views/TimelineRecordBar.js: |
| (WebInspector.TimelineRecordBar.prototype.refresh): |
| Apply the position updates to "right" in RTL. |
| |
| * UserInterface/Views/TimelineRecordFrame.js: |
| (WebInspector.TimelineRecordFrame.prototype.refresh): |
| Apply the position updates to "right" in RTL. |
| |
| * UserInterface/Views/TimelineRuler.js: |
| (WebInspector.TimelineRuler.prototype.layout): |
| (WebInspector.TimelineRuler.prototype._updatePositionOfElement): |
| (WebInspector.TimelineRuler.prototype._updateMarkers): |
| (WebInspector.TimelineRuler.prototype._updateSelection): |
| Apply the position updates to "right" in RTL. |
| |
| 2017-03-14 Devin Rousso <webkit@devinrousso.com> |
| |
| Web Inspector: RTL: add support for DataGrid disclosure arrows and indentation |
| https://bugs.webkit.org/show_bug.cgi?id=169582 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/DataGrid.css: |
| (body[dir=rtl] .data-grid tr.parent td.disclosure::before): |
| Flip the image in RTL. |
| |
| * UserInterface/Views/DataGrid.js: |
| (WebInspector.DataGrid.prototype._updateScrollbarPadding): |
| Rework the padding calculation for the scrollbar offset to use "right" in RTL. |
| |
| * UserInterface/Views/DataGridNode.js: |
| (WebInspector.DataGridNode.prototype.get indentPadding): |
| (WebInspector.DataGridNode.prototype.createCell): |
| Rework the padding calculation for indenting (as a child) to use "right" in RTL. |
| |
| (WebInspector.DataGridNode.prototype.isEventWithinDisclosureTriangle): |
| Calculate the position of the ::before triangle based on the layout direction. |
| |
| (WebInspector.DataGridNode.prototype.get leftPadding): Deleted. |
| |
| 2017-03-14 Devin Rousso <webkit@devinrousso.com> |
| |
| Web Inspector: RTL: add support for TimelineOverview sidebar and container layout |
| https://bugs.webkit.org/show_bug.cgi?id=169583 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/TimelineOverview.css: |
| (body[dir=ltr] .timeline-overview > :matches(.navigation-bar.timelines, .tree-outline.timelines)): |
| (body[dir=rtl] .timeline-overview > :matches(.navigation-bar.timelines, .tree-outline.timelines)): |
| (body[dir=ltr] .timeline-overview:not(.frames) > :matches(.scroll-container, .timeline-ruler, .graphs-container)): |
| (body[dir=rtl] .timeline-overview:not(.frames) > :matches(.scroll-container, .timeline-ruler, .graphs-container)): |
| (.timeline-overview > .navigation-bar.timelines): |
| (.timeline-overview > .tree-outline.timelines): |
| (.timeline-overview > .scroll-container): |
| (.timeline-overview > .timeline-ruler): |
| (.timeline-overview > .graphs-container): |
| (.timeline-overview > .scroll-container > .scroll-width-sizer): |
| (body[dir=ltr] .timeline-overview > .scroll-container > .scroll-width-sizer): |
| (body[dir=rtl] .timeline-overview > .scroll-container > .scroll-width-sizer): |
| (.timeline-overview.frames > .graphs-container): Deleted. |
| |
| 2017-03-14 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: More accurate Resource Timing data in Web Inspector |
| https://bugs.webkit.org/show_bug.cgi?id=169577 |
| |
| Reviewed by Youenn Fablet. |
| |
| * UserInterface/Models/ResourceTimingData.js: |
| (WebInspector.ResourceTimingData.prototype.get requestStart): |
| (WebInspector.ResourceTimingData.prototype.get responseStart): |
| Fallback to the startTime if available instead of using the |
| inaccurate WebContentProcess gathered timestamps. |
| |
| (WebInspector.ResourceTimingData.prototype.markResponseEndTime): |
| Verify responseEnd compared to other times we may have. |
| |
| 2017-03-14 Devin Rousso <webkit@devinrousso.com> |
| |
| Web Inspector: Remove unnecessary assert for Number.percentageString |
| https://bugs.webkit.org/show_bug.cgi?id=169589 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Base/Utilities.js: |
| (Number.percentageString): |
| |
| 2017-03-14 Devin Rousso <webkit@devinrousso.com> |
| |
| Web Inspector: allow the user to copy locked CSS selectors in Style - Rules |
| https://bugs.webkit.org/show_bug.cgi?id=169587 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/CSSStyleDeclarationSection.css: |
| (.style-declaration-section:matches(.locked, .selector-locked) > .header > .selector): |
| |
| 2017-03-13 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| Web Inspector: WebSockets: color of outgoing message icon should match text color |
| https://bugs.webkit.org/show_bug.cgi?id=169512 |
| <rdar://problem/30994284> |
| |
| Reviewed by Devin Rousso. |
| |
| Include SVG icon as an inline SVG element to make currentColor work. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Main.html: |
| * UserInterface/Views/WebSocketContentView.css: |
| (.web-socket.content-view .outgoing .icon): Deleted. |
| * UserInterface/Views/WebSocketContentView.js: |
| (WebInspector.WebSocketContentView): |
| (WebInspector.WebSocketContentView.prototype.addFrame): |
| (WebInspector.WebSocketContentView.prototype._addRow): |
| (WebInspector.WebSocketContentView.prototype._timeStringFromTimestamp): Deleted. |
| * UserInterface/Views/WebSocketDataGridNode.js: Added. |
| (WebInspector.WebSocketDataGridNode.prototype.createCellContent): |
| (WebInspector.WebSocketDataGridNode.prototype._timeStringFromTimestamp): |
| (WebInspector.WebSocketDataGridNode): |
| |
| 2017-03-13 Devin Rousso <webkit@devinrousso.com> |
| |
| Web Inspector: Event Listeners detail section is unhelpful, default should show listeners by element rather than by event |
| https://bugs.webkit.org/show_bug.cgi?id=167077 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Main.html: |
| * UserInterface/Views/EventListenerSection.js: Removed. |
| |
| * UserInterface/Models/DOMNode.js: |
| (WebInspector.DOMNode.prototype.eventListeners): Renamed to getEventListeners. |
| |
| * UserInterface/Views/DOMNodeDetailsSidebarPanel.css: Added. |
| (.sidebar > .panel.dom-node-details .details-section.dom-node-event-listeners > .header > .filter): |
| (body[dir=ltr] .sidebar > .panel.dom-node-details .details-section.dom-node-event-listeners > .header > .filter): |
| (body[dir=rtl] .sidebar > .panel.dom-node-details .details-section.dom-node-event-listeners > .header > .filter): |
| (.sidebar > .panel.dom-node-details .details-section.dom-node-event-listeners > .header > .filter:hover): |
| (.sidebar > .panel.dom-node-details .details-section.dom-node-event-listeners > .header > .filter:active): |
| (.sidebar > .panel.dom-node-details .details-section.dom-node-event-listeners.collapsed > .header > .filter): |
| (.sidebar > .panel.dom-node-details .details-section.dom-node-event-listeners > .header > .filter > select): |
| |
| * UserInterface/Views/DOMNodeDetailsSidebarPanel.js: |
| (WebInspector.DOMNodeDetailsSidebarPanel.createOption): |
| (WebInspector.DOMNodeDetailsSidebarPanel): |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshEventListeners.createEventListenerSection): |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshEventListeners.generateGroupsByEvent): |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshEventListeners.generateGroupsByNode): |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshEventListeners.eventListenersCallback): |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshEventListeners): |
| Add a filter to the Event Listeners section that changes the way in which event listeners |
| are grouped. Currently supports two methods: |
| - Group by Event |
| - Group by Node |
| |
| * UserInterface/Views/EventListenerSectionGroup.js: |
| (WebInspector.EventListenerSectionGroup): |
| Add ability to display the event type. |
| |
| * UserInterface/Views/DetailsSection.css: |
| (.details-section): |
| Drive-by fix: CSS variable was named incorrectly. |
| |
| 2017-03-13 Devin Rousso <webkit@devinrousso.com> |
| |
| Web Inspector: Event Listeners section is missing 'once', 'passive' event listener flags |
| https://bugs.webkit.org/show_bug.cgi?id=167080 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Views/EventListenerSectionGroup.js: |
| (WebInspector.EventListenerSectionGroup): |
| (WebInspector.EventListenerSectionGroup.prototype._type): Deleted. |
| |
| 2017-03-11 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Add "goto arrow" to DOMNodeTreeElements in the Debugger tab |
| https://bugs.webkit.org/show_bug.cgi?id=168752 |
| |
| Reviewed by Devin Rousso. |
| |
| * UserInterface/Base/DOMUtilities.js: |
| (WebInspector.linkifyNodeReference): |
| (WebInspector.linkifyNodeReferenceElement): |
| Expose linkifying an existing element. |
| |
| * UserInterface/Views/DOMNodeTreeElement.js: |
| (WebInspector.DOMNodeTreeElement): |
| (WebInspector.DOMNodeTreeElement.prototype.populateContextMenu): |
| Add "Reveal in DOM Tree" context menu item. |
| |
| * UserInterface/Views/DebuggerSidebarPanel.css: |
| (.sidebar > .panel.navigation.debugger .details-section.dom-breakpoints .item.dom-node:not(:hover, .selected) .status .go-to-arrow): |
| Hide the go-to arrow unless hovering or selected. |
| |
| 2017-03-11 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: RTL: fix broken font content view |
| https://bugs.webkit.org/show_bug.cgi?id=169513 |
| |
| Reviewed by Brian Burg. |
| |
| Add RTL support to the Font content view. |
| |
| * UserInterface/Views/FontResourceContentView.css: |
| (.content-view.resource.font .preview > .line > .metric): |
| (body[dir=ltr] .content-view.resource.font .preview > .line > .metric): |
| (body[dir=rtl] .content-view.resource.font .preview > .line > .metric): |
| Compensate for the flipped z-order of the content and metric elements in |
| RTL by pushing metrics below the content. |
| |
| 2017-03-10 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Only show "Break on..." menu if backend supports DOM breakpoints |
| https://bugs.webkit.org/show_bug.cgi?id=169488 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Controllers/DOMBreakpointTreeController.js: |
| (WebInspector.DOMBreakpointTreeController.appendBreakpointContextMenuItems): |
| Added assert to catch future cases where UI is being added when |
| backend support doesn't exist. |
| |
| * UserInterface/Views/DOMTreeElement.js: |
| (WebInspector.DOMTreeElement.prototype._populateNodeContextMenu): |
| Check for backend support. |
| |
| 2017-03-10 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: popover with compositing reasons in Layers sidebar has hard to read layout |
| https://bugs.webkit.org/show_bug.cgi?id=167081 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/LayerTreeDetailsSidebarPanel.css: |
| (.layer-tree-popover): |
| (.layer-tree-popover p): |
| (.layer-tree-popover ul): |
| (body[dir=ltr] .layer-tree-popover ul): |
| (body[dir=rtl] .layer-tree-popover ul): |
| Show `list-item-style` and make the <p> element stand out more (larger and bold). |
| |
| 2017-03-10 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: in Resources tab navigation bar, can't save the same file from context menu item more than once |
| https://bugs.webkit.org/show_bug.cgi?id=165665 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/ContextMenuUtilities.js: |
| (WebInspector.appendContextMenuItemsForSourceCode): |
| Force the "Save As" dialog to appear when saving, as otherwise subsequent clicks on "Save" |
| in the context menu will just override the previously saved file. |
| |
| 2017-03-10 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: REGRESSION(r213149): scope bar items in elements sidebar have wrong padding/margin |
| https://bugs.webkit.org/show_bug.cgi?id=169204 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/Sidebar.css: |
| (.sidebar > .navigation-bar): |
| Replace `align-content` with `align-items`, as the former causes the child elements to fill |
| as much vertical space as possible instead of only using the space necessary for its content. |
| |
| * UserInterface/Views/ScopeRadioButtonNavigationItem.css: |
| (.scope-radio-button-navigation-item > .arrows): |
| Drive-by fix: ensure that the up/down arrows are not clickable, which would prevent the |
| <select> from showing. |
| |
| 2017-03-09 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Add XHR breakpoints UI |
| https://bugs.webkit.org/show_bug.cgi?id=168763 |
| <rdar://problem/30952439> |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| New UI strings. |
| |
| * UserInterface/Controllers/DOMDebuggerManager.js: |
| Plumbing for XHR breakpoints. Like DOM breakpoints, they are tracked |
| per-page. Unlike DOM breakpoints, they have no separate "resolved" |
| state, and are simply added/removed as the main frame changes. |
| |
| (WebInspector.DOMDebuggerManager): |
| (WebInspector.DOMDebuggerManager.prototype.get allRequestsBreakpoint): |
| (WebInspector.DOMDebuggerManager.prototype.get xhrBreakpoints): |
| (WebInspector.DOMDebuggerManager.prototype.isBreakpointRemovable): |
| (WebInspector.DOMDebuggerManager.prototype.removeDOMBreakpoint): |
| (WebInspector.DOMDebuggerManager.prototype.addXHRBreakpoint): |
| (WebInspector.DOMDebuggerManager.prototype.removeXHRBreakpoint): |
| (WebInspector.DOMDebuggerManager.prototype._speculativelyResolveBreakpoints): |
| (WebInspector.DOMDebuggerManager.prototype._detachXHRBreakpoint): |
| (WebInspector.DOMDebuggerManager.prototype._updateXHRBreakpoint.breakpointUpdated): |
| (WebInspector.DOMDebuggerManager.prototype._updateXHRBreakpoint): |
| (WebInspector.DOMDebuggerManager.prototype._resolveXHRBreakpoint): |
| (WebInspector.DOMDebuggerManager.prototype._saveXHRBreakpoints): |
| (WebInspector.DOMDebuggerManager.prototype._domBreakpointDisabledStateDidChange): |
| (WebInspector.DOMDebuggerManager.prototype._xhrBreakpointDisabledStateDidChange): |
| (WebInspector.DOMDebuggerManager.prototype._mainResourceDidChange): |
| (WebInspector.DOMDebuggerManager.prototype._saveBreakpoints): Deleted. |
| Renamed `saveDOMBreakpoints`. |
| |
| * UserInterface/Controllers/DebuggerManager.js: |
| (WebInspector.DebuggerManager.prototype._pauseReasonFromPayload): |
| Plumbing for XHR breakpoint pause reason. |
| |
| * UserInterface/Controllers/XHRBreakpointTreeController.js: Added. |
| Creates the "All Requests" breakpoint, handles DOMDebuggerManager messages, |
| and updates an associated tree outline as XHR breakpoints are added and removed. |
| |
| (WebInspector.XHRBreakpointTreeController): |
| (WebInspector.XHRBreakpointTreeController.prototype.revealAndSelect): |
| (WebInspector.XHRBreakpointTreeController.prototype.disconnect): |
| (WebInspector.XHRBreakpointTreeController.prototype._xhrBreakpointAdded): |
| (WebInspector.XHRBreakpointTreeController.prototype._xhrBreakpointRemoved): |
| (WebInspector.XHRBreakpointTreeController.prototype._mainResourceDidChange): |
| (WebInspector.XHRBreakpointTreeController.prototype._reset): |
| |
| * UserInterface/Main.html: |
| New files. |
| |
| * UserInterface/Models/XHRBreakpoint.js: Added. |
| New model class. XHR breakpoints have an associated URL, which is matched |
| against the request URL when deciding whether to break. An empty URL matches |
| all XMLHttpRequests. |
| |
| (WebInspector.XHRBreakpoint): |
| (WebInspector.XHRBreakpoint.prototype.get documentURL): |
| (WebInspector.XHRBreakpoint.prototype.get url): |
| (WebInspector.XHRBreakpoint.prototype.get disabled): |
| (WebInspector.XHRBreakpoint.prototype.set disabled): |
| (WebInspector.XHRBreakpoint.prototype.get serializableInfo): |
| (WebInspector.XHRBreakpoint.prototype.saveIdentityToCookie): |
| |
| * UserInterface/Test.html: |
| New files. |
| |
| * UserInterface/Views/ContentView.js: |
| (WebInspector.ContentView.createFromRepresentedObject): |
| Plumbing for new represented object type, to prevent runtime assertion. |
| |
| * UserInterface/Views/DOMBreakpointTreeElement.js: |
| (WebInspector.DOMBreakpointTreeElement): |
| Reuse BreakpointTreeElement styles. |
| |
| * UserInterface/Views/DebuggerSidebarPanel.js: |
| (WebInspector.DebuggerSidebarPanel): |
| (WebInspector.DebuggerSidebarPanel.prototype.saveStateToCookie): |
| (WebInspector.DebuggerSidebarPanel.prototype.restoreStateFromCookie): |
| (WebInspector.DebuggerSidebarPanel.prototype._updatePauseReasonSection): |
| (WebInspector.DebuggerSidebarPanel.prototype._addXHRBreakpointButtonClicked): |
| (WebInspector.DebuggerSidebarPanel.prototype.willDismissPopover): |
| |
| * UserInterface/Views/InputPopover.css: Added. |
| (.popover .input-popover-content): |
| (.popover .input-popover-content > .editor): |
| (.popover .input-popover-content > .editor > .CodeMirror): |
| (.popover .input-popover-content > .editor > .CodeMirror-scroll): |
| |
| * UserInterface/Views/InputPopover.js: Added. |
| New general purpose popover class. Style and structure lifted from |
| the Popover implementation used by the Probe Expressions UI. A follow-up |
| has been filed to switch that UI over to this new class: |
| https://bugs.webkit.org/show_bug.cgi?id=169428. |
| |
| (WebInspector.InputPopover): |
| (WebInspector.InputPopover.prototype.get value): |
| (WebInspector.InputPopover.prototype.get result): |
| (WebInspector.InputPopover.prototype.show): |
| (WebInspector.InputPopover.prototype._presentOverTargetElement): |
| |
| * UserInterface/Views/XHRBreakpointTreeElement.js: Added. |
| Tree element class for XHR breakpoints. Behaves identically to |
| script and DOM breakpoint tree elements. |
| |
| (WebInspector.XHRBreakpointTreeElement): |
| Reuse BreakpointTreeElement styles. |
| (WebInspector.XHRBreakpointTreeElement.prototype.onattach): |
| (WebInspector.XHRBreakpointTreeElement.prototype.ondetach): |
| (WebInspector.XHRBreakpointTreeElement.prototype.ondelete): |
| (WebInspector.XHRBreakpointTreeElement.prototype.onenter): |
| (WebInspector.XHRBreakpointTreeElement.prototype.onspace): |
| (WebInspector.XHRBreakpointTreeElement.prototype.populateContextMenu): |
| (WebInspector.XHRBreakpointTreeElement.prototype._statusImageElementClicked): |
| (WebInspector.XHRBreakpointTreeElement.prototype._statusImageElementFocused): |
| (WebInspector.XHRBreakpointTreeElement.prototype._statusImageElementMouseDown): |
| (WebInspector.XHRBreakpointTreeElement.prototype._toggleBreakpoint): |
| (WebInspector.XHRBreakpointTreeElement.prototype._updateStatus): |
| |
| 2017-03-09 Matt Baker <mattbaker@apple.com> |
| |
| REGRESSION (r196271): Web Inspector: DOM element loses focus/active selection after committing an inline attribute editor in DOMTreeOutline |
| https://bugs.webkit.org/show_bug.cgi?id=168119 |
| <rdar://problem/30466013> |
| |
| Reviewed by Brian Burg. |
| |
| Fix a regression caused by http://trac.webkit.org/changeset/196271, which |
| updated WebInspector.isEventTargetAnEditableField to detect the editing |
| scenarios used by DOMTreeElement and DataGrid. This subtly changed the |
| behavior of WebInspector._focusChanged, which expected all editable fields |
| to be backed by a CodeMirror instance. |
| |
| * UserInterface/Base/Main.js: |
| |
| 2017-03-09 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Show HTTP protocol version and other Network Load Metrics (IP Address, Priority, Connection ID) |
| https://bugs.webkit.org/show_bug.cgi?id=29687 |
| <rdar://problem/19281586> |
| |
| Reviewed by Matt Baker and Brian Burg. |
| |
| These columns are available in the Network DataGrids, but are |
| initially hidden. They can be shown by right clicking on the |
| table header and showing these columns. We are going to rework |
| the default list of visible columns later. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| New localized strings for data grid headers and Low/Medium/High. |
| |
| * UserInterface/Controllers/FrameResourceManager.js: |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidFinishLoading): |
| * UserInterface/Protocol/NetworkObserver.js: |
| (WebInspector.NetworkObserver.prototype.loadingFinished): |
| Pass metrics on to the Resource. |
| |
| * UserInterface/Models/Resource.js: |
| (WebInspector.Resource): |
| (WebInspector.Resource.displayNameForType): |
| (WebInspector.Resource.responseSourceFromPayload): |
| (WebInspector.Resource.networkPriorityFromPayload): |
| (WebInspector.Resource.connectionIdentifierFromPayload): |
| (WebInspector.Resource.prototype.get protocol): |
| (WebInspector.Resource.prototype.get priority): |
| (WebInspector.Resource.prototype.get remoteAddress): |
| (WebInspector.Resource.prototype.get connectionIdentifier): |
| (WebInspector.Resource.prototype.updateWithMetrics): |
| Include metrics accessors and default values. |
| |
| * UserInterface/Views/NetworkGridContentView.js: |
| (WebInspector.NetworkGridContentView): |
| * UserInterface/Views/NetworkTimelineView.js: |
| (WebInspector.NetworkTimelineView): |
| Add metrics columns if the backend may be sending them. |
| |
| * UserInterface/Views/ResourceTimelineDataGridNode.js: |
| (WebInspector.ResourceTimelineDataGridNode.prototype.get data): |
| (WebInspector.ResourceTimelineDataGridNode.prototype.createCellContent): |
| (WebInspector.ResourceTimelineDataGridNode.prototype._displayNameForPriority): |
| (WebInspector.ResourceTimelineDataGridNode.prototype._cachedCellContent): |
| Display strings for new columns. |
| |
| * UserInterface/Views/TimelineDataGridNode.js: |
| * UserInterface/Views/TimelineRecordBar.js: |
| (WebInspector.TimelineRecordBar.prototype.refresh): |
| Avoid assertions if Graph column is unavailable. |
| |
| * UserInterface/Views/DataGrid.js: |
| (WebInspector.DataGrid): |
| (WebInspector.DataGrid.prototype.createSettings): |
| (WebInspector.DataGrid.prototype.setColumnVisible): |
| Better support for restoring user preference of initially |
| hidden columns which the user may have shown. |
| |
| * UserInterface/Views/ResourceDetailsSidebarPanel.js: |
| (WebInspector.ResourceDetailsSidebarPanel): |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshRequestAndResponse): |
| Show the Protocol and Priority in the Resources sidebar. |
| |
| 2017-03-09 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| Web Inspector: Show individual messages in the content pane for a WebSocket |
| https://bugs.webkit.org/show_bug.cgi?id=169011 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| When selecting a Web Socket in Network panel or Resources, display a table |
| of all messages that have been sent and received. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Controllers/FrameResourceManager.js: |
| (WebInspector.FrameResourceManager.prototype.webSocketWillSendHandshakeRequest): |
| Add a walltime parameter. |
| |
| (WebInspector.FrameResourceManager.prototype._webSocketFrameReceivedOrSent): |
| Fix a bug: masked messages are outgoing, not incoming. |
| |
| * UserInterface/Images/ArrowUp.svg: Added. |
| * UserInterface/Images/gtk/ArrowUp.svg: Added. |
| Add an icon for outgoing messages. |
| |
| * UserInterface/Main.html: |
| * UserInterface/Models/WebSocketResource.js: |
| (WebInspector.WebSocketResource): |
| (WebInspector.WebSocketResource.prototype.get walltime): |
| (WebInspector.WebSocketResource.prototype.addFrame): |
| (WebInspector.WebSocketResource.prototype._walltimeForWebSocketTimestamp): |
| * UserInterface/Protocol/NetworkObserver.js: |
| (WebInspector.NetworkObserver.prototype.webSocketWillSendHandshakeRequest): |
| (WebInspector.NetworkObserver.prototype.webSocketFrameSent): |
| (WebInspector.NetworkObserver.prototype.webSocketFrameError): |
| (WebInspector.NetworkObserver): |
| * UserInterface/Views/NetworkSidebarPanel.js: |
| (WebInspector.NetworkSidebarPanel.prototype.treeElementAddedOrChanged): |
| * UserInterface/Views/ResourceClusterContentView.js: |
| (WebInspector.ResourceClusterContentView.prototype.get responseContentView): |
| * UserInterface/Views/WebSocketContentView.css: Added. |
| (.web-socket.content-view > .data-grid): |
| (.web-socket.content-view > .data-grid table.data): |
| (.web-socket.content-view > .data-grid td.data-column,): |
| (body[dir=ltr] .web-socket.content-view > .data-grid .data-column > div): |
| (body[dir=rtl] .web-socket.content-view > .data-grid .data-column > div): |
| (.web-socket.content-view .icon): |
| (body[dir=ltr] .web-socket.content-view .icon): |
| (body[dir=rtl] .web-socket.content-view .icon): |
| (.web-socket.content-view .outgoing .icon): |
| (.web-socket.content-view .data-grid.variable-height-rows table.data tr:nth-child(odd)): |
| (.web-socket.content-view .data-grid table.data tr.revealed): |
| (.web-socket.content-view .data-grid.variable-height-rows table.data tr.outgoing): |
| (.web-socket.content-view .data-grid.variable-height-rows table.data tr.non-text-frame): |
| |
| * UserInterface/Views/WebSocketContentView.js: Added. |
| (WebInspector.WebSocketContentView): |
| Only show Time column when walltime is available. |
| |
| (WebInspector.WebSocketContentView.textForOpcode): |
| (WebInspector.WebSocketContentView.prototype.shown): |
| (WebInspector.WebSocketContentView.prototype.hidden): |
| (WebInspector.WebSocketContentView.prototype.addFrame): |
| (WebInspector.WebSocketContentView.prototype._updateFrames): |
| Only render frames that haven't been rendered yet. |
| |
| (WebInspector.WebSocketContentView.prototype._addRow): |
| (WebInspector.WebSocketContentView.prototype._timeStringFromTimestamp): |
| |
| 2017-03-09 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: DOMTreeManager dispatches DocumentUpdated twice when the document is cleared |
| https://bugs.webkit.org/show_bug.cgi?id=168984 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Controllers/DOMTreeManager.js: |
| (WebInspector.DOMTreeManager.prototype._setDocument): |
| Compare old and new document values before dispatching message. |
| |
| 2017-03-09 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Add settings for controlling Styles sidebar intelligence |
| https://bugs.webkit.org/show_bug.cgi?id=169181 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Base/Setting.js: |
| Add three new settings: |
| - stylesShowInlineWarnings |
| - stylesInsertNewline |
| - stylesSelectOnFirstClick |
| |
| * UserInterface/Views/CSSStyleDeclarationTextEditor.js: |
| (WebInspector.CSSStyleDeclarationTextEditor): |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleMouseDown): |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleMouseUp): |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._createInlineSwatches.update): |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded): |
| |
| * UserInterface/Views/SettingsTabContentView.css: |
| (.content-view.settings > .separator): Added. |
| (.content-view.settings > .setting-container): |
| (.content-view.settings > .setting-container.combined): |
| |
| * UserInterface/Views/SettingsTabContentView.js: |
| (WebInspector.SettingsTabContentView.prototype.layout.createContainer): |
| (WebInspector.SettingsTabContentView.prototype.layout.createSeparator): Added. |
| (WebInspector.SettingsTabContentView.prototype.layout): |
| |
| 2017-03-08 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Add DOM breakpoints UI for node/subtree modification events |
| https://bugs.webkit.org/show_bug.cgi?id=168101 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| New UI strings. |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector.loaded): |
| Add new manager. |
| |
| * UserInterface/Controllers/DOMBreakpointTreeController.js: Added. |
| Handles messages from DOMDebuggerManager, and updates an associated |
| tree outline as DOM breakpoints are added and removed. |
| (WebInspector.DOMBreakpointTreeController): |
| (WebInspector.DOMBreakpointTreeController.appendBreakpointContextMenuItems): |
| (WebInspector.DOMBreakpointTreeController.prototype.disconnect): |
| (WebInspector.DOMBreakpointTreeController.prototype._addBreakpointTreeElement): |
| (WebInspector.DOMBreakpointTreeController.prototype._removeBreakpointTreeElement): |
| (WebInspector.DOMBreakpointTreeController.prototype._domBreakpointAdded): |
| (WebInspector.DOMBreakpointTreeController.prototype._domBreakpointRemoved): |
| (WebInspector.DOMBreakpointTreeController.prototype._domBreakpointResolvedStateDidChange): |
| (WebInspector.DOMBreakpointTreeController.prototype._mainResourceDidChange): |
| |
| * UserInterface/Controllers/DOMDebuggerManager.js: Added. |
| New frontend manager for the DOMDebugger domain. A DOM breakpoint is |
| described by a location (URL and node path) and type. The manager keeps |
| all known DOM breakpoints in memory, and considers a breakpoint to be |
| "resolved" once its location is pushed to the frontend. |
| |
| Breakpoints located within a child frame are still associated with the |
| main frame. Whenever a the main resource of a child frame changes, all |
| unresolved breakpoints associated with the main frame are speculatively |
| resolved. |
| |
| (WebInspector.DOMDebuggerManager): |
| (WebInspector.DOMDebuggerManager.prototype.get supported): |
| (WebInspector.DOMDebuggerManager.prototype.get domBreakpoints): |
| (WebInspector.DOMDebuggerManager.prototype.domBreakpointsForNode): |
| (WebInspector.DOMDebuggerManager.prototype.addDOMBreakpoint): |
| (WebInspector.DOMDebuggerManager.prototype.removeDOMBreakpoint): |
| (WebInspector.DOMDebuggerManager.prototype._detachDOMBreakpoint): |
| (WebInspector.DOMDebuggerManager.prototype._detachBreakpointsForFrame): |
| (WebInspector.DOMDebuggerManager.prototype._speculativelyResolveBreakpoints): |
| (WebInspector.DOMDebuggerManager.prototype._resolveDOMBreakpoint): |
| (WebInspector.DOMDebuggerManager.prototype._updateDOMBreakpoint): |
| (WebInspector.DOMDebuggerManager.prototype._saveBreakpoints): |
| (WebInspector.DOMDebuggerManager.prototype._domBreakpointDisabledStateDidChange): |
| (WebInspector.DOMDebuggerManager.prototype._childFrameWasRemoved): |
| (WebInspector.DOMDebuggerManager.prototype._mainFrameDidChange): |
| (WebInspector.DOMDebuggerManager.prototype._mainResourceDidChange): |
| (WebInspector.DOMDebuggerManager.prototype._nodeInserted): |
| (WebInspector.DOMDebuggerManager.prototype._nodeRemoved): |
| |
| * UserInterface/Controllers/DebuggerManager.js: |
| (WebInspector.DebuggerManager.prototype._pauseReasonFromPayload): |
| Plumbing for DOM breakpoint pause reason. |
| |
| * UserInterface/Images/DOMBreakpoint.svg: Added. |
| New art. Visually very similar to a script breakpoint, with some |
| tweaks to make it suitable for display in the DOM tree gutter. |
| |
| * UserInterface/Main.html: |
| New files. |
| |
| * UserInterface/Models/DOMBreakpoint.js: Added. |
| New model class. DOM breakpoints are either associated with a DOM node |
| when created, or constructed from a cookie and resolved in the future. |
| |
| (WebInspector.DOMBreakpoint): |
| (WebInspector.DOMBreakpoint.prototype.get type): |
| (WebInspector.DOMBreakpoint.prototype.get url): |
| (WebInspector.DOMBreakpoint.prototype.get path): |
| (WebInspector.DOMBreakpoint.prototype.get disabled): |
| (WebInspector.DOMBreakpoint.prototype.set disabled): |
| (WebInspector.DOMBreakpoint.prototype.get domNodeIdentifier): |
| (WebInspector.DOMBreakpoint.prototype.set domNodeIdentifier): |
| (WebInspector.DOMBreakpoint.prototype.get serializableInfo): |
| (WebInspector.DOMBreakpoint.prototype.saveIdentityToCookie): |
| |
| * UserInterface/Protocol/Legacy/10.0/InspectorBackendCommands.js: |
| * UserInterface/Protocol/Legacy/10.3/InspectorBackendCommands.js: |
| * UserInterface/Protocol/Legacy/7.0/InspectorBackendCommands.js: |
| * UserInterface/Protocol/Legacy/8.0/InspectorBackendCommands.js: |
| * UserInterface/Protocol/Legacy/9.0/InspectorBackendCommands.js: |
| * UserInterface/Protocol/Legacy/9.3/InspectorBackendCommands.js: |
| The DOMDebugger should not be enabled for legacy backends, since legacy |
| backend support was never tested and may have issues. |
| |
| * UserInterface/Test.html: |
| New files. |
| |
| * UserInterface/Test/Test.js: |
| (WebInspector.loaded): |
| Add new manager. |
| |
| * UserInterface/Views/ContentView.js: |
| (WebInspector.ContentView.createFromRepresentedObject): |
| (WebInspector.ContentView.resolvedRepresentedObjectForRepresentedObject): |
| Plumbing for additional represented object types. DOMNode is included |
| because the Debugger sidebar panel shows DOM breakpoint tree elements |
| as children of a DOM node tree element. |
| |
| * UserInterface/Views/DOMBreakpointTreeElement.css: Added. |
| (.item.dom-breakpoint .icon): |
| (.item.dom-breakpoint.breakpoint-paused-icon .icon): |
| (.item.dom-breakpoint .status img): |
| (.item.dom-breakpoint .status > img.disabled): |
| Styles for "Pause Reason" and "DOM Breakpoints" sections. |
| |
| * UserInterface/Views/DOMBreakpointTreeElement.js: Added. |
| Tree element class for DOM breakpoints. Includes a breakpoint status |
| element and context menu for delete/disable actions, similar to script |
| breakpoint tree elements. |
| |
| (WebInspector.DOMBreakpointTreeElement): |
| (WebInspector.DOMBreakpointTreeElement.displayNameForType): |
| (WebInspector.DOMBreakpointTreeElement.prototype.onattach): |
| (WebInspector.DOMBreakpointTreeElement.prototype.ondetach): |
| (WebInspector.DOMBreakpointTreeElement.prototype.ondelete): |
| (WebInspector.DOMBreakpointTreeElement.prototype.onenter): |
| (WebInspector.DOMBreakpointTreeElement.prototype.onspace): |
| (WebInspector.DOMBreakpointTreeElement.prototype.populateContextMenu): |
| (WebInspector.DOMBreakpointTreeElement.prototype._statusImageElementClicked): |
| (WebInspector.DOMBreakpointTreeElement.prototype._statusImageElementFocused): |
| (WebInspector.DOMBreakpointTreeElement.prototype._statusImageElementMouseDown): |
| (WebInspector.DOMBreakpointTreeElement.prototype._toggleBreakpoint): |
| (WebInspector.DOMBreakpointTreeElement.prototype._updateStatus): |
| |
| * UserInterface/Views/DOMNodeTreeElement.js: Added. |
| Tree element class for DOM nodes, which serves as a parent for DOM |
| breakpoint tree elements. Includes context menu for bulk delete/disable |
| of all child breakpoints. |
| |
| (WebInspector.DOMNodeTreeElement): |
| (WebInspector.DOMNodeTreeElement.prototype.ondelete): |
| (WebInspector.DOMNodeTreeElement.prototype.populateContextMenu): |
| |
| * UserInterface/Views/DOMTreeContentView.css: |
| Styles for DOM breakpoint gutter and breakpoint indicators, including |
| "left pointing" breakpoints for RTL mode. |
| |
| (.content-view.dom-tree.show-gutter .tree-outline.dom): |
| (body[dir=ltr] .content-view.dom-tree.show-gutter .tree-outline.dom): |
| (body[dir=rtl] .content-view.dom-tree.show-gutter .tree-outline.dom): |
| (.content-view.dom-tree .tree-outline.dom li .status-image): |
| (body[dir=ltr] .content-view.dom-tree .tree-outline.dom li .status-image): |
| (body[dir=rtl] .content-view.dom-tree .tree-outline.dom li .status-image): |
| (.content-view.dom-tree .tree-outline.dom li .status-image.breakpoint): |
| (body:not(.window-inactive) .content-view.dom-tree .tree-outline.dom:focus li.selected .status-image.breakpoint): |
| (.content-view.dom-tree .tree-outline.dom li .status-image.breakpoint.disabled): |
| (.content-view.dom-tree .tree-outline.dom.breakpoints-disabled li .status-image.breakpoint): |
| (.content-view.dom-tree .tree-outline.dom.breakpoints-disabled li .status-image.breakpoint.disabled): |
| |
| * UserInterface/Views/DOMTreeContentView.js: |
| Add support for DOM breakpoint gutter and breakpoint indicators. |
| Breakpoint indicator elements are part of the DOM tree element, and are |
| updated whenever there a breakpoint's disabled or resolved state changes. |
| |
| (WebInspector.DOMTreeContentView): |
| (WebInspector.DOMTreeContentView.prototype.get breakpointGutterEnabled): |
| (WebInspector.DOMTreeContentView.prototype.set breakpointGutterEnabled): |
| (WebInspector.DOMTreeContentView.prototype.shown): |
| (WebInspector.DOMTreeContentView.prototype.closed): |
| (WebInspector.DOMTreeContentView.prototype._domTreeElementAdded): |
| (WebInspector.DOMTreeContentView.prototype._domBreakpointAddedOrRemoved): |
| (WebInspector.DOMTreeContentView.prototype._domBreakpointDisabledStateDidChange): |
| (WebInspector.DOMTreeContentView.prototype._domBreakpointResolvedStateDidChange): |
| (WebInspector.DOMTreeContentView.prototype._updateBreakpointStatus): |
| (WebInspector.DOMTreeContentView.prototype._restoreBreakpointsAfterUpdate): |
| (WebInspector.DOMTreeContentView.prototype._breakpointsEnabledDidChange): |
| |
| * UserInterface/Views/DOMTreeElement.js: |
| Add support for breakpoint status element and content menu. |
| (WebInspector.DOMTreeElement): |
| (WebInspector.DOMTreeElement.prototype.get breakpointStatus): |
| (WebInspector.DOMTreeElement.prototype.set breakpointStatus): |
| (WebInspector.DOMTreeElement.prototype._populateNodeContextMenu): |
| (WebInspector.DOMTreeElement.prototype.updateTitle): |
| (WebInspector.DOMTreeElement.prototype._updateBreakpointStatus): |
| (WebInspector.DOMTreeElement.prototype._statusImageContextmenu): |
| |
| * UserInterface/Views/DebuggerSidebarPanel.css: |
| (.sidebar > .panel.navigation.debugger .details-section.dom-breakpoints .item.dom-node .titles): |
| (.sidebar > .panel.navigation.debugger .details-section.dom-breakpoints .item.dom-node .icon): |
| Styles for DOM node tree elements. |
| |
| * UserInterface/Views/DebuggerSidebarPanel.js: |
| Add new DOM Breakpoints section, and support for the "DOM" pause reason. |
| |
| (WebInspector.DebuggerSidebarPanel): |
| (WebInspector.DebuggerSidebarPanel.prototype.closed): |
| (WebInspector.DebuggerSidebarPanel.prototype._updatePauseReasonSection): |
| (WebInspector.DebuggerSidebarPanel.prototype._domBreakpointAddedOrRemoved): |
| |
| * UserInterface/Views/FrameDOMTreeContentView.js: |
| (WebInspector.FrameDOMTreeContentView.prototype._rootDOMNodeAvailable): |
| Restore DOM breakpoints once the root node is available. |
| |
| * UserInterface/Views/Variables.css: |
| (:root): |
| Fill and stroke colors for resolved, unresolved, and disabled breakpoints. |
| |
| * Versions/Inspector-iOS-10.0.json: |
| * Versions/Inspector-iOS-10.3.json: |
| * Versions/Inspector-iOS-7.0.json: |
| * Versions/Inspector-iOS-8.0.json: |
| * Versions/Inspector-iOS-9.0.json: |
| * Versions/Inspector-iOS-9.3.json: |
| |
| 2017-03-08 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: RTL: table header columns and cells don't line up, dragging seems backwards |
| https://bugs.webkit.org/show_bug.cgi?id=168289 |
| |
| Reviewed by Brian Burg. |
| |
| Changed the algorithm used to position columns when in RTL to use right offsets instead of |
| left offsets. This also applies to the resizer elements between columns. |
| |
| * UserInterface/Views/DataGrid.css: |
| (.data-grid): |
| (.data-grid th): |
| (body[dir=ltr] .data-grid :matches(th, td):not(:last-child)): |
| (body[dir=rtl] .data-grid :matches(th, td):not(:last-child)): |
| (.data-grid th:matches(.sort-ascending, .sort-descending)): |
| (body[dir=ltr] .data-grid:matches(:focus, .force-focus) tr.selected td:not(:last-child)): |
| (body[dir=rtl] .data-grid:matches(:focus, .force-focus) tr.selected td:not(:last-child)): |
| (.data-grid .right div): |
| (body[dir=ltr] .data-grid th:matches(.sort-ascending, .sort-descending) > div:first-child): |
| (body[dir=rtl] .data-grid th:matches(.sort-ascending, .sort-descending) > div:first-child): |
| (.data-grid th:matches(.sort-ascending, .sort-descending) > div:first-child::after): |
| (body[dir=ltr] .data-grid th:matches(.sort-ascending, .sort-descending) > div:first-child::after): |
| (body[dir=rtl] .data-grid th:matches(.sort-ascending, .sort-descending) > div:first-child::after): |
| (.data-grid th.sort-ascending > div:first-child::after): |
| (.data-grid th.sort-descending > div:first-child::after): |
| (.data-grid tr.parent td.disclosure::before): |
| (body[dir=ltr] .data-grid tr.parent td.disclosure::before): |
| (body[dir=rtl] .data-grid tr.parent td.disclosure::before): |
| (.data-grid td .icon): |
| (body[dir=ltr] .data-grid td .icon): |
| (body[dir=rtl] .data-grid td .icon): |
| (.data-grid td .go-to-arrow): |
| (body[dir=ltr] .data-grid td .go-to-arrow): |
| (body[dir=rtl] .data-grid td .go-to-arrow): |
| (.data-grid .resizer): |
| (body[dir=ltr] .data-grid .resizer): |
| (body[dir=rtl] .data-grid .resizer): |
| (.data-grid table:matches(.header, .data)): |
| (body[dir=ltr] .data-grid table:matches(.header, .data)): |
| (body[dir=rtl] .data-grid table:matches(.header, .data)): |
| (body[dir=ltr] .data-grid :matches(th, td):first-child): |
| (body[dir=rtl] .data-grid :matches(th, td):first-child): |
| (@media (-webkit-min-device-pixel-ratio: 2)): |
| (.data-grid :matches(th, td):not(:last-child)): Deleted. |
| (.data-grid:matches(:focus, .force-focus) tr.selected td:not(:last-child)): Deleted. |
| (.data-grid th:matches(.sort-ascending, .sort-descending) > div:first-child): Deleted. |
| (.data-grid table.header, .data-grid table.data): Deleted. |
| |
| * UserInterface/Views/DataGrid.js: |
| (WebInspector.DataGrid.prototype._positionResizerElements): |
| (WebInspector.DataGrid.prototype._positionHeaderViews): |
| (WebInspector.DataGrid.prototype.resizerDragging): |
| |
| 2017-03-08 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Should be able to see where Resources came from (Memory Cache, Disk Cache) |
| https://bugs.webkit.org/show_bug.cgi?id=164892 |
| <rdar://problem/29320562> |
| |
| Reviewed by Brian Burg. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| New localized strings for memory/disk cache information. |
| |
| * UserInterface/Controllers/FrameResourceManager.js: |
| (WebInspector.FrameResourceManager.prototype.markResourceRequestAsServedFromMemoryCache): |
| Make this legacy path more explicit. |
| |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWasServedFromMemoryCache): |
| Make this memory cache path more explicit. |
| |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidReceiveResponse): |
| Pass the resource's response source onward. |
| |
| * UserInterface/Models/Resource.js: |
| (WebInspector.Resource): |
| (WebInspector.Resource.responseSourceFromPayload): |
| (WebInspector.Resource.prototype.get responseSource): |
| (WebInspector.Resource.prototype.hasResponse): |
| (WebInspector.Resource.prototype.updateForResponse): |
| (WebInspector.Resource.prototype.markAsCached): |
| (WebInspector.Resource.prototype.legacyMarkServedFromMemoryCache): |
| (WebInspector.Resource.prototype.legacyMarkServedFromDiskCache): |
| Include a WebInspector.ResponseSource enum. |
| Update a Resource's responseSource state where appropriate. |
| |
| * UserInterface/Protocol/NetworkObserver.js: |
| (WebInspector.NetworkObserver.prototype.requestServedFromCache): |
| Mark legacy path. |
| |
| * UserInterface/Views/NetworkGridContentView.js: |
| (WebInspector.NetworkGridContentView): |
| * UserInterface/Views/NetworkTimelineView.js: |
| (WebInspector.NetworkTimelineView): |
| Tweak default column sizes to make Cached and graph columns a little larger. |
| |
| * UserInterface/Views/ResourceTimelineDataGridNode.js: |
| (WebInspector.ResourceTimelineDataGridNode.prototype.createCellContent): |
| (WebInspector.ResourceTimelineDataGridNode.prototype._cachedCellContent): |
| Update "Cached" column data with more information if available. |
| |
| * UserInterface/Views/NetworkGridContentView.css: |
| (.content-view.network-grid > .data-grid .cache-type): |
| (.content-view.network-grid > .data-grid:matches(:focus, .force-focus) tr.selected .cache-type): |
| Style the cache type a secondary color. |
| |
| 2017-03-08 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: add a "create breakpoint" context menu item for linkified source locations |
| https://bugs.webkit.org/show_bug.cgi?id=47442 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector.isShowingResourcesTab): Added. |
| (WebInspector.linkifyElement): |
| Now calls WebInspector.appendContextMenuItemsForSourceCode on "contextmenu" events for the |
| created element. |
| |
| * UserInterface/Controllers/DebuggerManager.js: |
| (WebInspector.DebuggerManager.prototype.breakpointForSourceCodeLocation): |
| Returns the first breakpoint (since there should only be one) that matches the given location. |
| |
| * UserInterface/Views/ContextMenuUtilities.js: |
| (WebInspector.appendContextMenuItemsForSourceCode): |
| Rework parameters to also accept a WebInspector.SourceCodeLocation, thereby allowing the |
| setting of breakpoints so long as the associated WebInspector.SourceCode is a script. |
| |
| * UserInterface/Views/Main.css: |
| (.resource-link, .go-to-link): |
| Prevent link from being selected. |
| |
| 2017-03-08 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: RTL: Switching back to System Direction doesn't change the dock side |
| https://bugs.webkit.org/show_bug.cgi?id=169323 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector.setLayoutDirection): |
| Change the dock side based on the resolved layout direction, not the current setting value. |
| |
| 2017-03-08 Matt Baker <mattbaker@apple.com> |
| |
| REGRESSION (r212998): Web Inspector: DetailsSections with options have broken layout |
| https://bugs.webkit.org/show_bug.cgi?id=169350 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/DetailsSection.css: |
| (.details-section): |
| Fix negative margin. |
| (body[dir=ltr] .details-section > .header > :matches(label, .node-link, .go-to-arrow),): |
| (body[dir=ltr] .details-section > .header::before,): |
| (body[dir=ltr] .details-section > .header > :matches(label, .node-link, .go-to-arrow, .options > .navigation-bar),): Deleted. |
| It looks like :matches doesn't accept compound selectors in its selector list. |
| |
| 2017-03-07 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: DOM Tree broken if an element has a "debounce" attribute |
| https://bugs.webkit.org/show_bug.cgi?id=169336 |
| <rdar://problem/30899430> |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Models/DOMNode.js: |
| (WebInspector.DOMNode): |
| (WebInspector.DOMNode.prototype.getAttribute): |
| (WebInspector.DOMNode.prototype.removeAttribute.mycallback): |
| (WebInspector.DOMNode.prototype.removeAttribute): |
| Convert the attributes map to an actual Map to avoid name collisions |
| with Object.prototype properties. |
| |
| 2017-03-07 Chris Dumez <cdumez@apple.com> |
| |
| Drop non-standard MessageEvent.webkitInitMessageEvent() |
| https://bugs.webkit.org/show_bug.cgi?id=169295 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| Drop MessageEvent.webkitInitMessageEvent and update parameters for various |
| init*Event() operations to match the current implementation. |
| |
| * UserInterface/Models/NativeFunctionParameters.js: |
| |
| 2017-03-04 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| Web Inspector: Show Web Socket connections in Network tab |
| https://bugs.webkit.org/show_bug.cgi?id=167520 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| Show Web Socket connections in Network and Resources tabs. Display HTTP headers |
| of Web Socket handshake request in the details sidebar. |
| |
| * UserInterface/Controllers/FrameResourceManager.js: |
| (WebInspector.FrameResourceManager.prototype.initialize): |
| (WebInspector.FrameResourceManager.prototype.webSocketCreated): |
| (WebInspector.FrameResourceManager.prototype.webSocketWillSendHandshakeRequest): |
| webSocketWillSendHandshakeRequest doesn't receive a request URL as one of its parameters. |
| Store URLs received from webSocketCreated method in _webSocketIdentifierToURL map. |
| |
| (WebInspector.FrameResourceManager.prototype.webSocketHandshakeResponseReceived): |
| (WebInspector.FrameResourceManager.prototype.webSocketFrameReceived): |
| (WebInspector.FrameResourceManager.prototype.webSocketFrameSent): |
| (WebInspector.FrameResourceManager.prototype.webSocketClosed): |
| Mark resource as finished when Web Socket handshake is complete or Web Socket is closed. |
| This may change in the future. |
| |
| (WebInspector.FrameResourceManager.prototype._webSocketFrameReceivedOrSent): |
| * UserInterface/Main.html: |
| |
| * UserInterface/Models/WebSocketResource.js: Added. |
| (WebInspector.WebSocketResource): |
| (WebInspector.WebSocketResource.prototype.set readyState): |
| (WebInspector.WebSocketResource.prototype.get readyState): |
| (WebInspector.WebSocketResource.prototype.get frames): |
| (WebInspector.WebSocketResource.prototype.addFrame): |
| Introduce WebSocketResource model to store WebSocket frames (incoming and outgoing messages) |
| and readyState. |
| |
| * UserInterface/Protocol/NetworkObserver.js: |
| (WebInspector.NetworkObserver.prototype.webSocketCreated): |
| (WebInspector.NetworkObserver.prototype.webSocketWillSendHandshakeRequest): |
| (WebInspector.NetworkObserver.prototype.webSocketHandshakeResponseReceived): |
| (WebInspector.NetworkObserver.prototype.webSocketClosed): |
| (WebInspector.NetworkObserver.prototype.webSocketFrameReceived): |
| (WebInspector.NetworkObserver.prototype.webSocketFrameError): |
| (WebInspector.NetworkObserver.prototype.webSocketFrameSent): |
| (WebInspector.NetworkObserver): |
| Add corresponding methods for the newly added FrameResourceManager methods. |
| |
| * UserInterface/Test.html: |
| * UserInterface/Views/NetworkSidebarPanel.js: |
| (WebInspector.NetworkSidebarPanel.prototype.treeElementAddedOrChanged): |
| Don't show the go to arrow for WebSocket items since WebSocketContentView isn't implemented |
| yet. |
| |
| * UserInterface/Views/ResourceClusterContentView.js: |
| (WebInspector.ResourceClusterContentView.prototype.get responseContentView): |
| Don't show any content views for WebSocket items. |
| |
| * UserInterface/Views/ResourceTreeElement.js: |
| (WebInspector.ResourceTreeElement.prototype.ondblclick): |
| Don't open WebSocket URL in a new browser tab. |
| |
| 2017-03-02 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Should be able to push nodes in an iframe subtree to the frontend |
| https://bugs.webkit.org/show_bug.cgi?id=169086 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Views/DOMTreeContentView.js: |
| (WebInspector.DOMTreeContentView.prototype._selectedNodeDidChange): |
| Use the URL of the main frame instead of the content frame URL. |
| |
| 2017-03-01 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Annotators should not be enabled if the TextEditor is not visible |
| https://bugs.webkit.org/show_bug.cgi?id=169059 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Views/DebuggerSidebarPanel.js: |
| (WebInspector.DebuggerSidebarPanel.prototype._addResource): |
| (WebInspector.DebuggerSidebarPanel.prototype._addScript): |
| Only call `showDefaultContentViewForTreeElement` if the panel has been added to a sidebar. |
| |
| It is not valid to simply check whether the panel is visible, as the sidebar can be collapsed. |
| In that case, we still want to display the content view, so we instead check that the panel |
| has been added to a sidebar, meaning that it is ready to be displayed in the current tab. |
| |
| 2017-02-28 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: RTL: expose the Layout Direction setting in Production builds, keep using LTR by default |
| https://bugs.webkit.org/show_bug.cgi?id=168999 |
| |
| Reviewed by Brian Burg. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Views/SettingsTabContentView.js: |
| (WebInspector.SettingsTabContentView.prototype.layout): |
| Remove the WebInspector.isDebugUIEnabled() check around the Layout Direction setting. |
| |
| 2017-02-28 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: It is possible to get the New Tab button in addition to the seven expected tabs |
| https://bugs.webkit.org/show_bug.cgi?id=168976 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/TabBar.css: |
| (.tab-bar.collapsed:not(.hide-titles) > .item:not(.pinned):hover > .icon): |
| (.tab-bar.collapsed:not(.hide-titles) > .item:hover > .close): |
| (.tab-bar.collapsed:not(.hide-titles) > .item:not(.pinned, .default-tab):hover > .icon): Deleted. |
| (.tab-bar.collapsed:not(.hide-titles) > .item:not(.default-tab):hover > .close): Deleted. |
| |
| 2017-02-28 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: CSS variable uses that are unresolved should have an error or warning icon |
| https://bugs.webkit.org/show_bug.cgi?id=168352 |
| |
| Reviewed by Brian Burg. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| |
| * UserInterface/Views/CSSStyleDeclarationTextEditor.js: |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._createInlineSwatches.update): |
| Insert a warning icon if the variable is not found in the computed style. |
| |
| 2017-02-25 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: RTL: add support for Color Picker |
| https://bugs.webkit.org/show_bug.cgi?id=168853 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/ColorPicker.css: |
| (.color-picker): |
| (body[dir=ltr] .color-picker > .brightness): |
| (body[dir=rtl] .color-picker > .brightness): |
| (body[dir=ltr] .color-picker > .opacity): |
| (body[dir=rtl] .color-picker > .opacity): |
| (.color-picker > .brightness): Deleted. |
| (.color-picker > .opacity): Deleted. |
| |
| * UserInterface/Views/ColorWheel.js: |
| (WebInspector.ColorWheel.prototype.set dimension): |
| Set the CSS width and height style of the container element to ensure that the element only |
| takes up the space it needs. |
| |
| * UserInterface/Views/Slider.css: |
| (.slider): |
| * UserInterface/Views/Variables.css: |
| (:root): |
| Add `--slider-height` CSS variable for convenience. |
| |
| 2017-02-25 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: RTL: add support for Bezier/Spring editor |
| https://bugs.webkit.org/show_bug.cgi?id=168854 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/BezierEditor.css: |
| (.bezier-editor): |
| (body[dir=ltr] .bezier-editor): |
| (body[dir=rtl] .bezier-editor): |
| (.bezier-editor > .bezier-preview-timing): |
| (body[dir=ltr] .bezier-editor > .bezier-preview-timing): |
| (body[dir=rtl] .bezier-editor > .bezier-preview-timing): |
| (@keyframes bezierPreview): |
| (body[dir=rtl] .bezier-editor > .bezier-container): |
| (.bezier-editor > .number-input-container > input): |
| (body[dir=ltr] .bezier-editor > .number-input-container > input): |
| (body[dir=rtl] .bezier-editor > .number-input-container > input): |
| |
| * UserInterface/Views/SpringEditor.css: |
| (.spring-editor > .spring-timing): |
| (.spring-editor > .spring-timing::before): |
| (.spring-editor > .spring-timing::after): |
| (body[dir=ltr] .spring-editor > .spring-timing::before, body[dir=rtl] .spring-editor > .spring-timing::after): |
| (body[dir=ltr] .spring-editor > .spring-timing::after, body[dir=rtl] .spring-editor > .spring-timing::before): |
| (.spring-editor > .number-input-container > .number-input-row > input): |
| |
| * UserInterface/Views/SpringEditor.js: |
| (WebInspector.SpringEditor.prototype._updatePreviewAnimation): |
| |
| 2017-02-25 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: RTL: Elements tab Styles sidebar label/arrows need adjustment |
| https://bugs.webkit.org/show_bug.cgi?id=168746 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/ScopeRadioButtonNavigationItem.css: |
| (.scope-radio-button-navigation-item): |
| (.scope-radio-button-navigation-item > .scope-radio-button-item-select): |
| (body[dir=ltr] .scope-radio-button-navigation-item > .scope-radio-button-item-select): |
| (body[dir=rtl] .scope-radio-button-navigation-item > .scope-radio-button-item-select): |
| (.scope-radio-button-navigation-item > .scope-radio-button-item-select:focus): |
| (.scope-radio-button-navigation-item > .arrows): |
| (body[dir=ltr] .scope-radio-button-navigation-item > .arrows): |
| (body[dir=rtl] .scope-radio-button-navigation-item > .arrows): |
| |
| 2017-02-25 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: copying a search result out of Search Tab navigation sidebar does nothing |
| https://bugs.webkit.org/show_bug.cgi?id=167074 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector._copy): |
| * UserInterface/Views/SearchTabContentView.js: |
| (WebInspector.SearchTabContentView.prototype.handleCopyEvent): |
| Provide the container TabContentView with the opportunity to intercept the copy event. |
| |
| * UserInterface/Models/SourceCodeTextRange.js: |
| (WebInspector.SourceCodeTextRange.prototype.get synthesizedTextValue): |
| * UserInterface/Views/SearchResultTreeElement.js: |
| (WebInspector.SearchResultTreeElement.prototype.get synthesizedTextValue): |
| Generate a string with the format `${url}:${lineNumber}:${resultLine}`. |
| |
| 2017-02-25 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: RTL: Styles - Rules sidebar icons are misaligned |
| https://bugs.webkit.org/show_bug.cgi?id=168807 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/CSSStyleDeclarationSection.css: |
| (.style-declaration-section > .header): |
| (body[dir=ltr] .style-declaration-section > .header): |
| (body[dir=rtl] .style-declaration-section > .header): |
| (.style-declaration-section.locked > .header > .locked-icon): |
| (body[dir=ltr] .style-declaration-section.locked > .header > .locked-icon): |
| (body[dir=rtl] .style-declaration-section.locked > .header > .locked-icon): |
| (.style-declaration-section > .header > .icon): |
| (body[dir=ltr] .style-declaration-section > .header > .icon): |
| (body[dir=rtl] .style-declaration-section > .header > .icon): |
| (.style-declaration-section > .header > textarea): |
| (body[dir=ltr] .style-declaration-section > .header > textarea): |
| (body[dir=rtl] .style-declaration-section > .header > textarea): |
| (.style-declaration-section.invalid-selector > .header > .icon): |
| |
| * UserInterface/Views/CSSStyleDetailsSidebarPanel.css: |
| (.sidebar > .panel.details.css-style > .content): |
| (.sidebar > .panel.details.css-style > .content ~ .options-container > .new-rule): |
| (body[dir=ltr] .sidebar > .panel.details.css-style > .content ~ .options-container > .new-rule): |
| (body[dir=rtl] .sidebar > .panel.details.css-style > .content ~ .options-container > .new-rule): |
| (.sidebar > .panel.details.css-style > .content ~ .options-container > .toggle-class-toggle): |
| (body[dir=ltr] .sidebar > .panel.details.css-style > .content ~ .options-container > .toggle-class-toggle): |
| (body[dir=rtl] .sidebar > .panel.details.css-style > .content ~ .options-container > .toggle-class-toggle): |
| (.sidebar > .panel.details.css-style > .content ~ .class-list-container > .new-class > .class-name-input): |
| (body[dir=ltr] .sidebar > .panel.details.css-style > .content ~ .class-list-container > .new-class > .class-name-input): |
| (body[dir=rtl] .sidebar > .panel.details.css-style > .content ~ .class-list-container > .new-class > .class-name-input): |
| |
| * UserInterface/Views/Variables.css: |
| (:root): |
| |
| 2017-02-25 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: RTL: disclosure triangles in details section headers should be flipped and aligned right |
| https://bugs.webkit.org/show_bug.cgi?id=168283 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/DetailsSection.css: |
| (.details-section): |
| (.details-section > .header): |
| (body[dir=ltr] .details-section > .header): |
| (body[dir=rtl] .details-section > .header): |
| (.details-section > .header > .options > .navigation-bar): |
| (body[dir=ltr] .details-section > .header > :matches(label, .node-link, .go-to-arrow, .options > .navigation-bar), body[dir=rtl] .details-section > .header::before): |
| (body[dir=ltr] .details-section > .header::before, body[dir=rtl] .details-section > .header > :matches(label, .node-link, .go-to-arrow, .options > .navigation-bar)): |
| (.details-section > .header::before): |
| (body[dir=rtl] .details-section > .header::before): |
| (.details-section > .header > label): |
| (.details-section > .header > label > input[type="checkbox"]): |
| (body[dir=ltr] .details-section > .header > label > input[type="checkbox"]): |
| (body[dir=rtl] .details-section > .header > label > input[type="checkbox"]): |
| (.details-section > .header .go-to-arrow): |
| (body[dir=ltr] .details-section > .header .go-to-arrow): |
| (body[dir=rtl] .details-section > .header .go-to-arrow): |
| (.details-section > .content > .group > .row.simple > .label): |
| (body[dir=ltr] .details-section > .content > .group > .row.simple > .label): |
| (body[dir=rtl] .details-section > .content > .group > .row.simple > .label): |
| (.details-section > .content > .group > .row.simple > .value): |
| (body[dir=ltr] .details-section > .content > .group > .row.simple > .value): |
| (body[dir=rtl] .details-section > .content > .group > .row.simple > .value): |
| (.details-section > .content > .group > .row.simple > .value .go-to-arrow): |
| (body[dir=ltr] .details-section > .content > .group > .row.simple > .value .go-to-arrow): |
| (body[dir=rtl] .details-section > .content > .group > .row.simple > .value .go-to-arrow): |
| (.details-section > .header > :matches(.node-link, .go-to-arrow)): Deleted. |
| |
| 2017-02-24 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: RTL: add support for Error page |
| https://bugs.webkit.org/show_bug.cgi?id=168855 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Debug/UncaughtExceptionReporter.css: |
| (.uncaught-exception-sheet): |
| (body[dir=ltr] .uncaught-exception-sheet): |
| (body[dir=rtl] .uncaught-exception-sheet): |
| (.uncaught-exception-sheet h1 > img): |
| (body[dir=ltr] .uncaught-exception-sheet h1 > img): |
| (body[dir=rtl] .uncaught-exception-sheet h1 > img): |
| (.uncaught-exception-sheet h2 > img): |
| (body[dir=ltr] .uncaught-exception-sheet h2 > img): |
| (body[dir=rtl] .uncaught-exception-sheet h2 > img): |
| (.uncaught-exception-sheet dd): |
| (body[dir=ltr] .uncaught-exception-sheet dd): |
| (body[dir=rtl] .uncaught-exception-sheet dd): |
| (.uncaught-exception-sheet ul): |
| (body[dir=ltr] .uncaught-exception-sheet ul): |
| (body[dir=rtl] .uncaught-exception-sheet ul): |
| |
| 2017-02-24 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Uncaught Exception: Unknown angle units "undefined" |
| https://bugs.webkit.org/show_bug.cgi?id=168851 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/GradientEditor.js: |
| (WebInspector.GradientEditor.prototype._gradientTypeChanged): |
| |
| 2017-02-24 Jon Lee <jonlee@apple.com> |
| |
| Alias "system-ui" for the System font name |
| https://bugs.webkit.org/show_bug.cgi?id=151493 |
| |
| Reviewed by Tim Horton and Joseph Pecoraro. |
| |
| * UserInterface/Models/CSSKeywordCompletions.js: Ditto. |
| |
| 2017-02-23 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: RTL: DOM Tree spacing is wrong |
| https://bugs.webkit.org/show_bug.cgi?id=168744 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Base/Utilities.js: |
| (Element.prototype.totalOffsetRight): |
| |
| * UserInterface/Views/DOMTreeOutline.css: |
| (.tree-outline.dom): |
| (.tree-outline.dom ol): |
| (body[dir=ltr] .tree-outline.dom ol): |
| (body[dir=rtl] .tree-outline.dom ol): |
| (.tree-outline.dom li:matches(.hovered, .selected) + ol.children.expanded): |
| (body[dir=ltr] .tree-outline.dom li:matches(.hovered, .selected) + ol.children.expanded): |
| (body[dir=rtl] .tree-outline.dom li:matches(.hovered, .selected) + ol.children.expanded): |
| (.tree-outline.dom li.selected + ol.children.expanded): |
| (.tree-outline.dom li): |
| (body[dir=ltr] .tree-outline.dom li): |
| (body[dir=rtl] .tree-outline.dom li): |
| (.tree-outline.dom li.pseudo-class-enabled > .selection-area::before): |
| (body[dir=rtl] .tree-outline.dom li.pseudo-class-enabled > .selection-area::before): |
| (body[dir=ltr] .tree-outline.dom.single-node li): |
| (body[dir=rtl] .tree-outline.dom.single-node li): |
| (.tree-outline.dom li.parent): |
| (body[dir=ltr] .tree-outline.dom li.parent): |
| (body[dir=rtl] .tree-outline.dom li.parent): |
| (body[dir=ltr] .tree-outline.dom li .html-tag.close): |
| (body[dir=rtl] .tree-outline.dom li .html-tag.close): |
| (.tree-outline.dom li.parent::before): |
| (body[dir=rtl] .tree-outline.dom li.parent::before): |
| (body[dir=ltr] .tree-outline.dom li.parent::before): |
| (.tree-outline.dom li.parent.shadow::after): |
| (body[dir=ltr] .tree-outline.dom li.parent.shadow::after): |
| (body[dir=rtl] .tree-outline.dom li.parent.shadow::after): |
| (.tree-outline.dom.single-node li): Deleted. |
| (.tree-outline.dom li .html-tag.close): Deleted. |
| |
| * UserInterface/Views/TreeElement.js: |
| (WebInspector.TreeElement.prototype.isEventWithinDisclosureTriangle): |
| Calculate the position of the ::before triangle based on the layout direction. |
| |
| 2017-02-23 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: RTL: navigation sidebar section disclosure triangles and tree element icons should be aligned right |
| https://bugs.webkit.org/show_bug.cgi?id=168284 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/TreeOutline.css: |
| (.tree-outline,): |
| (.tree-outline.large .item): |
| (body[dir=ltr] .tree-outline .item :matches(.disclosure-button, .icon)): |
| (body[dir=rtl] .tree-outline .item :matches(.disclosure-button, .icon)): |
| (body[dir=ltr] .tree-outline:not(.hide-disclosure-buttons) .item:not(.parent) > .icon): |
| (body[dir=rtl] .tree-outline:not(.hide-disclosure-buttons) .item:not(.parent) > .icon): |
| (.tree-outline .item .disclosure-button): |
| (body[dir=rtl] .tree-outline .item .disclosure-button): |
| (.tree-outline .item .icon): |
| (body[dir=ltr] .tree-outline .item .icon): |
| (body[dir=rtl] .tree-outline .item .icon): |
| (.tree-outline.large .item .icon): |
| (.tree-outline .item .status): |
| (body[dir=ltr] .tree-outline .item .status): |
| (body[dir=rtl] .tree-outline .item .status): |
| (.tree-outline:not(.hide-disclosure-buttons) .item:not(.parent) > .icon): Deleted. |
| |
| * UserInterface/Views/TreeOutline.js: |
| (WebInspector.TreeOutline._generateStyleRulesIfNeeded): |
| |
| 2017-02-22 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: RTL: Sidebar borders are on the wrong side |
| https://bugs.webkit.org/show_bug.cgi?id=168743 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/Sidebar.css: |
| (body[dir=ltr] .sidebar.right > .resizer, body[dir=rtl] .sidebar.left > .resizer): |
| (body[dir=ltr] .sidebar.left > .resizer, body[dir=rtl] .sidebar.right > .resizer): |
| (body[dir=ltr] .sidebar.left, body[dir=rtl] .sidebar.right): |
| (body[dir=ltr] .sidebar.right, body[dir=rtl] .sidebar.left): |
| (.sidebar.right > .resizer): Deleted. |
| (.sidebar.left > .resizer): Deleted. |
| (.sidebar.left): Deleted. |
| (.sidebar.right): Deleted. |
| |
| * UserInterface/Views/Sidebar.js: |
| (WebInspector.Sidebar.prototype.resizerDragging): |
| Reverse the change if the direction is RTL. |
| |
| 2017-02-22 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: RTL: Settings tab labels need adjustment |
| https://bugs.webkit.org/show_bug.cgi?id=168497 |
| |
| Reviewed by Matt Baker. |
| |
| Flip margins. Use 'text-align: end' instead of manually choosing |
| right and left based on body[dir]. |
| |
| * UserInterface/Views/SettingsTabContentView.css: |
| (.content-view.settings > .setting-container > .setting-name): |
| (body[dir=ltr] .content-view.settings > .setting-container > .setting-name): |
| (body[dir=rtl] .content-view.settings > .setting-container > .setting-name): |
| (.content-view.settings > .setting-container > .setting-value-controller input[type="checkbox"]): |
| (body[dir=ltr] .content-view.settings > .setting-container > .setting-value-controller input[type="checkbox"]): |
| (body[dir=rtl] .content-view.settings > .setting-container > .setting-value-controller input[type="checkbox"]): |
| (.content-view.settings > .setting-container > .setting-value-controller input[type="number"]): |
| (body[dir=ltr] .content-view.settings > .setting-container > .setting-value-controller input[type="number"]): |
| (body[dir=rtl] .content-view.settings > .setting-container > .setting-value-controller input[type="number"]): |
| |
| 2017-02-21 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Prefer Resources tab over Network tab when showing files |
| https://bugs.webkit.org/show_bug.cgi?id=168021 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector.handlePossibleLinkClick): |
| (WebInspector.openURL): |
| Add `options` parameter to provide greater customization. |
| |
| * UserInterface/Views/TabBrowser.js: |
| (WebInspector.TabBrowser.prototype.bestTabContentViewForRepresentedObject): |
| Add logic for `ignoreNetworkTab` option that will ignore instances of NetworkTabContentView. |
| |
| * UserInterface/Controllers/BreakpointPopoverController.js: |
| (WebInspector.BreakpointPopoverController.prototype.appendContextMenuItems): |
| * UserInterface/Protocol/InspectorFrontendAPI.js: |
| (InspectorFrontendAPI.showMainResourceForFrame): |
| * UserInterface/Views/CSSStyleDeclarationTextEditor.js: |
| (WebInspector.CSSStyleDeclarationTextEditor.tokenTrackingControllerHighlightedRangeWasClicked.showRangeInSourceCode): |
| * UserInterface/Views/ComputedStyleDetailsPanel.js: |
| (WebInspector.ComputedStyleDetailsPanel.prototype.cssStyleDeclarationTextEditorShowProperty): |
| * UserInterface/Views/ContextMenuUtilities.js: |
| (WebInspector.appendContextMenuItemsForSourceCode): |
| * UserInterface/Views/DOMTreeContentView.js: |
| (WebInspector.DOMTreeContentView.prototype._mouseWasClicked.followLink): |
| * UserInterface/Views/DOMTreeElement.js: |
| (WebInspector.DOMTreeElement.prototype._populateTagContextMenu): |
| (WebInspector.DOMTreeElement.prototype._showCustomElementDefinition): |
| * UserInterface/Views/DebuggerSidebarPanel.js: |
| (WebInspector.DebuggerSidebarPanel.prototype._treeSelectionDidChange): |
| * UserInterface/Views/NetworkTimelineView.js: |
| (WebInspector.NetworkTimelineView.prototype.showContentViewForTreeElement): |
| * UserInterface/Views/ObjectTreeBaseTreeElement.js: |
| (WebInspector.ObjectTreeBaseTreeElement.prototype._appendMenusItemsForObject): |
| * UserInterface/Views/ResourceSidebarPanel.js: |
| (WebInspector.ResourceSidebarPanel.prototype._treeSelectionDidChange): |
| * UserInterface/Views/ResourceTimelineDataGridNode.js: |
| (WebInspector.ResourceTimelineDataGridNode.prototype._dataGridNodeGoToArrowClicked): |
| * UserInterface/Views/SearchSidebarPanel.js: |
| (WebInspector.SearchSidebarPanel.prototype._treeSelectionDidChange): |
| (WebInspector.SearchSidebarPanel.prototype._treeElementDoubleClick): |
| * UserInterface/Views/SourceCodeTextEditor.js: |
| (WebInspector.SourceCodeTextEditor.prototype.tokenTrackingControllerHighlightedRangeWasClicked): |
| * UserInterface/Views/TimelineDataGrid.js: |
| (WebInspector.TimelineDataGrid.prototype._popoverCallStackTreeSelectionDidChange): |
| * UserInterface/Views/VisualStyleSelectorTreeItem.js: |
| (WebInspector.VisualStyleSelectorTreeItem.prototype.populateContextMenu): |
| Change arguments of functions to change content views to ignore the Network tab. |
| |
| * UserInterface/Views/NetworkGridContentView.js: |
| (WebInspector.NetworkGridContentView.prototype.hasRepresentedObject): |
| * UserInterface/Views/NetworkSidebarPanel.js: |
| (WebInspector.NetworkSidebarPanel.prototype.hasRepresentedObject): |
| * UserInterface/Views/NetworkTabContentView.js: |
| (WebInspector.NetworkTabContentView.prototype.canShowRepresentedObject): |
| Ensure that the Network tab can only display resources that it has entries for in its view. |
| |
| 2017-02-21 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: RTL: console scope bar's unread message indicator is misaligned |
| https://bugs.webkit.org/show_bug.cgi?id=168625 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/LogContentView.css: |
| (.log-scope-bar > li.unread::before): |
| (body[dir=ltr] .log-scope-bar > li.unread::before): |
| (body[dir=rtl] .log-scope-bar > li.unread::before): |
| |
| 2017-02-20 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Tooltip for "Show console tab" should read "Show Console tab" |
| https://bugs.webkit.org/show_bug.cgi?id=168630 |
| <rdar://problem/30621662> |
| |
| Reviewed by Brian Burg. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Views/LogContentView.js: |
| (WebInspector.LogContentView): |
| |
| 2017-02-20 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: RTL: back/forward navigation buttons should not be flipped |
| https://bugs.webkit.org/show_bug.cgi?id=168275 |
| <rdar://problem/30506897> |
| |
| Reviewed by Matt Baker. |
| |
| The leading button is always "back" and the trailing button is always "forward", but |
| in RTL the icons are swapped so that it still looks like '< >' from left-to-right. |
| |
| Rename the two arrows in the SVG to "left" and "right" arrows, and use them appropriately |
| in ContentBrowser for back-forward icons based on the layout direction. |
| |
| * UserInterface/Images/BackForwardArrows.svg: |
| * UserInterface/Views/ContentBrowser.js: |
| (WebInspector.ContentBrowser): |
| * UserInterface/Views/FindBanner.css: |
| (.find-banner > button.segmented.left > .glyph): |
| (.find-banner > button.segmented.left:active:not(:disabled) > .glyph): |
| (.find-banner > button.segmented.right > .glyph): |
| (.find-banner > button.segmented.right:active:not(:disabled) > .glyph): |
| |
| 2017-02-20 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: RTL: hierarchical path components need spacing and icon adjustments |
| https://bugs.webkit.org/show_bug.cgi?id=168581 |
| |
| Reviewed by Matt Baker. |
| |
| Flip a bunch of padding, margin, and offsets. Flip the chevron using a CSS transform. |
| |
| * UserInterface/Views/HierarchicalPathComponent.css: |
| (.hierarchical-path-component): |
| (.hierarchical-path-component > .icon): |
| (.hierarchical-path-component > :matches(.icon, .selector-arrows)): |
| (body[dir=ltr] .hierarchical-path-component > :matches(.icon, .selector-arrows)): |
| (body[dir=rtl] .hierarchical-path-component > :matches(.icon, .selector-arrows)): |
| (.hierarchical-path-component > .selector-arrows): |
| (.hierarchical-path-component > select): |
| (body[dir=ltr] .hierarchical-path-component > select): |
| (body[dir=rtl] .hierarchical-path-component > select): |
| (.hierarchical-path-component > .separator): |
| (body[dir=ltr] .hierarchical-path-component > .separator): |
| (body[dir=rtl] .hierarchical-path-component > .separator): |
| (.hierarchical-path-component.text-only): |
| (body[dir=ltr] .hierarchical-path-component.text-only): |
| (body[dir=rtl] .hierarchical-path-component.text-only): |
| (body[dir=ltr] .hierarchical-path-component.text-only > select): |
| (body[dir=rtl] .hierarchical-path-component.text-only > select): |
| |
| 2017-02-20 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: RTL: adjust positioning of scope bar items with multiple values |
| https://bugs.webkit.org/show_bug.cgi?id=168575 |
| |
| Reviewed by Matt Baker. |
| |
| Mirror the leading margin as necessary. Adjust the <select> positioning |
| so that the popup is really close to the scope bar item's position. |
| |
| * UserInterface/Views/ScopeBar.css: |
| (body[dir=ltr] .scope-bar > li.multiple > select): |
| (body[dir=rtl] .scope-bar > li.multiple > select): |
| (.scope-bar > li.multiple > .arrows): |
| (body[dir=ltr] .scope-bar > li.multiple > .arrows): |
| (body[dir=rtl] .scope-bar > li.multiple > .arrows): |
| |
| 2017-02-20 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: RTL: sidebar expand/collapse icons need to be flipped |
| https://bugs.webkit.org/show_bug.cgi?id=168276 |
| <rdar://problem/30506999> |
| |
| Reviewed by Matt Baker. |
| |
| The sidebars themselves are already flipped due to the layout direction change, but the |
| icons have a directional design and need to be manually flipped based on the layout direction. |
| |
| * UserInterface/Views/ContentBrowserTabContentView.js: |
| (WebInspector.ContentBrowserTabContentView): |
| |
| 2017-02-17 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| Web Inspector: Use Maps in FrameResourceManager instead of objects |
| https://bugs.webkit.org/show_bug.cgi?id=168549 |
| <rdar://problem/30590110> |
| |
| Reviewed by Joseph Pecoraro. |
| |
| Use Map for _frameIdentifierMap and _resourceRequestIdentifierMap. |
| |
| * UserInterface/Controllers/FrameResourceManager.js: |
| (WebInspector.FrameResourceManager.prototype.initialize): |
| (WebInspector.FrameResourceManager.prototype.get frames): |
| (WebInspector.FrameResourceManager.prototype.frameForIdentifier): |
| (WebInspector.FrameResourceManager.prototype.frameDidDetach): |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWillBeSent): |
| (WebInspector.FrameResourceManager.prototype.markResourceRequestAsServedFromMemoryCache): |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWasServedFromMemoryCache): |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidReceiveResponse): |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidReceiveData): |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidFinishLoading): |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidFailLoading): |
| (WebInspector.FrameResourceManager.prototype._addNewResourceToFrameOrTarget): |
| (WebInspector.FrameResourceManager.prototype._processMainFrameResourceTreePayload): |
| (WebInspector.FrameResourceManager.prototype._createFrame): |
| |
| 2017-02-17 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: RTL: Inspector window should dock to the left when using RTL layout direction |
| https://bugs.webkit.org/show_bug.cgi?id=168273 |
| <rdar://problem/29949325> |
| |
| Reviewed by Matt Baker. |
| |
| Add the ability to dock Web Inspector to the left of the inspected view. |
| The frontend decides whether the Dock to Side button docks left or right |
| based on the current layout direction. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Base/Main.js: |
| (WebInspector.contentLoaded): |
| Rename the "Dock to Right" button to "Dock to Side" instead. It's easier to just |
| have one button than to try and conditionally hide one or the other based on |
| the layout direction. Change the dock callback and the icon used for the button |
| depending on layout direction. |
| |
| (WebInspector.resolvedLayoutDirection): |
| Refactor getLayoutDirection() to resolvedLayoutDirection() so callers get back |
| either "ltr" or "rtl". |
| |
| Flip the dock side if layout direction changes while docked to the side. |
| |
| Adjust various code paths to account for the existing of left docking. In particular, |
| resize rejection needs special-casing for resizing leftward from beyond the right side |
| of the Inspector view when it is docked to the left. Improve related comments since it |
| took me an unbelievable amount of time to understand what this code is supposed to do. |
| |
| * UserInterface/Views/Main.css: |
| (body.docked.right): |
| (body.docked.left #docked-resizer): |
| (body.docked:matches(.right, .left) #navigation-sidebar.collapsed > .resizer): |
| (body.docked.right #navigation-sidebar.collapsed > .resizer): Deleted. |
| Add .docked.left analogues to rules for .docked.right. |
| |
| 2017-02-17 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: RTL: add TabBar support for RTL layout |
| https://bugs.webkit.org/show_bug.cgi?id=168446 |
| |
| Reviewed by Matt Baker. |
| |
| There are two types of changes needed: |
| - Flip leading and trailing borders and margins for the tab items. |
| - Enumerate tabs in reverse order when performing manual layout. |
| |
| Along the way, I added some color variables local to TabBar.css to |
| reduce the number of redundant border-style and color declarations. |
| |
| * UserInterface/Base/Main.js: |
| Change this to resolvedLayoutDirection(), and resolve "System" to "ltr" or "rtl". |
| This makes it suitable for use in manual layout without worrying about "System". |
| Fix the one existing use-site to not do its own resolution of "System". |
| |
| * UserInterface/Views/TabBar.css: |
| Define commonly used colors and border styles and adopt var() usages. |
| Flip borders that should vary in RTL vs LTR, but not all of them. In |
| many cases, the border is not direction-dependent and looks the same |
| on both sides. Also, no need to swap animated properties as all manual |
| layout is done from the left edge. |
| |
| (.tab-bar): |
| (body.window-inactive .tab-bar): |
| (.tab-bar > .top-border): |
| (body.window-inactive .tab-bar > .top-border): |
| (.tab-bar > .item): |
| (body[dir=ltr] .tab-bar > :nth-child(n + 2 of .item),): |
| (body[dir=rtl] .tab-bar > :nth-child(n + 2 of .item),): |
| (.tab-bar:not(.animating) > .item:not(.selected, .disabled):hover): |
| (body[dir=ltr] .tab-bar:not(.animating) > .item:not(.selected, .disabled):hover,): |
| (body[dir=rtl] .tab-bar:not(.animating) > .item:not(.selected, .disabled):hover,): |
| (body.window-inactive .tab-bar > .item): |
| (body[dir=ltr].window-inactive .tab-bar > .item): |
| (body[dir=rtl].window-inactive .tab-bar > .item): |
| (.tab-bar > .item > .close): |
| (body[dir=ltr] .tab-bar > .item > .close): |
| (body[dir=rtl] .tab-bar > .item > .close): |
| (.tab-bar > .item:not(.pinned) > .flex-space:last-child): |
| (body[dir=ltr] .tab-bar > .item:not(.pinned) > .flex-space:last-child): |
| (body[dir=rtl] .tab-bar > .item:not(.pinned) > .flex-space:last-child): |
| (.tab-bar > .item > .title): |
| (body[dir=ltr] .tab-bar > .item > .title): |
| (body[dir=rtl] .tab-bar > .item > .title): |
| (.tab-bar.collapsed > .item > .close): |
| (body[dir=ltr] .tab-bar.collapsed > .item > .close): |
| (body[dir=rtl] .tab-bar.collapsed > .item > .close): |
| |
| * UserInterface/Views/TabBar.js: |
| When doing manual layout, keep doing calculations with respect to the left edge |
| and keep the list of tab items in logical (LTR) order, as in the DOM. But, when |
| manually positioning tab items for RTL layout direction, reverse the tab items |
| so that it matches the screen/layout order of the flipped flexbox items. |
| |
| (WebInspector.TabBar.prototype.insertTabBarItem): |
| (WebInspector.TabBar.prototype.removeTabBarItem.animateTabs): |
| In RTL, put extra space after closing a tab to the left of normal tabs. This |
| matches the behavior of LTR, but requires some additional measurement since we |
| still position tabs using `left` and can't simply infer the leftover space. |
| |
| (WebInspector.TabBar.prototype._tabBarItemsFromLeftToRight): Added. |
| (WebInspector.TabBar.prototype._handleMouseMoved): |
| (WebInspector.TabBar.prototype._handleMouseUp): |
| |
| 2017-02-17 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Zoom level UI out of sync with setting value |
| https://bugs.webkit.org/show_bug.cgi?id=168522 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/SettingsTabContentView.js: |
| (WebInspector.SettingsTabContentView): |
| Trigger a layout whenever the zoomFactor setting is changed. This is needed since the |
| zoomFactor setting can also be modified by global keyboard shortcuts. |
| |
| 2017-02-17 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: Loc: Zoom level in Settings tab needs to use localized formatting |
| https://bugs.webkit.org/show_bug.cgi?id=168465 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/SettingsTabContentView.js: |
| (WebInspector.SettingsTabContentView.prototype.layout): |
| (WebInspector.SettingsTabContentView): |
| |
| 2017-02-17 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: RTL: CodeMirror text editor instances have scrollbars on left and right |
| https://bugs.webkit.org/show_bug.cgi?id=168274 |
| |
| Reviewed by Matt Baker. |
| |
| CodeMirror doesn't draw its own scrollbar correctly when content is in RTL, |
| so it draws an extra scrollbar on the right side. And, for the majority of |
| cases, we don't want to view CSS / JS content aligned to the right. |
| |
| Manually set the "dir" attribute for all CodeMirror editor instances to "ltr". |
| Clients can override this if custom RTL layout is available in a particular case. |
| |
| * UserInterface/Views/CodeMirrorEditor.js: |
| (WebInspector.CodeMirrorEditor.create): |
| (WebInspector.CodeMirrorEditor): |
| |
| 2017-02-17 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Timeline DataGridNodes are lacking detail in title |
| https://bugs.webkit.org/show_bug.cgi?id=168529 |
| <rdar://problem/30579959> |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/TimelineDataGridNode.js: |
| (WebInspector.TimelineDataGridNode.prototype.displayName): |
| Include detailed information for DataGridNode display names, since we |
| want to show maximum detail for records in the DataGrid. |
| |
| 2017-02-16 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: add DebugUI setting to manually override UI layout direction |
| https://bugs.webkit.org/show_bug.cgi?id=168222 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| Expose three layout direction settings: |
| - System (inherit system UI layout direction) |
| - LTR (the default regardless of system language) |
| - RTL (under development, only accessible via this menu) |
| |
| * UserInterface/Base/Main.js: |
| The UI layout direction is normally only set once per frontend load. |
| There is no expectation on macOS that applications can switch dynamically. |
| But, for DebugUI purposes we need to switch the layout direction quickly. |
| Store the new setting and trigger a hard reload of the frontend page. |
| If the 'system' setting is specified, fall back to the system layout |
| direction as provided by InspectorFrontendHost. |
| |
| * UserInterface/Base/Setting.js: |
| Add an application-level setting for (user interface) layout direction. |
| |
| * UserInterface/Views/SettingsTabContentView.js: |
| (WebInspector.SettingsTabContentView): |
| (WebInspector.SettingsTabContentView.prototype.layout): |
| (WebInspector.SettingsTabContentView.prototype.initialLayout): Deleted. |
| Make this a normal layout() method so that we can dirty the view |
| when DebugUI is turned on or off. |
| |
| 2017-02-16 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: popovers shouldn't be dismissed when Web Inspector window is dragged |
| https://bugs.webkit.org/show_bug.cgi?id=166935 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector.contentLoaded): |
| (WebInspector._mouseDown): Created. |
| (WebInspector._dockedResizerMouseDown): |
| (WebInspector._moveWindowMouseDown): |
| Applies Popover.EventPreventDismissSymbol whenever a mousedown event is fired for an element |
| that controls the positioning or size of the WebInspector window. |
| |
| * UserInterface/Views/Popover.js: |
| (WebInspector.Popover.prototype._handleEvent): |
| (WebInspector.Popover.EventPreventDismissSymbol): |
| Do not dismiss the popover if Popover.EventPreventDismissSymbol is applied to the event. |
| |
| 2017-02-15 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Request headers when copied & pasted should follow HTTP format, colon instead of tab |
| https://bugs.webkit.org/show_bug.cgi?id=168155 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/DataGrid.js: |
| (WebInspector.DataGrid): |
| (WebInspector.DataGrid.prototype.set copyTextDelimiter): |
| (WebInspector.DataGrid.prototype._copyTextForDataGridNode): |
| (WebInspector.DataGrid.prototype._copyTextForDataGridHeaders): |
| * UserInterface/Views/ResourceDetailsSidebarPanel.js: |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._createNameValueDataGrid): |
| Allow instances of DataGrid to change the delimiter between items when copying rows. |
| |
| 2017-02-15 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Split console should be allowed when docked bottom on Elements/Resources/Debugger/Storage tabs |
| https://bugs.webkit.org/show_bug.cgi?id=168385 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector.updateDockedState): |
| If the new docked configuration does not support the split console, hide it. |
| |
| * UserInterface/Views/DebuggerTabContentView.js: |
| (WebInspector.DebuggerTabContentView.prototype.get supportsSplitContentBrowser): |
| * UserInterface/Views/ElementsTabContentView.js: |
| (WebInspector.ElementsTabContentView.prototype.get supportsSplitContentBrowser): |
| * UserInterface/Views/ResourcesTabContentView.js: |
| (WebInspector.ResourcesTabContentView.prototype.get supportsSplitContentBrowser): |
| * UserInterface/Views/StorageTabContentView.js: |
| (WebInspector.StorageTabContentView.prototype.get supportsSplitContentBrowser): |
| |
| 2017-02-14 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: RTL: adjust padding of dashboard icons |
| https://bugs.webkit.org/show_bug.cgi?id=168340 |
| |
| Reviewed by Matt Baker. |
| |
| Extract the direction-dependent padding into a "local" variable. |
| Use two rules to apply it to whichever is the leading side. |
| |
| While we tend to use leading/trailing in Apple layout technologies, |
| I think the CSS logical properties specification sticks to using |
| -start and -end, so let's use that nomenclature where we can. |
| |
| * UserInterface/Views/DefaultDashboardView.css: |
| (.toolbar .dashboard.default > .item > div): |
| (body[dir=ltr] .toolbar .dashboard.default > .item > div): |
| (body[dir=rtl] .toolbar .dashboard.default > .item > div): |
| |
| 2017-02-14 Eric Carlson <eric.carlson@apple.com> |
| |
| [MediaStream] add navigator.getUserMedia for compatibility with legacy content |
| https://bugs.webkit.org/show_bug.cgi?id=168324 |
| <rdar://problem/30513125> |
| |
| Reviewed by Youenn Fablet. |
| |
| * UserInterface/Models/NativeFunctionParameters.js: |
| |
| 2017-02-13 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: provide a way to show current value of CSS variables in style rules |
| https://bugs.webkit.org/show_bug.cgi?id=168172 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Images/CSSVariable.svg: Added. |
| |
| * UserInterface/Models/TextMarker.js: |
| (WebInspector.TextMarker.Type): |
| |
| * UserInterface/Views/CSSStyleDeclarationTextEditor.js: |
| (WebInspector.CSSStyleDeclarationTextEditor._createInlineSwatches.update): |
| |
| * UserInterface/Views/CodeMirrorTextMarkers.js: |
| (createCodeMirrorTextMarkers): |
| (createCodeMirrorVariableTextMarkers): |
| |
| * UserInterface/Views/InlineSwatch.css: |
| (.inline-swatch.variable): |
| (.inline-swatch:matches(.bezier, .spring, .variable)): |
| (.inline-swatch:matches(.bezier, .spring, .variable):hover): |
| (.inline-swatch:matches(.bezier, .spring, .variable):active): |
| (.inline-swatch-variable-popover): |
| (.inline-swatch-variable-popover .CodeMirror): |
| (.inline-swatch-variable-popover .CodeMirror pre): |
| (.inline-swatch:matches(.bezier, .spring):hover): Deleted. |
| (.inline-swatch:matches(.bezier, .spring):active): Deleted. |
| |
| * UserInterface/Views/InlineSwatch.js: |
| (WebInspector.InlineSwatch): |
| (WebInspector.InlineSwatch.prototype._fallbackValue): |
| (WebInspector.InlineSwatch.prototype._swatchElementClicked): |
| (WebInspector.InlineSwatch.prototype._valueEditorValueDidChange): |
| (WebInspector.InlineSwatch.Type): |
| |
| 2017-02-13 Matt Baker <mattbaker@apple.com> |
| |
| REGRESSION(r188138): Web Inspector: cannot edit next/previous DOM attribute by using tab/shift-tab |
| https://bugs.webkit.org/show_bug.cgi?id=168120 |
| <rdar://problem/30466065> |
| |
| Reviewed by Joseph Pecoraro. |
| |
| DOMTreeElement's attribute editing committed handler shouldn't early return |
| when a `moveDirection` has been specified. |
| |
| * UserInterface/Views/DOMTreeElement.js: |
| |
| 2017-02-12 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: Assertion failed: !this._items.has(item) (at Collection.js:50) |
| https://bugs.webkit.org/show_bug.cgi?id=168212 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| When turning on DebugUI, WebKit-internal scripts were being added to the |
| Collection that is the represented object for the Extra Scripts folder. |
| This was not balanced out by removing the scripts when DebugUI is turned |
| off, so switching DebugUI on and off several times hit a multiple-add assertion. |
| |
| * UserInterface/Views/ResourceSidebarPanel.js: |
| (WebInspector.ResourceSidebarPanel.prototype._scriptWasRemoved): |
| Remove the script from its Collection if applicable. |
| |
| 2017-02-10 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Debugger sidebar panel should not have multiple tree selections |
| https://bugs.webkit.org/show_bug.cgi?id=166000 |
| <rdar://problem/29721988> |
| |
| Reviewed by Timothy Hatcher. |
| |
| The method for synchronizing tree element selection across a sidebar's |
| tree outlines fails for selections made during startup, because it depends |
| on events which are being suppressed. |
| |
| This adds a new class, TreeOutlineGroup, which restricts tree element selection |
| inside a group of tree outlines by receiving messages directly from TreeElement. |
| |
| * UserInterface/Main.html: |
| Add file for TreeOutlineGroup class. |
| |
| * UserInterface/Views/ContentBrowserTabContentView.js: |
| (WebInspector.ContentBrowserTabContentView.prototype._revealAndSelectRepresentedObject): |
| (WebInspector.ContentBrowserTabContentView): |
| * UserInterface/Views/DebuggerSidebarPanel.js: |
| (WebInspector.DebuggerSidebarPanel): |
| (WebInspector.DebuggerSidebarPanel.prototype._updatePauseReasonSection): |
| Update `createContentTreeOutline` calls for new signature. |
| |
| * UserInterface/Views/NavigationSidebarPanel.js: |
| (WebInspector.NavigationSidebarPanel): |
| Replace _visibleContentTreeOutlines with a TreeOutlineGroup, which |
| contains the single-selection behavior previously handled by the sidebar. |
| |
| (WebInspector.NavigationSidebarPanel.prototype.get contentTreeOutlines): |
| (WebInspector.NavigationSidebarPanel.prototype.get hasSelectedElement): |
| Implement using the sidebar's tree outline group. |
| (WebInspector.NavigationSidebarPanel.prototype.createContentTreeOutline): |
| Remove first parameter, which is always true. |
| (WebInspector.NavigationSidebarPanel.prototype.treeElementForRepresentedObject): |
| (WebInspector.NavigationSidebarPanel.prototype.saveStateToCookie): |
| (WebInspector.NavigationSidebarPanel.prototype.pruneStaleResourceTreeElements): |
| (WebInspector.NavigationSidebarPanel.prototype._checkForEmptyFilterResults): |
| (WebInspector.NavigationSidebarPanel.prototype._updateFilter): |
| (WebInspector.NavigationSidebarPanel.prototype._checkOutlinesForPendingViewStateCookie): |
| (WebInspector.NavigationSidebarPanel.prototype.set contentTreeOutline): Deleted. |
| Remove unused setter. |
| (WebInspector.NavigationSidebarPanel.prototype.get visibleContentTreeOutlines): Deleted. |
| Renamed to contentTreeOutlines. |
| (WebInspector.NavigationSidebarPanel.prototype._contentTreeOutlineDidFocus): Deleted. |
| No longer needed. |
| (WebInspector.NavigationSidebarPanel.prototype._contentTreeOutlineTreeSelectionDidChange): Deleted. |
| Selection across trees handled by the tree outline group. |
| |
| * UserInterface/Views/TreeElement.js: |
| (WebInspector.TreeElement.prototype.select): |
| Inform the element's tree outline group (if any), of the selection changed. |
| |
| * UserInterface/Views/TreeOutlineGroup.js: Added. |
| (WebInspector.TreeOutlineGroup): |
| (WebInspector.TreeOutlineGroup.groupForTreeOutline): |
| (WebInspector.TreeOutlineGroup.prototype.get selectedTreeElement): |
| (WebInspector.TreeOutlineGroup.prototype.itemAdded): |
| Associate tree outline with the group and wrap tree elements. If the |
| incoming tree outline has a selection, deselect the group's currently |
| selected tree element. |
| |
| (WebInspector.TreeOutlineGroup.prototype.itemRemoved): |
| Disassociate the tree outline from the group. |
| (WebInspector.TreeOutlineGroup.prototype.didSelectTreeElement): |
| Called by TreeElement when it becomes selected. |
| (WebInspector.TreeOutlineGroup.prototype._removeConflictingTreeSelections): |
| Deselect any selected items in all tree outlines belonging to the group, |
| except for the specified item. |
| |
| 2017-02-10 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: ContentViewContainer can have redundant back-forward entries after ContentView close |
| https://bugs.webkit.org/show_bug.cgi?id=168105 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Models/BackForwardEntry.js: |
| (WebInspector.BackForwardEntry.prototype.isEqual): |
| Make check for equal ContentView/cookie reusable. |
| |
| * UserInterface/Views/ContentViewContainer.js: |
| (WebInspector.ContentViewContainer.prototype.showContentView): |
| Use BackForwardEntry.prototype.isEqual. |
| (WebInspector.ContentViewContainer.prototype.replaceContentView): |
| (WebInspector.ContentViewContainer.prototype.closeContentView): |
| Clean-up the BackForwardEntry list after changes that can cause |
| identical entries to become adjacent. |
| |
| (WebInspector.ContentViewContainer.prototype._removeIdenticalAdjacentBackForwardEntries): |
| Remove consecutive entries with the same ContentView and cookie. |
| (WebInspector.ContentViewContainer): |
| (WebInspector.ContentViewContainer.closeAllContentViewsOfPrototype): Deleted. |
| Drive-by cleanup: removed dead code. |
| |
| 2017-02-10 Matt Baker <mattbaker@apple.com> |
| |
| REGRESSION (r211829): Web Inspector: Elements tab is blank when added after page load |
| https://bugs.webkit.org/show_bug.cgi?id=168142 |
| |
| Reviewed by Brian Burg. |
| |
| The Elements tab can be shown in two ways: by adding the Elements tab |
| from the "New Tab" tab, or via Inspect Element. In both cases we should |
| be checking that the ContentView exists, and create it if needed. |
| |
| * UserInterface/Views/ElementsTabContentView.js: |
| (WebInspector.ElementsTabContentView.prototype.showRepresentedObject): |
| (WebInspector.ElementsTabContentView.prototype.shown): |
| |
| 2017-02-09 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: changing dock side from windowed to bottom should cause split console to collapse on Timeline and Network tabs |
| https://bugs.webkit.org/show_bug.cgi?id=167841 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector.updateDockedState): |
| |
| 2017-02-09 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Option+hover on -webkit-transform in Styles sidebar underlines only half the property |
| https://bugs.webkit.org/show_bug.cgi?id=167949 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Controllers/CodeMirrorTokenTrackingController.js: |
| (WebInspector.CodeMirrorTokenTrackingController.prototype._updateHoveredTokenInfo): |
| Attempt to merge tokens (specifically the `text` and `start` values) if the either the |
| previous or next token is of the type "meta". |
| |
| 2017-02-09 Eric Carlson <eric.carlson@apple.com> |
| |
| [MediaStream] Remove legacy Navigator.webkitGetUserMedia |
| https://bugs.webkit.org/show_bug.cgi?id=168016 |
| |
| Reviewed by Youenn Fablet. |
| |
| * UserInterface/Models/NativeFunctionParameters.js: |
| |
| 2017-02-08 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r211912. |
| https://bugs.webkit.org/show_bug.cgi?id=168034 |
| |
| http/tests/media/media-stream/disconnected-frame-permission- |
| denied.html should be updated (Requested by youenn on |
| #webkit). |
| |
| Reverted changeset: |
| |
| "[MediaStream] Remove legacy Navigator.webkitGetUserMedia" |
| https://bugs.webkit.org/show_bug.cgi?id=168016 |
| http://trac.webkit.org/changeset/211912 |
| |
| 2017-02-08 Eric Carlson <eric.carlson@apple.com> |
| |
| [MediaStream] Remove legacy Navigator.webkitGetUserMedia |
| https://bugs.webkit.org/show_bug.cgi?id=168016 |
| |
| Reviewed by Youenn Fablet. |
| |
| * UserInterface/Models/NativeFunctionParameters.js: |
| |
| 2017-02-08 Chris Dumez <cdumez@apple.com> |
| |
| Unreviewed, rolling out r211907. |
| |
| Broke the build |
| |
| Reverted changeset: |
| |
| "[MediaStream] Remove legacy Navigator.webkitGetUserMedia" |
| https://bugs.webkit.org/show_bug.cgi?id=168016 |
| http://trac.webkit.org/changeset/211907 |
| |
| 2017-02-08 Eric Carlson <eric.carlson@apple.com> |
| |
| [MediaStream] Remove legacy Navigator.webkitGetUserMedia |
| https://bugs.webkit.org/show_bug.cgi?id=168016 |
| |
| Reviewed by Youenn Fablet. |
| |
| * UserInterface/Models/NativeFunctionParameters.js: |
| |
| 2017-02-07 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: gradient editor should allow switching the units of the 'angle' parameter |
| https://bugs.webkit.org/show_bug.cgi?id=166938 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Test.html: |
| Add WebInspector.Gradient for new model object tests. |
| |
| * UserInterface/Models/Gradient.js: |
| (WebInspector.Gradient.fromString): |
| (WebInspector.LinearGradient): |
| (WebInspector.LinearGradient.fromComponents): |
| (WebInspector.LinearGradient.prototype.set angleValue): |
| (WebInspector.LinearGradient.prototype.get angleValue): |
| (WebInspector.LinearGradient.prototype.set angleUnits): |
| (WebInspector.LinearGradient.prototype.get angleUnits): |
| (WebInspector.LinearGradient.prototype.copy): |
| (WebInspector.LinearGradient.prototype.toString): |
| (WebInspector.LinearGradient.prototype._angleValueForUnits): |
| Rework part of WebInspector.LinearGradient to support units other than "deg". |
| |
| * UserInterface/Views/GradientEditor.css: |
| (.gradient-editor > .gradient-angle > input[type="range"]): |
| (.gradient-editor > .gradient-angle > input[type="number"]): |
| |
| * UserInterface/Views/GradientEditor.js: |
| (WebInspector.GradientEditor): |
| (WebInspector.GradientEditor.prototype.set gradient): |
| (WebInspector.GradientEditor.prototype._gradientTypeChanged): |
| (WebInspector.GradientEditor.prototype._angleValueChanged): |
| (WebInspector.GradientEditor.prototype._angleUnitsChanged): |
| (WebInspector.GradientEditor.prototype._angleChanged): Deleted. |
| Add <select> for each unit type that will change the units of the gradient. |
| |
| 2017-02-07 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: DOMTreeOutline becomes collapsed after switching back to Elements tab |
| https://bugs.webkit.org/show_bug.cgi?id=167924 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/DOMTreeOutline.js: |
| (WebInspector.DOMTreeOutline.prototype.update): |
| Drive-by fix: move variable initialization below the early return. |
| |
| * UserInterface/Views/ElementsTabContentView.js: |
| (WebInspector.ElementsTabContentView.prototype.shown): Deleted. |
| Calling this._showDOMTreeContentView isn't necessary. The base class |
| implementation will call `shown` on the content view. |
| |
| 2017-02-06 Fujii Hironori <Hironori.Fujii@sony.com> |
| |
| Web Inspector: sibling elements's disclosure triangles aren't vertically aligned in DOM tree outline in certain ports |
| https://bugs.webkit.org/show_bug.cgi?id=167568 |
| |
| Reviewed by Brian Burg. |
| |
| The triangle has 13px height and has float:left. If the line-height |
| is smaller than 13px, the sibling element's triangles aren't |
| vertically aligned. |
| |
| * UserInterface/Views/DOMTreeOutline.css: |
| (.tree-outline.dom li.parent): Set line-height 13px explicitly. |
| |
| 2017-02-03 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Add stroke-linecap property values to CSS autocompletion |
| https://bugs.webkit.org/show_bug.cgi?id=167778 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Models/CSSKeywordCompletions.js: |
| Add autocompletion values for fill-rule and stroke-linecap. |
| |
| 2017-02-02 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: can't jump from Search Tab result to see resource in other tabs (Resource, Debugger, Network) |
| https://bugs.webkit.org/show_bug.cgi?id=167072 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector.tabContentViewForRepresentedObject): |
| (WebInspector.showRepresentedObject): |
| (WebInspector.showMainFrameDOMTree): |
| (WebInspector.showSourceCodeForFrame): |
| (WebInspector.showSourceCode): |
| (WebInspector.showSourceCodeLocation): |
| (WebInspector.showOriginalUnformattedSourceCodeLocation): |
| (WebInspector.showOriginalOrFormattedSourceCodeLocation): |
| (WebInspector.showOriginalOrFormattedSourceCodeTextRange): |
| (WebInspector.showResourceRequest): |
| Rework parameters to add optional `options` dictionary that can be used to indicate |
| additional functionality. |
| |
| * UserInterface/Views/TabBrowser.js: |
| (WebInspector.TabBrowser.prototype.bestTabContentViewForRepresentedObject): |
| Ignore instances of SearchTabContentView as it can display content views for all types of |
| searchable data. Determined by a newly added optional `options` parameter. |
| |
| * UserInterface/Base/Utilities.js: |
| (Object.shallowMerge): |
| Merges the keys of two objects into a new one. |
| |
| * UserInterface/Views/ComputedStyleDetailsPanel.js: |
| (WebInspector.ComputedStyleDetailsPanel.prototype._goToRegionFlowArrowWasClicked): |
| (WebInspector.ComputedStyleDetailsPanel.prototype._goToContentFlowArrowWasClicked): |
| |
| * UserInterface/Views/SearchSidebarPanel.js: |
| (WebInspector.SearchSidebarPanel.prototype.performSearch.createTreeElementForMatchObject): |
| (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._treeElementDoubleClick): |
| * UserInterface/Views/TreeElement.js: |
| (WebInspector.TreeElement.treeElementDoubleClicked): |
| Add an event dispatch whenever a TreeElement is double clicked via the `dblclick` event. |
| |
| 2017-02-01 Yusuke Suzuki <utatane.tea@gmail.com> |
| |
| Web Inspector: Upgrade Esprima to the latest one to support dynamic import |
| https://bugs.webkit.org/show_bug.cgi?id=167698 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/External/Esprima/esprima.js: |
| Update to Esprima@5307e30 (4.0.0-dev). |
| |
| * UserInterface/Models/ScriptSyntaxTree.js: |
| (WebInspector.ScriptSyntaxTree.prototype._gatherIdentifiersInDeclaration.gatherIdentifiers): |
| (WebInspector.ScriptSyntaxTree.prototype._gatherIdentifiersInDeclaration): |
| (WebInspector.ScriptSyntaxTree.prototype._recurse): |
| (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree): |
| (WebInspector.ScriptSyntaxTree): |
| * UserInterface/Workers/Formatter/ESTreeWalker.js: |
| (ESTreeWalker.prototype._walkChildren): |
| (ESTreeWalker): |
| Add new nodes, SpreadProperty, RestProperty, and Import. |
| SpreadProperty and RestProperty are the part of ES2018 rest and spread properties. |
| https://github.com/sebmarkbage/ecmascript-rest-spread |
| Import is dynamic import node. The syntax is similar to Super. |
| https://github.com/tc39/proposal-dynamic-import |
| |
| * UserInterface/Workers/Formatter/EsprimaFormatter.js: |
| (EsprimaFormatter.prototype._handleTokenAtNode): |
| |
| 2017-02-01 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Remove keyboard shortcut to close tab - does not match expectations |
| https://bugs.webkit.org/show_bug.cgi?id=167672 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Views/TabBrowser.js: |
| (WebInspector.TabBrowser): |
| |
| 2017-01-31 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Tooltip text should not end in a period |
| https://bugs.webkit.org/show_bug.cgi?id=167130 |
| |
| Reviewed by Brian Burg. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Views/BezierEditor.js: |
| (WebInspector.BezierEditor): |
| * UserInterface/Views/CSSStyleDeclarationSection.js: |
| (WebInspector.CSSStyleDeclarationSection.prototype._handleSelectorPaste): |
| * UserInterface/Views/CSSStyleDeclarationTextEditor.js: |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded): |
| * UserInterface/Views/DOMNodeDetailsSidebarPanel.js: |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshAccessibility.accessibilityPropertiesCallback): |
| * UserInterface/Views/DebuggerSidebarPanel.js: |
| (WebInspector.DebuggerSidebarPanel): |
| * UserInterface/Views/GeneralTabBarItem.js: |
| (WebInspector.GeneralTabBarItem): |
| * UserInterface/Views/HeapSnapshotContentView.js: |
| (WebInspector.HeapSnapshotInstancesContentView): |
| (WebInspector.HeapSnapshotObjectGraphContentView): |
| * UserInterface/Views/InlineSwatch.js: |
| (WebInspector.InlineSwatch): |
| * UserInterface/Views/ObjectTreePropertyTreeElement.js: |
| (WebInspector.ObjectTreePropertyTreeElement.prototype._updateEntries): |
| (WebInspector.ObjectTreePropertyTreeElement.prototype._updateProperties): |
| * UserInterface/Views/ObjectTreeView.js: |
| (WebInspector.ObjectTreeView.prototype._updateEntries): |
| (WebInspector.ObjectTreeView.prototype._updateProperties): |
| * UserInterface/Views/ResourceTimelineDataGridNode.js: |
| (WebInspector.ResourceTimelineDataGridNode.prototype._mouseoverRecordBar): |
| * UserInterface/Views/SpringEditor.js: |
| (WebInspector.SpringEditor): |
| * UserInterface/Views/TypeTreeElement.js: |
| (WebInspector.TypeTreeElement.prototype.onpopulate): |
| * UserInterface/Views/TypeTreeView.js: |
| (WebInspector.TypeTreeView.prototype._populate): |
| * UserInterface/Views/VisualStyleCommaSeparatedKeywordEditor.js: |
| (WebInspector.VisualStyleCommaSeparatedKeywordEditor): |
| * UserInterface/Views/VisualStyleDetailsPanel.js: |
| (WebInspector.VisualStyleDetailsPanel.prototype._generateSection.createOptionsElement): |
| * UserInterface/Views/VisualStylePropertyEditorLink.js: |
| (WebInspector.VisualStylePropertyEditorLink.prototype.set linked): |
| * UserInterface/Views/VisualStylePropertyNameInput.js: |
| (WebInspector.VisualStylePropertyNameInput): |
| * UserInterface/Views/VisualStyleSelectorSection.js: |
| (WebInspector.VisualStyleSelectorSection): |
| * UserInterface/Views/VisualStyleSelectorTreeItem.js: |
| (WebInspector.VisualStyleSelectorTreeItem.prototype._updateCheckboxTitle): |
| (WebInspector.VisualStyleSelectorTreeItem.prototype._updateSelectorIcon): |
| |
| 2017-01-31 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: add CSS color keyword entries for all grey/gray variations |
| https://bugs.webkit.org/show_bug.cgi?id=167668 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Models/Color.js: |
| (WebInspector.Color.Keywords): |
| |
| 2017-01-31 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Network tab: provide a way to preserve log on navigation |
| https://bugs.webkit.org/show_bug.cgi?id=166908 |
| |
| Reviewed by Matt Baker. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| |
| * UserInterface/Base/Setting.js: |
| (WebInspector.settings): |
| Add clearNetworkOnNavigate global setting. |
| |
| * UserInterface/Views/NetworkGridContentView.css: |
| (.content-view.network-grid > .data-grid .preserved:not(.selected) .cell-content): |
| (.content-view.network-grid > .data-grid .preserved:not(.selected) .cell-content .timeline-record-bar > .segment): |
| * UserInterface/Views/NetworkGridContentView.js: |
| (WebInspector.NetworkGridContentView): |
| (WebInspector.NetworkGridContentView.prototype._mainResourceDidChange): |
| * UserInterface/Views/NetworkSidebarPanel.css: |
| (.sidebar > .panel.navigation.network .tree-outline > .preserved:not(.selected) > :not(.status)): |
| (.sidebar > .panel.navigation.network .tree-outline > .preserved:not(.selected) > .icon): |
| * UserInterface/Views/NetworkSidebarPanel.js: |
| (WebInspector.NetworkSidebarPanel): |
| (WebInspector.NetworkSidebarPanel.prototype._mainResourceDidChange): |
| Add styling to preserved network records. |
| |
| * UserInterface/Controllers/TimelineManager.js: |
| (WebInspector.TimelineManager.prototype._mainResourceDidChange): |
| Only reset the persistent network timeline if the clearNetworkOnNavigate setting is true. |
| |
| * UserInterface/Views/SettingsTabContentView.js: |
| (WebInspector.SettingsTabContentView.prototype.initialLayout): |
| (WebInspector.SettingsTabContentView): |
| Add checkbox and spacers for new setting. |
| |
| 2017-01-31 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: User Settings: Secondary-clicking the New Tab and Settings tabs should not produce a context menu |
| https://bugs.webkit.org/show_bug.cgi?id=167651 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Views/PinnedTabBarItem.js: |
| (WebInspector.PinnedTabBarItem): |
| (WebInspector.PinnedTabBarItem.prototype._handleContextMenuEvent): |
| Always preventDefault() to ensure that the system context menu is never shown. |
| |
| * UserInterface/Views/TabBar.js: |
| (WebInspector.TabBar): |
| (WebInspector.TabBar.prototype.get newTabTabBarItem): |
| (WebInspector.TabBar.prototype._handleNewTabContextMenu): Deleted. |
| Move the event dispatch to WebInspector.PinnedTabBarItem to give all instances a contextmenu |
| event handler. |
| |
| * UserInterface/Views/TabBrowser.js: |
| (WebInspector.TabBrowser): |
| |
| 2017-01-31 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Address some ESLint warnings |
| https://bugs.webkit.org/show_bug.cgi?id=167634 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Base/DOMUtilities.js: |
| (WebInspector.linkifyNodeReference): |
| (isSimiliarNode): |
| (WebInspector.xpathIndex): |
| These empty statements were supposed to be returns! |
| |
| * UserInterface/Base/Main.js: |
| * UserInterface/Models/CSSProperty.js: |
| (WebInspector.CSSProperty.prototype.get relatedLonghandProperties): |
| * UserInterface/Models/DOMNode.js: |
| * UserInterface/Protocol/Connection.js: |
| (InspectorBackend.Connection): |
| (InspectorBackend.MainConnection): |
| (InspectorBackend.WorkerConnection): |
| * UserInterface/Protocol/MainTarget.js: |
| (WebInspector.MainTarget): |
| * UserInterface/Protocol/WorkerTarget.js: |
| (WebInspector.WorkerTarget): |
| * UserInterface/Test/Test.js: |
| * UserInterface/Views/CSSStyleDeclarationTextEditor.js: |
| * UserInterface/Views/ConsoleSession.js: |
| (WebInspector.ConsoleSession): |
| * UserInterface/Views/DOMNodeDetailsSidebarPanel.js: |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshAccessibility.accessibilityPropertiesCallback): |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshAccessibility): |
| * UserInterface/Views/ResourceSidebarPanel.js: |
| (WebInspector.ResourceSidebarPanel.prototype._scriptWasAdded): |
| * UserInterface/Views/ScopeChainDetailsSidebarPanel.js: |
| (WebInspector.ScopeChainDetailsSidebarPanel): |
| * UserInterface/Views/ScriptContentView.js: |
| (WebInspector.ScriptContentView.prototype._toggleTypeAnnotations): |
| * UserInterface/Views/SourceCodeTextEditor.js: |
| (WebInspector.SourceCodeTextEditor.prototype._createControlFlowScrollEventHandler): |
| * UserInterface/Views/TextResourceContentView.js: |
| (WebInspector.TextResourceContentView.prototype._toggleTypeAnnotations): |
| * UserInterface/Workers/Formatter/EsprimaFormatter.js: |
| (EsprimaFormatter.prototype._handleTokenAtNode): |
| Address pedantic warnings for consistent style. |
| |
| 2017-01-30 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: "bouncy highlight" element in TextEditor/DOMTreeOutline should update or dismiss when user scrolls |
| https://bugs.webkit.org/show_bug.cgi?id=167146 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Views/TextEditor.js: |
| (WebInspector.TextEditor.prototype._revealSearchResult.scrollHandler): |
| (WebInspector.TextEditor.prototype._revealSearchResult.animationEnded): |
| (WebInspector.TextEditor.prototype._revealSearchResult): |
| |
| 2017-01-30 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Implement PerformanceObserver |
| https://bugs.webkit.org/show_bug.cgi?id=167546 |
| <rdar://problem/30247959> |
| |
| Reviewed by Ryosuke Niwa. |
| |
| * UserInterface/Models/NativeFunctionParameters.js: |
| Improve API view display of built-in performance methods. |
| |
| 2017-01-30 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Need some limit on Async Call Stacks for async loops (rAF loops) |
| https://bugs.webkit.org/show_bug.cgi?id=165633 |
| <rdar://problem/29738502> |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| Text for "Truncated" marker tree element. |
| |
| * UserInterface/Models/StackTrace.js: |
| (WebInspector.StackTrace): |
| (WebInspector.StackTrace.fromPayload): |
| (WebInspector.StackTrace.prototype.get truncated): |
| Plumbing for new Console.StackTrace property `truncated`. |
| |
| * UserInterface/Views/ThreadTreeElement.css: |
| (.tree-outline > .item.thread + ol > .item.truncated-call-frames): |
| (.tree-outline > .item.thread + ol > .item.truncated-call-frames .icon): |
| Styles for "Truncated" marker tree element. |
| |
| * UserInterface/Views/ThreadTreeElement.js: |
| (WebInspector.ThreadTreeElement.prototype.refresh): |
| Append "Truncated" marker tree element if necessary. |
| |
| * Versions/Inspector-iOS-10.3.json: |
| |
| 2017-01-30 Ryan Haddad <ryanhaddad@apple.com> |
| |
| Unreviewed, rolling out r211345. |
| |
| The LayoutTest for this change is failing an assertion. |
| |
| Reverted changeset: |
| |
| "Web Inspector: Need some limit on Async Call Stacks for async |
| loops (rAF loops)" |
| https://bugs.webkit.org/show_bug.cgi?id=165633 |
| http://trac.webkit.org/changeset/211345 |
| |
| 2017-01-28 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Need some limit on Async Call Stacks for async loops (rAF loops) |
| https://bugs.webkit.org/show_bug.cgi?id=165633 |
| <rdar://problem/29738502> |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| Text for "Truncated" marker tree element. |
| |
| * UserInterface/Models/StackTrace.js: |
| (WebInspector.StackTrace): |
| (WebInspector.StackTrace.fromPayload): |
| (WebInspector.StackTrace.prototype.get truncated): |
| Plumbing for new Console.StackTrace property `truncated`. |
| |
| * UserInterface/Views/ThreadTreeElement.css: |
| (.tree-outline > .item.thread + ol > .item.truncated-call-frames): |
| (.tree-outline > .item.thread + ol > .item.truncated-call-frames .icon): |
| Styles for "Truncated" marker tree element. |
| |
| * UserInterface/Views/ThreadTreeElement.js: |
| (WebInspector.ThreadTreeElement.prototype.refresh): |
| Append "Truncated" marker tree element if necessary. |
| |
| * Versions/Inspector-iOS-10.3.json: |
| |
| 2017-01-27 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: gradient editor should provide horizontal slider for 'angle' value where applicable |
| https://bugs.webkit.org/show_bug.cgi?id=166937 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Views/GradientEditor.css: |
| (.gradient-editor): |
| (.gradient-editor > .gradient-angle): |
| (.gradient-editor > .gradient-angle > input[type="range"]): |
| (.gradient-editor > .gradient-angle > input[type="number"]): |
| (.gradient-editor > .gradient-angle > input::-webkit-inner-spin-button): |
| (.gradient-editor > .gradient-angle > input): Deleted. |
| |
| * UserInterface/Views/GradientEditor.js: |
| (WebInspector.GradientEditor): |
| (WebInspector.GradientEditor.prototype.set gradient): |
| (WebInspector.GradientEditor.prototype.gradientSliderStopWasSelected): |
| (WebInspector.GradientEditor.prototype._gradientTypeChanged): |
| (WebInspector.GradientEditor.prototype._angleChanged): |
| (WebInspector.GradientEditor.prototype.dragToAdjustControllerWasAdjustedByAmount): Deleted. |
| (WebInspector.GradientEditor.prototype._angleInputValueDidChange): Deleted. |
| Remove the DragToAdjustController and replace with an <input type="range">. |
| |
| 2017-01-23 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Provide a way to trigger a Garbage Collection |
| https://bugs.webkit.org/show_bug.cgi?id=167345 |
| <rdar://problem/30102853> |
| |
| Reviewed by Timothy Hatcher. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| New "Garbage collect" tooltip. |
| |
| * Versions/Inspector-iOS-10.3.json: |
| * UserInterface/Protocol/Legacy/10.3/InspectorBackendCommands.js: |
| Update 10.3 so it generates its list of supported domains for workers. |
| Note that the Heap domain is not be available in this backend but it is now. |
| |
| * UserInterface/Protocol/Connection.js: |
| (InspectorBackend.WorkerConnection): |
| * UserInterface/Protocol/HeapObserver.js: |
| (WebInspector.HeapObserver.prototype.garbageCollected): |
| * UserInterface/Protocol/InspectorBackend.js: |
| (InspectorBackendClass): |
| (InspectorBackendClass.prototype.get workerSupportedDomains): |
| (InspectorBackendClass.prototype.workerSupportedDomain): |
| |
| * UserInterface/Images/NavigationItemClear.svg: Added. |
| * UserInterface/Images/NavigationItemGarbageCollect.svg: Added. |
| New image for Garbage Collection. Better image for clearing. |
| |
| * UserInterface/Images/gtk/NavigationItemClear.svg: Added. |
| Copy the Trash icon for Clear for gtk. |
| |
| * UserInterface/Protocol/Target.js: |
| (WebInspector.Target.prototype.get HeapAgent): |
| * UserInterface/Protocol/WorkerTarget.js: |
| (WebInspector.WorkerTarget): |
| Include Heap agent for Workers. |
| |
| * UserInterface/Views/LogContentView.js: |
| (WebInspector.LogContentView): |
| (WebInspector.LogContentView.prototype.get navigationItems): |
| (WebInspector.LogContentView.prototype._garbageCollect): |
| Add garbage collect button which triggers gc on all capable targets. |
| |
| * UserInterface/Views/NetworkGridContentView.js: |
| (WebInspector.NetworkGridContentView): |
| * UserInterface/Views/TimelineRecordingContentView.js: |
| (WebInspector.TimelineRecordingContentView): |
| Update the Clear icon to an improved icon. |
| |
| * UserInterface/Controllers/HeapManager.js: |
| (WebInspector.HeapManager.prototype.garbageCollected): |
| Timelines only shows Main Target events, do not show GC events for Workers. |
| |
| 2017-01-23 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: long press on New Tab Tab Item should show context menu with recently closed tabs that are still closed |
| https://bugs.webkit.org/show_bug.cgi?id=166901 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Views/TabBar.js: |
| (WebInspector.TabBar.Event): |
| (WebInspector.TabBar.prototype._handleNewTabContextMenu): |
| Add listener dispatch for contextmenu event on New Tab tab item. |
| |
| (WebInspector.TabBar.prototype.get newTabTabBarItem): Deleted. |
| Unused. |
| |
| * UserInterface/Views/TabBrowser.js: |
| (WebInspector.TabBrowser): |
| (WebInspector.TabBrowser.prototype._tabBarItemAdded): |
| (WebInspector.TabBrowser.prototype._tabBarItemRemoved): |
| (WebInspector.TabBrowser.prototype._handleNewTabContextMenu): Added. |
| Create an array that keeps track of tabs as they are closed, and populate the contextmenu |
| of the New Tab tab item with entries for each of these tabs. |
| |
| 2017-01-23 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: tree elements with depth > 1 should have context menu "expand all"/"collapse all" commands |
| https://bugs.webkit.org/show_bug.cgi?id=135590 |
| |
| Reviewed by Timothy Hatcher. |
| |
| Rework the context menu event handlers for all TreeOutline and TreeElement instances such |
| that the TreeOutline handles the event listener and creates the context menu object and the |
| TreeElement populates the list with items. This is necessary due to the way in which |
| children are laid out, as there is padding on either side of the element that would not |
| trigger a context menu event. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Views/BreakpointTreeElement.js: |
| (WebInspector.BreakpointTreeElement.prototype.ondetach): |
| (WebInspector.BreakpointTreeElement.prototype.populateContextMenu): |
| (WebInspector.BreakpointTreeElement.prototype.oncontextmenu): Deleted. |
| * UserInterface/Views/ContextMenuUtilities.js: |
| (WebInspector.appendContextMenuItemsForSourceCode): |
| * UserInterface/Views/DOMTreeElement.js: |
| (WebInspector.DOMTreeElement.prototype._populateNodeContextMenu): |
| * UserInterface/Views/DOMTreeOutline.js: |
| (WebInspector.DOMTreeOutline): |
| (WebInspector.DOMTreeOutline.prototype.populateContextMenu): |
| (WebInspector.DOMTreeOutline.prototype._onmousedown): |
| (WebInspector.DOMTreeOutline.prototype._onmousemove): |
| (WebInspector.DOMTreeOutline.prototype._ondragstart): |
| (WebInspector.DOMTreeOutline.prototype._ondragover): |
| (WebInspector.DOMTreeOutline.prototype._ondrop): |
| (WebInspector.DOMTreeOutline.prototype._treeElementFromEvent): Deleted. |
| (WebInspector.DOMTreeOutline.prototype._contextMenuEventFired): Deleted. |
| * UserInterface/Views/DebuggerSidebarPanel.js: |
| (WebInspector.DebuggerSidebarPanel): |
| (WebInspector.DebuggerSidebarPanel.prototype._breakpointTreeOutlineContextMenuTreeElement): |
| * UserInterface/Views/FrameTreeElement.js: |
| (WebInspector.FrameTreeElement.prototype.onattach): |
| * UserInterface/Views/GeneralTreeElement.js: |
| (WebInspector.GeneralTreeElement.prototype.onattach): |
| (WebInspector.GeneralTreeElement.prototype.ondetach): Deleted. |
| * UserInterface/Views/ObjectTreeBaseTreeElement.js: |
| (WebInspector.ObjectTreeBaseTreeElement.prototype.populateContextMenu): |
| (WebInspector.ObjectTreeBaseTreeElement.prototype._logSymbolProperty): |
| (WebInspector.ObjectTreeBaseTreeElement.prototype._logValue): |
| (WebInspector.ObjectTreeBaseTreeElement.prototype.oncontextmenu): Deleted. |
| (WebInspector.ObjectTreeBaseTreeElement.prototype._contextMenuHandler): Deleted. |
| * UserInterface/Views/ResourceTreeElement.js: |
| (WebInspector.ResourceTreeElement.prototype.populateContextMenu): |
| (WebInspector.ResourceTreeElement.prototype.onattach): Deleted. |
| (WebInspector.ResourceTreeElement.prototype._handleContextMenuEvent): Deleted. |
| * UserInterface/Views/ThreadTreeElement.js: |
| (WebInspector.ThreadTreeElement.prototype.populateContextMenu): |
| (WebInspector.ThreadTreeElement.prototype.oncontextmenu): Deleted. |
| * UserInterface/Views/TreeElement.js: |
| (WebInspector.TreeElement.prototype.populateContextMenu): |
| (WebInspector.TreeElement): |
| * UserInterface/Views/TreeOutline.js: |
| (WebInspector.TreeOutline): |
| (WebInspector.TreeOutline.prototype.treeElementFromEvent): |
| (WebInspector.TreeOutline.prototype.populateContextMenu): |
| (WebInspector.TreeOutline._generateStyleRulesIfNeeded): |
| * UserInterface/Views/VisualStyleSelectorTreeItem.js: |
| (WebInspector.VisualStyleSelectorTreeItem.prototype.onattach): |
| (WebInspector.VisualStyleSelectorTreeItem.prototype.populateContextMenu): |
| (WebInspector.VisualStyleSelectorTreeItem.prototype._highlightNodesWithSelector): |
| (WebInspector.VisualStyleSelectorTreeItem.prototype._hideDOMNodeHighlight): |
| (WebInspector.VisualStyleSelectorTreeItem.prototype._handleContextMenuEvent): Deleted. |
| * UserInterface/Views/WorkerTreeElement.js: |
| (WebInspector.WorkerTreeElement.prototype.populateContextMenu): |
| (WebInspector.WorkerTreeElement.prototype.onattach): |
| (WebInspector.WorkerTreeElement.prototype._handleContextMenuEvent): Deleted. |
| |
| * UserInterface/Views/DataGrid.js: |
| (WebInspector.DataGrid.prototype._contextMenuInDataTable): |
| Add "Expand All"/"Collapse All" context menu items. |
| |
| 2017-01-23 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: color picker should feature an editable CSS value |
| https://bugs.webkit.org/show_bug.cgi?id=124356 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Views/ColorPicker.css: |
| (.color-picker): |
| (.color-picker.hide-inputs): |
| (.color-picker > .color-inputs): |
| (.color-picker > .color-inputs > div): |
| (.color-picker > .color-inputs > div[hidden]): |
| (.color-picker > .color-inputs input): |
| |
| * UserInterface/Views/ColorPicker.js: |
| (WebInspector.ColorPicker.createColorInput): |
| (WebInspector.ColorPicker): |
| (WebInspector.ColorPicker.prototype.set color): |
| (WebInspector.ColorPicker.prototype.set enableColorComponentInputs): |
| (WebInspector.ColorPicker.prototype._updateColor): |
| (WebInspector.ColorPicker.prototype._handleFormatChange): |
| (WebInspector.ColorPicker.prototype._showColorComponentInputs.updateColorInput): |
| (WebInspector.ColorPicker.prototype._showColorComponentInputs): |
| (WebInspector.ColorPicker.prototype._handleColorInputInput): |
| Add an input element (with a label for the component name and its units) for each component |
| as part of the current color format (e.g. R, G, B, A). If any of these inputs are changed |
| then the color is also changed and the "ColorChanged" event is fired. |
| |
| * UserInterface/Controllers/CodeMirrorColorEditingController.js: |
| (WebInspector.CodeMirrorColorEditingController.prototype.popoverWillPresent): |
| * UserInterface/Views/InlineSwatch.js: |
| (WebInspector.InlineSwatch.prototype._swatchElementClicked): |
| Add FormatChanged event that fires whenever a new color is set with a different format or |
| the color value is set for the first time (there is no old format to compare to). This is |
| needed because if the format becomes RGB, RGBA, HSL, or HSLA from something not in that list |
| then the size of the containing popover needs to change since the newly added color inputs |
| will be displayed. |
| |
| * UserInterface/Views/GradientEditor.js: |
| (WebInspector.GradientEditor): |
| Prevent the color inputs from displaying at all, since there aren't individual swatches for |
| each color in a gradient. |
| |
| 2017-01-20 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Search Tab should display search results immediately when closing and reopening Inspector |
| https://bugs.webkit.org/show_bug.cgi?id=167073 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Views/SearchSidebarPanel.js: |
| (WebInspector.SearchSidebarPanel.prototype.focusSearchField): |
| Add parameter that will trigger a search with the current input value when true. |
| |
| * UserInterface/Views/SearchTabContentView.js: |
| (WebInspector.SearchTabContentView): |
| (WebInspector.SearchTabContentView.prototype.focusSearchField): |
| (WebInspector.SearchTabContentView.prototype.initialLayout): |
| |
| 2017-01-19 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Network Tab's "Clear Network Items" button should have keyboard shortcuts |
| https://bugs.webkit.org/show_bug.cgi?id=166943 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector.contentLoaded): |
| (WebInspector._clear): |
| Move clear keyboard shortcut to main object and call _handleClearShortcut on the visible |
| content view if able. |
| |
| * UserInterface/Controllers/JavaScriptLogViewController.js: |
| (WebInspector.JavaScriptLogViewController): |
| (WebInspector.JavaScriptLogViewController.prototype.requestClearMessages): |
| (WebInspector.JavaScriptLogViewController.prototype._handleClearShortcut): Deleted. |
| * UserInterface/Views/LogContentView.js: |
| (WebInspector.LogContentView): |
| (WebInspector.LogContentView.prototype.handleClearShortcut): |
| Move logic for requesting to clear messages from the LogManager to a better named function. |
| |
| * UserInterface/Views/NetworkGridContentView.js: |
| (WebInspector.NetworkGridContentView): |
| (WebInspector.NetworkGridContentView.prototype.handleClearShortcut): |
| |
| 2017-01-19 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Dashboard's log/error/warning help tag says "click to show the Console" even when clicking does nothing |
| https://bugs.webkit.org/show_bug.cgi?id=167102 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector.showConsoleTab): |
| Don't revert to the All scopes if the requested scope is already selected. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Views/DefaultDashboardView.js: |
| (WebInspector.DefaultDashboardView): |
| (WebInspector.DefaultDashboardView.prototype._appendElementForNamedItem): |
| (WebInspector.DefaultDashboardView.prototype._setItemEnabled): |
| Only apply a title to the element when it is enabled. |
| |
| 2017-01-18 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: split console should be allowed for Network and Timeline tabs when Inspector is not docked |
| https://bugs.webkit.org/show_bug.cgi?id=167075 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector.dockedConfigurationSupportsSplitContentBrowser): |
| Helper function to determine if the current docked state supports having the content view |
| and split console at the same time. Currently set to be true if not docked bottom. |
| |
| * UserInterface/Views/ClusterContentView.js: |
| (WebInspector.ClusterContentView.prototype.get supportsSplitContentBrowser): |
| * UserInterface/Views/ContentView.js: |
| (WebInspector.ContentView.prototype.get supportsSplitContentBrowser): |
| * UserInterface/Views/NetworkTabContentView.js: |
| (WebInspector.NetworkTabContentView.prototype.get supportsSplitContentBrowser): |
| * UserInterface/Views/TimelineTabContentView.js: |
| (WebInspector.TimelineTabContentView.prototype.get supportsSplitContentBrowser): Deleted. |
| Update supportsSplitContentBrowser functions to only be true/false based on the return value |
| of WebInspector.dockedConfigurationSupportsSplitContentBrowser. |
| |
| 2017-01-18 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: console.table only works for the first 5 properties |
| https://bugs.webkit.org/show_bug.cgi?id=167175 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Views/ConsoleMessageView.js: |
| (WebInspector.ConsoleMessageView.prototype._formatParameterAsTable): |
| Allow a max of 15 columns instead of 10. |
| |
| 2017-01-16 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: add "Persist Logs on Navigation" to settings screen |
| https://bugs.webkit.org/show_bug.cgi?id=166992 |
| |
| Reviewed by Brian Burg. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| |
| * UserInterface/Base/Setting.js: |
| * 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._toggleClearLogOnNavigateSetting): |
| Move setting and UI toggle for "Keep Log on Navigation" to the global settings dictionary |
| and content view. |
| |
| * UserInterface/Views/SettingsTabContentView.js: |
| (WebInspector.SettingsTabContentView.prototype.initialLayout): |
| (WebInspector.SettingsTabContentView): |
| Add checkbox for new setting and spacer between text settings and log settings. |
| |
| 2017-01-16 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: add UI Zoom level to Settings screen |
| https://bugs.webkit.org/show_bug.cgi?id=166991 |
| |
| Reviewed by Brian Burg. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector.loaded): |
| (WebInspector._dockedResizerMouseDown): |
| (WebInspector._increaseZoom): |
| (WebInspector._decreaseZoom): |
| (WebInspector._resetZoom): |
| (WebInspector.getZoomFactor): Renamed from _zoomFactor. |
| (WebInspector.setZoomFactor): Renamed from _setZoomFactor. |
| * UserInterface/Base/Setting.js: |
| (WebInspector.settings): |
| Moved zoomFactor setting to global dictionary. |
| |
| * UserInterface/Views/SettingsTabContentView.css: |
| (.content-view.settings > .setting-container > .setting-value-controller input[type="number"]): |
| * UserInterface/Views/SettingsTabContentView.js: |
| (WebInspector.SettingsTabContentView.prototype.initialLayout): |
| Add UI input for changing zoomFactor. |
| |
| 2017-01-14 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Cmd-, should open Settings tab |
| https://bugs.webkit.org/show_bug.cgi?id=167028 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector.contentLoaded): |
| (WebInspector._showSettingsTab): Added. |
| |
| 2017-01-13 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Settings tab is restored when reopening inspector |
| https://bugs.webkit.org/show_bug.cgi?id=167025 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector._tabBrowserSelectedTabContentViewDidChange): |
| Only save the selectedTabIndex if the current tab should be saved and reloaded upon opening |
| the WebInspector window. |
| |
| 2017-01-13 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| Web Inspector: Resources disappear from the network tab when iframe gets removed from DOM |
| https://bugs.webkit.org/show_bug.cgi?id=166776 |
| <rdar://problem/29909640> |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/NetworkSidebarPanel.js: |
| (WebInspector.NetworkSidebarPanel): |
| Don't remove resource tree elements from Network tab when iframe gets detached from the DOM. |
| |
| 2017-01-13 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| Web Inspector: the 'lock' icon for non-editable rules in the Style Rules sidebar lacks a tooltip |
| https://bugs.webkit.org/show_bug.cgi?id=166909 |
| <rdar://problem/29959406> |
| |
| Reviewed by Matt Baker. |
| |
| Convert the lock icon from a pseudo-element to an 'img' element and add a title attribute. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Views/CSSStyleDeclarationSection.css: |
| (.style-declaration-section.locked > .header > .locked-icon): |
| (.style-declaration-section.locked > .header::before): Deleted. |
| * UserInterface/Views/CSSStyleDeclarationSection.js: |
| (WebInspector.CSSStyleDeclarationSection): |
| |
| 2017-01-12 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| REGRESSION (r209711): Web Inspector: in Elements Tab, selecting a deeply nested DOM element causes navigation bar buttons to be pushed off the leading edge |
| https://bugs.webkit.org/show_bug.cgi?id=166898 |
| <rdar://problem/29951737> |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Views/HierarchicalPathComponent.js: |
| (WebInspector.HierarchicalPathComponent.prototype.set selectorArrows): |
| The following operations do NOT produce the same result: |
| |
| classList.toogle(aString, undefined) |
| classList.toogle(aString, false) |
| |
| The former is an equivalent of classList.toogle(aString), e.g. it set a class if it wasn't set before. |
| |
| 2017-01-12 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: cubic-bezier editor behaves poorly for invalid inputs in component fields |
| https://bugs.webkit.org/show_bug.cgi?id=166928 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/BezierEditor.css: |
| (.bezier-editor): |
| (.bezier-editor > .number-input-container > input): |
| |
| * UserInterface/Views/BezierEditor.js: |
| (WebInspector.BezierEditor.createBezierInput): |
| (WebInspector.BezierEditor): |
| Add type, step, min, and max to the bezier component inputs to better control user input. |
| |
| 2017-01-11 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Add another Protocol Version |
| https://bugs.webkit.org/show_bug.cgi?id=166953 |
| <rdar://problem/29980631> |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Protocol/Legacy/10.3/InspectorBackendCommands.js: Added. |
| * Versions/Inspector-iOS-10.3.json: Added. |
| |
| 2017-01-11 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: spring function editor has unusual layout, should have left-aligned labels and slider tracks |
| https://bugs.webkit.org/show_bug.cgi?id=166933 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/Main.css: |
| (input[type=range]::-webkit-slider-thumb): |
| (input[type=range]::-webkit-slider-runnable-track): |
| (input[type=range]::-webkit-slider-runnable-track::before): Deleted. |
| Fix slider styles. |
| |
| * UserInterface/Views/SpringEditor.css: |
| (.spring-editor): |
| (.spring-editor > .spring-preview): |
| (.spring-editor > .spring-timing): |
| (.spring-editor > .number-input-container > .number-input-row > .number-input-row-title): |
| (.spring-editor > .number-input-container > .number-input-row > input): |
| (.spring-editor > .number-input-container > .number-input-row > input::-webkit-inner-spin-button): |
| (.spring-editor > .number-input-container > .number-input-row > input[type="range"]): |
| Decrease spacing and left-align text. |
| |
| * UserInterface/Views/SpringEditor.js: |
| (WebInspector.SpringEditor.prototype._handleNumberInputKeydown): |
| (WebInspector.SpringEditor.prototype._changeSpringForInput): |
| Only update editor values when the new value of any input has changed. This allows users to |
| enter decimal values ("." was being stripped by `parseFloat`). |
| |
| 2017-01-11 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: color, gradient, cubic-bezier, spring editors should be dismissable using ESC |
| https://bugs.webkit.org/show_bug.cgi?id=166934 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/Popover.js: |
| (WebInspector.Popover): |
| (WebInspector.Popover.prototype.dismiss): |
| (WebInspector.Popover.prototype.handleEvent): |
| (WebInspector.Popover.prototype._addListenersIfNeeded): |
| Adds a keydown listener while visible for the Escape key that dismisses the popover. |
| |
| * UserInterface/Views/QuickConsole.js: |
| (WebInspector.QuickConsole.prototype.set keyboardShortcutDisabled): |
| Expose the ability to disable the global keyboard shortcut. This allows the Popover to have |
| its own Escape keyboard shortcut to take precedence. |
| |
| 2017-01-11 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: fix UIString for Print Styles button |
| https://bugs.webkit.org/show_bug.cgi?id=166892 |
| |
| Reviewed by Brian Burg. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Views/DOMTreeContentView.js: |
| (WebInspector.DOMTreeContentView): |
| Changed UIString to better match documentation. |
| |
| 2017-01-09 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r210260. |
| https://bugs.webkit.org/show_bug.cgi?id=166860 |
| |
| new colorpicker UI doesn't seem to work in trunk, |
| investigating offline (Requested by brrian on #webkit). |
| |
| Reverted changeset: |
| |
| "Web Inspector: color picker should feature an editable CSS |
| value" |
| https://bugs.webkit.org/show_bug.cgi?id=124356 |
| http://trac.webkit.org/changeset/210260 |
| |
| 2017-01-06 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r210110. |
| https://bugs.webkit.org/show_bug.cgi?id=166783 |
| |
| Introduced a regression commenting out individual properties |
| (Requested by JoePeck on #webkit). |
| |
| Reverted changeset: |
| |
| "Web Inspector: Styles sidebar: Uncommenting CSS rules of |
| pseudo-elements doesn't work" |
| https://bugs.webkit.org/show_bug.cgi?id=165831 |
| http://trac.webkit.org/changeset/210110 |
| |
| 2017-01-05 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Remove unused delegate from VisualStyleSelectorSection |
| https://bugs.webkit.org/show_bug.cgi?id=166744 |
| |
| Reviewed by Alex Christensen. |
| |
| * UserInterface/Views/VisualStyleDetailsPanel.js: |
| (WebInspector.VisualStyleDetailsPanel.prototype.initialLayout): |
| * UserInterface/Views/VisualStyleSelectorSection.js: |
| (WebInspector.VisualStyleSelectorSection): |
| |
| 2017-01-04 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: Test.html should support globals reportInternalError, reportUnhandledRejection, reportUncaughtException |
| https://bugs.webkit.org/show_bug.cgi?id=161358 |
| <rdar://problem/28066446> |
| |
| Reviewed by Joseph Pecoraro. |
| |
| We have a hodgepodge of redundant code that reports uncaught exceptions in the inspector page. |
| There is better handling of uncaught exceptions in the inspected page, such as including stack traces. |
| |
| This patch consolidates a lot of this code and makes it possible to report |
| unhandled promise rejections, top-level uncaught exceptions, and exceptions |
| caught in a try-catch block. The formatting and sanitization code for all of |
| these things is shared and consistent. Finally, some tests have been added to |
| catch regressions in unhandled rejection/uncaught exception reporting. |
| |
| * UserInterface/Test/FrontendTestHarness.js: |
| (FrontendTestHarness): Explicitly set initial flag state here so it's easy to find all flags. |
| |
| (FrontendTestHarness.prototype.redirectConsoleToTestOutput): |
| Extract this code to sanitize stack frames and put it in TestHarness. It is used |
| by other methods that need to print stack frames. |
| |
| (FrontendTestHarness.prototype.reportUnhandledRejection): |
| (FrontendTestHarness.prototype.reportUncaughtException): |
| Added. Sanitize stack trace data so it is deterministic. Log the message to the |
| original window.console but don't exit early. Sometimes the test page is not |
| fully loaded if we throw an exception quite early in the test() method, and there's |
| no harm in not early returning. If we do early return in this case, then a test that |
| uses reportUncaughtException on purpose may not complete because the call to completeTest() |
| would be skipped by returning early. |
| |
| (FrontendTestHarness.prototype.reportUncaughtExceptionFromEvent): |
| Renamed from reportUncaughtException since the signature of that method suggests |
| it should have a single exception argument rather than lots of data arguments. |
| |
| * UserInterface/Test/Test.js: Add globals. |
| |
| * UserInterface/Test/TestHarness.js: |
| (TestHarness): Document class flags. |
| (TestHarness.sanitizeURL): |
| (TestHarness.sanitizeStackFrame): |
| (TestHarness.prototype.sanitizeStack): |
| Extract this code from other parts of the test harness. Make sanitizeStack |
| an instance method so that there is only one place that needs to check the |
| 'suppressStackTraces' flag. |
| |
| * UserInterface/Test/TestSuite.js: |
| (TestSuite.prototype.logThrownObject): |
| (TestSuite): |
| (AsyncTestSuite.prototype.runTestCases): |
| (AsyncTestSuite): |
| (SyncTestSuite.prototype.runTestCases): |
| (SyncTestSuite): |
| (TestSuite.messageFromThrownObject): Deleted. |
| Inline some helpers with only one use-site and consolidate redundant code |
| for adding an exception and message to the test results. |
| |
| 2017-01-04 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| Web Inspector: application cache details not shown in Storage Tab |
| https://bugs.webkit.org/show_bug.cgi?id=166699 |
| <rdar://problem/29871716> |
| |
| Reviewed by Brian Burg. |
| |
| Fix a ternary operator precedence. The following expression throws an exception: |
| |
| true || false ? i.dont.exist : false |
| |
| * UserInterface/Views/ApplicationCacheFrameTreeElement.js: |
| (WebInspector.ApplicationCacheFrameTreeElement.prototype.updateTitles): |
| |
| 2017-01-03 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: WrappedPromise constructor should behave like the Promise constructor |
| https://bugs.webkit.org/show_bug.cgi?id=166523 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Models/WrappedPromise.js: |
| (WebInspector.WrappedPromise): |
| - Return the result of 'work' from the inner promise |
| so WrappedPromise.promise can be chained. |
| - Provide shim resolve, reject callbacks as parameters. |
| |
| (WebInspector.WrappedPromise.prototype.get settled): Added. |
| Tells whether we already resolved or rejected the promise. |
| |
| (WebInspector.WrappedPromise.prototype.resolve): |
| (WebInspector.WrappedPromise.prototype.reject): |
| Throw an error if already settled and update the flag. |
| |
| 2017-01-03 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: color picker should feature an editable CSS value |
| https://bugs.webkit.org/show_bug.cgi?id=124356 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/ColorPicker.css: |
| (.color-picker): |
| (.color-picker > .color-inputs): |
| (.color-picker > .color-inputs > div): |
| (.color-picker > .color-inputs > div[hidden]): |
| (.color-picker > .color-inputs input): |
| |
| * UserInterface/Views/ColorPicker.js: |
| (WebInspector.ColorPicker.createColorInput): |
| (WebInspector.ColorPicker): |
| (WebInspector.ColorPicker.prototype.set color): |
| (WebInspector.ColorPicker.prototype.sliderValueDidChange): |
| (WebInspector.ColorPicker.prototype._updateColor): |
| (WebInspector.ColorPicker.prototype._showColorComponentInputs.updateColorInput): |
| (WebInspector.ColorPicker.prototype._showColorComponentInputs): |
| (WebInspector.ColorPicker.prototype._handleColorInputInput): |
| Add an input element (with a label for the component name and its units) for each component |
| as part of the current color format (e.g. R, G, B, A). If any of these inputs are changed |
| then the color is also changed and the "ColorChanged" event is fired. |
| |
| 2017-01-03 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: "Invalid Characters" setting does the opposite of the checkbox |
| https://bugs.webkit.org/show_bug.cgi?id=166664 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/CodeMirrorOverrides.css: |
| (.CodeMirror .cm-invalidchar): |
| (.show-invalid-characters .CodeMirror .cm-invalidchar): |
| Hide invalid characters by default, and show them with the show class. |
| |
| 2017-01-03 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Fix Content Flow Container Regions Computed Style section |
| https://bugs.webkit.org/show_bug.cgi?id=166294 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Controllers/DOMTreeManager.js: |
| (WebInspector.DOMTreeManager.prototype._coerceRemoteArrayOfDOMNodes): |
| (WebInspector.DOMTreeManager.prototype.getNodeContentFlowInfo.domNodeResolved): |
| (WebInspector.DOMTreeManager.prototype.getNodeContentFlowInfo.remoteObjectPropertiesAvailable): |
| (WebInspector.DOMTreeManager.prototype.getNodeContentFlowInfo): |
| (WebInspector.DOMTreeManager.prototype.getNodeContentFlowInfo.backendFunction.getComputedProperty): Deleted. |
| (WebInspector.DOMTreeManager.prototype.getNodeContentFlowInfo.backendFunction.getContentFlowName): Deleted. |
| Update this to use Array.from() to convert the NodeList to an Array, and then |
| use the already available RemoteObject's size property instead of getting the |
| "length" property from the Array. |
| |
| 2017-01-03 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: opening Test.html in a normal browser window doesn't log errors to console |
| https://bugs.webkit.org/show_bug.cgi?id=166570 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| Early syntax errors in the test harness should be logged to the page console since they are easier to |
| debug in a normal browser using Web Inspector. But, the checks to revert to normal console don't work. |
| |
| * UserInterface/Test/FrontendTestHarness.js: |
| (FrontendTestHarness.prototype.reportUncaughtException): |
| Add a helper to encapsulate the meaning of checking this._shouldResendResults. |
| This flag is always true until the test page injects its initializers into the |
| inspector page, which will never happen when we view Test.html outside of the test harness. |
| |
| 2016-12-22 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r210069. |
| https://bugs.webkit.org/show_bug.cgi?id=166439 |
| |
| This patch makes all properties in Computed Styles strike- |
| through when switching from the Rules panel. (Requested by NVI |
| on #webkit). |
| |
| Reverted changeset: |
| |
| "Web Inspector: Uncommenting CSS properties doesn't work for |
| inline styles" |
| https://bugs.webkit.org/show_bug.cgi?id=166297 |
| http://trac.webkit.org/changeset/210069 |
| |
| 2016-12-22 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| Web Inspector: Styles sidebar: Uncommenting CSS rules of pseudo-elements doesn't work |
| https://bugs.webkit.org/show_bug.cgi?id=165831 |
| <rdar://problem/29652688> |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/CSSStyleDeclarationTextEditor.js: |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.uncommentAllProperties): |
| Call _resetContent() when toggling all properties to ensure properties have text markers. |
| |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._propertyCommentCheckboxChanged): |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._uncommentProperty): Added. |
| This method is the opposite of _commentProperty. Introduce it to minimize code duplication. |
| |
| 2016-12-21 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| Web Inspector: Uncommenting CSS properties doesn't work for inline styles |
| https://bugs.webkit.org/show_bug.cgi?id=166297 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/CSSStyleDeclarationTextEditor.js: |
| Update checkboxes for inline styles, too. |
| |
| 2016-12-20 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Window resize causes TimelineOverview graph elements to be repositioned |
| https://bugs.webkit.org/show_bug.cgi?id=160207 |
| <rdar://problem/27553228> |
| |
| Reviewed by Brian Burg. |
| |
| TimelineRuler does not always update its divider positions when the start |
| time changes while the end time remains the same. The check that determines |
| whether the first or last divider positions have changed before doing a |
| layout uses the ruler end time instead of calculating the last divider's |
| position, and would falsely determine no change was needed. |
| |
| * UserInterface/Views/TimelineRuler.js: |
| (WebInspector.TimelineRuler.prototype.set startTime): |
| (WebInspector.TimelineRuler.prototype.set secondsPerPixel): |
| Clear cached divider data on zoom or scroll, forcing dividers to be recalculated. |
| (WebInspector.TimelineRuler.prototype.layout): |
| Calculate accurate divider count and last divider time. |
| |
| 2016-12-20 Wenson Hsieh <wenson_hsieh@apple.com> |
| |
| Update keyword completions in the inspector for the new scroll snapping CSS properties |
| https://bugs.webkit.org/show_bug.cgi?id=166235 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| The CSS keyword completions for the scroll snapping properties need to be updated for the latest version of the spec. |
| |
| * UserInterface/Models/CSSKeywordCompletions.js: |
| |
| 2016-12-20 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Console could be made useful for very simple await expressions |
| https://bugs.webkit.org/show_bug.cgi?id=165681 |
| <rdar://problem/29755339> |
| |
| Reviewed by Brian Burg. |
| |
| Normally await expressions are only allowed inside of async functions. |
| They make dealing with async operations easy, but can't be used directly |
| in Web Inspector's console without making your own async function wrapper. |
| |
| This change allows simple await expressions to be run in the console. |
| The supported syntaxes are (simple expression with optional assignment): |
| |
| await <expr> |
| x = await <expr> |
| let x = await <expr> |
| |
| Web Inspector's console will automatically wrap this in an async |
| function and report the resulting value or exception. For instance |
| in the last example above: |
| |
| let x; |
| (async function() { |
| try { |
| x = await <expr>; |
| console.info("%o", x); |
| } catch (e) { |
| console.error(e); |
| } |
| })(); |
| undefined |
| |
| This way users can get the convenience of await in the Console. |
| This also gives users a nice way of extracting a value out of |
| a Promise without writing their own handlers. |
| |
| * UserInterface/Controllers/RuntimeManager.js: |
| (WebInspector.RuntimeManager.prototype.evaluateInInspectedWindow): |
| (WebInspector.RuntimeManager.prototype._tryApplyAwaitConvenience): |
| Wrap simple await expressions into a function that will log the result. |
| |
| 2016-12-20 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Update CodeMirror to support async/await keyword and other ES2017 features |
| https://bugs.webkit.org/show_bug.cgi?id=165677 |
| |
| Rubber-stamped by Brian Burg. |
| |
| Update CodeMirror from version 5.5.1 to 5.21.1. Highlights include: |
| |
| - Syntax highlighting for ES2017 features (async/await) |
| - Syntax highlighting improvements for some ES6 features (new.target) |
| - Syntax highlighting for CSS4 #rrggbbaa and #rgba colors |
| |
| As well as a number of smaller bug fixes. |
| |
| Had to add a few semicolons to codemirror.js so that our minifier |
| didn't choke in a few places due to ASI behavior. |
| |
| * Scripts/update-codemirror-resources.rb: |
| * UserInterface/External/CodeMirror/LICENSE: |
| * UserInterface/External/CodeMirror/clojure.js: |
| * UserInterface/External/CodeMirror/closebrackets.js: |
| * UserInterface/External/CodeMirror/codemirror.css: |
| * UserInterface/External/CodeMirror/codemirror.js: |
| * UserInterface/External/CodeMirror/coffeescript.js: |
| * UserInterface/External/CodeMirror/comment.js: |
| * UserInterface/External/CodeMirror/css.js: |
| * UserInterface/External/CodeMirror/htmlmixed.js: |
| * UserInterface/External/CodeMirror/javascript.js: |
| * UserInterface/External/CodeMirror/livescript.js: |
| * UserInterface/External/CodeMirror/matchbrackets.js: |
| * UserInterface/External/CodeMirror/overlay.js: |
| * UserInterface/External/CodeMirror/placeholder.js: |
| * UserInterface/External/CodeMirror/runmode.js: |
| * UserInterface/External/CodeMirror/sql.js: |
| * UserInterface/External/CodeMirror/sublime.js: |
| * UserInterface/External/CodeMirror/xml.js: |
| |
| 2016-12-19 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Address some assertions and uncaught exceptions seen using Inspector |
| https://bugs.webkit.org/show_bug.cgi?id=166048 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Controllers/CodeMirrorEditingController.js: |
| (WebInspector.CodeMirrorEditingController.prototype.presentHoverMenu): |
| (WebInspector.CodeMirrorEditingController.prototype.dismissHoverMenu): |
| classList throws an exception when given an empty string. Avoid those cases. |
| |
| * UserInterface/Controllers/CodeMirrorTokenTrackingController.js: |
| (WebInspector.CodeMirrorTokenTrackingController.prototype._startTracking): |
| (WebInspector.CodeMirrorTokenTrackingController.prototype._stopTracking): |
| Seen this assert frequently for a while, existing code handles it gracefully. |
| |
| * UserInterface/Workers/Formatter/EsprimaFormatter.js: |
| (EsprimaFormatter.prototype._handleTokenAtNode): |
| We correctly handle these tokens but they were not in the list of expected tokens. |
| |
| 2016-12-16 Joseph Pecoraro <pecoraro@apple.com> |
| |
| JSContext Inspector: Avoid some possible exceptions inspecting a JSContext |
| https://bugs.webkit.org/show_bug.cgi?id=165986 |
| <rdar://problem/29551379> |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Base/Main.js: |
| There will not be a main frame if we are debugging a JSContext. |
| In those cases do not change the title. |
| |
| * UserInterface/Views/ResourceSidebarPanel.js: |
| (WebInspector.ResourceSidebarPanel.prototype._scriptWasAdded): |
| There may not be a parent folder in JavaScript inspection. In that case |
| ScriptTreeElements are added to the Top Level, not folders. |
| |
| 2016-12-16 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: REGRESSION (r209882): Opening find banner in editor causes UI to hang |
| https://bugs.webkit.org/show_bug.cgi?id=165967 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Views/ContentBrowser.js: |
| (WebInspector.ContentBrowser.prototype._findBannerDidShow): |
| Showing the find banner should cause search results to be refreshed only |
| if it contains query text. |
| |
| 2016-12-16 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Modernize find banner UI |
| https://bugs.webkit.org/show_bug.cgi?id=165939 |
| |
| Reviewed by Timothy Hatcher. |
| |
| The find banner should have a modern appearance, matching Xcode. |
| |
| * UserInterface/Views/FindBanner.css: |
| (.find-banner > input[type="search"]): |
| (.find-banner > button): |
| Use standard border colors. |
| (.find-banner > button:disabled > .glyph): |
| Disabled previous / next glyphs should be lighter. |
| (.find-banner > button:active:not(:disabled)): |
| Update depressed button style: flat colors, no text color change. |
| (.find-banner > button.segmented): |
| (.find-banner > button.segmented.left): |
| (.find-banner > button:not(:active).segmented.right:before): |
| (.find-banner > button.segmented.left:active + button.segmented.right,): |
| (.find-banner > button.segmented.left:active + button.segmented.right:before): |
| (.find-banner > button.segmented.right): |
| (.find-banner.console-find-banner > input[type="search"]): |
| (.find-banner.console-find-banner > :matches(input[type="search"], button)): |
| (.find-banner > button:disabled): Deleted. |
| (.find-banner > button.segmented:active): Deleted. |
| Overlapping button borders are no longer an issue. |
| |
| * UserInterface/Views/FindBanner.js: |
| (WebInspector.FindBanner): |
| Insert previous / next buttons after the input field in the DOM. |
| (WebInspector.FindBanner.prototype.get delegate): |
| (WebInspector.FindBanner.prototype.set delegate): |
| (WebInspector.FindBanner.prototype.get inputField): |
| (WebInspector.FindBanner.prototype.get searchQuery): |
| (WebInspector.FindBanner.prototype.set searchQuery): |
| (WebInspector.FindBanner.prototype.get numberOfResults): |
| Inline simple getters and setters. |
| |
| * UserInterface/Views/Variables.css: |
| (:root): |
| Add button colors. |
| |
| 2016-12-15 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: console search bar jumps, behaves poorly at narrow widths |
| https://bugs.webkit.org/show_bug.cgi?id=164047 |
| <rdar://problem/29055582> |
| |
| Reviewed by Timothy Hatcher. |
| |
| At narrow widths the find banner behaves poorly in the split console |
| toolbar. It should work like the main content browser, appearing below |
| the toolbar when Command-F is pressed and either the split console or |
| quick console prompt has the focus. |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector.contentLoaded): |
| Enable split content browser find banner. |
| |
| * UserInterface/Views/ContentBrowser.js: |
| (WebInspector.ContentBrowser.prototype.showFindBanner): |
| Check for custom find banner support at runtime. |
| (WebInspector.ContentBrowser.prototype._findBannerDidShow): |
| (WebInspector.ContentBrowser.prototype._findBannerDidHide): |
| Refresh search results when banner is shown/hidden, instead of relying |
| on toggling the "showing-find-banner" class name for everything. |
| |
| (WebInspector.ContentBrowser.prototype.handleFindEvent): Deleted. |
| Renamed `showFindBanner`. |
| |
| * UserInterface/Views/ContentView.js: |
| (WebInspector.ContentView.prototype.get supportsCustomFindBanner): |
| (WebInspector.ContentView.prototype.showCustomFindBanner): |
| Custom find banner support (used by LogContentView). |
| |
| * UserInterface/Views/LogContentView.js: |
| (WebInspector.LogContentView): |
| (WebInspector.LogContentView.prototype.get supportsSearch): |
| (WebInspector.LogContentView.prototype.get numberOfSearchResults): |
| (WebInspector.LogContentView.prototype.get hasPerformedSearch): |
| Cleanup. |
| (WebInspector.LogContentView.prototype.get supportsCustomFindBanner): |
| Use toolbar item find banner when showing Console tab. |
| (WebInspector.LogContentView.prototype.findBannerRevealPreviousResult): |
| (WebInspector.LogContentView.prototype.findBannerRevealNextResult): |
| (WebInspector.LogContentView.prototype._isMessageVisible): |
| (WebInspector.LogContentView.prototype._visibleMessageElements): |
| (WebInspector.LogContentView.prototype._logCleared): |
| (WebInspector.LogContentView.prototype._filterMessageElements): |
| (WebInspector.LogContentView.prototype.findBannerPerformSearch): |
| (WebInspector.LogContentView.prototype.findBannerSearchCleared): |
| (WebInspector.LogContentView.prototype.performSearch): |
| Support both the standard and custom (toolbar item) find banners. |
| (WebInspector.LogContentView.prototype.searchCleared): |
| Refresh search results. |
| (WebInspector.LogContentView.prototype._highlightRanges): |
| Correct spelling: _selectedSearchMathIsValid -> _selectedSearchMatchIsValid. |
| (WebInspector.LogContentView.prototype.get searchInProgress): Deleted. |
| Override ContentView.prototype.hasPerformedSearch instead. |
| (WebInspector.LogContentView.prototype.handleFindEvent): Deleted. |
| Replaced by `showCustomFindBanner`. |
| (WebInspector.LogContentView.prototype.highlightPreviousSearchMatch): Deleted. |
| Absorbed by findBannerRevealPreviousResult. |
| (WebInspector.LogContentView.prototype.highlightNextSearchMatch): Deleted. |
| Absorbed by findBannerRevealNextResult. |
| (WebInspector.LogContentView.prototype._performSearch): Deleted. |
| Override ContentView.prototype.performSearch instead. |
| |
| * UserInterface/Views/Main.css: |
| (#split-content-browser > .navigation-bar :matches(.find-banner, .find-banner + .divider)): |
| Hide the toolbar banner and divider. |
| |
| 2016-12-14 Ryosuke Niwa <rniwa@webkit.org> |
| |
| Web Inspector: Jumping to the definition of a custom elements is broken |
| https://bugs.webkit.org/show_bug.cgi?id=165890 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| Fix the regression from https://trac.webkit.org/changeset/208304. |
| |
| * UserInterface/Views/DOMTreeElement.js: |
| (WebInspector.DOMTreeElement.prototype._showCustomElementDefinition): Use the main target |
| since a custom element definition can never come from a worker. |
| |
| 2016-12-14 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Zooming in on the Timeline should always zoom right where the cursor is |
| https://bugs.webkit.org/show_bug.cgi?id=151118 |
| <rdar://problem/23487912> |
| |
| Reviewed by Timothy Hatcher. |
| |
| Use correct left edge for timeline overview graph elements. |
| |
| * UserInterface/Views/TimelineOverview.js: |
| (WebInspector.TimelineOverview.prototype._handleWheelEvent): |
| (WebInspector.TimelineOverview._handleGestureStart): |
| (WebInspector.TimelineOverview.prototype._handleGestureChange): |
| |
| 2016-12-12 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| [GTK] Web Inspector: Add NavigationItemCodeCoverage.svg icon |
| https://bugs.webkit.org/show_bug.cgi?id=165698 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Images/gtk/NavigationItemCodeCoverage.svg: Added. |
| Match in style the existing NavigationItemTypes.svg icon. |
| |
| 2016-12-12 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Cleanup HierarchicalPathComponent |
| https://bugs.webkit.org/show_bug.cgi?id=165745 |
| |
| Reviewed by Brian Burg. |
| |
| Prefer toggle for style class names, remove single use CSS class name |
| constants, and back all properties by the model not the DOM. |
| |
| * UserInterface/Views/HierarchicalPathComponent.js: |
| (WebInspector.HierarchicalPathComponent): |
| (WebInspector.HierarchicalPathComponent.prototype.get element): |
| (WebInspector.HierarchicalPathComponent.prototype.get representedObject): |
| (WebInspector.HierarchicalPathComponent.prototype.get minimumWidth): |
| (WebInspector.HierarchicalPathComponent.prototype.get forcedWidth): |
| (WebInspector.HierarchicalPathComponent.prototype.set forcedWidth): |
| (WebInspector.HierarchicalPathComponent.prototype.get hidden): |
| (WebInspector.HierarchicalPathComponent.prototype.set hidden): |
| (WebInspector.HierarchicalPathComponent.prototype.get collapsed): |
| (WebInspector.HierarchicalPathComponent.prototype.set collapsed): |
| (WebInspector.HierarchicalPathComponent.prototype.get selectorArrows): |
| (WebInspector.HierarchicalPathComponent.prototype.set selectorArrows): |
| (WebInspector.HierarchicalPathComponent.prototype.get previousSibling): |
| (WebInspector.HierarchicalPathComponent.prototype.set previousSibling): |
| (WebInspector.HierarchicalPathComponent.prototype.get nextSibling): |
| (WebInspector.HierarchicalPathComponent.prototype.set nextSibling): |
| (WebInspector.HierarchicalPathComponent.prototype._updateElementTitleAndText): |
| (WebInspector.HierarchicalPathComponent.prototype._updateSelectElement.createOption): |
| (WebInspector.HierarchicalPathComponent.prototype._updateSelectElement): |
| |
| 2016-12-12 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Allow keyboard navigation in Heap Snapshot data grids |
| https://bugs.webkit.org/show_bug.cgi?id=165752 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/DOMTreeOutline.css: |
| (.tree-outline.dom:focus li.selected > span::after): |
| Use new color variable. |
| |
| * UserInterface/Views/HeapSnapshotInstanceDataGridNode.js: |
| (WebInspector.HeapSnapshotInstanceDataGridNode.prototype.get selectable): Deleted. |
| Should be selectable. |
| |
| * UserInterface/Views/HeapSnapshotInstancesContentView.css: |
| (.heap-snapshot > .data-grid:focus tr.selected > td .sub-retained): |
| (.heap-snapshot > .data-grid:focus tr.selected .object-id,): |
| (.heap-snapshot > .data-grid:focus tr.selected .formatted-string,): |
| (.heap-snapshot > .data-grid:focus tr.selected td .location): |
| Selected row text should just be white, except for values that are usually |
| gray (object ID, object size, and sub-retained size values). These should |
| be styled like the "= $0" marker in the DOM tree outline. |
| |
| (.heap-snapshot > .data-grid:matches(:focus, .force-focus) tr.selected td .location): Deleted. |
| Removed forced-focus reference. Only used by TreeOutlineDataGridSynchronizer. |
| |
| * UserInterface/Views/Variables.css: |
| (:root): |
| Added --selected-secondary-text-color. |
| |
| 2016-12-12 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Breakpoint Log action should support template literals |
| https://bugs.webkit.org/show_bug.cgi?id=165116 |
| <rdar://problem/29464765> |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| New string "${expr} = expression" for breakpoint popover. |
| |
| * UserInterface/Controllers/BreakpointLogMessageLexer.js: Added. |
| To support template literal placeholders in message text, it is necessary |
| to distinguish plain text parts of the message from placeholders, since |
| plain text must be escaped. |
| |
| (WebInspector.BreakpointLogMessageLexer): |
| (WebInspector.BreakpointLogMessageLexer.prototype.tokenize): |
| (WebInspector.BreakpointLogMessageLexer.prototype.reset): |
| (WebInspector.BreakpointLogMessageLexer.prototype._finishPlainText): |
| (WebInspector.BreakpointLogMessageLexer.prototype._finishExpression): |
| (WebInspector.BreakpointLogMessageLexer.prototype._appendToken): |
| (WebInspector.BreakpointLogMessageLexer.prototype._consume): |
| (WebInspector.BreakpointLogMessageLexer.prototype._peek): |
| (WebInspector.BreakpointLogMessageLexer.prototype._expression): |
| (WebInspector.BreakpointLogMessageLexer.prototype._plainText): |
| (WebInspector.BreakpointLogMessageLexer.prototype._possiblePlaceholder): |
| (WebInspector.BreakpointLogMessageLexer.prototype._regExpOrStringLiteral): |
| |
| * UserInterface/Controllers/DebuggerManager.js: |
| (WebInspector.DebuggerManager.prototype._debuggerBreakpointOptions): |
| Build breakpoint "options" object for DebuggerAgent. If a Log action |
| contains template literal placeholders it is changed to an Evaluate |
| action, which calls console.log with a template literal. |
| |
| (WebInspector.DebuggerManager.prototype._setBreakpoint): |
| Use converted breakpoint options. |
| |
| * UserInterface/Main.html: |
| * UserInterface/Test.html: |
| New file. |
| |
| * UserInterface/Views/BreakpointActionView.css: |
| (.breakpoint-action-block-body > .description): |
| Styles for breakpoint Log action hint text. |
| |
| * UserInterface/Views/BreakpointActionView.js: |
| (WebInspector.BreakpointActionView.prototype._updateBody): |
| Add Log action hint text element. |
| |
| 2016-12-11 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: ThreadTreeElement should have a "Resume" status button when paused |
| https://bugs.webkit.org/show_bug.cgi?id=165581 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Images/Resume.svg: |
| Fill/stroke should be unspecified so that both can be styled in CSS. |
| |
| * UserInterface/Views/DebuggerDashboardView.css: |
| (.dashboard.debugger .navigation-bar .item.debugger-dashboard-pause.activated): |
| * UserInterface/Views/DebuggerSidebarPanel.css: |
| (.sidebar > .panel.navigation.debugger > .navigation-bar .debugger-pause-resume): |
| (.sidebar > .panel.navigation.debugger > .navigation-bar .debugger-pause-resume.activated): |
| Recreate original style which relied on 'fill="none"' being specified in the SVG. |
| |
| * UserInterface/Views/ThreadTreeElement.css: |
| (.tree-outline > .item.thread .icon): |
| (.tree-outline > .item.thread .status-button.resume): |
| (.tree-outline > .item.thread .status-button.resume:active): |
| (.tree-outline:matches(:focus, .force-focus) > .item.thread.selected .status-button.resume): |
| (.tree-outline > .item.thread.selected .status-button.resume,): |
| (.details-section.call-stack .thread .icon): Deleted. |
| Status button styles. Colors match those of the goto-arrow button. |
| |
| * UserInterface/Views/ThreadTreeElement.js: |
| (WebInspector.ThreadTreeElement.prototype.refresh): |
| Update status icon. |
| (WebInspector.ThreadTreeElement.prototype.oncontextmenu): |
| (WebInspector.ThreadTreeElement.prototype._updateStatus): |
| Add/remove status button based on paused state. |
| Stop propagation of "mousedown" events on the status button, to |
| prevent button press from selecting the tree element. |
| (WebInspector.ThreadTreeElement): |
| |
| 2016-12-11 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Move MainTarget and WorkerTarget to their own files |
| https://bugs.webkit.org/show_bug.cgi?id=165701 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Controllers/DebuggerManager.js: |
| (WebInspector.DebuggerManager.prototype.scriptDidParse): |
| * UserInterface/Main.html: |
| * UserInterface/Protocol/MainTarget.js: Added. |
| (WebInspector.MainTarget): |
| (WebInspector.MainTarget.prototype.get displayName): |
| (WebInspector.MainTarget.prototype.get mainResource): |
| * UserInterface/Protocol/Target.js: |
| (WebInspector.Target): |
| (WebInspector.MainTarget): Deleted. |
| (WebInspector.MainTarget.prototype.get displayName): Deleted. |
| (WebInspector.MainTarget.prototype.get mainResource): Deleted. |
| (WebInspector.MainTarget.prototype.initialize): Deleted. |
| (WebInspector.WorkerTarget): Deleted. |
| (WebInspector.WorkerTarget.prototype.get displayName): Deleted. |
| (WebInspector.WorkerTarget.prototype.initialize): Deleted. |
| * UserInterface/Protocol/WorkerTarget.js: Added. |
| (WebInspector.WorkerTarget): |
| (WebInspector.WorkerTarget.prototype.get displayName): |
| * UserInterface/Test.html: |
| |
| 2016-12-09 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Frontend should not be resetting TypeProfiler state when switching between ContentViews |
| https://bugs.webkit.org/show_bug.cgi?id=165648 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector.loaded): |
| Update all backends when the state changes. |
| |
| * UserInterface/Views/SourceCodeTextEditor.js: |
| (WebInspector.SourceCodeTextEditor.prototype._setTypeTokenAnnotatorEnabledState): |
| (WebInspector.SourceCodeTextEditor.prototype.set _basicBlockAnnotatorEnabled): |
| Moved this code to when the global Setting (which affects all editors) changes. |
| |
| 2016-12-09 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Some resources fetched via Fetch API do not have data |
| https://bugs.webkit.org/show_bug.cgi?id=165230 |
| <rdar://problem/29449220> |
| |
| Reviewed by Alex Christensen. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| New "Fetch" and "Fetches" localized strings. |
| |
| * UserInterface/Models/Resource.js: |
| (WebInspector.Resource.displayNameForType): |
| * UserInterface/Models/ResourceCollection.js: |
| (WebInspector.ResourceCollection.verifierForType): |
| * UserInterface/Views/CollectionContentView.js: |
| (WebInspector.CollectionContentView): |
| * UserInterface/Views/ResourceClusterContentView.js: |
| (WebInspector.ResourceClusterContentView.prototype.get responseContentView): |
| * UserInterface/Views/ResourceTreeElement.js: |
| (WebInspector.ResourceTreeElement.compareResourceTreeElements): |
| New ResourceType.Fetch. Behave like XHR in most places. |
| |
| 2016-12-08 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Unable to delete breakpoint from worker script |
| https://bugs.webkit.org/show_bug.cgi?id=165578 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Controllers/DebuggerManager.js: |
| (WebInspector.DebuggerManager.prototype._removeBreakpoint): |
| Match setting breakpoints. If this is a "URL breakpoint", affect |
| all targets. If this is a "Script breakpoint", affect just the |
| single target containing that Script. |
| |
| 2016-12-07 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| REGRESSION(r203912): Web Inspector: Navigation sidebar widths are not saved |
| https://bugs.webkit.org/show_bug.cgi?id=165496 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/TabBrowser.js: |
| (WebInspector.TabBrowser): |
| (WebInspector.TabBrowser.prototype._sidebarWidthDidChange): |
| (WebInspector.TabBrowser.prototype._showNavigationSidebarPanelForTabContentView): |
| (WebInspector.TabBrowser.prototype._sidebarWidthDidChange): Renamed from _detailsSidebarWidthDidChange. |
| Add event listener for when the navigation sidebar's width is changed. |
| |
| * UserInterface/Views/TabContentView.js: |
| (WebInspector.TabContentView): |
| (WebInspector.TabContentView.prototype.get navigationSidebarPanel): |
| (WebInspector.TabContentView.prototype.get navigationSidebarCollapsedSetting): |
| (WebInspector.TabContentView.prototype.get navigationSidebarWidthSetting): |
| (WebInspector.TabContentView.prototype.get detailsSidebarPanels): |
| (WebInspector.TabContentView.prototype.get detailsSidebarCollapsedSetting): |
| (WebInspector.TabContentView.prototype.get detailsSidebarSelectedPanelSetting): |
| (WebInspector.TabContentView.prototype.get detailsSidebarWidthSetting): |
| Add WebInspector.Setting object for the navigation sidebar's width. |
| |
| 2016-12-07 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| Web Inspector: Control Flow Profiler's event handlers aren't getting removed when ContentView closes |
| https://bugs.webkit.org/show_bug.cgi?id=165556 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Views/ScriptContentView.js: |
| (WebInspector.ScriptContentView.prototype.closed): |
| * UserInterface/Views/TextResourceContentView.js: |
| (WebInspector.TextResourceContentView.prototype.closed): |
| |
| 2016-12-07 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Add ability to distinguish if a Script was parsed as a module |
| https://bugs.webkit.org/show_bug.cgi?id=164900 |
| <rdar://problem/29323817> |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Models/Script.js: |
| (WebInspector.Script.prototype.get sourceType): |
| New property of Scripts. SourceType is either Program or Module. |
| |
| * UserInterface/Controllers/DebuggerManager.js: |
| (WebInspector.DebuggerManager.prototype.scriptDidParse): |
| * UserInterface/Protocol/DebuggerObserver.js: |
| (WebInspector.DebuggerObserver.prototype.scriptParsed): |
| Convert incoming module boolean into SourceType when creating new Scripts. |
| |
| * UserInterface/Models/ScriptSyntaxTree.js: |
| (WebInspector.ScriptSyntaxTree): |
| (WebInspector.ScriptSyntaxTree.prototype._recurse): |
| (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree): |
| Update the generic AST for new module specific Esprima types. |
| |
| * UserInterface/Views/SourceCodeTextEditor.js: |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorScriptSourceType): |
| * UserInterface/Views/TextEditor.js: |
| (WebInspector.TextEditor.prototype._startWorkerPrettyPrint): |
| For pretty printing correctly state if this is a module or not for Esprima. |
| |
| 2016-12-07 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Update Esprima to support new features / syntax (**, async/await, trailing comma) |
| https://bugs.webkit.org/show_bug.cgi?id=164830 |
| <rdar://problem/29293814> |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/External/Esprima/LICENSE: |
| * UserInterface/External/Esprima/esprima.js: |
| Updated to Esprima@7219731 (4.0.0-dev). |
| |
| * UserInterface/Models/ScriptSyntaxTree.js: |
| (WebInspector.ScriptSyntaxTree.prototype._recurse): |
| (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree): |
| * UserInterface/Workers/Formatter/ESTreeWalker.js: |
| (ESTreeWalker.prototype._walkChildren): |
| Add new nodes (AwaitExpression). |
| Add new states (async boolean property on Functions). |
| Remove stale properties (defaults is no longer needed, as parameters |
| with default values are now AssignmentPatterns). |
| Update MetaProperty where meta/property are now Identifiers not strings. |
| |
| * UserInterface/Workers/Formatter/EsprimaFormatter.js: |
| (EsprimaFormatter.prototype._handleTokenAtNode): |
| Handle pretty printing of new nodes and identifiers. |
| |
| * Controllers/FrameResourceManager.js |
| Address a console.assert warning for stripping assertions in Production. |
| |
| 2016-12-07 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Remove unused and mostly untested Page domain commands and events |
| https://bugs.webkit.org/show_bug.cgi?id=165507 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Protocol/PageObserver.js: |
| (WebInspector.PageObserver.prototype.javascriptDialogOpening): |
| (WebInspector.PageObserver.prototype.javascriptDialogClosed): |
| (WebInspector.PageObserver.prototype.scriptsEnabled): |
| Keep stub in case legacy backends dispatch the event to the frontend. |
| |
| * UserInterface/Protocol/Legacy/10.0/InspectorBackendCommands.js: |
| * UserInterface/Protocol/Legacy/7.0/InspectorBackendCommands.js: |
| * UserInterface/Protocol/Legacy/8.0/InspectorBackendCommands.js: |
| * UserInterface/Protocol/Legacy/9.0/InspectorBackendCommands.js: |
| * UserInterface/Protocol/Legacy/9.3/InspectorBackendCommands.js: |
| * Versions/Inspector-iOS-10.0.json: |
| * Versions/Inspector-iOS-7.0.json: |
| * Versions/Inspector-iOS-8.0.json: |
| * Versions/Inspector-iOS-9.0.json: |
| * Versions/Inspector-iOS-9.3.json: |
| Remove handleJavaScriptDialog command from legacy backends because it |
| doesn't appear as if the iOS backend handled it at all. |
| |
| 2016-12-06 Alexey Proskuryakov <ap@apple.com> |
| |
| Correct SDKROOT values in xcconfig files |
| https://bugs.webkit.org/show_bug.cgi?id=165487 |
| rdar://problem/29539209 |
| |
| Reviewed by Dan Bernstein. |
| |
| Fix suggested by Dan Bernstein. |
| |
| * Configurations/DebugRelease.xcconfig: |
| |
| 2016-12-05 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Object.shallowEqual([{}], [{}]) should return true |
| https://bugs.webkit.org/show_bug.cgi?id=165397 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Base/Utilities.js: |
| (value): |
| Array.shallowEqual should compare array items using strict equivalence, |
| and on failure defer to Object.shallowEqual. |
| |
| 2016-12-05 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Remove legacy styles |
| https://bugs.webkit.org/show_bug.cgi?id=165389 |
| |
| Reviewed by Matt Baker. |
| |
| Remove styles for platforms we don't build on anymore (Mavericks |
| and Mountain Lion). There are also no "unknown-mac" styles to |
| upgrade to a named platform. |
| |
| * UserInterface/Base/Platform.js: |
| Add sierra and remove older unsupported platforms. |
| |
| * UserInterface/Views/Main.css: |
| (body): |
| (body:not(.mavericks)): Deleted. |
| * UserInterface/Views/TabBar.css: |
| (body.mavericks .tab-bar > .item:not(.disabled).selected): Deleted. |
| * UserInterface/Views/Toolbar.css: |
| (body .toolbar): |
| (body.window-inactive .toolbar): |
| (body.mac-platform:not(.docked) .toolbar): |
| (body.mac-platform:not(.docked)): |
| (body:not(.mavericks) .toolbar,): Deleted. |
| (body.window-inactive:not(.mavericks) .toolbar): Deleted. |
| (body.mac-platform:not(.docked, .mavericks) .toolbar): Deleted. |
| (body.mac-platform:not(.docked, .mavericks)): Deleted. |
| Remove mavericks specific styles. |
| |
| 2016-12-02 Andy Estes <aestes@apple.com> |
| |
| [Cocoa] Adopt the PRODUCT_BUNDLE_IDENTIFIER build setting |
| https://bugs.webkit.org/show_bug.cgi?id=164492 |
| |
| Reviewed by Dan Bernstein. |
| |
| * Configurations/WebInspectorUIFramework.xcconfig: Set PRODUCT_BUNDLE_IDENTIFIER to |
| com.apple.$(PRODUCT_NAME:rfc1034identifier). |
| * Info.plist: Changed CFBundleIdentifier's value from |
| com.apple.${PRODUCT_NAME:rfc1034identifier} to ${PRODUCT_BUNDLE_IDENTIFIER}. |
| |
| 2016-12-02 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| REGRESSION (r192344): Web Inspector: Turning off Code Coverage or Type Profiler logs an error |
| https://bugs.webkit.org/show_bug.cgi?id=164804 |
| <rdar://problem/29278028> |
| |
| Reviewed by Matt Baker. |
| |
| BasicBlockAnnotator and TypeTokenAnnotator were instanciated for a resource in an inactive Debugger tab. |
| |
| * UserInterface/Views/NavigationSidebarPanel.js: |
| (WebInspector.NavigationSidebarPanel.prototype.showDefaultContentViewForTreeElement): |
| Don't show any content view if we are not in a selected tab. |
| |
| 2016-12-01 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Show async stack traces for workers |
| https://bugs.webkit.org/show_bug.cgi?id=165235 |
| <rdar://problem/29450172> |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Views/CallFrameTreeElement.css: |
| (.tree-outline > .children > .item.call-frame.async-boundary): |
| (.tree-outline:not(.single-thread) > .children > .item.call-frame.async-boundary): |
| (.tree-outline .item.call-frame.async-boundary::before): |
| (.tree-outline.single-thread .item.call-frame.async-boundary::before): |
| (.tree-outline .item.call-frame.async-boundary): Deleted. |
| Style changes for single/multiple-thread call stacks. |
| Padding changes to account for Thread tree element. |
| Make selectors more specific where needed. |
| |
| * UserInterface/Views/DebuggerSidebarPanel.css: |
| (.sidebar > .panel.navigation.debugger .tree-outline.single-thread > .item.thread): |
| (.sidebar > .panel.navigation.debugger .tree-outline.single-thread): |
| Style changes for single/multiple-thread call stacks. |
| |
| * UserInterface/Views/DebuggerSidebarPanel.js: |
| (WebInspector.DebuggerSidebarPanel): |
| Use a single tree outline for showing a single thread or multiple threads. |
| For single-threaded, hide Thread tree element and un-indent children. |
| |
| (WebInspector.DebuggerSidebarPanel.prototype._targetAdded): |
| (WebInspector.DebuggerSidebarPanel.prototype._targetRemoved): |
| (WebInspector.DebuggerSidebarPanel.prototype._updateCallStackTreeOutline): |
| Update tree style and whether Thread tree element is selectable. |
| (WebInspector.DebuggerSidebarPanel.prototype._debuggerActiveCallFrameDidChange): |
| Remove support for second tree outline. |
| |
| (WebInspector.DebuggerSidebarPanel.prototype._updateSingleThreadCallStacks): Deleted. |
| (WebInspector.DebuggerSidebarPanel.prototype._selectActiveCallFrameTreeElement): Deleted. |
| (WebInspector.DebuggerSidebarPanel.prototype._showSingleThreadCallStacks): Deleted. |
| (WebInspector.DebuggerSidebarPanel.prototype._showMultipleThreadCallStacks): Deleted. |
| No longer needed after unifying tree outlines. |
| |
| * UserInterface/Views/ThreadTreeElement.js: |
| (WebInspector.ThreadTreeElement.prototype.refresh): |
| Append call frames from the async stack trace. |
| |
| 2016-11-30 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Clicking on link in Web Inspector can cause UIProcess to crash |
| https://bugs.webkit.org/show_bug.cgi?id=165157 |
| <rdar://problem/27896562> |
| |
| Reviewed by Brian Burg. |
| |
| By correctly disallowing slashes in the scheme Web Inspector resolves |
| the correct absolute URL and doesn't end up trying to navigate to an |
| incorrect file URL. |
| |
| * UserInterface/Base/URLUtilities.js: |
| (parseURL): |
| Disallow "/" characters in the scheme portion. (/http://example.com) |
| Allow path to be optional before a fragment portion. (http://example.com#frag) |
| |
| 2016-11-29 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Improve name sorting in HeapSnapshot data grids |
| https://bugs.webkit.org/show_bug.cgi?id=165170 |
| <rdar://problem/28784421> |
| |
| Reviewed by Matt Baker. |
| |
| When sorting the Name column, group named properties and unnamed |
| properties and sort them each individually: |
| |
| - Sort named properties by their property name (property names will be unique if they exist) |
| - Sort unnamed properties by their class name (guaranteed) |
| - Sort any tied class names by their object id |
| |
| This makes using the Object Graph with Name sort easier to follow. |
| In the ascending sort you see all the named properties first, |
| followed by the unnamed (internal) properties. |
| |
| * UserInterface/Views/HeapSnapshotContentView.js: |
| (WebInspector.HeapSnapshotObjectGraphContentView): |
| Since this data grid column now sorts on more than just the "Class Name" |
| rename it to "Name". |
| |
| * UserInterface/Views/HeapSnapshotDataGridTree.js: |
| (WebInspector.HeapSnapshotDataGridTree.buildSortComparator): |
| Make the sort of the `className` column more general to handle sorting |
| by property names, class names, and object identifiers. |
| |
| * UserInterface/Views/HeapSnapshotInstanceDataGridNode.js: |
| (WebInspector.HeapSnapshotInstanceDataGridNode.prototype.get propertyName): |
| (WebInspector.HeapSnapshotInstanceDataGridNode.prototype.createCellContent): |
| Provide a lazy `propertyName` accessor where we compute it once and stash |
| it on the DataGridNode to avoid extra work when resorting. |
| |
| (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._populate.propertyName): |
| (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._populate): |
| In the initial populated sort, provide the necessary property name property |
| the sort comparator expects. |
| |
| 2016-11-29 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Breakpoints button enabled state is too subtle |
| https://bugs.webkit.org/show_bug.cgi?id=165153 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Images/Breakpoints.svg: |
| Change to path so stroke and fill can be styled. |
| |
| * UserInterface/Views/DebuggerSidebarPanel.css: |
| (.sidebar > .panel.navigation.debugger > .navigation-bar .debugger-breakpoints): |
| (.sidebar > .panel.navigation.debugger > .navigation-bar .debugger-breakpoints.activated): |
| Fill and stroke styles for the active and inactive breakpoint button. |
| |
| 2016-11-28 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Debugger should have an option for showing asynchronous call stacks |
| https://bugs.webkit.org/show_bug.cgi?id=163230 |
| <rdar://problem/28698683> |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| New string for generic async call stack boundary label: "(async)". |
| |
| * UserInterface/Controllers/DebuggerManager.js: |
| Create async stack depth setting and set default depth. |
| (WebInspector.DebuggerManager.prototype.get asyncStackTraceDepth): |
| (WebInspector.DebuggerManager.prototype.set asyncStackTraceDepth): |
| Make async stack depth setting accessible to the frontend. |
| (WebInspector.DebuggerManager.prototype.initializeTarget): |
| Set async stack depth value on the target. |
| (WebInspector.DebuggerManager.prototype.debuggerDidPause): |
| Plumbing for the async stack trace payload. |
| |
| * UserInterface/Models/ConsoleMessage.js: |
| (WebInspector.ConsoleMessage): |
| Updated for new StackTrace.fromPayload use. |
| |
| * UserInterface/Models/DebuggerData.js: |
| (WebInspector.DebuggerData): |
| (WebInspector.DebuggerData.prototype.get asyncStackTrace): |
| (WebInspector.DebuggerData.prototype.updateForPause): |
| (WebInspector.DebuggerData.prototype.updateForResume): |
| More plumbing. |
| |
| * UserInterface/Models/StackTrace.js: |
| Update frontend model for use as new protocol object Console.StackTrace, |
| which was previously an alias for a simple array of Console.CallFrames. |
| |
| (WebInspector.StackTrace): |
| (WebInspector.StackTrace.fromPayload): |
| (WebInspector.StackTrace.fromString): |
| (WebInspector.StackTrace.prototype.get topCallFrameIsBoundary): |
| (WebInspector.StackTrace.prototype.get parentStackTrace): |
| |
| * UserInterface/Protocol/DebuggerObserver.js: |
| (WebInspector.DebuggerObserver.prototype.paused): |
| More plumbing. |
| |
| * UserInterface/Views/CallFrameTreeElement.css: |
| (.tree-outline .item.call-frame.async-boundary): |
| Use default cursor since boundary element is not selectable. |
| (.tree-outline .item.call-frame.async-boundary .icon): |
| (.tree-outline .item.call-frame.async-boundary::before,): |
| (.tree-outline .item.call-frame.async-boundary::after): |
| (.tree-outline .item.call-frame.async-boundary::before): |
| Dimmed text and divider line styles for boundary element. |
| |
| * UserInterface/Views/CallFrameTreeElement.js: |
| (WebInspector.CallFrameTreeElement): |
| Add a flag denoting whether the call frame is an async call trace |
| boundary, and set styles accordingly. |
| |
| * UserInterface/Views/DebuggerSidebarPanel.js: |
| Set async stack trace depth, if supported. |
| (WebInspector.DebuggerSidebarPanel.prototype._updateSingleThreadCallStacks): |
| Add call frames for async stack traces to the call stack TreeOutline. |
| (WebInspector.DebuggerSidebarPanel.prototype._treeSelectionDidChange): |
| Ensure that async call frames cannot become the active call frame. |
| |
| * UserInterface/Views/Variables.css: |
| (:root): |
| Add --text-color-gray-medium, for dimmed text in async boundary element. |
| |
| 2016-11-18 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: TimelineDataGridNode assertions when refreshing page |
| https://bugs.webkit.org/show_bug.cgi?id=162642 |
| <rdar://problem/28505898> |
| |
| Reviewed by Timothy Hatcher. |
| |
| This patch fixes a number of deficiencies in the Network tab that caused |
| TimelineDataGridNode graphs to refresh before the tab became visible. |
| |
| * UserInterface/Views/ElementsTabContentView.js: |
| (WebInspector.ElementsTabContentView): |
| (WebInspector.ElementsTabContentView.prototype.shown): |
| Drive-by fix: defer showing the DOM content view until the tab is shown. |
| |
| * UserInterface/Views/NetworkGridContentView.js: |
| (WebInspector.NetworkGridContentView): |
| Drive-by event listener cleanup. |
| (WebInspector.NetworkGridContentView.prototype.get startTime): |
| (WebInspector.NetworkGridContentView.prototype.get endTime): |
| Back endTime with a variable, instead of using the ruler value which |
| isn't valid before the tab is shown for the first time. |
| |
| (WebInspector.NetworkGridContentView.prototype.shown): |
| Force the grid to update its layout, and that of the Timeline column ruler. |
| During layout the ruler's secondsPerPixel value is used, which isn't |
| valid until the ruler does an initial layout. |
| |
| (WebInspector.NetworkGridContentView.prototype.reset): |
| Clear pending records. This was causing duplicates to appear when the |
| inspected page was refreshed multiple times prior to showing the Network |
| tab for the first time. |
| |
| (WebInspector.NetworkGridContentView.prototype.layout): |
| Should more closely match behavior in NetworkTimelineView.prototype.layout. |
| Graph end time padding is added if no longer updating the current time. |
| |
| (WebInspector.NetworkGridContentView.prototype._networkTimelineRecordAdded): |
| Track endTime of the last record added, so that the graph end time can |
| be padded once the current time is no longer being updated. |
| |
| (WebInspector.NetworkGridContentView.prototype._update): |
| (WebInspector.NetworkGridContentView.prototype._stopUpdatingCurrentTime): |
| Graph end time padding shouldn't be applied here, since this isn't called |
| if the inspected page finishes loading before the view is shown. |
| |
| (WebInspector.NetworkGridContentView.prototype._clearNetworkItems): Deleted. |
| Replaced by an arrow function. |
| |
| * UserInterface/Views/NetworkSidebarPanel.js: |
| (WebInspector.NetworkSidebarPanel.prototype._networkTimelineReset): |
| Don't show the content view if the tab is hidden. |
| |
| 2016-11-17 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Shift clicking on named color value only shows its hex form |
| https://bugs.webkit.org/show_bug.cgi?id=162758 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Models/Color.js: |
| (WebInspector.Color.prototype.nextFormat): |
| Reworked the logic for the formatting order to be the following: |
| - Long HEX and Long HEXAlpha |
| - RGB and RGBA |
| - HSL and HSLA |
| - Keyword (if applicable) |
| - Short HEX (if applicable) |
| - Short HEXAlpha (if applicable) |
| It will only show formats with alpha values if the color value has an alpha that is not 1. |
| If the alpha is not 1, it will not show formats with non-alpha values. |
| |
| The changes to this function have no effect on the context menu items of InlineSwatch |
| elements. The purpose of each of those items is to allow the user to change the format to |
| a specified type, whereas WebInspector.Color.prototype.nextFormat is used to cycle through |
| all of the relevant formats. |
| |
| (WebInspector.Color.prototype._toRGBString): |
| (WebInspector.Color.prototype._toRGBAString): |
| (WebInspector.Color.prototype._toHSLString): |
| (WebInspector.Color.prototype._toHSLAString): |
| Unrelated fix of extra decimals when converting from HEX to RGB and HSL. |
| |
| * UserInterface/Views/CSSStyleDeclarationTextEditor.js: |
| (WebInspector.CSSStyleDeclarationTextEditor._inlineSwatchValueChanged): |
| Removed assertion for `_hasActiveInlineSwatchEditor` since the value may change from |
| switching the format of a color swatch (Shift-Click). |
| |
| 2016-11-16 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Background tabs are often updating non-stop because they think they are visible |
| https://bugs.webkit.org/show_bug.cgi?id=164841 |
| <rdar://problem/29298658> |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/NetworkGridContentView.js: |
| (WebInspector.NetworkGridContentView.prototype._networkTimelineRecordAdded): |
| * UserInterface/Views/TimelineRecordingContentView.js: |
| (WebInspector.TimelineRecordingContentView.prototype._update): |
| Don't constantly update when this tab is not in the foreground. |
| |
| 2016-11-15 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: SourceCodeTextEditor should display execution lines for background threads |
| https://bugs.webkit.org/show_bug.cgi?id=164679 |
| <rdar://problem/29233026> |
| |
| Reviewed by Timothy Hatcher. |
| |
| There may be multiple threads paused in the same content view. With |
| this change we should a thread indicator for each primary line a |
| thread is paused on. It uses the same inline line indicator that |
| inline errors/warnings (issues) use. |
| |
| When there is a single thread (just the Page) we don't show thread |
| indicators. But as soon as there are multiple threads we start |
| managing and showing them. The line indicator contains the name of |
| the thread on the side. |
| |
| Note that SourceCodeTextEditor maintains the thread indicators, but |
| it still always handles the ActiveCallFrame as it used to, pushing |
| values down into TextEditor. The ActiveCallFrame styles override |
| the thread line indicators (albeit with the same styles). The reason |
| these are still separate is that TextEditor has some special styles |
| regarding its gutter for the active execution line. Eventually we |
| may want to find a way to push this up into SourceCodeTextEditor. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| New string "%d Threads" when multiple threads are on the same line. |
| |
| * UserInterface/Views/ScopeChainDetailsSidebarPanel.js: |
| (WebInspector.ScopeChainDetailsSidebarPanel): |
| (WebInspector.ScopeChainDetailsSidebarPanel.prototype._activeCallFrameDidChange): |
| Update Watch Expressions when the active call frame changes. |
| |
| * UserInterface/Views/SourceCodeTextEditor.css: |
| (.source-code.text-editor > .CodeMirror .line-indicator-widget): |
| (.source-code.text-editor > .CodeMirror .line-indicator-widget.inline): |
| (.source-code.text-editor > .CodeMirror .line-indicator-widget > .arrow): |
| (.source-code.text-editor > .CodeMirror .line-indicator-widget.inline > .arrow): |
| (.source-code.text-editor > .CodeMirror .line-indicator-widget > .icon): |
| (.source-code.text-editor > .CodeMirror .line-indicator-widget > .text): |
| (.source-code.text-editor > .CodeMirror .line-indicator-widget.inline > .text): |
| Share line indicator widget styles between issue widgets and thread widgets. |
| |
| (.source-code.text-editor > .CodeMirror .thread-indicator): |
| (.source-code.text-editor > .CodeMirror .thread-widget): |
| (.source-code.text-editor > .CodeMirror .thread-widget.inline): |
| (.source-code.text-editor > .CodeMirror .thread-widget.inline > .arrow): |
| Colors for the thread-widget line-indicators. |
| |
| * UserInterface/Views/SourceCodeTextEditor.js: |
| (WebInspector.SourceCodeTextEditor): |
| (WebInspector.SourceCodeTextEditor.prototype.close): |
| New event listeners handling for Target added / removed events. |
| |
| (WebInspector.SourceCodeTextEditor.prototype._targetAdded): |
| (WebInspector.SourceCodeTextEditor.prototype._targetRemoved): |
| Update thread indicators as needed. |
| |
| (WebInspector.SourceCodeTextEditor.prototype._looselyMatchesSourceCodeLocation): |
| More generic match based just on the URLs. Even if the exact script comes |
| from a different target, if they share the same URL that is fine. |
| |
| (WebInspector.SourceCodeTextEditor.prototype._callFramesDidChange): |
| (WebInspector.SourceCodeTextEditor.prototype._addThreadIndicatorForTarget): |
| (WebInspector.SourceCodeTextEditor.prototype._removeThreadIndicatorForTarget): |
| (WebInspector.SourceCodeTextEditor.prototype._threadIndicatorWidgetForLine): |
| (WebInspector.SourceCodeTextEditor.prototype._updateThreadIndicatorWidget): |
| (WebInspector.SourceCodeTextEditor.prototype._handleThreadIndicatorWidgetClick): |
| Manage thread line indicator widgets. There are 3 maps we maintain. |
| |
| 1. line -> [threads] |
| List of threads paused on a line, needed for the UI text. |
| 2. line -> widget |
| Gets the widget on a line so we can modify and eventually remove it. |
| 3. target -> line |
| If a target is removed, we need to know what line it had an indicator on. |
| |
| (WebInspector.SourceCodeTextEditor.prototype._isWidgetToggleable): |
| Generalize for all of our different line indicator widgets. |
| |
| (WebInspector.SourceCodeTextEditor.prototype._contentDidPopulate): |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorUpdatedFormatting): |
| (WebInspector.SourceCodeTextEditor.prototype._reinsertAllThreadIndicators): |
| When first populated, or reformatted, clear and reinsert all widgets. |
| |
| (WebInspector.SourceCodeTextEditor.prototype._reinsertAllIssues): |
| (WebInspector.SourceCodeTextEditor.prototype._logCleared): |
| (WebInspector.SourceCodeTextEditor.prototype._clearIssueWidgets): Renamed. |
| Rename _clearWidgets to _clearIssueWidgets. |
| |
| 2016-11-15 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Remove unused and untested Page.setTouchEmulationEnabled command |
| https://bugs.webkit.org/show_bug.cgi?id=164793 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| Tooltips for new button. |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector.loaded): |
| New global setting. |
| |
| * UserInterface/Views/DOMTreeContentView.js: |
| (WebInspector.DOMTreeContentView): |
| (WebInspector.DOMTreeContentView.prototype.get navigationItems): |
| (WebInspector.DOMTreeContentView.prototype._showPrintStylesSettingChanged): |
| (WebInspector.DOMTreeContentView.prototype._togglePrintStylesSetting): |
| New navigation bar button to toggle print styles. |
| |
| * UserInterface/Controllers/CSSStyleManager.js: |
| (WebInspector.CSSStyleManager.prototype.mediaTypeChanged): |
| After toggling styles we will need to refresh styles, so provide |
| a meaningful way to trigger refreshing styles from the frontend. |
| |
| * UserInterface/Images/Printer.svg: Added. |
| * UserInterface/Images/gtk/Printer.svg: Added. |
| New Printer icon for enabling / disabling print styles. |
| |
| * UserInterface/Images/gtk/Crosshair.svg: |
| * UserInterface/Images/gtk/LayerBorders.svg: |
| * UserInterface/Images/gtk/NavigationItemCurleyBraces.svg: |
| * UserInterface/Images/gtk/NavigationItemTypes.svg: |
| * UserInterface/Images/gtk/PaintFlashing.svg: |
| * UserInterface/Images/gtk/ShadowDOM.svg: |
| * UserInterface/Images/gtk/ToggleLeftSidebar.svg: |
| * UserInterface/Images/gtk/ToggleRightSidebar.svg: |
| * UserInterface/Images/gtk/UpDownArrows.svg: |
| Fix a number of existing GTK images to have activated styles. |
| |
| 2016-11-15 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| REGRESSION (r208248): Web Inspector: Pressing Left Arrow breaks autocomplete |
| https://bugs.webkit.org/show_bug.cgi?id=164391 |
| <rdar://problem/29102408> |
| |
| Reviewed by Matt Baker. |
| |
| Unroll r208248. |
| |
| * UserInterface/Controllers/CodeMirrorCompletionController.js: |
| (WebInspector.CodeMirrorCompletionController): |
| (WebInspector.CodeMirrorCompletionController.prototype.updateCompletions): |
| (WebInspector.CodeMirrorCompletionController.prototype.isCompletionChange): |
| (WebInspector.CodeMirrorCompletionController.prototype.hideCompletions): |
| (WebInspector.CodeMirrorCompletionController.prototype.close): |
| (WebInspector.CodeMirrorCompletionController.prototype.completionSuggestionsSelectedCompletion): |
| (WebInspector.CodeMirrorCompletionController.prototype._createCompletionHintMarker): |
| (WebInspector.CodeMirrorCompletionController.prototype._applyCompletionHint.update): |
| (WebInspector.CodeMirrorCompletionController.prototype._applyCompletionHint): |
| (WebInspector.CodeMirrorCompletionController.prototype._commitCompletionHint.update): |
| (WebInspector.CodeMirrorCompletionController.prototype._commitCompletionHint): |
| (WebInspector.CodeMirrorCompletionController.prototype._removeLastChangeFromHistory): |
| (WebInspector.CodeMirrorCompletionController.prototype._removeCompletionHint.clearMarker): |
| (WebInspector.CodeMirrorCompletionController.prototype._removeCompletionHint.update): |
| (WebInspector.CodeMirrorCompletionController.prototype._removeCompletionHint): |
| (WebInspector.CodeMirrorCompletionController.prototype._completeAtCurrentPosition): |
| (WebInspector.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions): |
| |
| 2016-11-15 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Remove unused and untested Page.setTouchEmulationEnabled command |
| https://bugs.webkit.org/show_bug.cgi?id=164793 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Protocol/Legacy/10.0/InspectorBackendCommands.js: |
| * UserInterface/Protocol/Legacy/7.0/InspectorBackendCommands.js: |
| * UserInterface/Protocol/Legacy/8.0/InspectorBackendCommands.js: |
| * UserInterface/Protocol/Legacy/9.0/InspectorBackendCommands.js: |
| * UserInterface/Protocol/Legacy/9.3/InspectorBackendCommands.js: |
| * Versions/Inspector-iOS-10.0.json: |
| * Versions/Inspector-iOS-7.0.json: |
| * Versions/Inspector-iOS-8.0.json: |
| * Versions/Inspector-iOS-9.0.json: |
| * Versions/Inspector-iOS-9.3.json: |
| |
| 2016-11-15 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: URL Breakpoints that resolve in multiple workers should only appear in the UI once |
| https://bugs.webkit.org/show_bug.cgi?id=164334 |
| <rdar://problem/29073523> |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/DebuggerSidebarPanel.js: |
| (WebInspector.DebuggerSidebarPanel.prototype._addBreakpoint): |
| Don't add a duplicate BreakpointTreeElements for the same Breakpoint. |
| |
| 2016-11-14 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Worker debugging should pause all targets and view call frames in all targets |
| https://bugs.webkit.org/show_bug.cgi?id=164305 |
| <rdar://problem/29056192> |
| |
| Reviewed by Timothy Hatcher. |
| |
| This implements a policy where, when one Target ("Thread") pauses |
| the frontend triggers a pause in all other Targets. The intended |
| user experience is "all threads pause" whenever the frontend shows |
| the debugger paused UI. |
| |
| DebuggerManager has a few straight forward changes: |
| |
| - The paused state reflects if any target is paused. |
| - The Paused Event is fired when going from !paused -> paused. |
| This means when the first target pauses. |
| - The Resumed Event is fired when going from paused -> !paused. |
| This means only after all targets have resumed. |
| - The CallFrameDidChange Event now includes the Target that updated. |
| |
| When a Target first pauses the frontend then immediately pauses all |
| other Targets. This puts them into a "pausing" state (we display as |
| Idle) and they will pause as soon as they start executing JavaScript. |
| |
| When a Target steps the "paused" state isn't changing. So this is |
| just a CallFramesDidChange update. |
| |
| When clicking Resume we resume all targets. This is will be the normal, |
| expected way users resume execution. Note that one of the threads may |
| then hit a breakpoint and re-pause all threads. |
| |
| Sometimes when multiple threads are paused you may want to run an |
| individual thread to completion but keep other threads paused. There |
| is a context menu on the ThreadTreeElement to resume just that |
| single thread. It will continue and pause for its next run loop. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Images/Thread.svg: Added. |
| * UserInterface/Images/gtk/Thread.svg: Added. |
| * UserInterface/Main.html: |
| New strings and files. |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector.loaded): |
| * UserInterface/Test/Test.js: |
| (WebInspector.loaded): |
| Place the TargetManager first since other managers may want to listen |
| for TargetAdded / TargetRemoved events. |
| |
| * UserInterface/Controllers/DebuggerManager.js: |
| (WebInspector.DebuggerManager.prototype.get paused): |
| This is now a computed state. |
| |
| (WebInspector.DebuggerManager.prototype.pause): |
| (WebInspector.DebuggerManager.prototype.resume): |
| Affect all targets. |
| |
| (WebInspector.DebuggerManager.prototype.stepOver): |
| (WebInspector.DebuggerManager.prototype.stepInto): |
| (WebInspector.DebuggerManager.prototype.stepOut): |
| (WebInspector.DebuggerManager.prototype.reset): |
| Update to use the paused computed property. |
| |
| (WebInspector.DebuggerManager.prototype.continueUntilNextRunLoop): |
| Issue the new Debugger.continueUntilNextRunLoop command |
| on a given target. |
| |
| (WebInspector.DebuggerManager.prototype.initializeTarget): |
| When a new Target is created and we were already paused, |
| then start that Worker in a paused state. |
| |
| (WebInspector.DebuggerManager.prototype.debuggerDidPause): |
| Recover from bad cases where the backend informs the frontend about |
| internal JavaScript that it shouldn't know about. Legacy backend do |
| this but also there are corner cases we need to handle. |
| Dispatch events appropriately now that multiple targets may be paused. |
| |
| (WebInspector.DebuggerManager.prototype._didResumeInternal): |
| Dispatch events appropriately now that multiple targets may be paused. |
| |
| (WebInspector.DebuggerManager.prototype._targetRemoved): |
| Remove debugger data for targets that go away to avoid leaks. |
| |
| * UserInterface/Models/DebuggerData.js: |
| (WebInspector.DebuggerData): |
| (WebInspector.DebuggerData.prototype.get paused): |
| (WebInspector.DebuggerData.prototype.get pausing): |
| Move some more per-Target state into DebuggerData. |
| |
| (WebInspector.DebuggerData.prototype.pauseIfNeeded): |
| (WebInspector.DebuggerData.prototype.resumeIfNeeded): |
| (WebInspector.DebuggerData.prototype.continueUntilNextRunLoop): |
| These should only be called by DebuggerManager. They correctly |
| update the state of the DebuggerData for this Target, and also |
| issue the underlying command to the target. |
| |
| (WebInspector.DebuggerData.prototype.updateForPause): |
| (WebInspector.DebuggerData.prototype.updateForResume): |
| Handle a special case where continueUntilNextRunLoop triggers |
| an invisible "pause" on the backend that we should mirror. |
| |
| * UserInterface/Protocol/Target.js: |
| (WebInspector.MainTarget): |
| (WebInspector.MainTarget.prototype.get displayName): |
| (WebInspector.MainTarget.prototype.initialize): |
| Better display names. |
| |
| * UserInterface/Views/DebuggerSidebarPanel.js: |
| (WebInspector.DebuggerSidebarPanel): |
| (WebInspector.DebuggerSidebarPanel.prototype._debuggerDidPause): |
| (WebInspector.DebuggerSidebarPanel.prototype._debuggerDidResume): |
| (WebInspector.DebuggerSidebarPanel.prototype._updateSingleThreadCallStacks): |
| (WebInspector.DebuggerSidebarPanel.prototype._selectActiveCallFrameTreeElement): |
| (WebInspector.DebuggerSidebarPanel.prototype._showSingleThreadCallStacks): |
| (WebInspector.DebuggerSidebarPanel.prototype._showMultipleThreadCallStacks): |
| (WebInspector.DebuggerSidebarPanel.prototype._findThreadTreeElementForTarget): |
| (WebInspector.DebuggerSidebarPanel.prototype._targetAdded): |
| (WebInspector.DebuggerSidebarPanel.prototype._targetRemoved): |
| (WebInspector.DebuggerSidebarPanel.prototype._debuggerCallFramesDidChange): |
| (WebInspector.DebuggerSidebarPanel.prototype._debuggerActiveCallFrameDidChange): |
| The DebuggerSidebar still has a single "Call Stacks" section, but maintains |
| two TreeOutlines and only shows one at a time. The Single Thread view shows |
| a flat list of the call frames for the Main Target when it is the only target. |
| The Multiple Threads view shows a list of Threads and their call frames. |
| We always keep both up to date, because we may need to swap between them |
| purely as Targets are added / removed. There is a bit of extra logic to |
| ensure we select elements properly based only on the visible tree outline. |
| |
| * UserInterface/Views/LogContentView.js: |
| (WebInspector.LogContentView.prototype.didAppendConsoleMessageView): |
| When evaluating in a particular target, "runAfterPendingDispatches" |
| must wait for all other commands in that particular target to have |
| completed. So use the target specific version. |
| |
| * UserInterface/Views/NavigationSidebarPanel.js: |
| (WebInspector.NavigationSidebarPanel.prototype._isTreeElementWithoutRepresentedObject): |
| Gracefully handle a few more TreeElements without a represented object. |
| |
| * UserInterface/Views/IdleTreeElement.css: Added. |
| (.details-section.call-stack .idle .icon): |
| * UserInterface/Views/IdleTreeElement.js: Added. |
| (WebInspector.IdleTreeElement): |
| Very basic tree element to encapsulate an Idle call frame with an |
| empty represented object. |
| |
| * UserInterface/Views/ThreadTreeElement.css: Added. |
| (.details-section.call-stack .thread .icon): |
| * UserInterface/Views/ThreadTreeElement.js: Added. |
| (WebInspector.ThreadTreeElement): |
| (WebInspector.ThreadTreeElement.prototype.get target): |
| (WebInspector.ThreadTreeElement.prototype.refresh): |
| (WebInspector.ThreadTreeElement.prototype.onattach): |
| (WebInspector.ThreadTreeElement.prototype.oncontextmenu): |
| ThreadTreeElement has no represented object, but makes it easy |
| to refresh a list of CallFrameTreeElements for a given target. |
| |
| 2016-11-14 Timothy Hatcher <timothy@apple.com> |
| |
| Web Inspector: Disable Warning Filter in Debugger Tab By Default |
| https://bugs.webkit.org/show_bug.cgi?id=164723 |
| rdar://problem/29251780 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Views/DebuggerSidebarPanel.js: |
| (WebInspector.DebuggerSidebarPanel): Made "debugger-show-resources-with-issues-only" false by default. |
| |
| 2016-11-14 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| Web Inspector: Settings tab should look more like a native macOS view |
| https://bugs.webkit.org/show_bug.cgi?id=164708 |
| <rdar://problem/29241296> |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Views/SettingsTabContentView.css: |
| (.content-view.settings): |
| (.content-view.settings > .header): |
| (.content-view.settings > .setting-container): |
| Match macOS Sierra default font size for settings view. |
| |
| (.content-view.settings > .setting-container > .setting-name): |
| (.content-view.settings > .setting-container > .setting-value-controller): |
| (.content-view.settings > .setting-container > .setting-value-controller input): |
| (.content-view.settings > .setting-container > .setting-value-controller input[type="checkbox"]): |
| Make checkbox larger. |
| |
| (.content-view.settings > .setting-container > .setting-value-controller select): |
| (.content-view.settings > .setting-container > .setting-value-controller input[type="number"]): |
| Decrease the width of the number fields to make them just wide enough to fit 2 digit numbers. |
| |
| 2016-11-12 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Type Profiler and Code Coverage Profiler should work in Workers |
| https://bugs.webkit.org/show_bug.cgi?id=164682 |
| |
| Reviewed by Darin Adler. |
| |
| * UserInterface/Controllers/BasicBlockAnnotator.js: |
| * UserInterface/Models/ScriptSyntaxTree.js: |
| (WebInspector.ScriptSyntaxTree.prototype.updateTypes): |
| Use the target associated with the Script. |
| |
| * UserInterface/Protocol/Target.js: |
| (WebInspector.WorkerTarget.prototype.initialize): |
| When initializing a Worker Target, match the existing state |
| of the Page for these profilers. |
| |
| * UserInterface/Views/ScopeChainDetailsSidebarPanel.js: |
| * UserInterface/Views/SourceCodeTextEditor.js: |
| (WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedJavaScriptTypeInformation): |
| (WebInspector.SourceCodeTextEditor.prototype.willDismissPopover): |
| Use the correct target for this Script / Resource. |
| |
| (WebInspector.SourceCodeTextEditor.prototype._setTypeTokenAnnotatorEnabledState): |
| (WebInspector.SourceCodeTextEditor.prototype.set _basicBlockAnnotatorEnabled): |
| Enable / disable for all targets when toggling profilers. |
| |
| 2016-11-11 Anthony Ricaud <rik@webkit.org> |
| |
| Web Inspector: Whitespace in Editor should be less visible than regular content |
| https://bugs.webkit.org/show_bug.cgi?id=164660 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/CodeMirrorOverrides.css: |
| (.show-whitespace-characters .CodeMirror .cm-whitespace::before): |
| |
| 2016-11-11 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| Web Inspector: Call RuntimeAgent.disableControlFlowProfiler when Code Coverage Profiler is turned off |
| https://bugs.webkit.org/show_bug.cgi?id=163407 |
| <rdar://problem/28764230> |
| |
| Reviewed by Timothy Hatcher. |
| |
| Turning Type Profiler off by clicking [T] icon now disables its backend by calling RuntimeAgent.disableTypeProfiler(). |
| |
| * UserInterface/Views/SourceCodeTextEditor.js: |
| (WebInspector.SourceCodeTextEditor.prototype._setTypeTokenAnnotatorEnabledState): |
| |
| 2016-11-11 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| Web Inspector: Settings tab: make the header smaller to fit more content |
| https://bugs.webkit.org/show_bug.cgi?id=164613 |
| <rdar://problem/29206007> |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Views/SettingsTabContentView.css: |
| (.content-view.settings > .header): |
| Use hv units for margin. 1vh = 1% of viewport height. When Web Inspector window is taller, the margin is larger. |
| |
| (.content-view.settings > .setting-container): |
| Convert padding to margin to make spacing between the header and the first section better. |
| |
| 2016-11-10 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| Web Inspector: Call RuntimeAgent.disableControlFlowProfiler when Code Coverage Profiler is turned off |
| https://bugs.webkit.org/show_bug.cgi?id=163407 |
| <rdar://problem/28764230> |
| |
| Reviewed by Joseph Pecoraro. |
| |
| Turning Code Coverage off by clicking [C] icon now disables its backend by calling RuntimeAgent.disableControlFlowProfiler(). |
| |
| * UserInterface/Views/SourceCodeTextEditor.js: |
| (WebInspector.SourceCodeTextEditor.prototype.set _basicBlockAnnotatorEnabled): |
| |
| 2016-11-10 Aaron Chu <aaron_chu@apple.com> |
| |
| Web Inspector: AXI: clarify button roles (e.g. toggle or popup button) |
| https://bugs.webkit.org/show_bug.cgi?id=130726 |
| <rdar://problem/16420420> |
| |
| Reviewed by Brian Burg. |
| |
| Updated Inspector to show the button type using the new mapping information. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Models/DOMNode.js: |
| (WebInspector.DOMNode.prototype.accessibilityProperties.accessibilityPropertiesCallback): |
| (WebInspector.DOMNode.prototype.accessibilityProperties): |
| * UserInterface/Views/DOMNodeDetailsSidebarPanel.js: |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshAccessibility.accessibilityPropertiesCallback): |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshAccessibility): |
| |
| 2016-11-09 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: DebuggerManager.Event.Resumed introduces test flakiness |
| https://bugs.webkit.org/show_bug.cgi?id=161951 |
| <rdar://problem/28295767> |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Controllers/DebuggerManager.js: |
| (WebInspector.DebuggerManager.prototype.debuggerDidResume): |
| Now, Debugger.resumed events really mean the debugger resumed, |
| so act immediately instead of guessing. We must still guess |
| in legacy backends. |
| |
| * UserInterface/Test/Test.js: |
| When the inspector frontend encounters an issue, log it. |
| |
| * UserInterface/Views/DebuggerSidebarPanel.js: |
| (WebInspector.DebuggerSidebarPanel.prototype._debuggerDidPause): |
| (WebInspector.DebuggerSidebarPanel.prototype._debuggerActiveCallFrameDidChange): |
| Always enable the step out button. I don't think it makes sense to disable |
| it sometimes, and if there are issues with this we should solve the issues |
| instead of hiding them. |
| |
| 2016-11-09 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Associate Worker Resources with the Worker and not the Page |
| https://bugs.webkit.org/show_bug.cgi?id=164342 |
| <rdar://problem/29075775> |
| |
| Reviewed by Timothy Hatcher. |
| |
| A Target may have its own list of Resource. For example, Workers may |
| request any resources via XHR/Fetch. So we associate a ResourceCollection |
| with a Target, and ensure we show them in Web Inspector as you would expect. |
| At this point, Target starts acting like Frame. Target has a resourceCollection |
| and extraScriptsCollection just like Frame. Target has events for ResourceAdded |
| just like Frame. |
| |
| Even though Resource loads are happening in Workers, the Network data |
| still comes from the Page's Network agent. The added "targetId" data |
| with the Resource will let us associate a Resoure with a Target. |
| |
| When opening inspector after a page has loaded, the frontend loads Resources |
| via the Page.getResourceTree path. In this case, the frontend may be |
| informed of Resources for a Target that it does not know about yet. In |
| these cases, it sets them aside as Orphaned resources for a target. Later, |
| when that Target is created, it will adopt its Orphaned resources. |
| |
| Places that used to listen to just Frame.Event.ResourceWasAdded should now |
| also listen for Target.Event.ResourceAdded to ensure it sees the resources |
| associated with non-page targets. |
| |
| * UserInterface/Protocol/Target.js: |
| (WebInspector.Target): |
| (WebInspector.Target.prototype.get identifier): |
| (WebInspector.Target.prototype.get resourceCollection): |
| (WebInspector.Target.prototype.get extraScriptCollection): |
| (WebInspector.Target.prototype.addResource): |
| (WebInspector.Target.prototype.adoptResource): |
| (WebInspector.Target.prototype.addScript): |
| Give Target resource collections. |
| |
| (WebInspector.MainTarget): |
| (WebInspector.MainTarget.prototype.get mainResource): |
| Pass through to the FrameResourceManager for the MainTarget. |
| |
| (WebInspector.WorkerTarget): |
| (WebInspector.WorkerTarget.prototype.initialize): |
| Adopt orphaned resources on creation. |
| |
| * UserInterface/Models/Resource.js: |
| (WebInspector.Resource): |
| (WebInspector.Resource.prototype.get target): |
| (WebInspector.Resource.prototype.get type): |
| Resource now has a Target. During creation, if there is a targetId |
| then we must produce a Target or null (orphaned). |
| |
| (WebInspector.Resource.prototype.associateWithScript): |
| When associating a Resource with a Script, we can use this opportunity |
| to convert from an XML / Other type to Script. |
| |
| * UserInterface/Models/Script.js: |
| (WebInspector.Script.prototype._resolveResource): |
| When associating Scripts with a resource we must associate resources |
| from within the proper Target. If it is the Main target we still use |
| the FrameResourceManager which keep searches across all Frames. |
| |
| * UserInterface/Protocol/NetworkObserver.js: |
| (WebInspector.NetworkObserver.prototype.requestWillBeSent): |
| * UserInterface/Controllers/FrameResourceManager.js: |
| (WebInspector.FrameResourceManager.prototype.initialize): |
| (WebInspector.FrameResourceManager.prototype.frameDidNavigate): |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWillBeSent): |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWasServedFromMemoryCache): |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidReceiveResponse): |
| (WebInspector.FrameResourceManager.prototype.adoptOrphanedResourcesForTarget): |
| (WebInspector.FrameResourceManager.prototype._addNewResourceToFrameOrTarget): |
| (WebInspector.FrameResourceManager.prototype._addResourceToTarget): |
| (WebInspector.FrameResourceManager.prototype._createResource): |
| (WebInspector.FrameResourceManager.prototype._addFrameTreeFromFrameResourceTreePayload): |
| (WebInspector.FrameResourceManager.prototype._addOrphanedResource): |
| (WebInspector.FrameResourceManager.prototype._mainFrameDidChange): |
| (WebInspector.FrameResourceManager.prototype._addNewResourceToFrame): Deleted. |
| When creating Resources from Network events we may now have a targetId. |
| Once created a Resource must be associated with a Frame, Target, or orphaned. |
| |
| * UserInterface/Main.html: |
| * UserInterface/Views/TargetTreeElement.js: Removed. |
| * UserInterface/Views/WorkerTreeElement.js: Added. |
| (WebInspector.WorkerTreeElement): |
| (WebInspector.WorkerTreeElement.prototype.get target): |
| (WebInspector.WorkerTreeElement.prototype.onexpand): |
| (WebInspector.WorkerTreeElement.prototype.oncollapse): |
| (WebInspector.WorkerTreeElement.prototype.onpopulate): |
| (WebInspector.WorkerTreeElement.prototype.updateSourceMapResources): |
| (WebInspector.WorkerTreeElement.prototype.onattach): |
| (WebInspector.WorkerTreeElement.prototype.compareChildTreeElements): |
| (WebInspector.WorkerTreeElement.prototype._handleContextMenuEvent): |
| (WebInspector.WorkerTreeElement.prototype._scriptAdded): |
| (WebInspector.WorkerTreeElement.prototype._resourceAdded): |
| Convert TargetTreeElement to WorkerTreeElement as that is clearer. |
| Behave like FrameTreeElement and populate resources on creation, |
| handle SourceMapResource, etc. |
| |
| * UserInterface/Views/FolderizedTreeElement.js: |
| (WebInspector.FolderizedTreeElement.prototype.registerFolderizeSettings): |
| (WebInspector.FolderizedTreeElement.prototype._compareTreeElementsByMainTitle): |
| (WebInspector.FolderizedTreeElement.prototype._parentTreeElementForRepresentedObject): |
| If the display name for a folder is `null` then there is no folder, |
| and place such child tree elements at the top level. This will be |
| the case for a Worker's Script's, which we choose not to folderize. |
| |
| * UserInterface/Controllers/DebuggerManager.js: |
| (WebInspector.DebuggerManager.prototype.scriptDidParse): |
| * UserInterface/Controllers/TargetManager.js: |
| (WebInspector.TargetManager.prototype.targetForIdentifier): |
| |
| * UserInterface/Models/DefaultDashboard.js: |
| (WebInspector.DefaultDashboard): |
| * UserInterface/Controllers/TimelineManager.js: |
| (WebInspector.TimelineManager): |
| * UserInterface/Controllers/WorkerManager.js: |
| (WebInspector.WorkerManager.prototype.workerCreated): |
| * UserInterface/Views/OpenResourceDialog.js: |
| (WebInspector.OpenResourceDialog.prototype.didDismissDialog): |
| (WebInspector.OpenResourceDialog.prototype.didPresentDialog): |
| (WebInspector.OpenResourceDialog.prototype._addScriptsForTarget): Deleted. |
| (WebInspector.OpenResourceDialog.prototype._addResourcesForTarget): Added. |
| Ensure those that listen for Frame.Event.ResourceWasAdded now also |
| listen for Target.Event.ResourceAdded. |
| |
| * UserInterface/Views/ContextMenuUtilities.js: |
| (WebInspector.appendContextMenuItemsForSourceCode): |
| (WebInspector.appendContextMenuItemsForResource): Deleted. |
| * UserInterface/Views/ResourceTimelineDataGridNode.js: |
| (WebInspector.ResourceTimelineDataGridNode.prototype.appendContextMenuItems): |
| * UserInterface/Views/ResourceTreeElement.js: |
| (WebInspector.ResourceTreeElement.prototype._updateTitles): |
| (WebInspector.ResourceTreeElement.prototype._handleContextMenuEvent): |
| Generalize ContextMenu helper to SourceCode so it can be used on a Script or Resource. |
| |
| * UserInterface/Views/ResourceDetailsSidebarPanel.js: |
| (WebInspector.ResourceDetailsSidebarPanel.prototype.inspect): |
| When looking at a WorkerTarget's mainResource (Script) show the |
| Resource Details sidebar for its Resource. |
| |
| * UserInterface/Views/ResourceSidebarPanel.js: |
| (WebInspector.ResourceSidebarPanel): |
| (WebInspector.ResourceSidebarPanel.prototype._scriptWasAdded): |
| (WebInspector.ResourceSidebarPanel.prototype._scriptsCleared): |
| (WebInspector.ResourceSidebarPanel.prototype._addTargetWithMainResource): |
| (WebInspector.ResourceSidebarPanel.prototype._targetRemoved): |
| (WebInspector.ResourceSidebarPanel.prototype._addScriptForNonMainTarget): Deleted. |
| Simplify ResourceSidebarPanel to only handle adding WorkerTreeElements, |
| which will do the rest of the work for their Resources/Scripts. |
| |
| * UserInterface/Views/SourceCodeTreeElement.js: |
| (WebInspector.SourceCodeTreeElement.prototype.descendantResourceTreeElementTypeDidChange): |
| When we were changing the type of a resource, it would remove and re-insert. |
| This would collapse the parent if it was the only child in removal, and not |
| expand the parent when re-inserting. This ensures we re-expand. |
| |
| 2016-11-09 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| Web Inspector: Settings tab sections overlap each other in docked Inspector window |
| https://bugs.webkit.org/show_bug.cgi?id=164564 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Views/SettingsTabContentView.css: |
| (.content-view.settings): |
| Make settings sections non-shrinkable and make the content view vertically scrollable. |
| |
| (.content-view.settings > .setting-container): |
| Set vertical padding that looks good for non-shrinkable sections. |
| |
| 2016-11-09 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| Web Inspector: Settings tab: Checkbox labels should be clickable |
| https://bugs.webkit.org/show_bug.cgi?id=164470 |
| <rdar://problem/29133787> |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/SettingsTabContentView.js: |
| (WebInspector.SettingsTabContentView.prototype.initialLayout): |
| Add a label element to make checkboxes clickable. |
| |
| 2016-11-09 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Allow FolderTreeElement to display content when selected |
| https://bugs.webkit.org/show_bug.cgi?id=164407 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Main.html: |
| Add CollectionContentView and TitleView. |
| |
| * UserInterface/Base/Main.js: |
| * UserInterface/Views/ContentView.js: |
| (WebInspector.ContentView.createFromRepresentedObject): |
| (WebInspector.ContentView.isViewable): |
| Add support for Collection as the representedObject of a content view. |
| |
| * UserInterface/Views/CollectionContentView.css: Added. |
| (.content-view.collection): |
| (.content-view.collection > .content-view): |
| * UserInterface/Views/CollectionContentView.js: Added. |
| (WebInspector.CollectionContentView): |
| (WebInspector.CollectionContentView.prototype.initialLayout): |
| (WebInspector.CollectionContentView.prototype._addContentViewForItem): |
| (WebInspector.CollectionContentView.prototype._removeContentViewForItem): |
| (WebInspector.CollectionContentView.prototype._handleItemAdded): |
| (WebInspector.CollectionContentView.prototype._handleItemRemoved): |
| (WebInspector.CollectionContentView.prototype._handleContentError): |
| Takes in a Collection when constructed, and attempts to display a sub-ContentView for each |
| item in the collection if the type of the collection is viewable en masse. Currently, this |
| is only supported for WebInspector.Resource.Type.Image collections. |
| |
| * UserInterface/Views/ResourceContentView.js: |
| (WebInspector.ResourceContentView.prototype._contentError): |
| Dispatch an event whenever the content fails to load. |
| |
| * UserInterface/Views/ResourceSidebarPanel.js: |
| (WebInspector.ResourceSidebarPanel.prototype._treeSelectionDidChange): |
| * UserInterface/Views/ResourcesTabContentView.js: |
| (WebInspector.ResourcesTabContentView.prototype.canShowRepresentedObject): |
| Allow FolderTreeElements to be selected. |
| |
| * UserInterface/Views/TitleView.css: Added. |
| (.title-view): |
| * UserInterface/Views/TitleView.js: Added. |
| (WebInspector.TitleView): |
| Basic view that displays the given text in the center of the viewable area. |
| |
| 2016-11-03 Nikita Vasilyev <nvasilyev@apple.com> |
| |
| Web Inspector: Stack overflow when searching a timeline recording for JS function names |
| https://bugs.webkit.org/show_bug.cgi?id=161784 |
| <rdar://problem/28219498> |
| |
| Reviewed by Timothy Hatcher. |
| |
| _populate method of ProfileNodeDataGridNode and ProfileDataGridNode traverses |
| all children of a given node. makeVisible function of DataGrid#_applyFiltersToNode |
| traverses all its parents to expand them. This creates an infinite recursion. |
| Remove "populate" event before appending child nodes to prevent it. |
| |
| * UserInterface/Views/ProfileDataGridNode.js: |
| (WebInspector.ProfileDataGridNode.prototype._populate): |
| (WebInspector.ProfileDataGridNode): |
| * UserInterface/Views/ProfileNodeDataGridNode.js: |
| (WebInspector.ProfileNodeDataGridNode.prototype._populate): |
| (WebInspector.ProfileNodeDataGridNode): |
| |
| 2016-11-03 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Modify FolderTreeElement to have a Collection as a its represented object |
| https://bugs.webkit.org/show_bug.cgi?id=164349 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/FolderTreeElement.js: |
| (WebInspector.FolderTreeElement): |
| Now accepts a representedObject parameter, which must be a WebInspector.Collection. |
| |
| * UserInterface/Views/FolderizedTreeElement.js: |
| (WebInspector.FolderizedTreeElement.prototype.registerFolderizeSettings): |
| (WebInspector.FolderizedTreeElement.prototype.updateParentStatus): |
| (WebInspector.FolderizedTreeElement.prototype._parentTreeElementForRepresentedObject): |
| (WebInspector.FolderizedTreeElement.prototype._settingsForRepresentedObject): |
| (WebInspector.FolderizedTreeElement.prototype._shouldGroupIntoFolders): |
| (WebInspector.FolderizedTreeElement): |
| Rework the logic for creating WebInspector.FolderTreeElement so that items for the |
| representedObject parameter may be passed in via registerFolderizeSettings. |
| |
| * UserInterface/Views/FrameTreeElement.js: |
| (WebInspector.FrameTreeElement): |
| (WebInspector.FrameTreeElement.): Deleted. |
| (WebInspector.FrameTreeElement.makeChildCountCallback): Deleted. |
| Rework logic for calling registerFolderizeSettings to support the representedObject |
| parameter. Also changed calls to WebInspector.Frame to support the |
| WebInspector.Collection class. |
| |
| * UserInterface/Views/ResourceSidebarPanel.js: |
| (WebInspector.ResourceSidebarPanel.prototype.treeElementForRepresentedObject): |
| (WebInspector.ResourceSidebarPanel.prototype._scriptWasAdded): |
| (WebInspector.ResourceSidebarPanel.prototype._scriptsCleared): |
| Create WebInspector.Collection instances of Script model objects for additional folders |
| created by the Resources sidebar: |
| - Anonymous Scripts |
| - Extension Scripts |
| - Extra Scripts |
| |
| 2016-11-02 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Include DebuggerAgent in Workers - see, pause, and step through scripts |
| https://bugs.webkit.org/show_bug.cgi?id=164136 |
| <rdar://problem/29028462> |
| |
| Reviewed by Brian Burg. |
| |
| By implementing DebuggerAgent, Workers will inform the frontend about |
| Scripts that evaluate in the Worker's VM and the Worker VM can pause |
| and send the pausing CallFrames to the frontend. This means that |
| WebInspector.Script and WebInspector.CallFrame will need to be made |
| target aware. This also means that each Target will have its own |
| set of debugger data, such as the list of scripts and pause data |
| like the pause reason / call frames. Previously all this data was |
| managed by DebuggerManager. |
| |
| With this change we split that data out of DebuggerManager to be |
| per-target DebuggerData. DebuggerManager keeps `activeCallFrame` |
| but the list of scripts and pause data have moved into `DebuggerData` |
| which is per-target, accessed through DebuggerManager's new |
| dataForTarget(target) method. |
| |
| Finally we make a few changes to the UserInterface to make Workers |
| and their scripts, appear grouped together. The Resources sidebar |
| previously had a single top level item for the Main Frame, which |
| has all its resources as its children (potentially grouped into |
| folders). With this change, each Worker gets its own top level |
| item as well, and the Worker's subresources (imported scripts) |
| become its children. |
| |
| We also now associate a single mainResource with Targets. In the |
| case of Workers, we assume and assert that this is a Script. If |
| this were to ever change we would need to adjust the assumptions. |
| |
| * UserInterface/Main.html: |
| * UserInterface/Test.html: |
| New files. |
| |
| * UserInterface/Base/Main.js: |
| * UserInterface/Test/Test.js: |
| Add WebInspector.assumingMainTarget to fill in all the places where |
| we assume the main target right now, but would need to handle non-main |
| targets as other agents are implemented in workers. For example profile |
| data that assumes the main target right now could be worker targets |
| when we implement ScriptProfiler / Heap agents. |
| |
| * UserInterface/Protocol/Connection.js: |
| (InspectorBackend.WorkerConnection): |
| * UserInterface/Protocol/Target.js: |
| (WebInspector.Target): |
| (WebInspector.Target.prototype.get DebuggerAgent): |
| (WebInspector.Target.prototype.get mainResource): |
| (WebInspector.Target.prototype.set mainResource): |
| (WebInspector.WorkerTarget.prototype.initialize): |
| (WebInspector.WorkerTarget): |
| Include DebuggerAgent in Targets. |
| Include a mainResource for Worker Targets. |
| |
| * UserInterface/Protocol/DebuggerObserver.js: |
| (WebInspector.DebuggerObserver.prototype.scriptParsed): |
| (WebInspector.DebuggerObserver.prototype.breakpointResolved): |
| (WebInspector.DebuggerObserver.prototype.paused): |
| (WebInspector.DebuggerObserver.prototype.resumed): |
| Pass the target on to managers when necessary. |
| |
| * UserInterface/Models/DebuggerData.js: Added. |
| (WebInspector.DebuggerData): |
| (WebInspector.DebuggerData.prototype.get target): |
| (WebInspector.DebuggerData.prototype.get callFrames): |
| (WebInspector.DebuggerData.prototype.get pauseReason): |
| (WebInspector.DebuggerData.prototype.get pauseData): |
| (WebInspector.DebuggerData.prototype.get scripts): |
| (WebInspector.DebuggerData.prototype.scriptForIdentifier): |
| (WebInspector.DebuggerData.prototype.scriptsForURL): |
| (WebInspector.DebuggerData.prototype.reset): |
| (WebInspector.DebuggerData.prototype.addScript): |
| (WebInspector.DebuggerData.prototype.pause): |
| (WebInspector.DebuggerData.prototype.unpause): |
| Extract per-target data from DebuggerManager. This includes the list |
| of scripts evaluated in a Target, and any pause data for this target |
| such as the pause reason and call frames. |
| |
| * UserInterface/Controllers/DebuggerManager.js: |
| (WebInspector.DebuggerManager.prototype.dataForTarget): |
| (WebInspector.DebuggerManager.prototype.get pauseReason): Deleted. |
| (WebInspector.DebuggerManager.prototype.get pauseData): Deleted. |
| (WebInspector.DebuggerManager.prototype.get callFrames): Deleted. |
| (WebInspector.DebuggerManager.prototype.reset): |
| New way to access per-target debugger data. |
| |
| (WebInspector.DebuggerManager.prototype.initializeTarget): |
| When a new Target is created, synchronize frontend state with the target. |
| Things like the list of breakpoints and global breakpoint states. |
| |
| (WebInspector.DebuggerManager.prototype.scriptForIdentifier): |
| (WebInspector.DebuggerManager.prototype.scriptsForURL): |
| Convenience accessors for scripts must now provide a Target. |
| |
| (WebInspector.DebuggerManager.prototype.get knownNonResourceScripts): |
| This is a convenience accessors for a list of all scripts across all targets |
| so this handles getting the list across all targets. |
| |
| (WebInspector.DebuggerManager.prototype.pause): |
| (WebInspector.DebuggerManager.prototype.resume): |
| (WebInspector.DebuggerManager.prototype.stepOver): |
| (WebInspector.DebuggerManager.prototype.stepInto): |
| (WebInspector.DebuggerManager.prototype.stepOut): |
| (WebInspector.DebuggerManager.prototype.continueToLocation): |
| Stepping commands affect the current target with the active call frame. |
| Eventually we will change Pause and Resume behavior to affect all targets. |
| |
| (WebInspector.DebuggerManager.prototype.addBreakpoint): |
| (WebInspector.DebuggerManager.prototype.breakpointResolved): |
| (WebInspector.DebuggerManager.prototype._setBreakpoint.didSetBreakpoint): |
| (WebInspector.DebuggerManager.prototype._setBreakpoint): |
| (WebInspector.DebuggerManager.prototype._removeBreakpoint): |
| Breakpoints should be set on all targets, but we need a way |
| to set them on a specific target, when initializing an |
| individual target when we want to inform that single target |
| of all of the breakpoints. |
| |
| (WebInspector.DebuggerManager.prototype._breakpointDisabledStateDidChange): |
| (WebInspector.DebuggerManager.prototype._updateBreakOnExceptionsState): |
| Changing global breakpoint state should inform all targets. |
| |
| (WebInspector.DebuggerManager.prototype.scriptDidParse): |
| Associate Scripts with a Target. Identify the main resource of a |
| Worker Target and set it as soon as we can. |
| |
| (WebInspector.DebuggerManager.prototype.debuggerDidPause): |
| (WebInspector.DebuggerManager.prototype.debuggerDidResume): |
| (WebInspector.DebuggerManager.prototype._sourceCodeLocationFromPayload): |
| (WebInspector.DebuggerManager.prototype._scopeChainFromPayload): |
| (WebInspector.DebuggerManager.prototype._scopeChainNodeFromPayload): |
| (WebInspector.DebuggerManager.prototype._mainResourceDidChange): |
| (WebInspector.DebuggerManager.prototype._didResumeInternal): |
| Pausing and resuming now happens per-target, so associate |
| created model objects (CallFrame, ScopeChain objects) and any |
| other necessary data with the target. |
| |
| * UserInterface/Models/Breakpoint.js: |
| (WebInspector.Breakpoint): |
| (WebInspector.Breakpoint.prototype.get target): |
| (WebInspector.Breakpoint.prototype.get info): |
| * UserInterface/Models/CallFrame.js: |
| (WebInspector.CallFrame): |
| (WebInspector.CallFrame.prototype.get target): |
| (WebInspector.CallFrame.fromDebuggerPayload): |
| (WebInspector.CallFrame.fromPayload): |
| * UserInterface/Models/ConsoleMessage.js: |
| (WebInspector.ConsoleMessage): |
| * UserInterface/Models/Script.js: |
| (WebInspector.Script): |
| (WebInspector.Script.prototype.get target): |
| (WebInspector.Script.prototype.isMainResource): |
| (WebInspector.Script.prototype.requestContentFromBackend): |
| (WebInspector.Script.prototype._resolveResource): |
| * UserInterface/Models/StackTrace.js: |
| (WebInspector.StackTrace.fromPayload): |
| (WebInspector.StackTrace.fromString): |
| * UserInterface/Models/ProbeManager.js: |
| (WebInspector.ProbeManager.prototype.didSampleProbe): |
| * UserInterface/Models/Probe.js: |
| (WebInspector.ProbeSample): |
| * UserInterface/Views/ConsoleMessageView.js: |
| (WebInspector.ConsoleMessageView.prototype._appendLocationLink): |
| (WebInspector.ConsoleMessageView.prototype._formatParameterAsString): |
| Associate model objects with a specific target where necessary. |
| |
| * UserInterface/Views/ObjectTreeBaseTreeElement.js: |
| (WebInspector.ObjectTreeBaseTreeElement.prototype._appendMenusItemsForObject): |
| * UserInterface/Controllers/RuntimeManager.js: |
| (WebInspector.RuntimeManager.prototype.evaluateInInspectedWindow): |
| * UserInterface/Protocol/RemoteObject.js: |
| (WebInspector.RemoteObject.prototype.findFunctionSourceCodeLocation): |
| Use target specific DebuggerAgent where necessary. |
| |
| * UserInterface/Controllers/JavaScriptRuntimeCompletionProvider.js: |
| * UserInterface/Controllers/TimelineManager.js: |
| (WebInspector.TimelineManager.prototype._callFramesFromPayload): |
| * UserInterface/Models/ScriptTimelineRecord.js: |
| (WebInspector.ScriptTimelineRecord.prototype._initializeProfileFromPayload.profileNodeFromPayload): |
| * UserInterface/Views/EventListenerSectionGroup.js: |
| (WebInspector.EventListenerSectionGroup.prototype._functionTextOrLink): |
| (WebInspector.EventListenerSectionGroup): |
| * UserInterface/Views/HeapSnapshotInstanceDataGridNode.js: |
| (WebInspector.HeapSnapshotInstanceDataGridNode.logHeapSnapshotNode.node.shortestGCRootPath.): |
| (WebInspector.HeapSnapshotInstanceDataGridNode.logHeapSnapshotNode): |
| (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._populateWindowPreview): |
| (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._populatePreview): |
| (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._mouseoverHandler.appendPathRow): |
| * UserInterface/Views/ProfileDataGridNode.js: |
| (WebInspector.ProfileDataGridNode.prototype.iconClassName): |
| (WebInspector.ProfileDataGridNode.prototype.filterableDataForColumn): |
| (WebInspector.ProfileDataGridNode.prototype._displayContent): |
| Use assumed main target and audit these when the Worker gets more Agents. |
| |
| * UserInterface/Controllers/FrameResourceManager.js: |
| (WebInspector.FrameResourceManager.prototype._initiatorSourceCodeLocationFromPayload): |
| This will always be the main target because only the main target |
| has access to the DOM. |
| |
| * UserInterface/Views/SourceCodeTextEditor.js: |
| (WebInspector.SourceCodeTextEditor.prototype.get target): |
| (WebInspector.SourceCodeTextEditor.prototype.customPerformSearch): |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorGutterContextMenu): |
| (WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedJavaScriptExpression.populate): |
| (WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedJavaScriptExpression): |
| (WebInspector.SourceCodeTextEditor.prototype._showPopoverForFunction.didGetDetails): |
| (WebInspector.SourceCodeTextEditor.prototype._showPopoverForFunction): |
| Update target specific actions to use the proper target's agents. |
| |
| * UserInterface/Views/TargetTreeElement.js: Added. |
| (WebInspector.TargetTreeElement): |
| (WebInspector.TargetTreeElement.prototype.get target): |
| (WebInspector.TargetTreeElement.prototype.onexpand): |
| (WebInspector.TargetTreeElement.prototype.oncollapse): |
| Add a new tree element for a Target. We currently assume that the |
| main resource for a Target will be a Script right now, as is the |
| case for Web Workers. This simply remembers its expanded or |
| collapsed state and has a better icon. |
| |
| * UserInterface/Views/ResourceIcons.css: |
| (body:matches(.mac-platform, .windows-platform) .script.worker-icon .icon): |
| (body:matches(.mac-platform, .windows-platform) .large .script.worker-icon .icon): |
| * UserInterface/Images/WorkerScript.png: Renamed from Source/WebInspectorUI/UserInterface/Images/WorkerDocument.png. |
| * UserInterface/Images/WorkerScript@2x.png: Renamed from Source/WebInspectorUI/UserInterface/Images/WorkerDocument@2x.png. |
| * UserInterface/Images/WorkerScriptLarge.png: Renamed from Source/WebInspectorUI/UserInterface/Images/WorkerDocumentLarge.png. |
| * UserInterface/Images/WorkerScriptLarge@2x.png: Renamed from Source/WebInspectorUI/UserInterface/Images/WorkerDocumentLarge@2x.png. |
| Improve icon for a Worker's main resource script. |
| |
| * UserInterface/Views/ResourceSidebarPanel.js: |
| (WebInspector.ResourceSidebarPanel): |
| (WebInspector.ResourceSidebarPanel.prototype._scriptWasAdded): |
| (WebInspector.ResourceSidebarPanel.prototype._scriptsCleared): |
| (WebInspector.ResourceSidebarPanel.prototype._addScriptForNonMainTarget): |
| (WebInspector.ResourceSidebarPanel.prototype._addTargetWithMainResource): |
| (WebInspector.ResourceSidebarPanel.prototype._targetRemoved): |
| * UserInterface/Views/SearchSidebarPanel.js: |
| (WebInspector.SearchSidebarPanel.prototype.performSearch.searchScripts): |
| (WebInspector.SearchSidebarPanel.prototype._searchTreeElementForScript): |
| * UserInterface/Views/OpenResourceDialog.js: |
| (WebInspector.OpenResourceDialog.prototype._populateResourceTreeOutline.createTreeElement): |
| (WebInspector.OpenResourceDialog.prototype._populateResourceTreeOutline): |
| (WebInspector.OpenResourceDialog.prototype.didDismissDialog): |
| (WebInspector.OpenResourceDialog.prototype.didPresentDialog): |
| (WebInspector.OpenResourceDialog.prototype._addResourcesForFrame): |
| (WebInspector.OpenResourceDialog.prototype._addScriptsForTarget): |
| (WebInspector.OpenResourceDialog.prototype._scriptAdded): |
| (WebInspector.OpenResourceDialog): |
| * UserInterface/Views/DebuggerSidebarPanel.js: |
| (WebInspector.DebuggerSidebarPanel.prototype._addTreeElementForSourceCodeToTreeOutline): |
| (WebInspector.DebuggerSidebarPanel.prototype._debuggerCallFramesDidChange): |
| (WebInspector.DebuggerSidebarPanel.prototype._debuggerActiveCallFrameDidChange): |
| (WebInspector.DebuggerSidebarPanel.prototype._updatePauseReasonSection): |
| Include scripts from non-main targets in sidebars. |
| |
| 2016-11-01 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Creating a new pseudo-selector in the Styles sidebar doesn't work on first attempt |
| https://bugs.webkit.org/show_bug.cgi?id=164092 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Views/CSSStyleDeclarationSection.css: |
| (.style-declaration-section:not(.invalid-selector).rule-disabled > .header > .icon): |
| (.style-declaration-section.invalid-selector > .header > .icon): |
| (.style-declaration-section.invalid-selector > .header > .selector,): |
| (.style-declaration-section.rule-disabled > .header > .icon): Deleted. |
| |
| * UserInterface/Views/CSSStyleDeclarationSection.js: |
| (WebInspector.CSSStyleDeclarationSection): |
| (WebInspector.CSSStyleDeclarationSection.prototype.refresh): |
| (WebInspector.CSSStyleDeclarationSection.prototype._handleIconElementClicked): |
| (WebInspector.CSSStyleDeclarationSection.prototype._updateSelectorIcon): Added. |
| Re-add logic removed by https://webkit.org/b/159734 for handling invalid selectors. Instead |
| of just refreshing the section whenever the represented CSSRule changes selectors, we only |
| need to refresh if the selector no longer applies to the current element. |
| |
| (WebInspector.CSSStyleDeclarationSection.prototype._handleMouseMove): Added. |
| Fix another issue discovered while adding the invalid selector warnings, where the title |
| attribute of each individual selector was no longer visible. To fix this, whenever the user |
| moves their mouse over the selector input, the position is compared to each selector to find |
| the first one that matches, whose title is then applied to the input element. |
| |
| 2016-11-01 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Improve debugger highlight in some exception cases |
| https://bugs.webkit.org/show_bug.cgi?id=164300 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/SourceCodeTextEditor.js: |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorExecutionHighlightRange): |
| When walking up AST nodes and reach a throw statement, use that. |
| |
| 2016-11-01 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Cleanup stale code in NetworkSidebarPanel |
| https://bugs.webkit.org/show_bug.cgi?id=164295 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/NetworkSidebarPanel.js: |
| (WebInspector.NetworkSidebarPanel.prototype.closed): Deleted. |
| This doesn't appear to be needed since NetworkSidebarPanel never |
| registered any event listeners. |
| |
| 2016-11-01 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| REGRESSION (r191419): Web Inspector: Autocomplete is broken |
| https://bugs.webkit.org/show_bug.cgi?id=150493 |
| |
| Reviewed by Timothy Hatcher. |
| |
| Fixed CodeMirror.undo() logic rolled out by r191539 <https://webkit.org/b/150537> |
| |
| Added calls to CodeMirror.changeGeneration(true) which tells the history stack to "close" |
| the current event, preventing it from being consolidated with new changes. If the user |
| typed fast enough, non-completion changes (like adding ":" in CSS) would get merged with |
| completion changes, causing calls to CodeMirror.undo() to undo those changes as well. To |
| prevent this, a boolean variable is set to true whenever a completion "activity" is in |
| progress, defined by a sequence of completion related events. When this "activity" first |
| starts, call CodeMirror.changeGeneration(true) to freeze the current history. |
| |
| See original bug for more information <https://webkit.org/b/147720>. |
| |
| * UserInterface/Controllers/CodeMirrorCompletionController.js: |
| (WebInspector.CodeMirrorCompletionController): |
| (WebInspector.CodeMirrorCompletionController.prototype.updateCompletions): |
| (WebInspector.CodeMirrorCompletionController.prototype.isCompletionChange): |
| (WebInspector.CodeMirrorCompletionController.prototype.hideCompletions): |
| (WebInspector.CodeMirrorCompletionController.prototype.close): |
| (WebInspector.CodeMirrorCompletionController.prototype.completionSuggestionsSelectedCompletion): |
| (WebInspector.CodeMirrorCompletionController.prototype._applyCompletionHint.update): |
| (WebInspector.CodeMirrorCompletionController.prototype._applyCompletionHint): |
| (WebInspector.CodeMirrorCompletionController.prototype._commitCompletionHint.update): |
| (WebInspector.CodeMirrorCompletionController.prototype._commitCompletionHint): |
| (WebInspector.CodeMirrorCompletionController.prototype._removeCompletionHint.update): |
| (WebInspector.CodeMirrorCompletionController.prototype._removeCompletionHint): |
| (WebInspector.CodeMirrorCompletionController.prototype._completeAtCurrentPosition): |
| (WebInspector.CodeMirrorCompletionController.prototype._handleBeforeChange): |
| (WebInspector.CodeMirrorCompletionController.prototype._createCompletionHintMarker): Deleted. |
| (WebInspector.CodeMirrorCompletionController.prototype._removeLastChangeFromHistory): Deleted. |
| (WebInspector.CodeMirrorCompletionController.prototype._removeCompletionHint.clearMarker): Deleted. |
| |
| 2016-11-01 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Replace sublists inside DOM-related model objects with WI.Collection |
| https://bugs.webkit.org/show_bug.cgi?id=164098 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Models/DOMTree.js: |
| * UserInterface/Models/Frame.js: |
| Add support for WebInspector.Collection. |
| |
| * UserInterface/Models/Script.js: |
| (WebInspector.Script): |
| * UserInterface/Views/DebuggerSidebarPanel.js: |
| (WebInspector.DebuggerSidebarPanel.prototype._addResourcesRecursivelyForFrame): |
| * UserInterface/Views/FrameTreeElement.js: |
| (WebInspector.FrameTreeElement): |
| (WebInspector.FrameTreeElement.prototype.onpopulate): |
| * UserInterface/Views/OpenResourceDialog.js: |
| (WebInspector.OpenResourceDialog.prototype._addResourcesForFrame): |
| Use new functions defined by changing to WebInspector.Collection. |
| |
| 2016-11-01 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Fix double remove of ResourceCollection if type changes |
| https://bugs.webkit.org/show_bug.cgi?id=164268 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Models/ResourceCollection.js: |
| (WebInspector.ResourceCollection.prototype._resourceTypeDidChange): |
| Change logic so that a non-typed collection will not try to remove a resource that has |
| changed types from the sub-collection of its old type, since the sub-collection itself will |
| handle the removal inside its own event listener for the type change. |
| |
| 2016-11-01 Ryosuke Niwa <rniwa@webkit.org> |
| |
| Web Inspector: Add the support for custom elements |
| https://bugs.webkit.org/show_bug.cgi?id=164266 |
| <rdar://problem/29038883> |
| |
| Reviewed by Joseph Pecoraro. |
| |
| Show the custom element state in DOM node's details pane: |
| - "Element" for all builtin elements. |
| - "Element (Custom)" for any upgraded custom elements. |
| - "Element (Waiting to be upgraded)" for any element waiting to be upgraded. |
| - "Element (Failed to upgrade)" for any custom element that failed during construction or an upgrade. |
| |
| And add "Jump to Definition" to the context menu of an node to find the custom element's definition. |
| |
| * Localizations/en.lproj/localizedStrings.js: Added localized strings. |
| * UserInterface/Controllers/DOMTreeManager.js: |
| (WebInspector.DOMTreeManager.prototype._customElementStateChanged): Added. Update the state and fire |
| WebInspector.DOMTreeManager.Event.CustomElementStateChanged to update the node's details pane. |
| * UserInterface/Models/DOMNode.js: |
| (WebInspector.DOMNode): Set the custom element state or default to "builtin". Use null when the node |
| is not an element. |
| (WebInspector.DOMNode.prototype.isCustomElement): Added. Returns true if this is a successfully |
| constructed or upgraded custom element. |
| (WebInspector.DOMNode.prototype.customElementState): Added. |
| (WebInspector.DOMNode.CustomElementState): Added. |
| * UserInterface/Protocol/DOMObserver.js: |
| (WebInspector.DOMObserver.prototype.customElementStateChanged): Added. |
| * UserInterface/Protocol/RemoteObject.js: |
| (WebInspector.RemoteObject.prototype.getProperty): Added. Retrieves the property of a given name from |
| the remote backend. |
| * UserInterface/Views/DOMNodeDetailsSidebarPanel.js: |
| (WebInspector.DOMNodeDetailsSidebarPanel): Call _customElementStateChanged when the custom element |
| state changes by listening to WebInspector.DOMTreeManager.Event.CustomElementStateChanged. |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype.layout): |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshIdentity): Extracted from layout. |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._customElementStateChanged): Added. |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._nodeTypeDisplayName): Include the custom element |
| state when it's not a builtin element (_customElementState returns null in that case). |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._customElementState): Get the localized string for |
| each custom element state. |
| * UserInterface/Views/DOMTreeElement.js: |
| (WebInspector.DOMTreeElement.prototype._populateNodeContextMenu): Add "Jump to Definition" item in the |
| context menu of an element when it's a successfully constructed or upgraded custom element. |
| |
| 2016-10-31 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Shadow DOM scoped styles are missing |
| https://bugs.webkit.org/show_bug.cgi?id=164247 |
| <rdar://problem/29035061> |
| |
| Reviewed by Antti Koivisto. |
| |
| * UserInterface/Models/DOMNodeStyles.js: |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedInlineStyles): |
| Fix incorrect WrapperPromise usage. |
| |
| 2016-10-31 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Arrows for Styles scope bar item are misaligned |
| https://bugs.webkit.org/show_bug.cgi?id=164159 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Views/ScopeRadioButtonNavigationItem.css: |
| (.scope-radio-button-navigation-item > .scope-radio-button-item-select:focus): |
| (.scope-radio-button-navigation-item > .arrows): |
| |
| 2016-10-31 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Entering ":n" in Open Resource Dialog, where n > number of lines, should jump to the last line |
| https://bugs.webkit.org/show_bug.cgi?id=160840 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Views/TextEditor.js: |
| (WebInspector.TextEditor.prototype.revealPosition): |
| Since it is possible for the given position to be outside the bounds of the CodeMirror |
| instance, wait to get the line handler for the highlight animation until we have constrained |
| the position value. |
| |
| 2016-10-28 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Preferences for Text Editor behavior |
| https://bugs.webkit.org/show_bug.cgi?id=149120 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector.loaded): |
| (WebInspector.contentLoaded): |
| (WebInspector.contentLoaded.setTabSize): |
| (WebInspector.contentLoaded.setInvalidCharacterClassName): |
| (WebInspector.contentLoaded.setWhitespaceCharacterClassName): |
| (WebInspector._tryToRestorePendingTabs): |
| (WebInspector.indentString): |
| (WebInspector._updateNewTabButtonState): Deleted. |
| (WebInspector._newTabItemClicked): Deleted. |
| Removed calls to the New Tab tab bar item on the Tab Bar instance. |
| Added listener to the indentUnit setting to change the tab-size value on <body>. |
| Created helper function to generate the indentString value from settings. |
| |
| * UserInterface/Base/Test.js: |
| (WebInspector.indentString): |
| Assume indent string is " " for tests. |
| |
| * UserInterface/Base/Setting.js: |
| Added global WebInspector.settings dictionary for holding settings with UI editors. |
| |
| * UserInterface/Main.html: |
| Added GeneralTabBarItem, PinnedTabBarItem, and SettingsTabContentView. |
| |
| * UserInterface/Models/CSSStyleDeclaration.js: |
| (WebInspector.CSSStyleDeclaration.prototype.generateCSSRuleString): |
| * UserInterface/Views/CSSStyleDeclarationTextEditor.js: |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._formattedContentFromEditor): |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent.update): |
| * UserInterface/Views/VisualStylePropertyEditor.js: |
| (WebInspector.VisualStylePropertyEditor.generateFormattedTextForNewProperty): |
| * UserInterface/Views/SourceCodeTextEditor.js: |
| (WebInspector.SourceCodeTextEditor.prototype._showPopoverForFunction.didGetDetails): |
| Now uses WebInspector.indentUnit for indentation values |
| |
| * UserInterface/Views/CodeMirrorAdditions.js: |
| Added "showWhitespaceCharacter" option to CodeMirror. When enabled, it adds an overlay to |
| the editor that will use pseudo-elements to display whitespace characters (unicode 00B7). |
| |
| * UserInterface/Views/CodeMirrorOverrides.css: |
| (.CodeMirror .cm-tab): |
| (.show-whitespace-characters .CodeMirror .cm-tab::before): |
| (.show-whitespace-characters .CodeMirror .cm-whitespace::before): |
| (.show-whitespace-characters .CodeMirror .cm-whitespace-1::before): |
| (.show-whitespace-characters .CodeMirror .cm-whitespace-2::before): |
| (.show-whitespace-characters .CodeMirror .cm-whitespace-3::before): |
| (.show-whitespace-characters .CodeMirror .cm-whitespace-4::before): |
| (.show-whitespace-characters .CodeMirror .cm-whitespace-5::before): |
| (.show-whitespace-characters .CodeMirror .cm-whitespace-6::before): |
| (.show-whitespace-characters .CodeMirror .cm-whitespace-7::before): |
| (.show-whitespace-characters .CodeMirror .cm-whitespace-8::before): |
| (.show-whitespace-characters .CodeMirror .cm-whitespace-9::before): |
| (.show-whitespace-characters .CodeMirror .cm-whitespace-10::before): |
| (.show-whitespace-characters .CodeMirror .cm-whitespace-11::before): |
| (.show-whitespace-characters .CodeMirror .cm-whitespace-12::before): |
| (.show-whitespace-characters .CodeMirror .cm-whitespace-13::before): |
| (.show-whitespace-characters .CodeMirror .cm-whitespace-14::before): |
| (.show-whitespace-characters .CodeMirror .cm-whitespace-15::before): |
| (.show-whitespace-characters .CodeMirror .cm-whitespace-16::before): |
| (.show-invalid-characters .CodeMirror .cm-invalidchar): |
| (.CodeMirror .cm-invalidchar): Deleted. |
| Use unicode character 00B7 (middle dot) to display a space. Also uses a grey border for |
| visualizing tab characters. |
| |
| * UserInterface/Views/ApplicationCacheFrameContentView.js: |
| * UserInterface/Views/CSSStyleDeclarationTextEditor.js: |
| * UserInterface/Views/ClusterContentView.js: |
| * UserInterface/Views/DOMTreeContentView.js: |
| * UserInterface/Views/DatabaseContentView.js: |
| * UserInterface/Views/IndexedDatabaseObjectStoreContentView.js: |
| * UserInterface/Views/NetworkGridContentView.js: |
| * UserInterface/Views/ResourceContentView.js: |
| * UserInterface/Views/ScriptContentView.js: |
| * UserInterface/Views/TabContentView.js: |
| * UserInterface/Views/TimelineRecordingContentView.js: |
| Add calls to super.shown(), super.hidden(), and super.closed(). |
| |
| * UserInterface/Views/ConsoleTabContentView.js: |
| * UserInterface/Views/DebuggerTabContentView.js: |
| * UserInterface/Views/ElementsTabContentView.js: |
| * UserInterface/Views/NetworkTabContentView.js: |
| * UserInterface/Views/NewTabContentView.js: |
| * UserInterface/Views/ResourcesTabContentView.js: |
| * UserInterface/Views/SearchTabContentView.js: |
| * UserInterface/Views/StorageTabContentView.js: |
| * UserInterface/Views/TimelineTabContentView.js: |
| Now uses WebInspector.GeneralTabBarItem. |
| |
| * UserInterface/Views/GeneralTabBarItem.js: Added. |
| (WebInspector.GeneralTabBarItem): |
| (WebInspector.GeneralTabBarItem.prototype.set title): |
| (WebInspector.GeneralTabBarItem.prototype._handleContextMenuEvent): |
| Split from TabBarItem.js to make pinned tab bar items more distinct. |
| |
| * UserInterface/Views/Main.css: |
| (body): |
| Removed tab-size. |
| |
| * UserInterface/Views/PinnedTabBarItem.js: Added. |
| (WebInspector.PinnedTabBarItem): |
| Split from TabBarItem.js to make pinned tab bar items more distinct. |
| |
| * UserInterface/Views/SettingsTabContentView.css: Added. |
| (.content-view.settings): |
| (.content-view.settings > .header): |
| (.content-view.settings > .setting-container): |
| (.content-view.settings > .setting-container > .setting-name): |
| (.content-view.settings > .setting-container > .setting-value-controller): |
| (.content-view.settings > .setting-container > .setting-value-controller input[type="number"]): |
| |
| * UserInterface/Views/SettingsTabContentView.js: |
| (WebInspector.SettingsTabContentView): |
| (WebInspector.SettingsTabContentView.tabInfo): |
| (WebInspector.SettingsTabContentView.isEphemeral): |
| (WebInspector.SettingsTabContentView.shouldSaveTab): |
| (WebInspector.SettingsTabContentView.prototype.initialLayout): |
| (WebInspector.SettingsTabContentView.isTabAllowed): Deleted. |
| (WebInspector.SettingsTabContentView.prototype.get type): Deleted. |
| Added logic to display an appropriate editor for each item in WebInspector.settings. |
| |
| * UserInterface/Views/SourceCodeTextEditor.js: |
| (WebInspector.SourceCodeTextEditor.prototype.close): |
| Add call to super.close(). |
| |
| * UserInterface/Views/TabBar.css: |
| (.tab-bar:not(.animating) > .item:not(.selected, .disabled):hover): |
| (.tab-bar > .item:not(.pinned) > .flex-space:last-child): |
| (.tab-bar > .item.pinned > .icon): |
| (.tab-bar:not(.animating) > .item:not(.selected, .disabled):hover > .icon): |
| (.tab-bar:not(.animating) > .item:not(.selected, .disabled):hover,): Deleted. |
| (.tab-bar > .item > .flex-space:last-child): Deleted. |
| (.tab-bar > .item.new-tab-button > .icon): Deleted. |
| (.tab-bar:not(.animating) > .item:not(.selected, .disabled):hover > .icon,): Deleted. |
| Removed rules specifically targeting `.new-tab-button`. |
| |
| * UserInterface/Views/TabBar.js: |
| (WebInspector.TabBar): |
| (WebInspector.TabBar.prototype.get newTabTabBarItem): |
| (WebInspector.TabBar.prototype.updateNewTabTabBarItemState): |
| (WebInspector.TabBar.prototype.insertTabBarItem): |
| (WebInspector.TabBar.prototype.removeTabBarItem.animateTabs): |
| (WebInspector.TabBar.prototype.removeTabBarItem): |
| (WebInspector.TabBar.prototype.selectPreviousTab): |
| (WebInspector.TabBar.prototype.selectNextTab): |
| (WebInspector.TabBar.prototype.set selectedTabBarItem): |
| (WebInspector.TabBar.prototype.hasNormalTab): |
| (WebInspector.TabBar.prototype.layout): |
| (WebInspector.TabBar.prototype._hasMoreThanOneNormalTab): |
| (WebInspector.TabBar.prototype._handleMouseDown): |
| (WebInspector.TabBar.prototype._handleMouseMoved): |
| (WebInspector.TabBar.prototype._handleMouseLeave): |
| (WebInspector.TabBar.prototype._handleNewTabClick): |
| (WebInspector.TabBar.prototype._handleNewTabMouseEnter): |
| (WebInspector.TabBar.prototype.get newTabItem): Deleted. |
| (WebInspector.TabBar.prototype.set newTabItem): Deleted. |
| Replaced the newTabItem setter by adding a saved pinned tab bar item (instead of relying |
| upon a different object to give it the pinned tab bar item) that changes modes depending on |
| whether a new tab is able to be created. |
| |
| * UserInterface/Views/TabBarItem.js: |
| (WebInspector.TabBarItem): |
| (WebInspector.TabBarItem.prototype.get element): |
| (WebInspector.TabBarItem.prototype.get representedObject): |
| (WebInspector.TabBarItem.prototype.set representedObject): |
| (WebInspector.TabBarItem.prototype.get parentTabBar): |
| (WebInspector.TabBarItem.prototype.set parentTabBar): |
| (WebInspector.TabBarItem.prototype.get image): |
| (WebInspector.TabBarItem.prototype.set image): |
| (WebInspector.TabBarItem.prototype.get title): |
| (WebInspector.TabBarItem.prototype.set title): |
| (WebInspector.TabBarItem.prototype.get pinned): Deleted. |
| (WebInspector.TabBarItem.prototype._handleContextMenuEvent): Deleted. |
| Split into GeneralTabBarItem and PinnedTabBarItem to simplify the logic of the DOM and allow |
| for easier checking of whether a tab bar item is pinned or not. |
| |
| * UserInterface/Views/TabBrowser.js: |
| (WebInspector.TabBrowser): |
| (WebInspector.TabBrowser.prototype.addTabForContentView): |
| (WebInspector.TabBrowser.prototype.closeTabForContentView): |
| (WebInspector.TabBrowser.prototype._tabBarItemSelected): |
| (WebInspector.TabBrowser.prototype._tabBarItemRemoved): |
| Replaced references to newTabItem with a set number (since each TabBar has a specific number |
| of pinned tabs). |
| |
| * UserInterface/Views/TextEditor.js: |
| (WebInspector.TextEditor): |
| (WebInspector.TextEditor.prototype.close):. |
| Remove settings update event listeners to allow garbage collection. |
| |
| (WebInspector.TextEditor.prototype._startWorkerPrettyPrint): |
| (WebInspector.TextEditor.prototype._startCodeMirrorPrettyPrint): |
| Now uses the settings values in WebInspector.setting for settings on the CodeMirror |
| instance. Also updates the CodeMirror instance if any setting changes. |
| |
| 2016-10-28 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Include parameter strings for native CustomElementRegistry methods in the console |
| https://bugs.webkit.org/show_bug.cgi?id=164147 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Models/NativeFunctionParameters.js: |
| |
| 2016-10-28 Matt Baker <mattbaker@apple.com> |
| |
| Unreviewed, worker document images added |
| |
| * UserInterface/Images/WorkerDocument.png: Added. |
| * UserInterface/Images/WorkerDocument@2x.png: Added. |
| * UserInterface/Images/WorkerDocumentLarge.png: Added. |
| * UserInterface/Images/WorkerDocumentLarge@2x.png: Added. |
| |
| 2016-10-27 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Create general model object Collection class |
| https://bugs.webkit.org/show_bug.cgi?id=163995 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Models/Collection.js: Added. |
| (WebInspector.Collection): |
| (WebInspector.Collection.prototype.get items): |
| (WebInspector.Collection.prototype.get typeVerifier): |
| (WebInspector.Collection.prototype.add): |
| (WebInspector.Collection.prototype.remove): |
| (WebInspector.Collection.prototype.clear): |
| (WebInspector.Collection.prototype.toArray): |
| (WebInspector.Collection.prototype.toJSON): |
| (WebInspector.Collection.prototype.itemAdded): |
| (WebInspector.Collection.prototype.itemRemoved): |
| (WebInspector.Collection.prototype.itemsCleared): |
| Class that holds multiple model objects. It can be limited to a specific type by supplying |
| a "typeVerifier", which is a function that accepts a single argument (the model object) and |
| returns true/false depending on if that argument matches the "type" of the collection. |
| |
| * UserInterface/Main.html: |
| * UserInterface/Test.html: |
| * UserInterface/Models/Frame.js: |
| * UserInterface/Views/CookieStorageContentView.js: |
| * UserInterface/Views/DebuggerSidebarPanel.js: |
| * UserInterface/Views/FrameTreeElement.js: |
| * UserInterface/Views/OpenResourceDialog.js: |
| Add support for WebInspector.Collection. |
| |
| * UserInterface/Models/ResourceCollection.js: |
| (WebInspector.ResourceCollection): |
| (WebInspector.ResourceCollection.verifierForType): |
| (WebInspector.ResourceCollection.prototype.resourceCollectionForType): |
| (WebInspector.ResourceCollection.prototype.clear): |
| (WebInspector.ResourceCollection.prototype.itemAdded): |
| (WebInspector.ResourceCollection.prototype.itemRemoved): |
| (WebInspector.ResourceCollection.prototype.itemsCleared): |
| (WebInspector.ResourceCollection.prototype._associateWithResource): |
| (WebInspector.ResourceCollection.prototype._disassociateWithResource): |
| (WebInspector.ResourceCollection.prototype._resourceURLDidChange): |
| (WebInspector.ResourceCollection.prototype._resourceTypeDidChange): |
| (WebInspector.ResourceCollection.prototype.get resources): Deleted. |
| (WebInspector.ResourceCollection.prototype.resourcesWithType): Deleted. |
| (WebInspector.ResourceCollection.prototype.addResource): Deleted. |
| (WebInspector.ResourceCollection.prototype.removeResource): Deleted. |
| (WebInspector.ResourceCollection.prototype.removeAllResources): Deleted. |
| Now a subclass of WebInspector.Collection. Retrieving WebInspector.Resource objects by type |
| and URL is still supported, but requesting by type now returns another instance of |
| WebInspector.ResourceCollection that is configured to only accept the requested type. |
| |
| 2016-10-27 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Include ConsoleAgent in Workers - real console.log support |
| https://bugs.webkit.org/show_bug.cgi?id=163844 |
| <rdar://problem/28903328> |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Protocol/Target.js: |
| (WebInspector.Target.prototype.get ConsoleAgent): |
| (WebInspector.Target.prototype._initializeNonMainTarget): |
| * UserInterface/Protocol/Connection.js: |
| (InspectorBackend.WorkerConnection): |
| Add ConsoleAgent. |
| |
| * UserInterface/Controllers/LogManager.js: |
| (WebInspector.LogManager.prototype.messageWasAdded): |
| (WebInspector.LogManager.prototype.requestClearMessages): |
| Handle ConsoleAgent calls with multiple targets. |
| |
| * UserInterface/Protocol/ConsoleObserver.js: |
| (WebInspector.ConsoleObserver.prototype.messageAdded): |
| Dispatch with the target in case we create Model objects. |
| |
| * UserInterface/Controllers/WorkerManager.js: |
| (WebInspector.WorkerManager.prototype.workerCreated): |
| The frontend must now call "initialized" on Workers after |
| sending our setup messages (enable, set breakpoints, etc). |
| |
| * UserInterface/Protocol/RemoteObject.js: |
| (WebInspector.RemoteObject.prototype.get target): |
| Expose an accessor for tests. |
| |
| * UserInterface/Protocol/LoggingProtocolTracer.js: |
| (WebInspector.LoggingProtocolTracer.prototype._processEntry): |
| Actually output the Exception, useful when debugging failures in tests. |
| |
| 2016-10-27 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Include RuntimeAgent in Workers - evaluate in Worker context |
| https://bugs.webkit.org/show_bug.cgi?id=163835 |
| <rdar://problem/28901465> |
| |
| Reviewed by Brian Burg. |
| |
| This introduces the idea that the frontend may communication with multiple |
| backend "Targets" which each have their own set of Agents. |
| |
| - WebInspector.Target |
| - has its own list of Agents |
| - has a InspectorBackend.Connection to communicate with the backend |
| |
| - WebInspector.mainTarget |
| - always exists and represents the thing we are debugging (Page or JSContext) |
| |
| - WebInspector.targets / WebInspector.targetManager |
| - management of all Targets |
| - create new Targets for Workers |
| |
| This also slowly introduces the concept that Model objects may be tied to |
| a specific Target: |
| |
| - WebInspector.RemoteObject |
| - in order to evaluate JS and interact with this object we must know the target (Page or Worker) |
| - when fetching PropertyDescriptors and other RemoteObjects we must continue to pass on the target |
| |
| Finally this makes the QuickConsole list Worker execution contexts in |
| the context picker so that users can choose a Worker context and |
| evaluate JavaScript in that context using the console. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Main.html: |
| * UserInterface/Base/Main.js: |
| (WebInspector.loaded): |
| * UserInterface/Test.html: |
| * UserInterface/Test/Test.js: |
| (WebInspector.loaded): |
| New files, strings, and managers. |
| New global WebInspector.mainTarget. |
| New convenience WebInspector.targets. |
| |
| * UserInterface/Protocol/Target.js: Added. |
| (WebInspector.Target): |
| (WebInspector.Target.prototype.get RuntimeAgent): |
| (WebInspector.Target.prototype.get name): |
| (WebInspector.Target.prototype.get type): |
| (WebInspector.Target.prototype.get connection): |
| (WebInspector.Target.prototype.get executionContext): |
| (WebInspector.Target.prototype.get displayName): |
| (WebInspector.Target.prototype._intializeMainTarget): |
| (WebInspector.Target.prototype._initializeNonMainTarget): |
| Target has some basic properties. |
| |
| * UserInterface/Controllers/TargetManager.js: |
| (WebInspector.TargetManager): |
| (WebInspector.TargetManager.prototype.get targets): |
| (WebInspector.TargetManager.prototype.addTarget): |
| (WebInspector.TargetManager.prototype.removeTarget): |
| Holds the list of Targets and events when created / removed. |
| Each target with a RuntimeAgent has an ExecutionContext. |
| |
| * UserInterface/Controllers/WorkerManager.js: |
| (WebInspector.WorkerManager): |
| (WebInspector.WorkerManager.prototype.workerCreated): |
| (WebInspector.WorkerManager.prototype.workerTerminated): |
| (WebInspector.WorkerManager.prototype.dispatchMessageFromWorker): |
| Create / remove / dispatch on a Worker Target. |
| |
| * UserInterface/Protocol/InspectorBackend.js: |
| (InspectorBackendClass): |
| (InspectorBackendClass.prototype.registerCommand): |
| (InspectorBackendClass.prototype.dispatch): |
| (InspectorBackendClass.prototype.runAfterPendingDispatches): |
| (InspectorBackendClass.prototype._agentForDomain): |
| Keep the original implementations and just dispatch to the main connection. |
| |
| (InspectorBackend.Agent): |
| (InspectorBackend.Agent.prototype.get connection): |
| (InspectorBackend.Agent.prototype.set connection): |
| (InspectorBackend.Agent.prototype.get dispatcher): |
| We will share Agent implementations but just give new "copies" a different |
| connection and dispatcher. |
| |
| (InspectorBackend.Command): |
| (InspectorBackend.Command.create): |
| (InspectorBackend.Command.prototype.invoke): |
| (InspectorBackend.Command.prototype.supports): |
| We continue to have a single Command instance on the Agent. However instead |
| of using the hardcoded Agent on the Instance when evaluated as a function |
| it uses the `this` object which should be an agent. This way: |
| |
| target1.RuntimeAgent.evaluate |
| - `this` is target1 and we use the connection for that target |
| target2.RuntimeAgent.evaluate |
| - `this` is target2 and we use the connection for that target |
| |
| Unfortunately this breaks `RuntimeAgent.evaluate.invoke`. Currently this |
| is solved by providing an extra parameter. In the case where we need to |
| invoke on a particular agent we must provide the agent. |
| |
| target.RuntimeAgent.evaluate.invoke({options}, target.RuntimeAgent) |
| |
| This is unfortunate but only needed in a handful of places right now. |
| |
| (InspectorBackendClass.prototype._sendCommandToBackendWithCallback): Deleted. |
| (InspectorBackendClass.prototype._sendCommandToBackendExpectingPromise): Deleted. |
| (InspectorBackendClass.prototype._sendMessageToBackend): Deleted. |
| (InspectorBackendClass.prototype._dispatchResponse): Deleted. |
| (InspectorBackendClass.prototype._dispatchResponseToCallback): Deleted. |
| (InspectorBackendClass.prototype._dispatchResponseToPromise): Deleted. |
| (InspectorBackendClass.prototype._dispatchEvent): Deleted. |
| (InspectorBackendClass.prototype._flushPendingScripts): Deleted. |
| (InspectorBackend.Agent.prototype.get currentDispatchState): Deleted. |
| (InspectorBackend.Command.prototype.deliverFailure): Deleted. |
| * UserInterface/Protocol/Connection.js: Added. |
| (InspectorBackend.Connection): |
| (InspectorBackend.Connection.prototype.get target): |
| (InspectorBackend.Connection.prototype.set target): |
| (InspectorBackend.Connection.prototype.dispatch): |
| (InspectorBackend.Connection.prototype.runAfterPendingDispatches): |
| (InspectorBackend.Connection.prototype.sendMessageToBackend): |
| (InspectorBackend.Connection.prototype._dispatchResponse): |
| (InspectorBackend.Connection.prototype._dispatchResponseToCallback): |
| (InspectorBackend.Connection.prototype._dispatchResponseToPromise): |
| (InspectorBackend.Connection.prototype._dispatchEvent): |
| (InspectorBackend.Connection.prototype._sendCommandToBackendWithCallback): |
| (InspectorBackend.Connection.prototype._sendCommandToBackendExpectingPromise): |
| (InspectorBackend.Connection.prototype._sendMessageToBackend): |
| (InspectorBackend.Connection.prototype._flushPendingScripts): |
| This extracts the Connection details into its own class. |
| Although we make it appear as though a Target has a list of |
| Agents, we actually have the Connection hold the list of Agents. |
| Instead of cloning the entire Agent we just create a new object |
| extended from the original Agent instance. This allows us to keep |
| the same interface but just change the connection / dispatcher |
| properties within the Agent. |
| |
| (InspectorBackend.MainConnection): |
| (InspectorBackend.MainConnection.prototype.sendMessageToBackend): |
| (InspectorBackend.WorkerConnection): |
| (InspectorBackend.WorkerConnection.sendMessageToBackend): |
| Two different kinds of connections. One for the Main connection |
| and one for Workers. Currently the list of agents we expose |
| on a Worker Target/Connection is hardcoded. |
| |
| * UserInterface/Models/ExecutionContext.js: |
| (WebInspector.ExecutionContext): |
| (WebInspector.ExecutionContext.prototype.get target): |
| We may now have ExecutionContexts that mean a Page, Frames, and Workers. |
| To do this we include the (target, executionContextId) tuple in this object. |
| With this we have everything we need to evaluate JavaScript. |
| |
| * UserInterface/Controllers/RuntimeManager.js: |
| (WebInspector.RuntimeManager): |
| (WebInspector.RuntimeManager.prototype.get activeExecutionContext): |
| (WebInspector.RuntimeManager.prototype.set activeExecutionContext): |
| (WebInspector.RuntimeManager.prototype.get defaultExecutionContextIdentifier): Deleted. |
| (WebInspector.RuntimeManager.prototype.set defaultExecutionContextIdentifier): Deleted. |
| Update from contextId to a full ExecutionContext object. |
| |
| (WebInspector.RuntimeManager.prototype.evaluateInInspectedWindow.evalCallback): |
| (WebInspector.RuntimeManager.prototype.evaluateInInspectedWindow): |
| (WebInspector.RuntimeManager.prototype.saveResult): |
| (WebInspector.RuntimeManager.prototype.getPropertiesForRemoteObject): |
| (WebInspector.RuntimeManager.prototype._frameExecutionContextsCleared): |
| * UserInterface/Controllers/FrameResourceManager.js: |
| (WebInspector.FrameResourceManager.prototype.executionContextCreated): |
| * UserInterface/Controllers/JavaScriptLogViewController.js: |
| (WebInspector.JavaScriptLogViewController.prototype.consolePromptShouldCommitText): |
| * UserInterface/Controllers/JavaScriptRuntimeCompletionProvider.js: |
| Anywhere that wants to use the "activeExecutionContext" must use the |
| specific RuntimeAgent tied to that ExecutionContext's Target. |
| |
| * UserInterface/Models/PropertyDescriptor.js: |
| (WebInspector.PropertyDescriptor.fromPayload): |
| * UserInterface/Protocol/RemoteObject.js: |
| (WebInspector.RemoteObject): |
| (WebInspector.RemoteObject.createFakeRemoteObject): |
| (WebInspector.RemoteObject.fromPrimitiveValue): |
| (WebInspector.RemoteObject.fromPayload): |
| (WebInspector.RemoteObject.prototype.getDisplayablePropertyDescriptors): |
| (WebInspector.RemoteObject.prototype.deprecatedGetDisplayableProperties): |
| (WebInspector.RemoteObject.prototype.setPropertyValue): |
| (WebInspector.RemoteObject.prototype.getCollectionEntries): |
| (WebInspector.RemoteObject.prototype.releaseWeakCollectionEntries): |
| (WebInspector.RemoteObject.prototype.callFunction): |
| (WebInspector.RemoteObject.prototype.callFunctionJSON): |
| (WebInspector.RemoteObject.prototype.getOwnPropertyDescriptor.wrappedCallback): |
| (WebInspector.RemoteObject.prototype.getOwnPropertyDescriptor): |
| (WebInspector.RemoteObject.prototype.release): |
| (WebInspector.RemoteObject.prototype._getPropertyDescriptors): |
| (WebInspector.RemoteObject.prototype._getPropertyDescriptorsResolver): |
| (WebInspector.RemoteObject.prototype._deprecatedGetProperties): |
| RemoteObject and related Model Objects now must be tied to a specific |
| Target, because we need to know which Target it belongs to in order to |
| interact with it further. |
| |
| * UserInterface/Views/QuickConsole.js: |
| (WebInspector.QuickConsole): |
| (WebInspector.QuickConsole.prototype.get selectedExecutionContext): |
| (WebInspector.QuickConsole.prototype.set selectedExecutionContext): |
| (WebInspector.QuickConsole.prototype._executionContextPathComponentsToDisplay): |
| (WebInspector.QuickConsole.prototype._rebuildExecutionContextPathComponents): |
| (WebInspector.QuickConsole.prototype._framePageExecutionContextsChanged): |
| (WebInspector.QuickConsole.prototype._frameExecutionContextsCleared): |
| (WebInspector.QuickConsole.prototype._createExecutionContextPathComponent): |
| (WebInspector.QuickConsole.prototype._createExecutionContextPathComponentFromFrame): |
| (WebInspector.QuickConsole.prototype._compareExecutionContextPathComponents): |
| (WebInspector.QuickConsole.prototype._insertOtherExecutionContextPathComponent): |
| (WebInspector.QuickConsole.prototype._removeOtherExecutionContextPathComponent): |
| (WebInspector.QuickConsole.prototype._insertExecutionContextPathComponentForFrame): |
| (WebInspector.QuickConsole.prototype._removeExecutionContextPathComponentForFrame): |
| (WebInspector.QuickConsole.prototype._targetAdded): |
| (WebInspector.QuickConsole.prototype._targetRemoved): |
| (WebInspector.QuickConsole.prototype._pathComponentSelected): |
| (WebInspector.QuickConsole.prototype.get selectedExecutionContextIdentifier): Deleted. |
| (WebInspector.QuickConsole.prototype.set selectedExecutionContextIdentifier): Deleted. |
| (WebInspector.QuickConsole.prototype._defaultExecutionContextChanged): Deleted. |
| Update the code from executionContextId to ExecutionContext objects. |
| Update the picker with ExecutionContextPathComponent for Workers (new Targets). |
| Generalize and cleanup the code to make it easier to follow. |
| |
| 2016-10-27 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Introduce Page WorkerAgent and Worker InspectorController |
| https://bugs.webkit.org/show_bug.cgi?id=163817 |
| <rdar://problem/28899063> |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Main.html: |
| * UserInterface/Test.html: |
| New files. |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector.loaded): |
| * UserInterface/Test/Test.js: |
| (WebInspector.loaded): |
| New Observers and Managers. |
| |
| * UserInterface/Protocol/WorkerObserver.js: Added. |
| (WebInspector.WorkerObserver.prototype.workerCreated): |
| (WebInspector.WorkerObserver.prototype.workerTerminated): |
| (WebInspector.WorkerObserver.prototype.dispatchMessageFromWorker): |
| (WebInspector.WorkerObserver): |
| * UserInterface/Controllers/WorkerManager.js: Added. |
| (WebInspector.WorkerManager): |
| (WebInspector.WorkerManager.prototype.workerCreated): |
| (WebInspector.WorkerManager.prototype.workerTerminated): |
| (WebInspector.WorkerManager.prototype.dispatchMessageFromWorker): |
| To be implemented with the first Worker agent implementation |
| when there is actually something we can do with the Worker. |
| |
| 2016-10-25 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Cmd-+ doesn't "zoom in" to increase text size in the Web Inspector |
| https://bugs.webkit.org/show_bug.cgi?id=163961 |
| <rdar://problem/28895308> |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Base/Main.js: |
| (WebInspector.contentLoaded): |
| Add a duplicate set of keyboard shortcuts for the Shift variants. |
| |
| 2016-10-25 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Remove dead code in FrameTreeElement |
| https://bugs.webkit.org/show_bug.cgi?id=163914 |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/FrameTreeElement.js: |
| |
| 2016-10-24 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Scope chain shouldn't show empty Closure sections |
| https://bugs.webkit.org/show_bug.cgi?id=152348 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Controllers/DebuggerManager.js: |
| (WebInspector.DebuggerManager.prototype._scopeChainNodeFromPayload): |
| * UserInterface/Models/ScopeChainNode.js: |
| (WebInspector.ScopeChainNode): |
| (WebInspector.ScopeChainNode.prototype.get empty): |
| Added support for new empty property. |
| |
| * UserInterface/Views/ScopeChainDetailsSidebarPanel.js: |
| (WebInspector.ScopeChainDetailsSidebarPanel.prototype._generateCallFramesSection): |
| Only create and display a DetailsSection if the scope is not empty (via empty). |
| |
| 2016-10-24 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Improve Quick Open sorting algorithm |
| https://bugs.webkit.org/show_bug.cgi?id=163705 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UserInterface/Models/ResourceQueryResult.js: |
| (WebInspector.ResourceQueryResult.prototype._calculateRank.getMultiplier): |
| (WebInspector.ResourceQueryResult.prototype._calculateRank): |
| Added logic to multiply the ranking increment/decrement based on whether the current match |
| is part of a sequence, whether that sequence began with a special character, and the length |
| of the current sequence. |
| |
| 2016-10-19 Dean Jackson <dino@apple.com> |
| |
| Support CSS Shapes Level 1 without a prefix |
| https://bugs.webkit.org/show_bug.cgi?id=163709 |
| <rdar://problem/28859369> |
| |
| Reviewed by Myles Maxfield. |
| |
| Replace -webkit-shape-outside with shape-outside. |
| |
| * UserInterface/Models/CSSKeywordCompletions.js: |
| |
| 2016-10-19 Aaron Chu <aaron_chu@apple.com> |
| |
| Web Inspector: AXI: expose computed tree node and heading level |
| https://bugs.webkit.org/show_bug.cgi?id=130825 |
| <rdar://problem/16442349> |
| |
| Reviewed by Joseph Pecoraro. |
| |
| Updating the Web Accessibility Inspector to display Heading Level and Hierarchical Level. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Models/DOMNode.js: |
| (WebInspector.DOMNode.prototype.accessibilityProperties.accessibilityPropertiesCallback): |
| (WebInspector.DOMNode.prototype.accessibilityProperties): |
| * UserInterface/Views/DOMNodeDetailsSidebarPanel.js: |
| (WebInspector.DOMNodeDetailsSidebarPanel): |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshAccessibility.accessibilityPropertiesCallback): |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshAccessibility): |
| |
| 2016-10-18 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Styles Sidebar highlights "translate" but not "translateX" |
| https://bugs.webkit.org/show_bug.cgi?id=163613 |
| <rdar://problem/28829610> |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Models/CSSCompletions.js: |
| (WebInspector.CSSCompletions.requestCSSCompletions): |
| The hash table objects we pass to CodeMirror expects keys to be lowercased. |
| |
| 2016-10-18 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: CSS Autocompletion sometimes adds extra unexpected characters |
| https://bugs.webkit.org/show_bug.cgi?id=163612 |
| <rdar://problem/28829557> |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Controllers/CodeMirrorCompletionController.js: |
| (WebInspector.CodeMirrorCompletionController.prototype._generateCSSCompletions): |
| Better handle completions in cases where we are in the middle of a property |
| to avoid orphaned characters, or at the end of a function name to avoid creating |
| duplicate parenthesis. |
| |
| 2016-10-18 Joseph Pecoraro <pecoraro@apple.com> |
| |
| REGRESSION(r201171): Web Inspector: Timeline Recording playhead should always start immediately, not wait until first event |
| https://bugs.webkit.org/show_bug.cgi?id=163583 |
| <rdar://problem/28815882> |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Views/TimelineRecordingContentView.js: |
| (WebInspector.TimelineRecordingContentView.prototype._startUpdatingCurrentTime): |
| Revert logic change introduced by r201171 with no explanation. |
| Whenever we get a start time we should use it, regardless of |
| of what the current time is, precisely because the backend is |
| informing us of the start time to use. |
| |
| 2016-10-17 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Add toggles for debugger pauses at console.assert failures |
| https://bugs.webkit.org/show_bug.cgi?id=139542 |
| <rdar://problem/19281600> |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Controllers/DebuggerManager.js: |
| (WebInspector.DebuggerManager.prototype.get assertionsBreakpoint): |
| (WebInspector.DebuggerManager.prototype.isBreakpointRemovable): |
| (WebInspector.DebuggerManager.prototype._breakpointDisabledStateDidChange): |
| New breakpoint and toggling behavior. |
| |
| * Localizations/en.lproj/localizedStrings.js: |
| * UserInterface/Views/DebuggerSidebarPanel.js: |
| (WebInspector.DebuggerSidebarPanel): |
| (WebInspector.DebuggerSidebarPanel.prototype._breakpointTreeOutlineDeleteTreeElement): |
| (WebInspector.DebuggerSidebarPanel.prototype._compareTopLevelTreeElements.isSpecialBreakpoint): |
| (WebInspector.DebuggerSidebarPanel.prototype._compareTopLevelTreeElements): |
| New breakpoint tree element behavior. |
| |
| (WebInspector.DebuggerSidebarPanel.prototype.saveStateToCookie): |
| (WebInspector.DebuggerSidebarPanel.prototype.restoreStateFromCookie): |
| Sidebar restoration if it was selected. |
| |
| * UserInterface/Images/Assertion.svg: Added. |
| * UserInterface/Images/gtk/Assertion.svg: Added. |
| * UserInterface/Views/BreakpointTreeElement.css: |
| (.breakpoint-assertion-icon .icon): |
| New sidebar icon for the global breakpoint. |
| |
| 2016-10-15 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Cleanup parts of DebuggerManager |
| https://bugs.webkit.org/show_bug.cgi?id=163400 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Controllers/DebuggerManager.js: |
| (WebInspector.DebuggerManager.restoreBreakpointsSoon): |
| |
| (WebInspector.DebuggerManager.prototype.get paused): |
| (WebInspector.DebuggerManager.prototype.get pauseReason): |
| (WebInspector.DebuggerManager.prototype.get pauseData): |
| (WebInspector.DebuggerManager.prototype.get callFrames): |
| (WebInspector.DebuggerManager.prototype.get activeCallFrame): |
| (WebInspector.DebuggerManager.prototype.set activeCallFrame): |
| Put simple accessors at the top. |
| |
| (WebInspector.DebuggerManager.prototype.get allExceptionsBreakpoint): |
| (WebInspector.DebuggerManager.prototype.get allUncaughtExceptionsBreakpoint): |
| (WebInspector.DebuggerManager.prototype.get breakpoints): |
| (WebInspector.DebuggerManager.prototype.breakpointForIdentifier): |
| (WebInspector.DebuggerManager.prototype.breakpointsForSourceCode): |
| (WebInspector.DebuggerManager.prototype.isBreakpointRemovable): |
| (WebInspector.DebuggerManager.prototype.isBreakpointEditable): |
| (WebInspector.DebuggerManager.prototype.get breakpointsDisabledTemporarily): |
| Group public breakpoint state and access methods. |
| |
| (WebInspector.DebuggerManager.prototype.scriptForIdentifier): |
| (WebInspector.DebuggerManager.prototype.scriptsForURL): |
| (WebInspector.DebuggerManager.prototype.get searchableScripts): |
| (WebInspector.DebuggerManager.prototype.get knownNonResourceScripts): |
| Group public script access methods. |
| |
| (WebInspector.DebuggerManager.prototype.pause): |
| (WebInspector.DebuggerManager.prototype.resume): |
| (WebInspector.DebuggerManager.prototype.stepOver): |
| (WebInspector.DebuggerManager.prototype.stepInto): |
| (WebInspector.DebuggerManager.prototype.stepOut): |
| (WebInspector.DebuggerManager.prototype.continueToLocation): |
| (WebInspector.DebuggerManager.prototype.addBreakpoint): |
| (WebInspector.DebuggerManager.prototype.removeBreakpoint): |
| Group and modernize public methods that perform actions. |
| |
| (WebInspector.DebuggerManager.prototype.nextBreakpointActionIdentifier): |
| Misc. methods. |
| |
| (WebInspector.DebuggerManager.prototype.breakpointResolved): |
| (WebInspector.DebuggerManager.prototype.reset): |
| (WebInspector.DebuggerManager.prototype.playBreakpointActionSound): |
| (WebInspector.DebuggerManager.prototype.scriptDidParse): |
| (WebInspector.DebuggerManager.prototype._setBreakpoint.didSetBreakpoint): |
| (WebInspector.DebuggerManager.prototype._setBreakpoint): |
| (WebInspector.DebuggerManager.prototype._breakpointEditablePropertyDidChange): |
| (WebInspector.DebuggerManager.prototype._updateBreakOnExceptionsState): |
| (WebInspector.DebuggerManager.prototype._associateBreakpointsWithSourceCode): |
| Minor cleanup in protected and private methods. |
| |
| * UserInterface/Models/BreakpointAction.js: |
| (WebInspector.BreakpointAction): |
| Getting the next identifier is an action so it should be a function call. |
| |
| * UserInterface/Views/SourceCodeTextEditor.js: |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointAdded): |
| Remove unused parameter. |
| |
| 2016-10-14 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Dragging to delete a Breakpoint should never trigger a ContentView change |
| https://bugs.webkit.org/show_bug.cgi?id=163403 |
| <rdar://problem/28762930> |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Views/BreakpointTreeElement.js: |
| (WebInspector.BreakpointTreeElement.prototype.ondelete): |
| Signal when a breakpoint tree element will be going away because it was |
| deleted via the keyboard operation within the TreeOutline. This is a dirty |
| way to do the signal but we remove BreakpointTreeElements asynchronously |
| when the Breakpoint actually gets removed from the backend. |
| |
| * UserInterface/Views/DebuggerSidebarPanel.js: |
| (WebInspector.DebuggerSidebarPanel.prototype._removeDebuggerTreeElement): |
| Deselect a BreakpointTreeElement if it was deleted in a way other then |
| the delete keyboard shortcut. This ensures another TreeElement selection |
| doesn't force ContentView changes. |
| |
| 2016-10-14 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Improve debugger highlight when inside of getter/setter calls |
| https://bugs.webkit.org/show_bug.cgi?id=163428 |
| <rdar://problem/28769061> |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Views/SourceCodeTextEditor.js: |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorExecutionHighlightRange): |
| When in the middle of a member expression at a '.' or '[' get the best member |
| expression range. |
| |
| * UserInterface/Views/TextEditor.js: |
| (WebInspector.TextEditor.prototype._updateExecutionRangeHighlight): |
| Include the character at the current position. This is useful since AST Nodes |
| don't give us token info but we would like to know if we are at particular tokens. |
| |
| 2016-10-14 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Unused Breakpoint getter/setter for "id" - should be "identifier" |
| https://bugs.webkit.org/show_bug.cgi?id=163395 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Models/Breakpoint.js: |
| (WebInspector.Breakpoint.prototype.get identifier): Renamed. |
| (WebInspector.Breakpoint.prototype.set identifier): Renamed. |
| The only user is DebuggerManager which sets and gets. Previously |
| it was unexpectedly setting a direct property on the Breakpoint |
| instead of using these methods to set the member variable. |
| |
| 2016-10-14 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Remove uses of delete in SourceCodeTextEditor |
| https://bugs.webkit.org/show_bug.cgi?id=163379 |
| |
| Reviewed by Timothy Hatcher. |
| |
| Remove uses of delete and better group member variables. |
| One of the deletes was deleting an incorrect property. |
| |
| * UserInterface/Views/SourceCodeTextEditor.js: |
| (WebInspector.SourceCodeTextEditor): |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointAdded): |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointRemoved): |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointMoved): |
| (WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedMarkedExpression): |
| (WebInspector.SourceCodeTextEditor.prototype._dismissEditingController): |
| (WebInspector.SourceCodeTextEditor.prototype.editingControllerDidFinishEditing): |
| |
| 2016-10-14 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Uncaught Exception: TypeError: this.positionToOffset is not a function - seen hovering expressions with Type Profiler enabled |
| https://bugs.webkit.org/show_bug.cgi?id=163405 |
| <rdar://problem/28763953> |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/SourceCodeTextEditor.js: |
| Use correct method name, the old one must have gone away. |
| |
| 2016-10-12 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Improve support for logging Proxy objects in console |
| https://bugs.webkit.org/show_bug.cgi?id=163323 |
| <rdar://problem/28432553> |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Views/ConsoleMessageView.js: |
| (WebInspector.ConsoleMessageView.prototype._formatParameter): |
| Treat a Proxy like any other object. |
| |
| 2016-10-12 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Emit DebugHooks uniformly with pause locations instead of having separate pause locations and op_debug emits |
| https://bugs.webkit.org/show_bug.cgi?id=162809 |
| |
| Reviewed by Geoffrey Garen. |
| |
| * UserInterface/Views/SourceCodeTextEditor.js: |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorExecutionHighlightRange): |
| When pausing on the variable assignment inside for..of and for..in don't just |
| highlight "var foo" but include the right hand side "var foo in ..." or |
| "var foo of ...". |
| |
| 2016-10-12 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Whole program sometimes highlighted instead of just first statement |
| https://bugs.webkit.org/show_bug.cgi?id=163300 |
| <rdar://problem/28723162> |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Views/SourceCodeTextEditor.js: |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorExecutionHighlightRange): |
| Avoid highlighting the entire program by skipping a Program type Node. |
| |
| * UserInterface/Views/TextEditor.js: |
| (WebInspector.TextEditor.prototype.setExecutionLineAndColumn): |
| Avoid unnecessary work before content has loaded. |
| |
| (WebInspector.TextEditor.prototype.currentPositionToOriginalOffset): |
| Avoid unnecessary indirection to get the CodeMirror editor. |
| |
| 2016-10-11 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Remove line highlight on primary execution line while stepping because it is distracting |
| https://bugs.webkit.org/show_bug.cgi?id=163294 |
| <rdar://problem/28721176> |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Views/TextEditor.js: |
| (WebInspector.TextEditor.prototype._updateExecutionLine): |
| When setting the primary execution line, remove default line highlights. |
| |
| 2016-10-10 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Revealed line not highlighted in TextEditor while debugger paused |
| https://bugs.webkit.org/show_bug.cgi?id=163197 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UserInterface/Views/TextEditor.js: |
| (WebInspector.TextEditor.prototype.revealPosition.revealAndHighlightLine): |
| Avoid highlighting the execution line while debugging, but allow |
| other lines to be highlighted. |
| |
| 2016-10-06 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Inspector exception in `parseTextForRule()` when pasting into CSS rule selector |
| https://bugs.webkit.org/show_bug.cgi?id=162792 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/CSSStyleDeclarationSection.js: |
| (WebInspector.CSSStyleDeclarationSection.prototype._handleSelectorPaste.parseTextForRule): |
| Changed regular expression for matching CSS rules to allow newlines in pasted text. |
| |
| 2016-10-02 Devin Rousso <dcrousso+webkit@gmail.com> |
| |
| Web Inspector: Clicking twice on the color swatch square should hide the color picker |
| https://bugs.webkit.org/show_bug.cgi?id=162759 |
| |
| Reviewed by Matt Baker. |
| |
| * UserInterface/Views/InlineSwatch.js: |
| (WebInspector.InlineSwatch): |
| (WebInspector.InlineSwatch.prototype.didDismissPopover): |
| (WebInspector.InlineSwatch.prototype._swatchElementClicked): |
| Remove the "click" event listener when a popover is presented to prevent improper |
| interaction. Add the event listener back when the popover is dismissed. |
| |
| 2016-10-02 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Exception thrown when hovering network waterfall graphs during reload |
| https://bugs.webkit.org/show_bug.cgi?id=162850 |
| <rdar://problem/28579653> |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/ResourceTimelineDataGridNode.js: |
| (WebInspector.ResourceTimelineDataGridNode.prototype._mouseoverRecordBar): |
| Check that the node's data grid reference is valid before use. |
| (WebInspector.ResourceTimelineDataGridNode): |
| |
| 2016-10-01 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Selection does not show up over execution highlight ranges |
| https://bugs.webkit.org/show_bug.cgi?id=162844 |
| <rdar://problem/28579121> |
| |
| Reviewed by Matt Baker. |
| |
| * Scripts/update-codemirror-resources.rb: |
| * UserInterface/External/CodeMirror/mark-selection.js: Added. |
| * UserInterface/Main.html: |
| New add-on that makes selection a text marker so it can be styled |
| at the same level as other text markers. |
| |
| * UserInterface/Views/TextEditor.css: |
| (.text-editor > .CodeMirror .execution-range-highlight:not(.CodeMirror-selectedtext)): |
| Don't use execution-range-highlight styles if the text is selected. |
| |
| * UserInterface/Views/TextEditor.js: |
| (WebInspector.TextEditor): |
| Enable the text selection as text markers addon. |
| |
| 2016-09-30 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Make debugger stepping highlights work in inline <script>s |
| https://bugs.webkit.org/show_bug.cgi?id=162753 |
| <rdar://problem/28551332> |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Models/TextRange.js: |
| (WebInspector.TextRange.prototype.contains): |
| Check if a given line/column falls within this range. |
| |
| * UserInterface/Views/SourceCodeTextEditor.js: |
| (WebInspector.SourceCodeTextEditor.prototype._getAssociatedScript): |
| If we are in a Document resource find the associated script at a given position. |
| |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorExecutionHighlightRange): |
| When comparing offsets to SyntaxTree offsets, the SyntaxTree's offset of 0 is the |
| first character of the Script, which differs from the current SourceCode's offset. |
| Adjust the offset by the Script's startOffset. |
| |
| * UserInterface/Views/TextEditor.js: |
| (WebInspector.TextEditor.prototype.currentPositionToOriginalPosition): |
| (WebInspector.TextEditor.prototype._updateExecutionRangeHighlight): |
| Pass both the original offset and original position to the delegate. |
| |
| 2016-09-30 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Stepping through `a(); b(); c();` it is unclear where we are and what is about to execute |
| https://bugs.webkit.org/show_bug.cgi?id=161658 |
| <rdar://problem/28181254> |
| |
| Reviewed by Geoffrey Garen. |
| |
| * UserInterface/Models/Script.js: |
| (WebInspector.Script.prototype.requestScriptSyntaxTree): |
| Fix first calls to requestScriptSyntaxTree. They were getting an uncaught |
| exception because the content argument was missing. |
| |
| * UserInterface/Models/ScriptSyntaxTree.js: |
| (WebInspector.ScriptSyntaxTree.prototype.containersOfOffset): |
| Find all AST nodes that contain a particular offset. |
| |
| * UserInterface/Views/SourceCodeTextEditor.js: |
| (WebInspector.SourceCodeTextEditor): |
| (WebInspector.SourceCodeTextEditor.prototype.close): |
| (WebInspector.SourceCodeTextEditor.prototype._activeCallFrameDidChange): |
| (WebInspector.SourceCodeTextEditor.prototype._activeCallFrameSourceCodeLocationChanged): |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorExecutionHighlightRange): |
| Provide a good highlight range for a given offset. This is normally the start |
| of a statement/expression, inside a statement/expression, or the closing brace |
| of a function (leaving a function). Provide good ranges for each of these. |
| |
| * UserInterface/Views/TextEditor.js: |
| (WebInspector.TextEditor): |
| (WebInspector.TextEditor.set string.update): |
| (WebInspector.TextEditor.prototype.set string): |
| (WebInspector.TextEditor.prototype.setExecutionLineAndColumn): |
| (WebInspector.TextEditor.prototype.revealPosition.revealAndHighlightLine): |
| (WebInspector.TextEditor.prototype.revealPosition): |
| (WebInspector.TextEditor.prototype.currentPositionToOriginalOffset): |
| (WebInspector.TextEditor.prototype._updateAfterFormatting): |
| (WebInspector.TextEditor.prototype.set executionLineNumber): Deleted. |
| (WebInspector.TextEditor.prototype.set executionColumnNumber): Deleted. |
| (WebInspector.TextEditor.prototype._updateExecutionLine.update): Deleted. |
| Always set the execution line and column together, to simplify how we update highlights. |
| |
| (WebInspector.TextEditor.prototype._clearMultilineExecutionLineHighlights): |
| (WebInspector.TextEditor.prototype._updateExecutionLine): |
| When updating the main highlight clear any multi-line highlights. |
| |
| (WebInspector.TextEditor.prototype._updateExecutionRangeHighlight): |
| Ask the delegate for a specific highlight range. If provided use that range, |
| otherwise just highlight the end of the line. Once we know the range, if it |
| is multiple lines, give the extra lines the full line highlight as well. |
| Also make adjustments, such as not highlighting trailing whitespace. |
| |
| * UserInterface/Views/TextEditor.css: |
| (.text-editor > .CodeMirror .execution-line.primary .CodeMirror-linenumber::after): |
| (.text-editor > .CodeMirror .execution-line): |
| (.text-editor > .CodeMirror .execution-line .CodeMirror-matchingbracket): |
| (.text-editor > .CodeMirror .execution-range-highlight): |
| Styles for execution lines and execution range highlights. |
| |
| 2016-09-29 Aaron Chu <aaron_chu@apple.com> |
| |
| Web Inspector: AXI: linkified refs to #document and #text are not usually navigable nodes; consider delinkifying them |
| https://bugs.webkit.org/show_bug.cgi?id=130600 |
| <rdar://problem/16391333> |
| |
| Reviewed by Brian Burg. |
| |
| Removing link style for non-navigable nodes by first |
| checking nodeType of the node. |
| |
| * UserInterface/Base/DOMUtilities.js: |
| (WebInspector.linkifyNodeReference): |
| |
| 2016-09-27 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Refreshing while in Timelines-tab causes negative timestamps in Network-tab |
| https://bugs.webkit.org/show_bug.cgi?id=160051 |
| <rdar://problem/27480122> |
| |
| Reviewed by Brian Burg. |
| |
| * UserInterface/Views/NetworkGridContentView.js: |
| (WebInspector.NetworkGridContentView.prototype.get startTime): |
| (WebInspector.NetworkGridContentView.prototype.get zeroTime): |
| Use the cached start time for graph data source properties instead of |
| relying on the ruler, which requires a layout in order to be updated |
| for the first time. |
| |
| 2016-09-27 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Unfocusing / Focusing inspector window should not change ContentView |
| https://bugs.webkit.org/show_bug.cgi?id=162572 |
| <rdar://problem/28479562> |
| |
| Reviewed by Brian Burg. |
| |
| Improve NavigationSidebarPanel logic for coordinating selection between trees. |
| When tree selection changes, the most recent selection should be restored |
| the next time the tree is focused. |
| |
| The sidebar should also handle focusing a tree for the first time, in |
| which no previous selection exists, and focusing a tree that has had its |
| previous selection filtered out (hidden). |
| |
| * UserInterface/Views/NavigationSidebarPanel.js: |
| (WebInspector.NavigationSidebarPanel.prototype._contentTreeOutlineDidFocus): |
| (WebInspector.NavigationSidebarPanel.prototype._contentTreeOutlineTreeSelectionDidChange): |
| Restoring the last deselected element, instead of the last selected element |
| only works when the selection is moving from one tree to another. When |
| the elements belong to the same tree the newly selected element won't |
| be saved until the next selection change. If the window loses and regains |
| the focus before then, the tree will restore the previous selection, |
| effectively reverting the last selection change. |
| |
| 2016-09-27 Tomas Popela <tpopela@redhat.com> |
| |
| [GTK] Mac defaults are used for key shortcuts on Linux |
| https://bugs.webkit.org/show_bug.cgi?id=162564 |
| |
| Don't set Mac's default keymap as a fallthrough for CodeMirror when we |
| are not on Mac. |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| * UserInterface/Test.html: Include Platform.js for the |
| WebInspector.Platform definition. |
| * UserInterface/Views/CodeMirrorAdditions.js: |
| |
| 2016-09-26 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Box Model values not updated when DOM node styles change |
| https://bugs.webkit.org/show_bug.cgi?id=162525 |
| |
| Reviewed by Brian Burg. |
| |
| The Box Model section should refresh itself when the selected node's |
| computed style changes. This is necessary since the Styles sidebar |
| doesn't always refresh its sections on node changes. |
| |
| * UserInterface/Views/BoxModelDetailsSectionRow.js: |
| (WebInspector.BoxModelDetailsSectionRow.prototype.set nodeStyles): |
| Refresh metrics whenever the computed style changes. |
| |
| (WebInspector.BoxModelDetailsSectionRow.prototype._getBox): |
| (WebInspector.BoxModelDetailsSectionRow.prototype._getComponentSuffix): |
| (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics.createValueElement): |
| (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics.createBoxPartElement): |
| (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics.createContentAreaElement): |
| (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics): |
| Drive-by cleanup to make this large function easier to read. |
| (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics.createElement): Deleted. |
| Renamed createValueElement. |
| (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics.createContentAreaWidthElement): Deleted. |
| (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics.createContentAreaHeightElement): Deleted. |
| Combined these into a single function taking a property name (width or height). |
| |
| == Rolled over to ChangeLog-2016-09-26 == |