1 2015-07-07 Timothy Hatcher <timothy@apple.com>
3 Web Inspector: Timeline record bars are not white when the row is selected from the sidebar
4 https://bugs.webkit.org/show_bug.cgi?id=146694
6 Reviewed by Joseph Pecoraro.
8 * UserInterface/Views/TimelineRecordBar.css:
9 (:matches(:focus, .force-focus) .selected .timeline-record-bar > .segment):
10 (:matches(:focus, .force-focus) .selected .timeline-record-bar > .segment.inactive):
11 (:matches(:focus, .force-focus) .selected .timeline-record-bar.has-inactive-segment > .segment:not(.inactive)):
13 2015-07-07 Devin Rousso <drousso@apple.com>
15 Web Inspector: Unnecessary space added after -webkit- prefixed property values
16 https://bugs.webkit.org/show_bug.cgi?id=146671
18 Reviewed by Joseph Pecoraro.
20 * Tools/PrettyPrinting/css-rule-tests/do-not-add-whitespace-before-prefixed-property-value-expected.css: Added.
21 * Tools/PrettyPrinting/css-rule-tests/do-not-add-whitespace-before-prefixed-property-value.css: Added.
22 * Tools/PrettyPrinting/index.html:
23 * UserInterface/Views/CodeMirrorFormatters.js: Now only adds a space if both the current and previous
24 tokens are a property, value, or atom.
26 2015-07-07 Matt Baker <mattbaker@apple.com>
28 Web Inspector: Pad ruler selection area by 1px in the Rendering Frames timeline overview
29 https://bugs.webkit.org/show_bug.cgi?id=146248
31 Reviewed by Timothy Hatcher.
33 * UserInterface/Views/RenderingFrameTimelineOverview.js:
34 Enable duration pixel alignment.
36 * UserInterface/Views/TimelineOverview.css:
37 (.timeline-overview.frames > .timeline-ruler > .header > .divider):
38 (.timeline-overview.frames > .timeline-ruler > .selection-handle.right):
39 (.timeline-overview.frames > .timeline-ruler > .shaded-area.right):
40 Shift ruler elements 1 pixel to the right, so that selection boundaries and dividers are
41 positioned inside the gap between frame elements.
43 * UserInterface/Views/TimelineOverview.js:
44 (WebInspector.TimelineOverview):
45 (WebInspector.TimelineOverview.prototype.set secondsPerPixel):
46 (WebInspector.TimelineOverview.prototype.get pixelAlignDuration):
47 (WebInspector.TimelineOverview.prototype.set pixelAlignDuration):
48 (WebInspector.TimelineOverview.prototype._handleWheelEvent):
49 Added a property to force the overview graph to align duration units on the y-axis to pixel boundaries.
50 When enabled, frame elements are displayed in integer widths while zooming, preventing subpixel blurring
51 and maintaining a consistent 1 pixel gap between frames.
53 2015-07-07 Devin Rousso <drousso@apple.com>
55 Web Inspector: Tabbing in the styles sidebar doesn't highlight the next section of text
56 https://bugs.webkit.org/show_bug.cgi?id=146676
58 Reviewed by Timothy Hatcher.
60 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
61 (WebInspector.CSSStyleDeclarationTextEditor.prototype._highlightNextNameOrValue): Modified the logic to only search the
62 remaining text after the current cursor position.
63 (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleShiftTabKey): Now only searches for matches before the colon.
65 2015-07-07 Devin Rousso <drousso@apple.com>
67 Web Inspector: Option+Click not jumping to resource
68 https://bugs.webkit.org/show_bug.cgi?id=146498
70 Reviewed by Timothy Hatcher.
72 * UserInterface/Base/Main.js: Always show the tab which contains the represented object.
73 (WebInspector._domNodeWasInspected):
74 (WebInspector._frameWasAdded):
75 (WebInspector.showConsoleTab):
76 (WebInspector.showRepresentedObject): Removed forceShowTab parameter.
77 (WebInspector.showMainFrameDOMTree):
78 (WebInspector.showContentFlowDOMTree):
79 (WebInspector.showSourceCodeForFrame):
80 (WebInspector.showSourceCode):
81 (WebInspector.showSourceCodeLocation):
82 (WebInspector.showOriginalUnformattedSourceCodeLocation):
83 (WebInspector.showOriginalOrFormattedSourceCodeLocation):
84 (WebInspector.showOriginalOrFormattedSourceCodeTextRange):
85 (WebInspector.showResourceRequest):
86 * UserInterface/Controllers/CodeMirrorTokenTrackingController.js:
87 (WebInspector.CodeMirrorTokenTrackingController.prototype._mouseButtonWasReleasedOverEditor):
88 * UserInterface/Protocol/InspectorFrontendAPI.js:
89 (InspectorFrontendAPI.showMainResourceForFrame):
90 * UserInterface/Views/ComputedStyleDetailsPanel.js:
91 (WebInspector.ComputedStyleDetailsPanel.prototype._goToContentFlowArrowWasClicked):
92 (WebInspector.ComputedStyleDetailsPanel):
93 * UserInterface/Views/ObjectTreeBaseTreeElement.js:
94 (WebInspector.ObjectTreeBaseTreeElement.prototype._appendMenusItemsForObject):
95 (WebInspector.ObjectTreeBaseTreeElement):
97 2015-07-07 Devin Rousso <drousso@apple.com>
99 Web Inspector: Regression: CSS autocompletion suggestion applies on pressing delete
100 https://bugs.webkit.org/show_bug.cgi?id=146672
102 Reviewed by Timothy Hatcher.
104 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
105 (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleBeforeChange): Now returns if completions are showing.
107 2015-07-07 Nikita Vasilyev <nvasilyev@apple.com>
109 Web Inspector: Properly align checkboxes in the styles sidebar
110 https://bugs.webkit.org/show_bug.cgi?id=146673
112 Reviewed by Timothy Hatcher.
114 * UserInterface/Views/CSSStyleDeclarationTextEditor.css:
115 (.css-style-text-editor > .CodeMirror .CodeMirror-lines input[type=checkbox]):
117 2015-07-06 Matt Baker <mattbaker@apple.com>
119 Web Inspector: Rendering Frame bars appear misaligned and contain gaps when displaying small task segments
120 https://bugs.webkit.org/show_bug.cgi?id=146475
122 Reviewed by Timothy Hatcher.
124 Displaying all task segments within a frame in the Rendering Frames graph is impossible, as very short tasks
125 would result in a bar with a height of less than 1 pixel. Consecutive small tasks, each less than a visible
126 pixel, appear as gaps in the frame bar. This patch addresses these shortcomings by introducing a minimum
127 displayable frame height (3 pixels), and setting the height of every frame to a multiple of the minimum height.
129 * UserInterface/Base/Utilities.js:
131 Added Math.roundTo to simplify rounding to arbitrary intervals.
133 * UserInterface/Views/TimelineRecordFrame.css:
134 (.timeline-record-frame):
135 (.timeline-record-frame > .frame > .duration):
136 Enforce 3px min height for frames & segments. TimelineRenderingFrame's segment height calculator
137 creates segments that are always at least 3px, this is just a precaution.
139 * UserInterface/Views/TimelineRecordFrame.js:
140 (WebInspector.TimelineRecordFrame.prototype._calculateFrameDisplayData.updateDurationRemainder):
141 (WebInspector.TimelineRecordFrame.prototype._calculateFrameDisplayData.pushCurrentSegment):
142 (WebInspector.TimelineRecordFrame.prototype._calculateFrameDisplayData.invisibleSegments.forEach):
143 (WebInspector.TimelineRecordFrame.prototype._updateChildElements.createDurationElement): Deleted.
144 Added algorithm for calculating frame segment heights, rather than simply dividing each task's
145 duration by the frame duration. Results are cached so the segment heights aren't needlessly
146 recalculated on every scroll/zoom.
148 2015-07-06 Timothy Hatcher <timothy@apple.com>
150 Web Inspector: Force show Console tab when supportsSplitContentBrowser is false
151 https://bugs.webkit.org/show_bug.cgi?id=146661
153 Reviewed by Joseph Pecoraro.
155 * UserInterface/Base/Main.js:
156 (WebInspector.showConsoleTab):
158 2015-07-06 Devin Rousso <drousso@apple.com>
160 Web Inspector: Clearing the console does not remove the unread message icon
161 https://bugs.webkit.org/show_bug.cgi?id=146649
163 Reviewed by Timothy Hatcher.
165 * UserInterface/Views/LogContentView.js:
166 (WebInspector.LogContentView.prototype._clearLog): Removes the "unread" class from all scope bar items.
168 2015-07-02 Timothy Hatcher <timothy@apple.com>
170 Web Inspector: Add a dedicated Network tab that is always live
171 https://bugs.webkit.org/show_bug.cgi?id=146568
173 Reviewed by Joseph Pecoraro.
175 * Localizations/en.lproj/localizedStrings.js: Updated.
177 * UserInterface/Base/Main.js:
178 (WebInspector.loaded):
179 (WebInspector.isTabTypeAllowed):
180 (WebInspector._tabContentViewForType):
181 (WebInspector._updateNewTabButtonState):
182 Add NetworkTabContentView to the right places.
184 * UserInterface/Controllers/TimelineManager.js:
185 (WebInspector.TimelineManager):
186 (WebInspector.TimelineManager.prototype.get persistentNetworkTimeline):
187 (WebInspector.TimelineManager.prototype._mainResourceDidChange):
188 (WebInspector.TimelineManager.prototype._resourceWasAdded):
189 Add a persistent network timeline that always has all resources.
191 * UserInterface/Images/Network.svg: Added.
193 * UserInterface/Main.html: Added new files.
195 * UserInterface/Views/NavigationSidebarPanel.css:
196 (.sidebar > .panel.navigation > .content):
197 Drive-by fix. The bottom was off by one. This caused misalignment between sidebar and content view when
198 scrolled all the way to the bottom of the content view.
200 * UserInterface/Views/NetworkGridContentView.css: Added.
201 (.content-view.network-grid > .data-grid):
202 (.content-view.network-grid > .data-grid th):
203 (.content-view.network-grid > .data-grid td):
204 (.content-view.network-grid > .data-grid table.data):
205 Mostly copied from TimelineView.css and NetworkTimelineView.css.
207 * UserInterface/Views/NetworkGridContentView.js: Added.
208 (WebInspector.NetworkGridContentView):
209 (WebInspector.NetworkGridContentView.prototype.get navigationSidebarTreeOutline):
210 (WebInspector.NetworkGridContentView.prototype.get selectionPathComponents):
211 (WebInspector.NetworkGridContentView.prototype.get zeroTime):
212 (WebInspector.NetworkGridContentView.prototype.shown):
213 (WebInspector.NetworkGridContentView.prototype.hidden):
214 (WebInspector.NetworkGridContentView.prototype.closed):
215 (WebInspector.NetworkGridContentView.prototype.updateLayout):
216 (WebInspector.NetworkGridContentView.prototype.needsLayout):
217 (WebInspector.NetworkGridContentView.prototype.reset):
218 (WebInspector.NetworkGridContentView.prototype._processPendingRecords):
219 (WebInspector.NetworkGridContentView.prototype._networkTimelineReset):
220 (WebInspector.NetworkGridContentView.prototype._networkTimelineRecordAdded):
221 (WebInspector.NetworkGridContentView.prototype._treeElementPathComponentSelected):
222 (WebInspector.NetworkGridContentView.prototype._dataGridNodeSelected):
223 Mostly copied from NetworkTimelineView.
225 * UserInterface/Views/NetworkSidebarPanel.css: Added.
226 (.sidebar > .panel.navigation.network > :matches(.content, .empty-content-placeholder)):
227 (.sidebar > .panel.navigation.network > .navigation-bar):
228 (.sidebar > .panel.navigation.network > .title-bar):
229 (.sidebar > .panel.navigation.network.network-grid-content-view-showing > .content):
230 (.sidebar > .panel.navigation.network .item:hover:not(.selected) .status .close.status-button):
231 (.sidebar > .panel.navigation.network:not(.network-grid-content-view-showing) .status .go-to-arrow.status-button):
232 (.sidebar > .panel.navigation.network.network-grid-content-view-showing .status .close.status-button):
233 (.sidebar > .panel.navigation.network.network-grid-content-view-showing .navigation-sidebar-panel-content-tree-outline.network-grid .item .subtitle):
234 (.sidebar > .panel.navigation.network > .content > .navigation-sidebar-panel-content-tree-outline):
235 (.sidebar > .panel.navigation.network.network-grid-content-view-showing > .content > .navigation-sidebar-panel-content-tree-outline):
236 Mostly copied from TimelineSidebarPanel.css and NetworkTimelineView.css.
238 * UserInterface/Views/NetworkSidebarPanel.js: Added.
239 (WebInspector.NetworkSidebarPanel):
240 (WebInspector.NetworkSidebarPanel.prototype.closed):
241 (WebInspector.NetworkSidebarPanel.prototype.showDefaultContentView):
242 (WebInspector.NetworkSidebarPanel.prototype.saveStateToCookie):
243 (WebInspector.NetworkSidebarPanel.prototype.restoreStateFromCookie):
244 (WebInspector.NetworkSidebarPanel.prototype.hasCustomFilters):
245 (WebInspector.NetworkSidebarPanel.prototype.matchTreeElementAgainstCustomFilters.match):
246 (WebInspector.NetworkSidebarPanel.prototype.matchTreeElementAgainstCustomFilters):
247 (WebInspector.NetworkSidebarPanel.prototype.treeElementAddedOrChanged):
248 (WebInspector.NetworkSidebarPanel.prototype._networkTimelineReset):
249 (WebInspector.NetworkSidebarPanel.prototype._contentBrowserCurrentContentViewDidChange):
250 (WebInspector.NetworkSidebarPanel.prototype._treeElementGoToArrowWasClicked):
251 (WebInspector.NetworkSidebarPanel.prototype._treeElementCloseButtonClicked):
252 (WebInspector.NetworkSidebarPanel.prototype._canShowDifferentContentView):
253 (WebInspector.NetworkSidebarPanel.prototype._treeElementSelected):
254 (WebInspector.NetworkSidebarPanel.prototype._scopeBarSelectionDidChange):
255 A hybrid of ResourceSidebarPanel and TimelineSidebarPanel.
257 * UserInterface/Views/NetworkTabContentView.js: Added.
258 (WebInspector.NetworkTabContentView):
259 (WebInspector.NetworkTabContentView.prototype.get type):
260 (WebInspector.NetworkTabContentView.prototype.canShowRepresentedObject):
262 * UserInterface/Views/NewTabContentView.js:
263 (WebInspector.NewTabContentView): Add Network tab and sort the tabs by their localized name.
265 * UserInterface/Views/TabBar.js:
266 (WebInspector.TabBar.prototype._handleNewTabClick):
267 Drive-by fix. Don't fire the click event if the new tab button is disabled.
269 2015-07-06 Nikita Vasilyev <nvasilyev@apple.com>
271 Web Inspector: Mark console filters that have unseen messages by colored dots
272 https://bugs.webkit.org/show_bug.cgi?id=146616
274 Reviewed by Timothy Hatcher.
276 * UserInterface/Views/LogContentView.css:
277 (.log-scope-bar > li.unread::before):
278 (.log-scope-bar > li.unread:hover::before):
279 (.log-scope-bar > li.unread.errors::before):
280 (.log-scope-bar > li.unread.warnings::before):
281 (.log-scope-bar > li.unread.logs::before):
282 (@keyframes unread-background-pulse):
284 2015-07-06 Timothy Hatcher <timothy@apple.com>
286 Web Inspector: Exceptions in Network timeline when resource updates and filters are applied
287 https://bugs.webkit.org/show_bug.cgi?id=146609
289 Reviewed by Joseph Pecoraro.
291 * UserInterface/Views/DataGrid.js:
292 (WebInspector.DataGrid.prototype.insertChild):
293 (WebInspector.DataGrid.prototype.removeChild):
294 (WebInspector.DataGridNode.prototype.savePosition):
295 Convert exceptions to asserts and early returns.
297 * UserInterface/Views/TimelineDataGrid.js:
298 (WebInspector.TimelineDataGrid.prototype._refreshDirtyDataGridNodes): Add some asserts and checks.
300 * UserInterface/Views/TreeOutline.js:
301 (WebInspector.TreeOutline.prototype.appendChild):
302 (WebInspector.TreeOutline.prototype.insertChild):
303 (WebInspector.TreeOutline.prototype.removeChildAtIndex):
304 (WebInspector.TreeOutline.prototype.removeChild):
305 Convert exceptions to asserts and early returns.
307 2015-07-05 Timothy Hatcher <timothy@apple.com>
309 Web Inspector: Cached resources are missing startTime and size in Network timeline
310 https://bugs.webkit.org/show_bug.cgi?id=146607
312 Reviewed by Joseph Pecoraro.
314 * UserInterface/Controllers/FrameResourceManager.js:
315 (WebInspector.FrameResourceManager.prototype.resourceRequestWasServedFromMemoryCache): Pass elapsedTime in the right argument order.
316 Add missing calls to Resource.increaseSize and Resource.increaseTransferSize.
317 (WebInspector.FrameResourceManager.prototype.resourceRequestDidReceiveResponse): Pass elapsedTime in the right argument order.
319 2015-07-05 Timothy Hatcher <timothy@apple.com>
321 Web Inspector: Dim more borders when the window is inactive
322 https://bugs.webkit.org/show_bug.cgi?id=146608
324 Reviewed by Joseph Pecoraro.
326 * UserInterface/Views/DataGrid.css:
327 (body.window-inactive .data-grid th):
328 (body.window-inactive .data-grid :matches(th, td):not(:last-child)):
329 * UserInterface/Views/NavigationSidebarPanel.css:
330 (body.window-inactive .sidebar > .panel.navigation > .overflow-shadow):
331 * UserInterface/Views/OverviewTimelineView.css:
332 (body.window-inactive .timeline-view.overview > .timeline-ruler > .header):
333 * UserInterface/Views/TimelineDataGrid.css:
334 (body.window-inactive .data-grid.timeline th):
335 (body.window-inactive .data-grid.timeline > .navigation-bar-container > .navigation-bar):
336 * UserInterface/Views/TimelineRuler.css:
337 (body.window-inactive .timeline-ruler > .header):
338 (body.window-inactive .timeline-ruler > .header > .divider):
339 * UserInterface/Views/TimelineSidebarPanel.css:
340 (body.window-inactive .sidebar > .panel.navigation.timeline > .status-bar):
341 (body.window-inactive .sidebar > .panel.navigation.timeline > .title-bar):
342 (body.window-inactive .sidebar > .panel.navigation.timeline > .title-bar.timeline-events):
344 2015-07-05 Timothy Hatcher <timothy@apple.com>
346 Web Inspector: Timeline row selection should have same background color in sidebar and data grid
347 https://bugs.webkit.org/show_bug.cgi?id=146606
349 Support a force-focus class name that TreeOutlineDataGridSynchronizer applies when one of the
350 elements is focused, so the other can look focused too.
352 Reviewed by Joseph Pecoraro.
354 * UserInterface/Views/DataGrid.css:
355 (.data-grid:matches(:focus, .force-focus) tr.selected td:not(:last-child)):
356 (.data-grid:matches(:focus, .force-focus) tr.parent.selected td.disclosure::before):
357 (.data-grid:matches(:focus, .force-focus) tr.parent.expanded.selected td.disclosure::before):
358 (.data-grid:matches(:focus, .force-focus) tr.selected):
359 (.data-grid:matches(:focus, .force-focus) tr.selected td .subtitle):
361 * UserInterface/Views/Main.css:
362 (:matches(:focus, .force-focus) .selected .go-to-arrow):
363 (:matches(:focus, .force-focus) .selected .go-to-arrow:active):
365 * UserInterface/Views/NavigationSidebarPanel.css:
366 (.navigation-sidebar-panel-content-tree-outline:matches(:focus, .force-focus) .item.selected .disclosure-button):
367 (.navigation-sidebar-panel-content-tree-outline:matches(:focus, .force-focus) .item.selected.expanded .disclosure-button):
368 (.navigation-sidebar-panel-content-tree-outline:matches(:focus, .force-focus) .item.selected):
369 (.navigation-sidebar-panel-content-tree-outline:matches(:focus, .force-focus) .item.selected .subtitle):
371 * UserInterface/Views/TreeElementStatusButton.css:
372 (:matches(:focus, .force-focus) .item.selected > .status > .status-button > svg .filled):
373 (:matches(:focus, .force-focus) .item.selected > .status > .status-button > svg .stroked):
375 * UserInterface/Views/TreeOutlineDataGridSynchronizer.js:
376 (WebInspector.TreeOutlineDataGridSynchronizer):
377 (WebInspector.TreeOutlineDataGridSynchronizer.prototype._dataGridGainedFocus): Added.
378 (WebInspector.TreeOutlineDataGridSynchronizer.prototype._dataGridLostFocus): Added.
379 (WebInspector.TreeOutlineDataGridSynchronizer.prototype._treeOutlineGainedFocus): Added.
380 (WebInspector.TreeOutlineDataGridSynchronizer.prototype._treeOutlineLostFocus): Added.
382 2015-07-05 Devin Rousso <drousso@apple.com>
384 Web Inspector: Deleting in the CSS sidebar causes the warning icon to appear mid-word
385 https://bugs.webkit.org/show_bug.cgi?id=146617
387 Reviewed by Timothy Hatcher.
389 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
390 (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleBeforeChange): Now removes all marks whenever the user deletes.
391 (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded): The invalid marker now calculates
392 it's position based off of where the semicolon is in the property text.
394 2015-07-05 Devin Rousso <drousso@apple.com>
396 Web Inspector: CSS rule with 2 pseudo-selectors appears twice
397 https://bugs.webkit.org/show_bug.cgi?id=146576
399 Reviewed by Timothy Hatcher.
401 * UserInterface/Views/RulesStyleDetailsPanel.js:
402 (WebInspector.RulesStyleDetailsPanel.prototype.refresh):
403 Only adds pseudo-elements if the previous pseudo-element has a different selector.
405 2015-07-04 Devin Rousso <drousso@apple.com>
407 Web Inspector: Wrong cursor position in styles panel when deleting a line break
408 https://bugs.webkit.org/show_bug.cgi?id=146577
410 Reviewed by Timothy Hatcher.
412 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
413 (WebInspector.CSSStyleDeclarationTextEditor):
414 (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleBeforeChange): If the change is a deletion at the beginning of a line,
415 remove all markers on that line to ensure that there is no blank space on the previous line after deleting.
417 2015-07-04 Devin Rousso <drousso@apple.com>
419 Web Inspector: Pressing tab on a newline in the console should insert a tab character
420 https://bugs.webkit.org/show_bug.cgi?id=146612
422 Reviewed by Timothy Hatcher.
424 * UserInterface/Views/ConsolePrompt.js:
425 (WebInspector.ConsolePrompt.prototype._handleTabKey): Tabs can now be inserted at the beginning of newlines and before the first
426 non-space character on any other line.
428 2015-07-04 Devin Rousso <drousso@apple.com>
430 Web Inspector: Pressing enter on a newline in the styles sidebar inserts a semicolon
431 https://bugs.webkit.org/show_bug.cgi?id=146611
433 Reviewed by Timothy Hatcher.
435 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
436 (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleEnterKey): Now returns if the line is empty.
438 2015-07-04 Devin Rousso <drousso@apple.com>
440 Web Inspector: Console should indicate if you have unseen messages in console due to filters
441 https://bugs.webkit.org/show_bug.cgi?id=143166
443 Reviewed by Timothy Hatcher.
445 * UserInterface/Controllers/JavaScriptLogViewController.js:
446 (WebInspector.JavaScriptLogViewController.prototype.updatePreviousMessageRepeatCount): Now returns true/false depending on if
447 the message count was actually updated.
448 * UserInterface/Views/LogContentView.css:
449 (.log-scope-bar > li.unread): Applies the unread-border-pulse keyframe animation.
450 (.log-scope-bar > li.unread.errors): The pulsing border is colored red.
451 (.log-scope-bar > li.unread.warnings): The pulsing border is colored yellow(ish).
452 (.log-scope-bar > li.unread.logs): The pulsing border is colored grey.
453 (@keyframes unread-border-pulse): Changes the color of the border from transparent to whatever is specificed.
454 * UserInterface/Views/LogContentView.js:
455 (WebInspector.LogContentView):
456 (WebInspector.LogContentView.prototype._determineMessageLevel):
457 (WebInspector.LogContentView.prototype._pulseScopeBarItemBorder): Adds the class "unread" to the scope bar item whose panel
458 the newest message belongs to, but only if that panel or the All panel is not visible.
459 (WebInspector.LogContentView.prototype._messageAdded):
460 (WebInspector.LogContentView.prototype._previousMessageRepeatCountUpdated):
461 (WebInspector.LogContentView.prototype._scopeBarSelectionDidChange): Clears the "unread" class on the selected scope bar item.
462 (WebInspector.LogContentView.prototype._filterMessageElements):
463 * UserInterface/Views/ScopeBar.js:
464 (WebInspector.ScopeBar.prototype.get items): Returns a list of all the items in the scope bar.
465 * UserInterface/Views/ScopeBarItem.js:
466 (WebInspector.ScopeBarItem): Added another parameter to allow for a custom class name.
468 2015-07-04 Devin Rousso <drousso@apple.com>
470 Web Inspector: Pseudo Styles Ordering and Media Queries
471 https://bugs.webkit.org/show_bug.cgi?id=145979
473 Reviewed by Timothy Hatcher.
475 * UserInterface/Views/RulesStyleDetailsPanel.css:
476 (.sidebar > .panel.details.css-style > .content.filter-in-progress .label:not(.filter-section-non-matching) + .label.filter-matching-label:not(.filter-section-non-matching)):
477 Fix filter label styling with pseudo selectors.
478 * UserInterface/Views/RulesStyleDetailsPanel.js:
479 (WebInspector.RulesStyleDetailsPanel.prototype.refresh): Pseudo-selector rules will now order directly after the last style that
480 matches the pseudo-selector without the pseudo-element. If no rules match, place the pseudo-selector rules above the first
481 inherited or UserAgent rule (whichever comes first).
483 2015-07-04 Devin Rousso <drousso@apple.com>
485 REGRESSION(r184000): Web Inspector: Multiline CSS in Styles Sidebar is marked as invalid
486 https://bugs.webkit.org/show_bug.cgi?id=146178
488 Reviewed by Timothy Hatcher.
490 First changes made by Tobias Reiss <tobi+webkit@basecode.de>
492 * Tools/PrettyPrinting/css-rule-tests/add-whitespace-between-values-expected.css: Added.
493 * Tools/PrettyPrinting/css-rule-tests/add-whitespace-between-values.css: Added.
494 * Tools/PrettyPrinting/css-rule-tests/add-whitespace-between-rules-expected.css: Added.
495 * Tools/PrettyPrinting/css-rule-tests/add-whitespace-between-rules.css: Added.
496 * Tools/PrettyPrinting/css-rule-tests/remove-newline-between-values-expected.css: Added.
497 * Tools/PrettyPrinting/css-rule-tests/remove-newline-between-values.css: Added.
498 * Tools/PrettyPrinting/index.html:
499 Add regression tests.
500 * UserInterface/Views/CodeMirrorFormatters.js:
501 Remove newlines before values that belong in one line and add whitespace between values.
503 2015-07-04 Nikita Vasilyev <nvasilyev@apple.com>
505 Web Inspector: The arrow that appears for Web Inspector Layout & Rendering records overlaps the category switcher
506 https://bugs.webkit.org/show_bug.cgi?id=146605
508 Reviewed by Timothy Hatcher.
510 * UserInterface/Views/TimelineDataGrid.css:
511 (.data-grid.timeline > .navigation-bar-container):
513 2015-07-03 Dan Bernstein <mitz@apple.com>
515 [Xcode] Update some build settings as recommended by Xcode 7
516 https://bugs.webkit.org/show_bug.cgi?id=146597
518 Reviewed by Sam Weinig.
520 * Configurations/Base.xcconfig: Enabled CLANG_WARN_UNREACHABLE_CODE and
521 GCC_NO_COMMON_BLOCKS.
522 * WebInspectorUI.xcodeproj/project.pbxproj: Updated LastUpgradeCheck.
524 2015-07-02 Devin Rousso <drousso@apple.com>
526 Web Inspector: Show suggest popover on Tab press even if it wasn't showing before
527 https://bugs.webkit.org/show_bug.cgi?id=146496
529 Reviewed by Timothy Hatcher.
531 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
532 (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleTabKey): Pressing tab will try to autocomplete before trying
533 to add an ending colon/semicolon or highlight the next section of text.
535 2015-07-01 Joseph Pecoraro <pecoraro@apple.com>
537 Web Inspector: Aggregate profile call information on the backend to drastically reduce profile sizes
538 https://bugs.webkit.org/show_bug.cgi?id=146536
540 Reviewed by Timothy Hatcher.
542 Since we still support legacy backends, the frontend documents where
543 it is handling legacy backends with compatibility comments.
545 * UserInterface/Models/ProfileNode.js:
546 (WebInspector.ProfileNode):
547 (WebInspector.ProfileNode.prototype.get callInfo):
548 Handle a ProfileNode created with callInfo or calls. They are mutually exclusive.
550 * UserInterface/Models/ScriptTimelineRecord.js:
551 (WebInspector.ScriptTimelineRecord.prototype._initializeProfileFromPayload.profileNodeFromPayload):
552 If the profile has per-call information, construct ProfileNodeCall objects, otherwise
553 just construct the ProfileNode with the aggregate callInfo value.
555 * UserInterface/Views/ScriptTimelineDataGridNode.js:
556 (WebInspector.ScriptTimelineDataGridNode.prototype.get data):
557 When we have aggregate call information we cannot easily partition a script,
558 so we instead treat the entire script as one large atomic unit in the timeline.
559 If the timeline range has any portion of the script, show the entire script.
560 Users used to be able to select a portion of a script and view the relevant
561 functions called in just that sliver, but this doesn't appear to be a well
562 known feature or commonly used. In fact, given the small ranges of time it
563 could be confusing for users.
565 * UserInterface/Views/TimelineRecordingContentView.js:
566 (WebInspector.TimelineRecordingContentView.prototype.matchTreeElementAgainstCustomFilters):
567 Treat as a discrete unit.
569 2015-07-01 Devin Rousso <drousso@apple.com>
571 Web Inspector: When autocompleting, pressing tab twice shouldn't insert a tab character
572 https://bugs.webkit.org/show_bug.cgi?id=145885
574 Reviewed by Timothy Hatcher.
576 * UserInterface/Controllers/CodeMirrorCompletionController.js:
577 (WebInspector.CodeMirrorCompletionController):
578 (WebInspector.CodeMirrorCompletionController.prototype.updateCompletions): Resolves the promise as having completions.
579 (WebInspector.CodeMirrorCompletionController.prototype.hideCompletions): Resolves the promise as not having completions.
580 (WebInspector.CodeMirrorCompletionController.prototype.completeAtCurrentPositionIfNeeded): Returns a WrappedPromise that allows
581 callers of this function to determine if the autocomplete had any values or was instead not shown.
582 (WebInspector.CodeMirrorCompletionController.prototype._resolveUpdatePromise):
583 * UserInterface/Main.html: Added WrappedPromise class.
584 * UserInterface/Models/WrappedPromise.js: Added WrappedPromise object to expose resolve and reject functions.
585 * UserInterface/Views/ConsolePrompt.js:
586 (WebInspector.ConsolePrompt.prototype._handleTabKey): Attempts to find completions for current text. If there are none, beep.
588 2015-07-01 Devin Rousso <drousso@apple.com>
590 Make the first click on a rule section create a newline for easy property addition
591 https://bugs.webkit.org/show_bug.cgi?id=146490
593 Reviewed by Timothy Hatcher.
595 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
596 (WebInspector.CSSStyleDeclarationTextEditor):
597 (WebInspector.CSSStyleDeclarationTextEditor.prototype._highlightNextNameOrValue):
598 (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleEnterKey): Inserts a semicolon if the line is missing one.
599 (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleMouseDown): If the user clicks on a property with the editor being
600 unfocused, the name/value containing the cursor will be highlighted. If instead the user clicks at the end of a line, the
601 cursor's position is saved for mouseUp.
602 (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleMouseUp): If the mouseDown cursor position was saved and is equal
603 to the current cursor's position (the user did not drag), add a newline after the current line and place the cursor on that line.
604 (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleTabKey):
605 (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleTabKey.highlightNextNameOrValue): Deleted.
607 2015-06-30 Devin Rousso <drousso@apple.com>
609 Web Inspector: add " = $0" hint after selected element in main DOMTreeOutline
610 https://bugs.webkit.org/show_bug.cgi?id=145739
612 Reviewed by Timothy Hatcher.
614 * UserInterface/Views/DOMTreeOutline.css: Adds a semi-opaque " = $0" to the selected element in the DOM tree.
615 (.dom-tree-outline li.selected > span::after):
616 (.dom-tree-outline:focus li.selected > span::after):
618 2015-06-30 Joseph Pecoraro <pecoraro@apple.com>
620 Web Inspector: ProfileNode cleanup
621 https://bugs.webkit.org/show_bug.cgi?id=146472
623 Reviewed by Timothy Hatcher.
625 * UserInterface/Models/ProfileNode.js:
626 (WebInspector.ProfileNode):
627 Use Array.prototype.every instead of reduce.
628 Correct the name of a function to be what callers expect!
630 2015-06-30 Joseph Pecoraro <pecoraro@apple.com>
632 Web Inspector: iOS 8: Profile Nodes not showing in JavaScript Timeline
633 https://bugs.webkit.org/show_bug.cgi?id=146471
635 Reviewed by Brian Burg.
637 * UserInterface/Models/ScriptTimelineRecord.js:
638 (WebInspector.ScriptTimelineRecord.prototype._initializeProfileFromPayload.profileNodeCallFromPayload):
639 For legacy backends, convert the startTime to the proper timestamp type.
641 2015-06-30 Matt Baker <mattbaker@apple.com>
643 Web Inspector: Reduce rendering frames "Other" time by instrumenting compositing
644 https://bugs.webkit.org/show_bug.cgi?id=146168
646 Reviewed by Brian Burg.
648 * Localizations/en.lproj/localizedStrings.js:
649 * UserInterface/Controllers/TimelineManager.js:
650 (WebInspector.TimelineManager.prototype._processRecord):
651 Added handling for new Composite record type. Paint records with a parent Composite record
652 are flagged to simplify processing after the event hierarchy is unpacked.
654 * UserInterface/Images/TimelineRecordComposite.svg: Added.
655 New composite record icon.
657 * UserInterface/Models/LayoutTimelineRecord.js:
658 (WebInspector.LayoutTimelineRecord):
659 (WebInspector.LayoutTimelineRecord.displayNameForEventType):
660 (WebInspector.LayoutTimelineRecord.prototype.get duringComposite): Added
661 Composite record support.
663 * UserInterface/Models/RenderingFrameTimelineRecord.js:
664 (WebInspector.RenderingFrameTimelineRecord.prototype.durationForTask.get validRecordForTaskType):
665 Add compositing time when bucketing runloop tasks, ignoring Paint events that are
666 contained within a Composite event.
668 * UserInterface/Views/LayoutTimelineOverviewGraph.js:
669 (WebInspector.LayoutTimelineOverviewGraph.prototype._layoutTimelineRecordAdded):
670 Add Composite records to paint timeline row.
672 * UserInterface/Views/RenderingFrameTimelineView.js:
673 (WebInspector.RenderingFrameTimelineView.prototype._processPendingRecords):
676 * UserInterface/Views/TimelineIcons.css:
677 (.composite-record .icon):
678 * UserInterface/Views/TimelineRecordBar.css:
679 (.timeline-record-bar.timeline-record-type-layout.layout-timeline-record-composite > .segment):
680 * UserInterface/Views/TimelineRecordTreeElement.js:
681 (WebInspector.TimelineRecordTreeElement):
682 New styles and tree element icon.
684 2015-06-30 Joseph Pecoraro <pecoraro@apple.com>
686 Web Inspector: iOS 8: Uncaught Exception expanding Object Prototype
687 https://bugs.webkit.org/show_bug.cgi?id=146427
689 Reviewed by Timothy Hatcher.
691 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
692 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateProperties):
693 * UserInterface/Views/ObjectTreeView.js:
694 (WebInspector.ObjectTreeView.prototype._updateProperties):
695 We are supposed to receive value properties for __proto__ properties
696 so that we can immediately start showing information about the property.
697 When that is not the case, which appeared to only be on legacy
698 backends for the top level prototype, just ignore it.
700 2015-06-30 Joseph Pecoraro <pecoraro@apple.com>
702 Web Inspector: Misc. Timeline cleanup
703 https://bugs.webkit.org/show_bug.cgi?id=146430
705 Reviewed by Timothy Hatcher.
707 * UserInterface/Models/Timeline.js:
708 (WebInspector.Timeline.prototype.reset):
709 Nobody listens for this event. Just remove it.
711 * UserInterface/Models/TimelineRecording.js:
712 Avoiding doing multiple lookups.
714 * UserInterface/Views/TimelineDataGridNode.js:
715 * UserInterface/Views/TimelineRecordingContentView.js:
716 (WebInspector.TimelineRecordingContentView.prototype._updateTimes):
717 * UserInterface/Views/TimelineView.js:
718 (WebInspector.TimelineView.prototype.updateLayout):
719 Eliminate some unnecessary deletes.
721 2015-06-29 Nikita Vasilyev <nvasilyev@apple.com>
723 Web Inspector: Unable to select the text of an inline error message
724 https://bugs.webkit.org/show_bug.cgi?id=145813
726 Reviewed by Timothy Hatcher.
728 * UserInterface/Views/CodeMirrorOverrides.css:
729 (.CodeMirror-linewidget):
730 * UserInterface/Views/TextEditor.js:
731 (WebInspector.TextEditor.prototype.createWidgetForLine):
733 2015-06-29 Joseph Pecoraro <pecoraro@apple.com>
735 Web Inspector: Remove harmless error for not getting named flows
736 https://bugs.webkit.org/show_bug.cgi?id=146417
738 Reviewed by Darin Adler.
740 * UserInterface/Controllers/DOMTreeManager.js:
742 2015-06-29 Joseph Pecoraro <pecoraro@apple.com>
744 Web Inspector: Network errors (404) are missing location link in console messages
745 https://bugs.webkit.org/show_bug.cgi?id=146442
747 Reviewed by Darin Adler.
749 * UserInterface/Views/ConsoleMessageView.js:
750 (WebInspector.ConsoleMessageView.prototype._appendLocationLink):
751 Restore behavior of adding a location link for network messages with urls.
753 2015-06-29 Joseph Pecoraro <pecoraro@apple.com>
755 Web Inspector: iOS 8: Resources Timeline Data does not show up
756 https://bugs.webkit.org/show_bug.cgi?id=146433
758 Reviewed by Timothy Hatcher.
760 There were a couple issues with initializing the legacy base timestamp
761 for attempting to dynamically compute monotonically increasing timestamps
762 for timeline events for legacy backends.
764 * Sometimes legacy timestamps were in seconds since epochs,
765 sometimes milliseconds. The frontend did not handle both.
767 * On navigations, even while resetting the base timestamp for
768 the first new record received, the main resource still had
769 a will send request time computed from the previous page's
770 time system. This patch re-uses the original timestamp for
771 this main resource as the new base and all future records
772 are computed relative to this.
774 * UserInterface/Controllers/FrameResourceManager.js:
775 (WebInspector.FrameResourceManager.prototype.resourceRequestWillBeSent):
776 (WebInspector.FrameResourceManager.prototype._addNewResourceToFrame):
777 * UserInterface/Models/Resource.js:
778 (WebInspector.Resource):
779 (WebInspector.Resource.prototype.get originalRequestWillBeSentTimestamp):
780 For legacy timestamp calculations, save the original request will be sent
781 timestamp on the Resource in case it is needed.
783 * UserInterface/Controllers/TimelineManager.js:
784 (WebInspector.TimelineManager.prototype._loadNewRecording):
785 When auto-starting a new recording for a navigation / reload, use the
786 main resource's request will be sent timestamp as the new base.
788 * UserInterface/Models/TimelineRecording.js:
789 Address legacy timeline timestamps by handling both legacy timestamps
790 that may be seconds / milliseconds.
792 2015-06-29 Joseph Pecoraro <pecoraro@apple.com>
794 REGRESSION: Web Inspector: Jump to Definition is broken
795 https://bugs.webkit.org/show_bug.cgi?id=146376
797 Reviewed by Timothy Hatcher.
799 * UserInterface/Views/ObjectTreeBaseTreeElement.js:
800 (WebInspector.ObjectTreeBaseTreeElement.prototype._appendMenusItemsForObject):
801 Allow changing tabs when jumping to function definition.
803 2015-06-28 Nikita Vasilyev <nvasilyev@apple.com>
805 Web Inspector: Wrong border color of console messages when filters are enabled
806 https://bugs.webkit.org/show_bug.cgi?id=146392
808 Reviewed by Timothy Hatcher.
810 * UserInterface/Views/LogContentView.css:
811 (.console-error-level:not(.filtered-out, .filtered-out-by-search) + .console-item):
812 (.console-warning-level:not(.filtered-out, .filtered-out-by-search) + .console-item):
814 2015-06-25 Matt Baker <mattbaker@apple.com>
816 Web Inspector: Wrong timeline selected after switching from Rendering Frames to Timelines
817 https://bugs.webkit.org/show_bug.cgi?id=146331
819 Reviewed by Timothy Hatcher.
821 * UserInterface/Views/TimelineSidebarPanel.js:
822 Set previously selected timeline type to null if no tree element is selected when switching
823 view mode to Rendering Frames.
825 2015-06-25 Joseph Pecoraro <pecoraro@apple.com>
827 [Mac] Web Inspector: Window dragging on toolbar should behave more like native window dragging
828 https://bugs.webkit.org/show_bug.cgi?id=146324
830 Reviewed by Timothy Hatcher.
832 * UserInterface/Base/Main.js:
833 On Mac 10.11 transition to using InspectorFrontendHost.startWindowDrag.
834 For older Macs continue to use InspectorFrontendHost.moveWindowBy.
836 * UserInterface/Protocol/InspectorFrontendHostStub.js:
837 (WebInspector.InspectorFrontendHostStub.prototype.startWindowDrag):
838 Add the stub for InspectorFrontendHostStub.
840 2015-06-24 Devin Rousso <drousso@apple.com>
842 Web Inspector: Pressing tab in the styles sidebar shouldn't insert a tab character
843 https://bugs.webkit.org/show_bug.cgi?id=146189
845 Reviewed by Timothy Hatcher.
847 * UserInterface/Controllers/CodeMirrorCompletionController.js: Added variable to control whether semicolons are added to the end of autocompleted css values.
848 (WebInspector.CodeMirrorCompletionController):
849 (WebInspector.CodeMirrorCompletionController.prototype.set noEndingSemicolon):
850 (WebInspector.CodeMirrorCompletionController.prototype._generateCSSCompletions):
851 * UserInterface/Views/CSSStyleDeclarationSection.js:
852 (WebInspector.CSSStyleDeclarationSection):
853 (WebInspector.CSSStyleDeclarationSection.prototype.cssStyleDeclarationTextEditorSwitchRule):
854 (WebInspector.CSSStyleDeclarationSection.prototype.focusRuleSelector):
855 (WebInspector.CSSStyleDeclarationSection.prototype.selectLastProperty):
856 (WebInspector.CSSStyleDeclarationSection.prototype.get selectorLocked):
857 (WebInspector.CSSStyleDeclarationSection.prototype.get locked):
858 (WebInspector.CSSStyleDeclarationSection.prototype._handleKeyDown):
859 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
860 (WebInspector.CSSStyleDeclarationTextEditor): Added functions for "Tab", "Shift-Tab", and "Shift-Enter" keypresses to improve usability.
861 (WebInspector.CSSStyleDeclarationTextEditor.prototype.selectFirstProperty): Highlights the first property.
862 (WebInspector.CSSStyleDeclarationTextEditor.prototype.selectLastProperty): Highlights the last property.
863 (WebInspector.CSSStyleDeclarationTextEditor.prototype._insertNewlineAfterCurrentLine): Inserts a newline after the currently selected line.
864 (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleShiftTabKey.switchRule):
865 (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleShiftTabKey): Pressing shift-tab will move the cursor to the previous non-word character that is immediately after a word character.
866 (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleTabKey.switchRule):
867 (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleTabKey.highlightNextNameOrValue):
868 (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleTabKey): Pressing tab will move the cursor to each space character until the end of the line is reached, at
869 which point the cursor will move to the beginning of the next line. Once the cursor is at the last line, pressing tab again will insert a newline.
870 * UserInterface/Views/RulesStyleDetailsPanel.js:
871 (WebInspector.RulesStyleDetailsPanel.prototype.cssStyleDeclarationSectionEditorNextRule): Switches the focused rule to the next section.
872 (WebInspector.RulesStyleDetailsPanel.prototype.cssStyleDeclarationSectionEditorPrevRule): Switches the focused rule to the previous section.
874 2015-06-24 Joseph Pecoraro <pecoraro@apple.com>
876 Web Inspector: console.group looks poor in console
877 https://bugs.webkit.org/show_bug.cgi?id=146295
879 Reviewed by Timothy Hatcher.
881 * Localizations/en.lproj/localizedStrings.js:
882 String for the default group name if you use console.group() without a name parameter.
884 * UserInterface/Views/LogContentView.css:
885 (.console-group-title::before):
886 Tweak the positioning and eliminate the log level ::before image.
888 * UserInterface/Views/ConsoleMessageView.js:
889 (WebInspector.ConsoleMessageView):
890 Reorder a bit to reduce a couple branches.
892 (WebInspector.ConsoleMessageView.prototype._appendMessageTextAndArguments):
893 Take a very straightforward approach for group names.
895 2015-06-24 Devin Rousso <drousso@apple.com>
897 Web Inspector: Show warning icon for invalid CSS properties and/or values
898 https://bugs.webkit.org/show_bug.cgi?id=145657
900 Reviewed by Timothy Hatcher.
902 * UserInterface/Models/CSSCompletions.js:
903 (WebInspector.CSSCompletions.prototype.getClosestPropertyName): Calculates the levenshtein distance between a given property and every existing property name. Returns the property name with the smallest distance or, in the case of multiple properties having the same distance, the first property in alphabetical order.
904 (WebInspector.CSSCompletions.prototype.propertyRequiresWebkitPrefix): Retruns if the property name exists only with a '-webkit-' prefix.
905 (WebInspector.CSSCompletions):
906 * UserInterface/Views/CSSStyleDeclarationTextEditor.css:
907 (.css-style-text-editor > .CodeMirror .CodeMirror-lines .invalid-warning-marker):
908 (.css-style-text-editor > .CodeMirror .CodeMirror-lines .invalid-warning-marker.clickable:hover):
909 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
910 (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded.duplicatePropertyExistsBelow): Determines if there exists a property below (visually) the given property that has the same name.
911 (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded.generateInvalidMarker): Creates a warning icon marker at the given position with the given title.
912 (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded.instancesOfProperty): Returns the number of properties in the rule that have the same name.
913 (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded): A button with a warning icon is now added to the beginning of an invalid property. If this button is clicked, the property is replaced with the closest matching property and the autocomplete menu is opened.
915 2015-06-24 Devin Rousso <drousso@apple.com>
917 Web Inspector: Background of Computed Styles is missing
918 https://bugs.webkit.org/show_bug.cgi?id=146209
920 Reviewed by Timothy Hatcher.
922 * UserInterface/Views/ComputedStyleDetailsPanel.css:
923 (.computed-style-properties.details-section): Added white background.
925 2015-06-24 Joseph Pecoraro <pecoraro@apple.com>
927 Web Inspector: Right/Left arrow no longer works in console to expand/collapse ObjectTrees
928 https://bugs.webkit.org/show_bug.cgi?id=141949
930 Reviewed by Timothy Hatcher.
932 * UserInterface/Views/ConsoleMessageView.js:
933 (WebInspector.ConsoleMessageView):
934 (WebInspector.ConsoleMessageView.prototype.get expandable):
935 (WebInspector.ConsoleMessageView.prototype.set expandable): Deleted.
936 (WebInspector.ConsoleMessageView.prototype._appendExtraParameters):
937 (WebInspector.ConsoleMessageView.prototype._appendStackTrace):
938 (WebInspector.ConsoleMessageView.prototype._makeExpandable):
939 Clarify what makes a ConsoleMessageView expandable or not.
941 (WebInspector.ConsoleMessageView.prototype.expand):
942 (WebInspector.ConsoleMessageView.prototype.collapse):
943 Handle the expand/collapse cases which could apply to the
944 ConsoleMessageView itself or an inner ObjectTreeView if that is all we contain.
946 (WebInspector.ConsoleMessageView.prototype._formatParameterAsObject):
947 Delete out of date comment. A console.log("message", obj) will want the
948 object tree member variable to handle auto expanding/collapsing of the
949 single object in the message.
951 * UserInterface/Views/LogContentView.js:
952 (WebInspector.LogContentView.prototype._leftArrowWasPressed):
953 (WebInspector.LogContentView.prototype._rightArrowWasPressed):
954 Use the higher level ConsoleMessageView objects accessible from the element
955 to call through to expand/collapse.
957 2015-06-23 Joseph Pecoraro <pecoraro@apple.com>
959 Web Inspector: Reduce QuickConsole DidResize events if it did not change
960 https://bugs.webkit.org/show_bug.cgi?id=146258
962 Reviewed by Timothy Hatcher.
964 * UserInterface/Views/QuickConsole.js:
965 (WebInspector.QuickConsole.prototype.consoleLogVisibilityChanged):
966 Do not trigger the event unless there was a change in visibility.
968 2015-06-23 Joseph Pecoraro <pecoraro@apple.com>
970 Web Inspector: TextEditor scroll position not correctly restored when switching tabs
971 https://bugs.webkit.org/show_bug.cgi?id=146254
973 Reviewed by Timothy Hatcher.
975 * UserInterface/Views/TextEditor.js:
976 (WebInspector.TextEditor.prototype.updateLayout):
977 Workaround a larger issue with ContentView restoration so that
978 TextEditors restore their scroll position as expected.
980 2015-06-23 Joseph Pecoraro <pecoraro@apple.com>
982 Web Inspector: Some brief previews are incorrectly treated as lossless
983 https://bugs.webkit.org/show_bug.cgi?id=146247
985 Reviewed by Timothy Hatcher.
987 * UserInterface/Views/ObjectPreviewView.js:
988 (WebInspector.ObjectPreviewView.prototype._appendEntryPreviews):
989 (WebInspector.ObjectPreviewView.prototype._appendPropertyPreviews):
990 When we have a brief preview we may need to override lossless / overflow
991 if the preview view itself shows less properties than were in the preview.
993 2015-06-23 Matt Baker <mattbaker@apple.com>
995 Web Inspector: Layout & Rendering timeline should show paint and layout records in separate rows
996 https://bugs.webkit.org/show_bug.cgi?id=146119
998 Reviewed by Timothy Hatcher.
1000 This patch makes the original Layout & Rendering timeline visually consistent with the Rendering Frames
1001 timeline, which uses green to distinguish Paint from Layout. In order to support having record bars with
1002 different colors in the same overview graph, the timeline has been split into two rows.
1004 * UserInterface/Views/LayoutTimelineOverviewGraph.css:
1005 (.timeline-overview-graph.layout > .graph-row):
1006 (.timeline-overview-graph.layout > .graph-row > .timeline-record-bar):
1007 (.timeline-overview-graph.layout > .graph-row > .timeline-record-bar > .segment):
1010 * UserInterface/Views/LayoutTimelineOverviewGraph.js:
1011 (WebInspector.LayoutTimelineOverviewGraph.prototype.reset.createRecordRow):
1012 (WebInspector.LayoutTimelineOverviewGraph.prototype.reset):
1013 (WebInspector.LayoutTimelineOverviewGraph.prototype.updateLayout):
1014 (WebInspector.LayoutTimelineOverviewGraph.prototype._updateRowLayout.createBar):
1015 (WebInspector.LayoutTimelineOverviewGraph.prototype._updateRowLayout):
1016 (WebInspector.LayoutTimelineOverviewGraph.prototype._layoutTimelineRecordAdded):
1017 (WebInspector.LayoutTimelineOverviewGraph): Deleted.
1018 Added bookkeeping objects for timeline row elements and their associated records.
1020 * UserInterface/Views/TimelineRecordBar.css:
1021 (.timeline-record-bar.timeline-record-type-layout.layout-timeline-record-paint > .segment):
1022 New style for layout record event types.
1024 * UserInterface/Views/TimelineRecordBar.js:
1025 (WebInspector.TimelineRecordBar.prototype.set records):
1026 Add style class for eventType, if present.
1028 2015-06-22 Devin Rousso <drousso@apple.com>
1030 Web Inspector: gaps between sections of the styles sidebar rules tab confusing, should say "Media: all"
1031 https://bugs.webkit.org/show_bug.cgi?id=142918
1033 Reviewed by Timothy Hatcher.
1035 * UserInterface/Views/RulesStyleDetailsPanel.css:
1036 (.sidebar > .panel.details.css-style > .content.filter-in-progress .label:not(.filter-section-non-matching) ~ .label):
1037 Now properly adds padding to filtered labels.
1038 (.sidebar > .panel.details.css-style > .content.filter-in-progress .label ~ .label): Deleted.
1039 * UserInterface/Views/RulesStyleDetailsPanel.js:
1040 (WebInspector.RulesStyleDetailsPanel.prototype.refresh): If a section of CSS rules has no media or inheritance, add
1041 a label that says "Media: all" above the section.
1043 2015-06-22 Nikita Vasilyev <nvasilyev@apple.com>
1045 Web Inspector: Consider making read-only style rules have a darker background
1046 https://bugs.webkit.org/show_bug.cgi?id=145983
1048 Reviewed by Timothy Hatcher.
1050 * UserInterface/Views/CSSStyleDeclarationSection.css:
1051 (.style-declaration-section:not(.locked)):
1052 (.style-declaration-section): Deleted.
1053 * UserInterface/Views/CSSStyleDeclarationTextEditor.css:
1054 (.css-style-text-editor.read-only > .CodeMirror):
1056 2015-06-22 Nikita Vasilyev <nvasilyev@apple.com>
1058 Web Inspector: Unable to select text of user input messages in the console
1059 https://bugs.webkit.org/show_bug.cgi?id=145888
1061 Reviewed by Timothy Hatcher.
1063 * UserInterface/Views/ConsoleMessageView.css:
1064 (.console-user-command > .console-message-text):
1066 2015-06-20 Nikita Vasilyev <nvasilyev@apple.com>
1068 Web Inspector: Unable to select parent element in the DOM tree path bar
1069 https://bugs.webkit.org/show_bug.cgi?id=145810
1071 Reviewed by Timothy Hatcher.
1073 * UserInterface/Views/DOMTreeContentView.js:
1074 (WebInspector.DOMTreeContentView.prototype.get selectionPathComponents):
1075 * UserInterface/Views/HierarchicalPathComponent.js:
1076 (WebInspector.HierarchicalPathComponent.prototype.get selectedPathComponent):
1077 (WebInspector.HierarchicalPathComponent.prototype._selectElementMouseUp):
1078 (WebInspector.HierarchicalPathComponent.prototype._selectElementSelectionChanged):
1079 (WebInspector.HierarchicalPathComponent):
1080 (WebInspector.HierarchicalPathComponent.prototype._selectElementMouseDown): Deleted.
1082 2015-06-19 Joseph Pecoraro <pecoraro@apple.com>
1084 Web Inspector: Duplication of style attribute in rules panel for shadow content
1085 https://bugs.webkit.org/show_bug.cgi?id=146176
1087 Reviewed by Timothy Hatcher.
1089 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
1090 The styleText can be non-empty for a readonly editor if the editor is for
1091 the style attribute of a shadow dom node. Instead of assuming it is empty
1092 we can just clear the editor ourselves and regenerate from properties.
1094 2015-06-19 Devin Rousso <drousso@apple.com>
1096 Web Inspector: Highlight currently edited CSS selector
1097 https://bugs.webkit.org/show_bug.cgi?id=145658
1099 Reviewed by Joseph Pecoraro.
1101 * UserInterface/Views/CSSStyleDeclarationSection.js:
1102 (WebInspector.CSSStyleDeclarationSection): Added event listeners on the selector text for mouseover and mouseout.
1103 (WebInspector.CSSStyleDeclarationSection.prototype._highlightNodesWithSelector): Selector text mouseover action that highlights all nodes that match the selector string in the corresponding frame.
1104 (WebInspector.CSSStyleDeclarationSection.prototype._hideHighlightOnNodesWithSelector): Selector text mouseout action that clears all highlights on matching nodes.
1105 * UserInterface/Views/DOMNode.js:
1106 (WebInspector.DOMNode): If the payload contains a frameId, then save it.
1107 (WebInspector.DOMNode.frameIdentifier):
1109 2015-06-19 Joseph Pecoraro <pecoraro@apple.com>
1111 Web Inspector: Overlapping dashboard views causing lots of layers in source view
1112 https://bugs.webkit.org/show_bug.cgi?id=146153
1114 Reviewed by Darin Adler.
1116 * UserInterface/Views/DashboardContainerView.css:
1117 (.toolbar .dashboard:not(.visible)):
1118 Hide non-visible dashboard views. The !important is used
1119 to override more specific toolbar .dashboard.foo styles.
1121 2015-06-19 Devin Rousso <drousso@apple.com>
1123 Web Inspector: Make rule icon toggle all properties for that selector on and off
1124 https://bugs.webkit.org/show_bug.cgi?id=146031
1126 Reviewed by Timothy Hatcher.
1128 * UserInterface/Views/CSSStyleDeclarationSection.css:
1129 (.style-declaration-section > .header > .icon.toggle-able:hover):
1130 (.style-declaration-section.rule-disabled > .header > .icon):
1131 * UserInterface/Views/CSSStyleDeclarationSection.js:
1132 (WebInspector.CSSStyleDeclarationSection): Added event listener to selector icon to toggle commenting of all properties for that rule.
1133 (WebInspector.CSSStyleDeclarationSection.prototype._toggleRuleOnOff): Adds or removes comments to all properties for that rule.
1134 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
1135 (WebInspector.CSSStyleDeclarationTextEditor.prototype.uncommentAllProperties.uncommentProperties):
1136 (WebInspector.CSSStyleDeclarationTextEditor.prototype.uncommentAllProperties): Uncomments all properties.
1137 (WebInspector.CSSStyleDeclarationTextEditor.prototype.commentAllProperties): Comments out all properties.
1138 (WebInspector.CSSStyleDeclarationTextEditor.prototype._propertyCheckboxChanged): Moved comment logic to its own function.
1139 (WebInspector.CSSStyleDeclarationTextEditor.prototype._propertyCommentCheckboxChanged): Moved uncomment logic to its own function.
1141 2015-06-19 Jon Lee <jonlee@apple.com>
1143 Update font and font-family keyword completions
1144 https://bugs.webkit.org/show_bug.cgi?id=144558
1145 <rdar://problem/20795292>
1147 Reviewed by Timothy Hatcher.
1149 * UserInterface/Models/CSSKeywordCompletions.js: Replace -webkit-system-font and
1150 -apple-system-font with -apple-system, which is the recommended token for getting the
1151 system font. Also add -title{1,2,3} for font, as they were missing, but already exist
1154 2015-06-19 Joseph Pecoraro <pecoraro@apple.com>
1156 Web Inspector: Avoid getOwnPropertyNames/Symbols on very large lists
1157 https://bugs.webkit.org/show_bug.cgi?id=146141
1159 Reviewed by Timothy Hatcher.
1161 * UserInterface/Controllers/JavaScriptRuntimeCompletionProvider.js:
1162 (WebInspector.JavaScriptRuntimeCompletionProvider.prototype.completionControllerCompletionsNeeded):
1163 When building completions for a large array, instead of building a list of all the indices
1164 just send a single number back to the frontend and let it generate a list for completion.
1165 We should do even better and avoid building a lookup table here for completion of an index.
1167 2015-06-18 Matt Baker <mattbaker@apple.com>
1169 Web Inspector: Rendering Frames timeline selection should snap to frame boundaries
1170 https://bugs.webkit.org/show_bug.cgi?id=146120
1172 Reviewed by Timothy Hatcher.
1174 * UserInterface/Views/RenderingFrameTimelineOverview.js:
1175 Enable snapping to frame boundaries.
1177 * UserInterface/Views/TimelineRecordingContentView.js:
1178 (WebInspector.TimelineRecordingContentView.prototype._updateFrameSelection):
1179 Updated filtering to account for ruler snapping.
1181 * UserInterface/Views/TimelineRuler.js:
1182 (WebInspector.TimelineRuler.prototype.get snapInterval):
1183 (WebInspector.TimelineRuler.prototype.set snapInterval):
1184 (WebInspector.TimelineRuler.prototype.set selectionStartTime):
1185 (WebInspector.TimelineRuler.prototype.set selectionEndTime):
1186 (WebInspector.TimelineRuler.prototype._snapValue):
1187 (WebInspector.TimelineRuler.prototype._handleMouseMove):
1188 Added support for snapping to a specified interval.
1190 * UserInterface/Views/TimelineSidebarPanel.js:
1191 Removed unnecessary code.
1193 2015-06-18 Devin Rousso <drousso@apple.com>
1195 Web Inspector: Add a filter for CSS properties in the Styles sidebar
1196 https://bugs.webkit.org/show_bug.cgi?id=145536
1198 Reviewed by Timothy Hatcher.
1200 * UserInterface/Base/Utilities.js: Added function to Strings that returns an array of all matching indexes of a given string.
1202 * UserInterface/Views/CSSStyleDeclarationSection.js:
1203 (WebInspector.CSSStyleDeclarationSection):
1204 (WebInspector.CSSStyleDeclarationSection.prototype.refresh.appendSelector):
1205 (WebInspector.CSSStyleDeclarationSection.prototype.findMatchingPropertiesAndSelectors): Loops through the property list and selectors of each section to find matches to the filtered text.
1206 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
1207 (WebInspector.CSSStyleDeclarationTextEditor.prototype.findMatchingProperties): Searches through the properties list to find and highlight all matching properties.
1208 (WebInspector.CSSStyleDeclarationTextEditor.prototype.removeNonMatchingProperties): Removes all properties that do not match and highlights the specific matched text in matching properties.
1209 (WebInspector.CSSStyleDeclarationTextEditor.prototype.resetFilteredProperties): Restores all properties to full visibility and removes any highlighting.
1210 (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded): Classes are added to selections of the text editor of that partiular selection contains text which matches the filter (see CSSStyleDetailsSidebarPanel.css for different classes).
1211 (WebInspector.CSSStyleDeclarationTextEditor.prototype._iterateOverProperties): If a filter is active, find properties matching the filter instead of all properties.
1212 * UserInterface/Views/CSSStyleDetailsSidebarPanel.css:
1213 (.sidebar > .panel.details.css-style > .content.has-filter-bar + .filter-bar):
1214 (.sidebar > .panel.details.css-style > .content:not(.has-filter-bar) + .filter-bar):
1215 * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
1216 (WebInspector.CSSStyleDetailsSidebarPanel): Added a filter bar to the CSS sidebar.
1217 (WebInspector.CSSStyleDetailsSidebarPanel.prototype._switchPanels): Switching panels preserves and applies filter bar text.
1218 (WebInspector.CSSStyleDetailsSidebarPanel.prototype._filterDidChange): Function called when the filter bar text changes that calls the current panel's filterDidChange function if it exists.
1219 * UserInterface/Views/FilterBar.js: Added function and variable to check if the text in the filter bar had changed.
1220 * UserInterface/Views/MetricsStyleDetailsPanel.js:
1221 (WebInspector.MetricsStyleDetailsPanel.prototype.refresh): Now calls superclass refresh.
1222 (WebInspector.MetricsStyleDetailsPanel): Added delegate variable to constructor.
1223 * UserInterface/Views/RulesStyleDetailsPanel.css:
1224 (.sidebar > .panel.details.css-style > .content.filter-in-progress .label):
1225 (.sidebar > .panel.details.css-style > .content.filter-in-progress .label ~ .label):
1226 (.sidebar > .panel.details.css-style > .content.filter-in-progress .label.filter-matching-label):
1227 (.sidebar > .panel.details.css-style > .content.filter-in-progress .new-rule):
1228 (.sidebar > .panel.details.css-style > .content.filter-in-progress .style-declaration-section:not(.filter-section-non-matching) ~ .label:not(.filter-section-non-matching)):
1229 (.sidebar > .panel.details.css-style > .content:not(.filter-in-progress) > .rules > .new-rule + .style-declaration-section):
1230 (.sidebar > .panel.details.css-style > .content > .rules:not(.filter-non-matching) > .no-filter-results):
1231 (.sidebar > .panel.details.css-style > .content.filter-in-progress > .rules.filter-non-matching > .no-filter-results):
1232 (.sidebar > .panel.details.css-style > .content.filter-in-progress > .rules.filter-non-matching > .no-filter-results > .no-filter-results-message):
1233 * UserInterface/Views/RulesStyleDetailsPanel.js:
1234 (WebInspector.RulesStyleDetailsPanel): Added delegate variable to constructor.
1235 (WebInspector.RulesStyleDetailsPanel.prototype.refresh): Now calls superclass refresh.
1236 (WebInspector.RulesStyleDetailsPanel.prototype.filterDidChange): Function to search through the computed styles list and highlight all matched properties and selectors of the filter bar text, turning all non matching properties slightly opaque (unless a selector for that property is a match).
1237 (WebInspector.StyleDetailsPanel): Added delegate variable to constructor.
1238 (WebInspector.StyleDetailsPanel.prototype.refresh): Added event dispatch for panel refresh.
1240 2015-06-18 Devin Rousso <drousso@apple.com>
1242 Web Inspector: Ability to Copy entire CSS Rule from Styles Sidebar
1243 https://bugs.webkit.org/show_bug.cgi?id=138812
1245 Reviewed by Timothy Hatcher.
1247 * Localizations/en.lproj/localizedStrings.js:
1248 * UserInterface/Views/CSSStyleDeclarationSection.js:
1249 (WebInspector.CSSStyleDeclarationSection): Right clicking on the header of a rule will replcae the default context menu to allow copying of the entire rule to the clipboard.
1250 (WebInspector.CSSStyleDeclarationSection.prototype._handleContextMenuEvent): Creates a new context menu to copy the entire CSS rule.
1251 (WebInspector.CSSStyleDeclarationSection.prototype._generateCSSRuleString): Generates a string representing the formatted CSS rule.
1253 2015-06-18 Joseph Pecoraro <pecoraro@apple.com>
1255 Web Inspector: Improve a few more node preview types
1256 https://bugs.webkit.org/show_bug.cgi?id=146048
1258 Reviewed by Timothy Hatcher.
1260 * UserInterface/Views/FormattedValue.js:
1261 (WebInspector.FormattedValue.createElementForNodePreview):
1263 2015-06-18 Devin Rousso <drousso@apple.com>
1265 Web Inspector: New Rule button doesn't reveal the newly added rule if not visible upon creation
1266 https://bugs.webkit.org/show_bug.cgi?id=117600
1268 Reviewed by Timothy Hatcher.
1270 * UserInterface/Views/RulesStyleDetailsPanel.js: Made previousFocusedSection into a member variable of the RulesStyleDetailsPanel. This way, when the nodeStyles is refreshed (when a new rule is added), the previousFocusedSection will be scrolled into view.
1271 (WebInspector.RulesStyleDetailsPanel):
1272 (WebInspector.RulesStyleDetailsPanel.prototype.refresh.appendStyleSection):
1273 (WebInspector.RulesStyleDetailsPanel.prototype.nodeStylesRefreshed):
1274 (WebInspector.RulesStyleDetailsPanel.prototype.refresh): Deleted.
1276 2015-06-18 Commit Queue <commit-queue@webkit.org>
1278 Unreviewed, rolling out r185671.
1279 https://bugs.webkit.org/show_bug.cgi?id=146114
1281 Caused frequent flaky failures on profiler tests (Requested by
1286 "Web Inspector: Improve a few more node preview types"
1287 https://bugs.webkit.org/show_bug.cgi?id=146048
1288 http://trac.webkit.org/changeset/185671
1290 2015-06-17 Joseph Pecoraro <pecoraro@apple.com>
1292 Web Inspector: Improve a few more node preview types
1293 https://bugs.webkit.org/show_bug.cgi?id=146048
1295 Reviewed by Timothy Hatcher.
1297 * UserInterface/Views/FormattedValue.js:
1298 (WebInspector.FormattedValue.createElementForNodePreview):
1300 2015-06-17 Diego Pino Garcia <dpino@igalia.com>
1302 Web Inspector: Show/Hide sidebar buttons have inconsistent highlighted state
1303 https://bugs.webkit.org/show_bug.cgi?id=145073
1305 Reviewed by Joseph Pecoraro.
1307 * UserInterface/Views/ContentBrowserTabContentView.js:
1308 (WebInspector.ContentBrowserTabContentView.prototype._detailsSidebarPanelSelected):
1310 2015-06-16 Joseph Pecoraro <pecoraro@apple.com>
1312 Web Inspector: Inspector Scripts evaluated in the page should not be searchable
1313 https://bugs.webkit.org/show_bug.cgi?id=146040
1315 Reviewed by Darin Adler.
1317 Any script with a __WebInspector source URL will be hidden by the tools.
1318 There were a number of ways the inspector could evaluate script on the page
1319 without getting the sourceURL and therefore not getting hidden. Audit
1320 all cases of Runtime.evaluate, Runtime.callFunctionOn, and
1321 Debugger.evaluateOnCallFrame, to ensure we have an appropriate source URL.
1323 * UserInterface/Base/Utilities.js:
1324 (appendWebInspectorSourceURL):
1325 Helper to append a __WebInspectorInternal__ sourceURL to a string that may
1326 be evaluated directly on the inspected context.
1328 * UserInterface/Controllers/DOMTreeManager.js:
1329 (WebInspector.DOMTreeManager.domNodeResolved):
1330 * UserInterface/Controllers/JavaScriptLogViewController.js:
1331 (WebInspector.JavaScriptLogViewController.prototype.consolePromptTextCommitted): Deleted.
1332 * UserInterface/Controllers/RuntimeManager.js:
1333 * UserInterface/Models/DOMTree.js:
1334 (WebInspector.DOMTree.prototype._requestRootDOMNode):
1335 * UserInterface/Protocol/RemoteObject.js:
1336 (WebInspector.RemoteObject.):
1337 * UserInterface/Views/SourceCodeTextEditor.js:
1338 (WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedJavaScriptExpression):
1339 Ensure all cases that evaluate directly on the inspected page / context
1340 have the intenral source URL.
1342 2015-06-16 Matt Baker <mattbaker@apple.com>
1344 Web Inspector: REGRESSION (r171645): up/down key navigation of timeline sidebar tree elements is broken when scope bar filters are applied
1345 https://bugs.webkit.org/show_bug.cgi?id=142315
1347 Reviewed by Timothy Hatcher.
1349 TreeOutline's element traversal algorithms have been rewritten to correctly skip over unrevealed tree elements.
1350 Previously traversal would halt after encountering a hidden element. We now use an iterative approach, with
1351 each iteration producing the next (or previous) element, with respect to the last candidate element. Iteration
1352 begins with the current node, and halts once a valid element is found or candidate elements are exhausted.
1354 * UserInterface/Views/TreeOutline.js:
1355 (WebInspector.TreeElement.prototype.traverseNextTreeElement.shouldSkip):
1356 (WebInspector.TreeElement.prototype.traverseNextTreeElement):
1357 (WebInspector.TreeElement.prototype.traversePreviousTreeElement.shouldSkip):
1358 (WebInspector.TreeElement.prototype.traversePreviousTreeElement):
1360 2015-06-15 Joseph Pecoraro <pecoraro@apple.com>
1362 Web Inspector: Stylize Node Previews
1363 https://bugs.webkit.org/show_bug.cgi?id=145990
1365 Reviewed by Timothy Hatcher.
1367 * UserInterface/Views/FormattedValue.js:
1368 (WebInspector.FormattedValue.createElementForNodePreview):
1369 Style a node preview like a DOMNode. It is a simple small snippet.
1371 * UserInterface/Views/ObjectPreviewView.js:
1372 (WebInspector.ObjectPreviewView.prototype._appendPropertyPreviews):
1373 Use node previews in ObjectPreviewViews.
1375 2015-06-15 Joseph Pecoraro <pecoraro@apple.com>
1377 Web Inspector: Improve some cases of "Object?" Type Annotations
1378 https://bugs.webkit.org/show_bug.cgi?id=145954
1380 Reviewed by Timothy Hatcher.
1382 * UserInterface/Views/TypeTokenView.js:
1383 (WebInspector.TypeTokenView.prototype._displayTypeName):
1384 The TypeSet inclusions cover all types, so we can use the leastCommonAncestor
1385 name as long as the type set is just object or object and null/undefined.
1386 If the typeset includes other primitives then it will gracefully go down
1387 below to become something like Object or (many).
1389 2015-06-14 Andres Gomez <agomez@igalia.com>
1391 [GTK] Web Inspector: Update icon so Rendering Frames timeline distinguish between layout and painting
1392 https://bugs.webkit.org/show_bug.cgi?id=145956
1394 Reviewed by Carlos Garcia Campos.
1396 * UserInterface/Images/gtk/TimelineRecordPaint.svg:
1397 Changed to use green color.
1399 2015-06-13 Joseph Pecoraro <pecoraro@apple.com>
1401 Web Inspector: console.table() with a list of objects no longer works
1402 https://bugs.webkit.org/show_bug.cgi?id=145952
1404 Reviewed by Timothy Hatcher.
1406 * UserInterface/Views/ConsoleMessageView.js:
1407 (WebInspector.ConsoleMessageView.prototype._appendMessageTextAndArguments):
1408 (WebInspector.ConsoleMessageView.prototype._formatParameterAsTable):
1409 Don't allow expanding a cosole.table message, and don't output the total
1410 object even if the table preview was lossless, as the experience is poor.
1412 2015-06-11 Joseph Pecoraro <pecoraro@apple.com>
1414 Web Inspector: CSS Regions not displaying DOM Trees in inspector
1415 https://bugs.webkit.org/show_bug.cgi?id=145903
1417 Reviewed by Timothy Hatcher.
1419 * UserInterface/Controllers/DOMTreeManager.js:
1420 (WebInspector.DOMTreeManager.prototype._updateContentFlowFromPayload):
1421 Fix function inside the assertion to actually return a value.
1423 * UserInterface/Views/DOMTreeOutline.js:
1424 (WebInspector.DOMTreeOutline.prototype.update):
1425 For DOMTreeOutlines without a root node, don't clear the tree on updates,
1426 since that will clear the nodes that have already been added explicitly.
1428 * UserInterface/Views/ResourceSidebarPanel.js:
1429 (WebInspector.ResourceSidebarPanel.prototype._treeElementSelected):
1430 * UserInterface/Views/ResourcesTabContentView.js:
1431 (WebInspector.ResourcesTabContentView.prototype.canShowRepresentedObject):
1432 ResourceTab and sidebar can deal with ContentFlow related views.
1434 2015-06-11 Joseph Pecoraro <pecoraro@apple.com>
1436 Web Inspector: IndexedDB data not showing for MDN example page
1437 https://bugs.webkit.org/show_bug.cgi?id=145851
1439 Reviewed by Anders Carlsson.
1441 * UserInterface/Views/StorageSidebarPanel.js:
1442 (WebInspector.StorageSidebarPanel.prototype._indexedDatabaseWasAdded):
1443 Fix typo in Storage tab refactoring that was causing an
1444 uncaught exception and not showing Indexed DBs.
1446 2015-06-11 Devin Rousso <drousso@apple.com>
1448 Web Inspector: font-family names interpreted as color
1449 https://bugs.webkit.org/show_bug.cgi?id=123468
1451 Reviewed by Timothy Hatcher.
1453 * UserInterface/Views/CodeMirrorAdditions.js: Added logic to prevent color picker buttons from appearing before colors that come after a quote character (both " and ').
1455 2015-06-11 Matt Baker <mattbaker@apple.com>
1457 Web Inspector: Rendering Frames timeline should distinguish between layout and painting
1458 https://bugs.webkit.org/show_bug.cgi?id=145856
1460 Reviewed by Timothy Hatcher.
1462 This patch formalizes the runloop task concept in the frontend, adds new Paint task type to the Rendering
1463 Frames timeline, and reorders UI elements such as chart sections and frame "segments" to match the order in
1464 which tasks are executed within the runloop.
1466 We will need to make UI changes to the standard Timelines view in a follow up patch, since tree element icons
1467 for Paint records now use a different color that those of other Layout records.
1469 * UserInterface/Images/TimelineRecordPaint.svg:
1470 Changed to use green color.
1472 * UserInterface/Models/RenderingFrameTimelineRecord.js:
1473 (WebInspector.RenderingFrameTimelineRecord):
1474 (WebInspector.RenderingFrameTimelineRecord.displayNameForTaskType):
1475 (WebInspector.RenderingFrameTimelineRecord.prototype.durationForTask.get validRecordForTaskType):
1476 (WebInspector.RenderingFrameTimelineRecord.prototype.durationForTask.set return):
1477 (WebInspector.RenderingFrameTimelineRecord.prototype.durationForTask):
1478 (WebInspector.RenderingFrameTimelineRecord.prototype.get durationRemainder): Deleted.
1479 (WebInspector.RenderingFrameTimelineRecord.prototype.durationForRecords.get var): Deleted.
1480 Added TaskType enum to decouple runloop task types from timeline record types, and removed duration remainder
1481 support now that "Other" has an associated task type.
1483 * UserInterface/Views/RenderingFrameTimelineDataGridNode.js:
1484 (WebInspector.RenderingFrameTimelineDataGridNode.prototype.get data):
1485 (WebInspector.RenderingFrameTimelineDataGridNode.prototype.createCellContent):
1486 * UserInterface/Views/RenderingFrameTimelineView.js:
1487 (WebInspector.RenderingFrameTimelineView):
1488 Added new grid column for Paint task, reordered columns to be consistent with the rest of the UI.
1490 * UserInterface/Views/TimelineRecordFrame.css:
1491 (.timeline-record-frame > .frame > .duration.rendering-frame-timeline-record-script):
1492 (.timeline-record-frame > .frame > .duration.rendering-frame-timeline-record-layout):
1493 (.timeline-record-frame > .frame > .duration.rendering-frame-timeline-record-paint):
1494 (.timeline-record-frame > .frame > .duration): Deleted.
1495 (.timeline-record-frame > .frame > .duration.timeline-record-type-network): Deleted.
1496 (.timeline-record-frame > .frame > .duration.timeline-record-type-layout): Deleted.
1497 (.timeline-record-frame > .frame > .duration.timeline-record-type-script): Deleted.
1498 Updated styles for Render Frame tasks.
1500 * UserInterface/Views/TimelineRecordFrame.js:
1501 (WebInspector.TimelineRecordFrame.prototype._updateChildElements.createDurationElement):
1502 Updated to use Render Frame task types. Frame segment insertion order is now consistent with the rest of the UI.
1504 * UserInterface/Views/TimelineSidebarPanel.js:
1505 (WebInspector.TimelineSidebarPanel._refreshFrameSelectionChart.chartData.Object.keys.map):
1506 (WebInspector.TimelineSidebarPanel.set this):
1507 (WebInspector.TimelineSidebarPanel._refreshFrameSelectionChart.get this):
1508 (WebInspector.TimelineSidebarPanel): Deleted.
1509 (WebInspector.TimelineSidebarPanel.prototype._refreshFrameSelectionChart.durationForRecordType): Deleted.
1510 (WebInspector.TimelineSidebarPanel.prototype._refreshFrameSelectionChart): Deleted.
1511 Updated to use Render Frame task types.
1513 2015-06-11 Matt Baker <mattbaker@apple.com>
1515 Web Inspector: Wrong overview graph shown after switching from Frames to Timelines
1516 https://bugs.webkit.org/show_bug.cgi?id=145778
1518 Reviewed by Timothy Hatcher.
1520 TimelineSidebarPanel stores a reference to the selected timeline before switching to the Rendering Frames view,
1521 which is used to restore the tree selection, overview graph, and content views when switching back to the
1522 standard Timelines view. However if another recording is created before switching, the previously selected
1523 timeline tracked by the sidebar cannot be restored, since it doesn't belong to the active recording.
1525 This is addressed by storing the previously selected timeline type, rather than the timeline object itself.
1526 The type is also updated whenever the selected timeline in the tree outline changes, ensuring that the correct
1527 timeline will always be restored.
1529 * UserInterface/Views/TimelineSidebarPanel.js:
1530 (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject.get if.get if):
1531 (WebInspector.TimelineSidebarPanel.get else): Deleted.
1532 (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject.get if): Deleted.
1533 (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject): Deleted.
1535 2015-06-08 Matt Baker <mattbaker@apple.com>
1537 Web Inspector: Clearing active Timeline recording should stop capturing
1538 https://bugs.webkit.org/show_bug.cgi?id=145767
1540 Reviewed by Joseph Pecoraro.
1542 * UserInterface/Views/TimelineRecordingContentView.js:
1543 (WebInspector.TimelineRecordingContentView.prototype._clearTimeline):
1544 Stop capturing if necessary.
1546 2015-06-07 Tobias Reiss <tobi+webkit@basecode.de>
1548 Web Inspector: Add PrettyPrinter CSSRule tests
1549 https://bugs.webkit.org/show_bug.cgi?id=145740
1551 Reviewed by Brian Burg.
1553 * Tools/PrettyPrinting/css-rule-tests/add-whitespace-after-colon-expected.css: Added.
1554 * Tools/PrettyPrinting/css-rule-tests/add-whitespace-after-colon.css: Added.
1555 * Tools/PrettyPrinting/css-rule-tests/add-whitespace-after-comma-expected.css: Added.
1556 * Tools/PrettyPrinting/css-rule-tests/add-whitespace-after-comma.css: Added.
1557 * Tools/PrettyPrinting/css-rule-tests/do-not-append-semicolon-expected.css: Added.
1558 * Tools/PrettyPrinting/css-rule-tests/do-not-append-semicolon.css: Added.
1559 * Tools/PrettyPrinting/css-rule-tests/invalid-property-is-not-removed-expected.css: Added.
1560 * Tools/PrettyPrinting/css-rule-tests/invalid-property-is-not-removed.css: Added.
1561 * Tools/PrettyPrinting/css-rule-tests/keep-prefixed-value-expected.css: Added.
1562 * Tools/PrettyPrinting/css-rule-tests/keep-prefixed-value.css: Added.
1563 * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-colon-expected.css: Added.
1564 * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-colon.css: Added.
1565 * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-comment-expected.css: Added.
1566 * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-comment.css: Added.
1567 * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-invalid-property-expected.css: Added.
1568 * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-invalid-property.css: Added.
1569 * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-prefixed-property-expected.css: Added.
1570 * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-prefixed-property.css: Added.
1571 * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-property-expected.css: Added.
1572 * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-property.css: Added.
1573 * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-semicolon-expected.css: Added.
1574 * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-semicolon.css: Added.
1575 * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-comment-expected.css: Added.
1576 * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-comment.css: Added.
1577 * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-invalid-property-expected.css: Added.
1578 * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-invalid-property.css: Added.
1579 * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-prefixed-property-expected.css: Added.
1580 * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-prefixed-property.css: Added.
1581 * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-property-expected.css: Added.
1582 * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-property.css: Added.
1583 * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-comment-expected.css: Added.
1584 * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-comment.css: Added.
1585 * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-invalid-property-expected.css: Added.
1586 * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-invalid-property.css: Added.
1587 * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-prefixed-property-expected.css: Added.
1588 * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-prefixed-property.css: Added.
1589 * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-property-expected.css: Added.
1590 * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-property.css: Added.
1591 * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-comment-expected.css: Added.
1592 * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-comment.css: Added.
1593 * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-invalid-property-expected.css: Added.
1594 * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-invalid-property.css: Added.
1595 * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-prefixed-property-expected.css: Added.
1596 * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-prefixed-property.css: Added.
1597 * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-property-expected.css: Added.
1598 * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-property.css: Added.
1599 * Tools/PrettyPrinting/css-rule-tests/split-property-without-semicolon-followed-by-comment-and-property-expected.css: Added.
1600 * Tools/PrettyPrinting/css-rule-tests/split-property-without-semicolon-followed-by-comment-and-property.css: Added.
1602 2015-06-05 Devin Rousso <drousso@apple.com>
1604 Web Inspector: Fixing code style and adding more limitations for bug 141262
1605 https://bugs.webkit.org/show_bug.cgi?id=145668
1607 Reviewed by Timothy Hatcher.
1609 * UserInterface/Models/CSSCompletions.js:
1610 (WebInspector.CSSCompletions.prototype.isValidPropertyName): Loops through the full property list and returns true only if a property exactly matches the given property name.
1611 (WebInspector.CSSCompletions): Added isValidPropertyName function.
1612 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
1613 (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded): Added logic to limit the invalid class marker to only the property value if the property name is an actual property and to prevent invalid style from being applied incorrectly.
1615 2015-06-05 Devin Rousso <drousso@apple.com>
1617 Web Inspector: Highlighting a CSS section does not deselect previously highlighted CSS sections
1618 https://bugs.webkit.org/show_bug.cgi?id=145399
1620 Reviewed by Timothy Hatcher.
1622 * UserInterface/Views/CSSStyleDeclarationSection.js:
1623 (WebInspector.CSSStyleDeclarationSection): Added delegate variable to constructor.
1624 (WebInspector.CSSStyleDeclarationSection.prototype.clearSelection):
1625 (WebInspector.CSSStyleDeclarationSection.prototype.cssStyleDeclarationTextEditorFocused):
1626 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
1627 (WebInspector.CSSStyleDeclarationTextEditor): Added event listener to codeMirror on "focus".
1628 (WebInspector.CSSStyleDeclarationTextEditor.prototype.clearSelection): Sets the cursor of the codeMirror to character 0 on line 0.
1629 (WebInspector.CSSStyleDeclarationTextEditor.prototype._editorFocused): Function that calls the delegate function "editorFocused" when the codeMirror is focused
1630 * UserInterface/Views/RulesStyleDetailsPanel.js:
1631 (WebInspector.RulesStyleDetailsPanel.prototype.refresh.appendStyleSection):
1632 (WebInspector.RulesStyleDetailsPanel.prototype.cssStyleDeclarationSectionEditorFocused): Loops through all sections except for the ignoredSection (parameter) and clears the selected text in each of them.
1634 2015-06-05 Joseph Pecoraro <pecoraro@apple.com>
1636 REGRESSION (r185213): TypeError: undefined is not an object (evaluating 'WebInspector.clearLogOnReload.value')
1637 https://bugs.webkit.org/show_bug.cgi?id=145695
1639 Reviewed by Mark Lam.
1641 Move and rename the clear log on reload setting property from
1642 WebInspector (Main.js) to LogManager (shared with tests).
1644 * UserInterface/Base/Main.js:
1645 (WebInspector.loaded): Deleted.
1646 * UserInterface/Controllers/LogManager.js:
1647 (WebInspector.LogManager):
1648 (WebInspector.LogManager.prototype._delayedMessagesCleared):
1649 * UserInterface/Views/LogContentView.js:
1650 (WebInspector.LogContentView.prototype._sessionStarted):
1651 (WebInspector.LogContentView.prototype._handleContextMenuEvent):
1652 (WebInspector.LogContentView.prototype._toggleClearLogOnReloadSetting):
1654 2015-06-05 Nikita Vasilyev <nvasilyev@apple.com>
1656 Web Inspector: [REGRESSION] Dashboard's resource count does not reset when main resource navigates
1657 https://bugs.webkit.org/show_bug.cgi?id=144553
1659 Add missing _mainResourceDidChange, which was removed after switching to the tabs UI.
1661 Reviewed by Timothy Hatcher.
1663 * UserInterface/Models/DefaultDashboard.js:
1664 (WebInspector.DefaultDashboard):
1665 _waitingForFirstMainResourceToStartTrackingSize is not used anywhere, remove it.
1667 (WebInspector.DefaultDashboard.prototype._mainResourceDidChange): Added.
1669 (WebInspector.DefaultDashboard.prototype._resourceSizeDidChange): Removed.
1672 2015-06-05 Matt Baker <mattbaker@apple.com>
1674 Web Inspector: Switch to doughnut chart and remove idle time in the Rendering Frames timeline
1675 https://bugs.webkit.org/show_bug.cgi?id=145671
1677 Reviewed by Timothy Hatcher.
1679 * Localizations/en.lproj/localizedStrings.js:
1680 "Idle" string no longer used.
1682 * UserInterface/Views/TimelineRecordFrame.js:
1683 Reduced maximum frame width by 2px.
1685 * UserInterface/Views/TimelineSidebarPanel.js:
1686 (WebInspector.TimelineSidebarPanel):
1687 (WebInspector.TimelineSidebarPanel.prototype._refreshFrameSelectionChart):
1688 Added inner radius to chart and removed "Idle" value.
1690 2015-06-04 Joseph Pecoraro <pecoraro@apple.com>
1692 Web Inspector: Class constructor appearing as Object Tree property does not include parameters
1693 https://bugs.webkit.org/show_bug.cgi?id=145661
1695 Reviewed by Timothy Hatcher.
1697 * UserInterface/Protocol/RemoteObject.js:
1698 (WebInspector.RemoteObject):
1699 (WebInspector.RemoteObject.fromPrimitiveValue):
1700 (WebInspector.RemoteObject.fromPayload):
1701 (WebInspector.RemoteObject.prototype.get functionDescription):
1702 Include the className as only use it for "class" types to override
1703 the normal description string. Stash the actual function description
1704 in a property we can access later.
1706 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
1707 (WebInspector.ObjectTreePropertyTreeElement.prototype._functionParameterString):
1708 Even if this property is a "class" we want to specifically parse it's
1709 function description string. So use functionDescription.
1711 2015-06-04 Nikita Vasilyev <nvasilyev@apple.com>
1713 Web Inspector: Close and open tabs on mouseup, not mousedown
1714 https://bugs.webkit.org/show_bug.cgi?id=145656
1716 Match Safari's behaviour.
1718 Reviewed by Timothy Hatcher.
1720 * UserInterface/Views/TabBar.js:
1721 (WebInspector.TabBar):
1722 (WebInspector.TabBar.prototype.set newTabItem):
1723 (WebInspector.TabBar.prototype._handleMouseDown):
1724 (WebInspector.TabBar.prototype._handleClick): Added.
1725 (WebInspector.TabBar.prototype._handleMouseUp):
1726 (WebInspector.TabBar.prototype._handleNewTabClick): Added.
1727 (WebInspector.TabBar.prototype._handleMouseMoved):
1729 2015-06-04 Nikita Vasilyev <nvasilyev@apple.com>
1731 Web Inspector: Decrease tabs height to match Safari's tabs height
1732 https://bugs.webkit.org/show_bug.cgi?id=145647
1734 Reviewed by Timothy Hatcher.
1736 * UserInterface/Views/TabBar.css:
1739 2015-06-04 Tobias Reiss <tobi+webkit@basecode.de>
1741 Web Inspector: Activity Viewer does not update on "Clear Log on reload"
1742 https://bugs.webkit.org/show_bug.cgi?id=145466
1744 Reviewed by Joseph Pecoraro.
1746 1. Isolate logic within LogManager and remove hacks/logic from all other files
1747 2. Within LogManager: Differentiate "messagesCleared" calls
1748 a) that happen as a result of a "requested clear" by Frontend (e.g. Button)
1749 b) that happen on page reload and install "clear/keep-on-page-reload" logic
1750 c) that happen on frame navigated, console.clear() or clear()
1751 3. Unify "ActiveLogCleared" and "Cleared" events to "Cleared"
1753 For step 2b and 2c it is important to delay the handling and wait until
1754 "_mainResourceDidChange" has determined whether a page reload happened or
1757 * UserInterface/Base/Main.js:
1758 (WebInspector.loaded):
1759 Store "clear-log-on-reload" setting globally.
1761 * UserInterface/Controllers/IssueManager.js:
1762 (WebInspector.IssueManager):
1763 * UserInterface/Models/DefaultDashboard.js:
1764 (WebInspector.DefaultDashboard): Deleted.
1765 * UserInterface/Views/ObjectTreeView.js:
1766 (WebInspector.ObjectTreeView.prototype._trackWeakEntries): Deleted.
1767 (WebInspector.ObjectTreeView.prototype._untrackWeakEntries): Deleted.
1768 (WebInspector.ObjectTreeView): Deleted.
1769 Remove deleted events.
1771 * UserInterface/Controllers/JavaScriptLogViewController.js:
1772 (WebInspector.JavaScriptLogViewController.prototype._handleClearShortcut):
1773 (WebInspector.JavaScriptLogViewController.prototype.clear): Deleted.
1774 Remove delegate function call and call LogManager directly.
1776 * UserInterface/Controllers/LogManager.js:
1777 (WebInspector.LogManager):
1778 (WebInspector.LogManager.prototype.messagesCleared):
1779 (WebInspector.LogManager.prototype._delayedMessagesCleared):
1780 (WebInspector.LogManager.prototype.requestClearMessages):
1781 (WebInspector.LogManager.prototype._mainResourceDidChange):
1782 Isolate "clear log" logic, especially clear/keep-log-on-reload logic.
1784 * UserInterface/Views/LogContentView.js:
1785 (WebInspector.LogContentView):
1786 (WebInspector.LogContentView.prototype._sessionStarted):
1787 (WebInspector.LogContentView.prototype._handleContextMenuEvent):
1788 (WebInspector.LogContentView.prototype._logCleared):
1789 (WebInspector.LogContentView.prototype._toggleClearLogOnReloadSetting):
1790 (WebInspector.LogContentView.prototype._clearLog):
1791 (WebInspector.LogContentView.prototype.didClearMessages): Deleted.
1792 (WebInspector.LogContentView.prototype._sessionsCleared): Deleted.
1793 (WebInspector.LogContentView.prototype._activeLogCleared): Deleted.
1794 (WebInspector.LogContentView.prototype._clearLogIgnoringClearMessages): Deleted.
1795 Make it a consumer of LogManager and remove special hacks. Simplify code.
1797 2015-06-03 Devin Rousso <drousso@apple.com>
1799 Web Inspector: if a known CSS property has an unsupported value, only strikethrough the value
1800 https://bugs.webkit.org/show_bug.cgi?id=141262
1802 Reviewed by Timothy Hatcher.
1804 * UserInterface/Models/CSSCompletions.js:
1805 (WebInspector.CSSCompletions.prototype.nameMatchesValidPropertyExactly): Loops through the full property list and returns true only if a property exactly matches the given property name.
1806 (WebInspector.CSSCompletions): Added nameMatchesValidPropertyExactly function.
1807 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
1808 (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded): Added logic to limit the invalid class marker to only the property value if the property name is an actual property.
1810 2015-06-03 Nikita Vasilyev <nvasilyev@apple.com>
1812 Web Inspector: Search field bottom border doesn't match the rest of the toolbar
1813 https://bugs.webkit.org/show_bug.cgi?id=145611
1815 Reviewed by Timothy Hatcher.
1817 * UserInterface/Views/Toolbar.css:
1818 (body:not(.unknown-mac) .toolbar .search-bar > input[type="search"]):
1820 2015-06-03 Joseph Pecoraro <pecoraro@apple.com>
1822 Web Inspector: Uncaught exception starting a NavigationBar drag and mousing over a different NavigationBar
1823 https://bugs.webkit.org/show_bug.cgi?id=145589
1825 Reviewed by Timothy Hatcher.
1827 * UserInterface/Views/NavigationBar.js:
1828 (WebInspector.NavigationBar.prototype._mouseDown):
1829 (WebInspector.NavigationBar.prototype._mouseUp):
1830 When mouse dragging for navigation bars, only match against navigation
1831 bar items inside this navigation bar. Also, fix horizontal detection
1832 of navigation bar items by scanning in the middle of the navigation
1833 bar instead of the top, which missed the items.
1835 2015-06-03 Joseph Pecoraro <pecoraro@apple.com>
1837 Web Inspector: Debugger Popover for Node object should have go-to-arrow to show the node in DOM tree
1838 https://bugs.webkit.org/show_bug.cgi?id=145594
1840 Reviewed by Timothy Hatcher.
1842 * UserInterface/Controllers/DOMTreeManager.js:
1843 (WebInspector.DOMTreeManager.prototype.inspectElement):
1844 Previously we could get an exception later on if we tried to
1845 inspect an element that was not in the DOM. Bail if the node
1846 is not in the DOM or not.
1848 * UserInterface/Views/SourceCodeTextEditor.css:
1849 (.popover .debugger-popover-content > .title > .go-to-arrow):
1850 * UserInterface/Views/SourceCodeTextEditor.js:
1851 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForObject.data.pushNodeToFrontend):
1852 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForObject):
1853 For a node type, add a go-to-arrow in the popover if it is in the DOM or not.
1855 2015-06-02 Joseph Pecoraro <pecoraro@apple.com>
1857 Web Inspector: Remove uses of delete in Sidebar related code
1858 https://bugs.webkit.org/show_bug.cgi?id=145592
1860 Reviewed by Timothy Hatcher.
1862 * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
1863 (WebInspector.CSSStyleDetailsSidebarPanel.prototype.refresh):
1864 Clear value instead of deleting.
1866 * UserInterface/Views/SearchSidebarPanel.js:
1867 (WebInspector.SearchSidebarPanel.prototype.performSearch):
1868 Just clear the search identifier. Also assert it (a required string) is always non-falsey.
1870 * UserInterface/Views/Sidebar.js:
1871 (WebInspector.Sidebar.prototype.resizerDragEnded): Deleted.
1872 This entire callback is unnecessary because whenever we start
1873 a drag we save the value.
1875 2015-06-02 Joseph Pecoraro <pecoraro@apple.com>
1877 Web Inspector: Sidebar and sometimes ContentView scroll position is lost when switching between tabs
1878 https://bugs.webkit.org/show_bug.cgi?id=145591
1880 Reviewed by Timothy Hatcher.
1882 * UserInterface/Views/Sidebar.js:
1883 (WebInspector.Sidebar.prototype.removeSidebarPanel):
1884 When removing a sidebar panel, ensure we call hidden if it was the visible panel.
1886 * UserInterface/Views/SidebarPanel.js:
1887 (WebInspector.SidebarPanel):
1888 (WebInspector.SidebarPanel.prototype.shown):
1889 (WebInspector.SidebarPanel.prototype.hidden):
1890 Save and restore content element scroll position when sidebar panels are shown / hidden.
1892 * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
1893 (WebInspector.CSSStyleDetailsSidebarPanel.prototype.visibilityDidChange):
1894 * UserInterface/Views/ComputedStyleDetailsPanel.js:
1895 (WebInspector.ComputedStyleDetailsPanel.prototype.shown):
1896 * UserInterface/Views/DetailsSidebarPanel.js:
1897 (WebInspector.DetailsSidebarPanel.prototype.shown):
1898 * UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
1899 (WebInspector.LayerTreeDetailsSidebarPanel.prototype.shown):
1900 (WebInspector.LayerTreeDetailsSidebarPanel.prototype.hidden):
1901 Cleanup. Since sidebar panels are using ES6 classes, have super class calls use `super`!
1903 2015-06-02 Nikita Vasilyev <nvasilyev@apple.com>
1905 Web Inspector: Use non-monospace font for the frame selector
1906 https://bugs.webkit.org/show_bug.cgi?id=145586
1908 Reviewed by Timothy Hatcher.
1910 * UserInterface/Views/HierarchicalPathComponent.css:
1911 (.hierarchical-path-component):
1913 2015-06-02 Nikita Vasilyev <nvasilyev@apple.com>
1915 Web Inspector: Dashboard arrow icon on the right is overlapped by a long function/file name
1916 https://bugs.webkit.org/show_bug.cgi?id=145540
1918 Also, increase clickable area of the arrow icon.
1920 Reviewed by Timothy Hatcher.
1922 * UserInterface/Views/DashboardContainerView.css:
1923 (.dashboard-container .advance-arrow):
1924 (.dashboard-container .advance-arrow.advance-forward):
1925 (.dashboard-container .advance-arrow.advance-backward):
1926 * UserInterface/Views/DebuggerDashboardView.css:
1927 (.dashboard.debugger > .location):
1928 (.toolbar .dashboard.debugger):
1929 Increase padding on the right so the content of the dashboard would be never be overlayed by the arrow.
1931 2015-06-02 Joseph Pecoraro <pecoraro@apple.com>
1933 Web Inspector: Shift + Cmd + Left/Right shouldn't switch tabs while editing text
1934 https://bugs.webkit.org/show_bug.cgi?id=145562
1936 Reviewed by Timothy Hatcher.
1938 * UserInterface/Views/TabBrowser.js:
1939 (WebInspector.TabBrowser):
1940 Only these keyboard shortcuts should check if we are in an editable field.
1941 Remove the implicit prevent default so they can fall back to system behavior
1944 (WebInspector.TabBrowser.prototype._showNextTabCheckingForEditableField):
1945 (WebInspector.TabBrowser.prototype._showPreviousTabCheckingForEditableField):
1946 Bail if we are in an editable field. Otherwise perform the action and prevent default.
1948 2015-06-02 Joseph Pecoraro <pecoraro@apple.com>
1950 Web Inspector: ⌘F no longer brings up the find-in-page bar after typing in the quick console
1951 https://bugs.webkit.org/show_bug.cgi?id=145546
1953 Reviewed by Timothy Hatcher.
1955 Scope ContentBrowser keyboard events within the ContentBrowser instead
1956 of global, where they might conflict between ContentBrowsers. The scoped
1957 shortcuts now no longer need to be enabled/disabled.
1959 * UserInterface/Views/ContentBrowser.js:
1960 (WebInspector.ContentBrowser):
1961 Scope the keyboard shortcuts.
1963 (WebInspector.ContentBrowser.prototype.shown):
1964 (WebInspector.ContentBrowser.prototype.hidden):
1965 No longer need to control enabling / disabling these non-global shortcuts.
1967 2015-06-01 Jono Wells <jonowells@apple.com>
1969 Web Inspector: Type token text descenders touch bottom of container
1970 https://bugs.webkit.org/show_bug.cgi?id=145544
1972 Reviewed by Timothy Hatcher.
1974 Move 1px padding from top to bottom of token.
1976 * UserInterface/Views/TypeTokenView.css:
1979 2015-06-01 Joseph Pecoraro <pecoraro@apple.com>
1981 Web Inspector: Better handle keyboard events in the quick console prompt
1982 https://bugs.webkit.org/show_bug.cgi?id=145548
1984 Reviewed by Timothy Hatcher.
1986 * UserInterface/Base/Main.js:
1987 (WebInspector.saveDataToFile):
1988 Move generic InspectorFrontendHost code here.
1990 * UserInterface/Views/ContentBrowser.js:
1991 (WebInspector.ContentBrowser.prototype._save):
1992 (WebInspector.ContentBrowser.prototype._saveAs):
1993 (WebInspector.ContentBrowser.prototype._saveDataToFile): Deleted.
1994 Use the generic save code.
1996 * UserInterface/Controllers/JavaScriptLogViewController.js:
1997 (WebInspector.JavaScriptLogViewController):
1998 (WebInspector.JavaScriptLogViewController.prototype._save):
1999 (WebInspector.JavaScriptLogViewController.prototype._saveAs):
2000 Handle save keyboard shortcuts while the prompt is focused.
2002 * UserInterface/Views/LogContentView.js:
2003 (WebInspector.LogContentView.prototype.focusSearchBar):
2004 (WebInspector.LogContentView.prototype.save):
2005 (WebInspector.LogContentView.prototype.saveAs):
2006 Better handle keyboard shortcut cases in the console prompt for cases
2007 like a collapsed or split console view.
2009 2015-06-01 Nikita Vasilyev <nvasilyev@apple.com>
2011 Web Inspector: Pause/resume button in the debugger dashboard is vertically misaligned
2012 https://bugs.webkit.org/show_bug.cgi?id=145534
2014 Reviewed by Timothy Hatcher.
2016 * UserInterface/Views/ButtonNavigationItem.css:
2017 (.navigation-bar .item.button.suppress-emboss):
2018 Never show borders for the pause/resume button.
2020 * UserInterface/Views/DebuggerDashboardView.css:
2021 (.dashboard.debugger .navigation-bar .item.button):
2023 2015-05-31 Yusuke Suzuki <utatane.tea@gmail.com>
2025 Web Inspector: Drop forEach from WeakMap / WeakSet native member function maps
2026 https://bugs.webkit.org/show_bug.cgi?id=145497
2028 Reviewed by Sam Weinig.
2030 WeakMap / WeakSet don't have forEach method.
2031 This patch drops it from the native prototype function parameters map.
2033 * UserInterface/Models/NativeFunctionParameters.js:
2035 2015-05-29 Timothy Hatcher <timothy@apple.com>
2037 Web Inspector: Resources tab navigation sidebar should have a type filter header
2038 https://bugs.webkit.org/show_bug.cgi?id=145474
2040 Reviewed by Joseph Pecoraro.
2042 * Localizations/en.lproj/localizedStrings.js: Updated.
2044 * UserInterface/Images/UpDownArrows.svg: Make styleable.
2046 * UserInterface/Main.html: Added new files.
2048 * UserInterface/Views/LogContentView.js:
2049 (WebInspector.LogContentView): Drive-by fix. Mark All as exclusive.
2051 * UserInterface/Views/MultipleScopeBarItem.js: Added.
2052 (WebInspector.MultipleScopeBarItem):
2053 (WebInspector.MultipleScopeBarItem.prototype.get element):
2054 (WebInspector.MultipleScopeBarItem.prototype.get exclusive):
2055 (WebInspector.MultipleScopeBarItem.prototype.get scopeBarItems):
2056 (WebInspector.MultipleScopeBarItem.set scopeBarItems.createOption):
2057 (WebInspector.MultipleScopeBarItem.prototype.set scopeBarItems):
2058 (WebInspector.MultipleScopeBarItem.prototype.get selected):
2059 (WebInspector.MultipleScopeBarItem.prototype.set selected):
2060 (WebInspector.MultipleScopeBarItem.prototype.get selectedScopeBarItem):
2061 (WebInspector.MultipleScopeBarItem.prototype.set selectedScopeBarItem):
2062 (WebInspector.MultipleScopeBarItem.prototype._clicked):
2063 (WebInspector.MultipleScopeBarItem.prototype._selectElementSelectionChanged):
2064 (WebInspector.MultipleScopeBarItem.prototype._itemSelectionDidChange):
2066 * UserInterface/Views/NavigationSidebarPanel.js:
2067 (WebInspector.NavigationSidebarPanel.prototype.matchTreeElementAgainstFilterFunctions):
2068 (WebInspector.NavigationSidebarPanel.prototype.applyFiltersToTreeElement.matchTextFilter):
2069 (WebInspector.NavigationSidebarPanel.prototype.applyFiltersToTreeElement.makeVisible):
2070 (WebInspector.NavigationSidebarPanel.prototype.applyFiltersToTreeElement):
2071 (WebInspector.NavigationSidebarPanel.prototype._updateFilter):
2072 (WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged):
2073 Improve filtering so non-text filters can choose to auto-expand the tree.
2075 * UserInterface/Views/ResourceSidebarPanel.css: Added.
2076 (.sidebar > .panel.navigation.resource > :matches(.content, .empty-content-placeholder)):
2077 (.sidebar > .panel.navigation.resource > .navigation-bar):
2079 * UserInterface/Views/ResourceSidebarPanel.js:
2080 (WebInspector.ResourceSidebarPanel):
2081 (WebInspector.ResourceSidebarPanel.prototype.hasCustomFilters):
2082 (WebInspector.ResourceSidebarPanel.prototype.matchTreeElementAgainstCustomFilters.match):
2083 (WebInspector.ResourceSidebarPanel.prototype.matchTreeElementAgainstCustomFilters):
2084 (WebInspector.ResourceSidebarPanel.prototype._scopeBarSelectionDidChange):
2085 Make a ScopeBar and make it filter the TreeOutline when needed.
2087 * UserInterface/Views/ScopeBar.css:
2088 (.scope-bar > li.multiple):
2089 (.scope-bar > li.multiple > select):
2090 (.scope-bar > li.multiple.selected > select):
2091 (.scope-bar > li.multiple > .arrows):
2092 (.scope-bar > li.multiple:matches(.selected, :hover, :active) > .arrows svg .filled):
2093 (.scope-bar > li.multiple:matches(.selected, :hover, :active) > .arrows svg .stroked):
2095 * UserInterface/Views/ScopeBar.js:
2096 (WebInspector.ScopeBar): Support shouldGroupNonExclusiveItems which will use MultipleScopeBarItem.
2097 (WebInspector.ScopeBar.prototype._populate):
2098 (WebInspector.ScopeBar.prototype._itemSelectionDidChange):
2099 (WebInspector.ScopeBar.prototype.updateLayout): Deleted. Not needed for our current styles.
2101 * UserInterface/Views/ScopeBarItem.js:
2102 (WebInspector.ScopeBarItem):
2103 (WebInspector.ScopeBarItem.prototype.get id):
2104 (WebInspector.ScopeBarItem.prototype.get label):
2105 (WebInspector.ScopeBarItem.prototype.get exclusive):
2106 (WebInspector.ScopeBarItem.prototype.setSelected):
2107 (WebInspector.ScopeBarItem.prototype._clicked):
2108 (WebInspector.ScopeBarItem.prototype.get element): Deleted.
2109 (WebInspector.ScopeBarItem.prototype._markElementSelected): Deleted.
2110 Cleaned up and modernized a bit.
2112 2015-05-29 Tobias Reiss <tobi+webkit@basecode.de>
2114 Web Inspector: Activity Viewer does not update on "clear all console messages"
2115 https://bugs.webkit.org/show_bug.cgi?id=144681
2117 Reviewed by Joseph Pecoraro.
2119 Do not apply "ignoreDidClearMessages" hack on "Clear log" Button and Context menu.
2121 * UserInterface/Views/LogContentView.js:
2122 (WebInspector.LogContentView.prototype._sessionStarted):
2123 (WebInspector.LogContentView.prototype._clearLogIgnoringClearMessages):
2124 (WebInspector.LogContentView.prototype._clearLog): Deleted.
2126 2015-05-29 Matt Baker <mattbaker@apple.com>
2128 Web Inspector: Remove unused expandTreeElementsWhenArrowing property from TreeOutline
2129 https://bugs.webkit.org/show_bug.cgi?id=145470
2131 Reviewed by Joseph Pecoraro.
2133 * UserInterface/Views/TreeOutline.js:
2134 (WebInspector.TreeOutline.prototype._treeKeyDown):
2135 Replaced uses of removed property with boolean literal.
2137 2015-05-29 Joseph Pecoraro <pecoraro@apple.com>
2139 Web Inspector: Tabs should have Context Menus
2140 https://bugs.webkit.org/show_bug.cgi?id=144208
2142 Reviewed by Timothy Hatcher.
2144 Give non-pinned tabs "Close Tab" and "Close Other Tabs" context
2145 menu items to affect other non-pinned tabs.
2147 * Localizations/en.lproj/localizedStrings.js:
2148 * UserInterface/Views/TabBarItem.js:
2149 (WebInspector.TabBarItem):
2150 (WebInspector.TabBarItem.prototype._handleContextMenuEvent.closeTab):
2151 (WebInspector.TabBarItem.prototype._handleContextMenuEvent.closeOtherTabs):
2152 (WebInspector.TabBarItem.prototype._handleContextMenuEvent):
2154 2015-05-29 Matt Baker <mattbaker@apple.com>
2156 Web Inspector: Restoring the last selected DOM node fails on reload (DOMAgent: No node with given path found)
2157 https://bugs.webkit.org/show_bug.cgi?id=144231
2159 Reviewed by Timothy Hatcher.
2161 Removed _restoreSelectedNodeIsAllowed flag from DOMTreeContentView. The frontend receives two documentUpdated
2162 events from the DOM Agent during page reload, and the flag was preventing DOMTreeContentView from restoring
2163 the previous selection in response to the second event.
2165 * UserInterface/Views/DOMTreeContentView.js:
2166 (WebInspector.DOMTreeContentView.prototype.selectLastSelectedNode):
2167 (WebInspector.DOMTreeContentView.prototype._restoreSelectedNodeAfterUpdate):
2169 2015-05-28 Nikita Vasilyev <nvasilyev@apple.com>
2171 Web Inspector: Update toolbar styles
2172 https://bugs.webkit.org/show_bug.cgi?id=145419
2174 Also, use hairline borders (1 phisical pixel) on retina (DPI >= 2).
2176 Reviewed by Timothy Hatcher.
2178 * UserInterface/Views/ButtonToolbarItem.css:
2179 (.toolbar .item.button): Deleted.
2180 (.toolbar.icon-and-label-vertical .item.button): Deleted.
2181 (.toolbar.icon-and-label-horizontal .item.button): Deleted.
2182 (.toolbar .item.button > .glyph): Deleted.
2183 (.toolbar.small-size .item.button > .glyph): Deleted.
2184 * UserInterface/Views/DashboardContainerView.css:
2185 (.toolbar .dashboard-container): Deleted.
2186 (.toolbar.collapsed .dashboard-container): Deleted.
2187 (.toolbar.small-size:matches(.icon-only, .icon-and-label-vertical, .icon-and-label-horizontal) .dashboard-container): Deleted.
2188 (.toolbar .dashboard.slide-out-down): Deleted.
2189 (.toolbar .dashboard.slide-in-up): Deleted.
2190 * UserInterface/Views/Toolbar.css:
2191 (.toolbar .search-bar > input[type="search"]):
2192 (.toolbar .search-bar > input[type="search"]::-webkit-textfield-decoration-container):
2193 (body:not(.unknown-mac) .toolbar .dashboard-container):
2194 (body:not(.unknown-mac) .toolbar .search-bar > input[type="search"]):
2195 (body:not(.unknown-mac) .toolbar .search-bar > input[type="search"]:focus):
2196 (body:not(.unknown-mac) .toolbar .item.button:active):
2197 (body.window-inactive:not(.unknown-mac) .toolbar .dashboard-container):
2198 (body.unknown-mac .toolbar .dashboard-container):
2199 (body.unknown-mac .toolbar .search-bar > input[type="search"]):
2200 (body.unknown-mac .toolbar .search-bar > input[type="search"]:focus):
2201 (@media (-webkit-min-device-pixel-ratio: 2)):
2202 (body.unknown-mac .toolbar .item.button:active):
2203 (body.unknown-mac.window-inactive .toolbar .dashboard-container):
2205 2015-05-28 Devin Rousso <drousso@apple.com>
2207 Web Inspector: Jump from a computed style to the rule it came from
2208 https://bugs.webkit.org/show_bug.cgi?id=120640
2210 Reviewed by Timothy Hatcher.
2212 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
2213 (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded):
2214 If the delegate of CSSStyleDeclarationTextEditor has cssStyleDeclarationTextEditorShouldAddPropertyGoToArrows set to true, add a goToArrow to all CSS property entries.
2215 (WebInspector.CSSStyleDeclarationTextEditor.prototype.highlightProperty.propertiesMatch):
2216 (WebInspector.CSSStyleDeclarationTextEditor.prototype.highlightProperty.hasMatchingLonghandProperty):
2217 (WebInspector.CSSStyleDeclarationTextEditor.prototype.highlightProperty):
2218 Determines if a given CSS property is in the CSS style section and if so, select that CSS property, focus on the section containing that CSS property, and return true.
2219 * UserInterface/Views/CSSStyleDeclarationSection.js:
2220 (WebInspector.CSSStyleDeclarationSection.prototype.highlightProperty):
2221 Searches through the properties of the section for a given property and scrolls to it if found.
2222 * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
2223 (WebInspector.CSSStyleDetailsSidebarPanel.prototype.computedStyleDetailsPanelShowProperty):
2224 Switches to the rulesStyleDetailsPanel and scrolls to and hightlights a given property in that panel.
2225 (WebInspector.CSSStyleDetailsSidebarPanel.prototype._navigationItemSelected):
2226 (WebInspector.CSSStyleDetailsSidebarPanel.prototype._switchPanels):
2227 Moved this function out of _navigationItemSelected for better reusablity.
2228 * UserInterface/Views/ComputedStyleDetailsPanel.js:
2229 (WebInspector.ComputedStyleDetailsPanel.prototype.cssStyleDeclarationTextEditorShowProperty):
2230 Function that calls the delegate (which should be CSSStyleDetailsSidebarPanel) function computedStyleDetailsPanelShowProperty.
2231 * UserInterface/Views/RulesStyleDetailsPanel.js:
2232 (WebInspector.RulesStyleDetailsPanel):
2233 (WebInspector.RulesStyleDetailsPanel.prototype.refresh):
2234 (WebInspector.RulesStyleDetailsPanel.prototype.scrollToSectionAndHighlightProperty):
2235 Searches through all the sections of the RulesStyleDetailsPanel for a given CSS property.
2236 (WebInspector.RulesStyleDetailsPanel.prototype.shown):
2237 (WebInspector.RulesStyleDetailsPanel.prototype.hidden):
2238 (WebInspector.RulesStyleDetailsPanel.prototype.nodeStylesRefreshed):
2239 Added a flag to this function that will highlight and scroll to a given property (_propertyToSelectAndHighlight) if set on load.
2240 * UserInterface/Views/StyleDetailsPanel.js:
2241 (WebInspector.StyleDetailsPanel.prototype.markAsNeedsRefresh):
2242 (WebInspector.StyleDetailsPanel.prototype.nodeStylesRefreshed):
2243 Made into protected function to allow it to be overridden.
2244 (WebInspector.StyleDetailsPanel.prototype._nodeStylesRefreshed): Deleted.
2246 2015-05-28 Joseph Pecoraro <pecoraro@apple.com>
2248 Web Inspector: Should have a keyboard shortcut to switch between inspector tabs
2249 https://bugs.webkit.org/show_bug.cgi?id=144207
2251 Reviewed by Timothy Hatcher.
2253 These keyboard shortcuts work well in an undocked inspector window.
2254 Be careful that some keyboard shortcuts, when used inside a text
2255 editor / text field are just text actions. However, some keyboard
2256 shortcuts will work no matter where you trigger them.
2258 * UserInterface/Models/KeyboardShortcut.js:
2259 * UserInterface/Views/TabBar.js:
2260 (WebInspector.TabBar.prototype.selectPreviousTab):
2261 (WebInspector.TabBar.prototype.selectNextTab):
2262 * UserInterface/Views/TabBrowser.js:
2263 (WebInspector.TabBrowser):
2264 (WebInspector.TabBrowser.prototype._showPreviousTab):
2265 (WebInspector.TabBrowser.prototype._showNextTab):
2267 2015-05-28 Joseph Pecoraro <pecoraro@apple.com>
2269 Web Inspector: NewTabContentView should update button disabled state as other tabs are added/removed
2270 https://bugs.webkit.org/show_bug.cgi?id=145448
2272 Reviewed by Timothy Hatcher.
2274 * UserInterface/Views/NewTabContentView.js:
2275 (WebInspector.NewTabContentView):
2276 Always add a click listener and add the type as a private property on the element.
2278 (WebInspector.NewTabContentView.prototype.shown):
2279 (WebInspector.NewTabContentView.prototype.hidden):
2280 Add / remove event listeners for tab changes. Also update the view when shown.
2282 (WebInspector.NewTabContentView.prototype._createNewTab):
2283 A disabled button an now be clicked. Do nothing if a new tab of this type is not allowed.
2285 (WebInspector.NewTabContentView.prototype._updateTabItems):
2286 Refresh the disabled state for each of the buttons.
2288 2015-05-27 Joseph Pecoraro <pecoraro@apple.com>
2290 Web Inspector: Show Page Source does not switch to Resources tab if inspector was closed
2291 https://bugs.webkit.org/show_bug.cgi?id=145423
2293 Reviewed by Timothy Hatcher.
2295 * UserInterface/Base/Main.js:
2296 (WebInspector._frameWasAdded.delayedWork):
2297 (WebInspector._frameWasAdded):
2298 In the special case where we are holding to show a frame's source code when
2299 the frame becomes available (_frameIdentifierToShowSourceCodeWhenAvailable)
2300 we should be forcing to show the tab.
2302 2015-05-27 Joseph Pecoraro <pecoraro@apple.com>
2304 Web Inspector: Toggling an inherited property sometimes stops working
2305 https://bugs.webkit.org/show_bug.cgi?id=145416
2307 Reviewed by Timothy Hatcher.
2309 * UserInterface/Models/DOMNodeStyles.js:
2310 (WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload):
2311 Ensure we update the existing model objects with the new state information
2312 before possibly bailing. This may produce changed events that update
2313 parts of the inspector appropriately.
2315 2015-05-27 Joseph Pecoraro <pecoraro@apple.com>
2317 Web Inspector: REGRESSION(r179286) Editing Style Metrics Values no longer works
2318 https://bugs.webkit.org/show_bug.cgi?id=143164
2320 Reviewed by Brian Burg.
2322 * UserInterface/Views/BoxModelDetailsSectionRow.js:
2323 (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics.createElement):
2324 (WebInspector.BoxModelDetailsSectionRow.prototype._applyUserInput.resolvedNode.toggleInlineStyleProperty):
2325 (WebInspector.BoxModelDetailsSectionRow.prototype._applyUserInput.resolvedNode.didToggle):
2326 (WebInspector.BoxModelDetailsSectionRow.prototype._applyUserInput.resolvedNode):
2327 (WebInspector.BoxModelDetailsSectionRow.prototype._applyUserInput):
2328 Make it so editing in the metrics pane just evaluates elem.style.setProperty
2329 on the inspected page. Use "!important" to try and give the maximum priority
2330 possible, which is a change from older behavior. Finally, refresh the sidebar
2331 to update all values, and update the UI if bad input didn't change styles.
2333 2015-05-26 Joseph Pecoraro <pecoraro@apple.com>
2335 Web Inspector: Function parameter string parsing improperly handles empty parameter list
2336 https://bugs.webkit.org/show_bug.cgi?id=145391
2338 Reviewed by Darin Adler.
2340 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
2341 (WebInspector.ObjectTreePropertyTreeElement.prototype._functionParameterString):
2343 2015-05-26 Joseph Pecoraro <pecoraro@apple.com>
2345 Web Inspector: Add Array.prototype.copyWithin parameter list
2346 https://bugs.webkit.org/show_bug.cgi?id=145388
2348 Reviewed by Darin Adler.
2350 * UserInterface/Models/NativeFunctionParameters.js:
2352 2015-05-26 Nikita Vasilyev <nvasilyev@apple.com>
2354 Web Inspector: focus outline of a search field should have a radius
2355 https://bugs.webkit.org/show_bug.cgi?id=145383
2357 Add a focus outline animation to roughly mimic the default focus outline of OS X.
2359 Reviewed by Timothy Hatcher.
2361 * UserInterface/Views/Toolbar.css:
2362 (.toolbar .search-bar > input[type="search"]):
2363 -webkit-focus-ring-color doesn't follow element's curvature (e.g. border-radius)
2364 and it cannot be animated. Replace it with box-shadow.
2366 (.toolbar .search-bar > input[type="search"]:focus):
2368 2015-05-26 Nikita Vasilyev <nvasilyev@apple.com>
2370 Web Inspector: The bottom part "debugger" is clipped in the tab’s title
2371 https://bugs.webkit.org/show_bug.cgi?id=145381
2373 Reviewed by Timothy Hatcher.
2375 * UserInterface/Views/TabBar.css:
2377 Set line-height to fit "debugger". Setting line-height to 16px, which is the
2378 size of the tabs icons, moves the text one pixel up, so set it to 15px.
2380 2015-05-26 Dan Bernstein <mitz@apple.com>
2382 <rdar://problem/21104551> Update build settings
2384 Reviewed by Anders Carlsson.
2386 * Configurations/Base.xcconfig:
2387 * Configurations/DebugRelease.xcconfig:
2388 * Configurations/Version.xcconfig:
2390 2015-05-23 Dan Bernstein <mitz@apple.com>
2392 Remove unused definitions of WEBKIT_VERSION_MIN_REQUIRED
2393 https://bugs.webkit.org/show_bug.cgi?id=145345
2395 Reviewed by Sam Weinig.
2397 * Configurations/Base.xcconfig:
2399 2015-05-23 Joseph Pecoraro <pecoraro@apple.com>
2401 Web Inspector: Remove code related with unused style classes
2402 https://bugs.webkit.org/show_bug.cgi?id=145332
2404 Reviewed by Timothy Hatcher.
2406 * UserInterface/Views/ConsoleMessageView.js:
2407 (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString.append):
2408 (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString):
2409 The "type-string" class has no styles associated with it. So the entire span can be removed.
2411 * UserInterface/Views/DOMTreeElement.js:
2412 Both of these style classes have no styles associated with them. Remove the class names.
2414 2015-05-23 Joseph Pecoraro <pecoraro@apple.com>
2416 Web Inspector: Improve native parameter lists a bit
2417 https://bugs.webkit.org/show_bug.cgi?id=145338
2419 Reviewed by Timothy Hatcher.
2421 * UserInterface/Models/NativeFunctionParameters.js:
2422 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
2423 (WebInspector.ObjectTreePropertyTreeElement.prototype._functionParameterString):
2425 2015-05-23 Joseph Pecoraro <pecoraro@apple.com>
2427 Web Inspector: Update CSS Autocompletion properties and values
2428 https://bugs.webkit.org/show_bug.cgi?id=145341
2430 Reviewed by Timothy Hatcher.
2432 * UserInterface/Models/CSSKeywordCompletions.js:
2434 2015-05-22 Joseph Pecoraro <pecoraro@apple.com>
2436 Web Inspector: Adopt Object.setPrototypeOf
2437 https://bugs.webkit.org/show_bug.cgi?id=145335
2439 Reviewed by Timothy Hatcher.
2441 For a case that won't easily move to ES6 classes use Object.setPrototypeOf.
2443 * UserInterface/Protocol/InspectorBackend.js:
2444 (InspectorBackend.Command.create):
2446 2015-05-22 Joseph Pecoraro <pecoraro@apple.com>
2448 Web Inspector: Inline use once class names and remove some unused class names
2449 https://bugs.webkit.org/show_bug.cgi?id=145334
2451 Reviewed by Timothy Hatcher.
2453 * UserInterface/Views/ApplicationCacheFrameContentView.js:
2454 (WebInspector.ApplicationCacheFrameContentView):
2455 * UserInterface/Views/BoxModelDetailsSectionRow.js:
2456 (WebInspector.BoxModelDetailsSectionRow):
2457 * UserInterface/Views/CSSStyleDeclarationSection.js:
2458 (WebInspector.CSSStyleDeclarationSection):
2459 * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
2460 (WebInspector.CSSStyleDetailsSidebarPanel):
2461 * UserInterface/Views/ClusterContentView.js:
2462 (WebInspector.ClusterContentView):
2463 * UserInterface/Views/CompletionSuggestionsView.js:
2464 (WebInspector.CompletionSuggestionsView):
2465 * UserInterface/Views/ConsolePrompt.js:
2466 (WebInspector.ConsolePrompt):
2467 * UserInterface/Views/ContentBrowser.js:
2468 (WebInspector.ContentBrowser):
2469 * UserInterface/Views/ContentFlowTreeElement.js:
2470 (WebInspector.ContentFlowTreeElement):
2471 * UserInterface/Views/ContentView.js:
2472 (WebInspector.ContentView):
2473 * UserInterface/Views/ContentViewContainer.js:
2474 (WebInspector.ContentViewContainer):
2475 * UserInterface/Views/CookieStorageContentView.js:
2476 (WebInspector.CookieStorageContentView):
2477 * UserInterface/Views/CookieStorageTreeElement.js:
2478 (WebInspector.CookieStorageTreeElement):
2479 * UserInterface/Views/DOMStorageContentView.js:
2480 (WebInspector.DOMStorageContentView):
2481 * UserInterface/Views/DOMTreeContentView.js:
2482 (WebInspector.DOMTreeContentView):
2483 * UserInterface/Views/DashboardView.js:
2484 (WebInspector.DashboardView):
2485 * UserInterface/Views/DatabaseTableContentView.js:
2486 (WebInspector.DatabaseTableContentView):
2487 * UserInterface/Views/DebuggerDashboardView.js:
2488 (WebInspector.DebuggerDashboardView):
2489 (WebInspector.DebuggerDashboardView.prototype._rebuildLocation):
2490 * UserInterface/Views/DetailsSection.js:
2491 (WebInspector.DetailsSection):
2492 * UserInterface/Views/DetailsSectionSimpleRow.js:
2493 * UserInterface/Views/FontResourceContentView.js:
2494 (WebInspector.FontResourceContentView):
2495 (WebInspector.FontResourceContentView.prototype.createMetricElement):
2496 (WebInspector.FontResourceContentView.prototype.contentAvailable):
2497 * UserInterface/Views/HierarchicalPathComponent.js:
2498 (WebInspector.HierarchicalPathComponent):
2499 (WebInspector.HierarchicalPathComponent.prototype.set selectorArrows):
2500 * UserInterface/Views/IndexedDatabaseObjectStoreContentView.js:
2501 * UserInterface/Views/LayoutTimelineOverviewGraph.js:
2502 (WebInspector.LayoutTimelineOverviewGraph):
2503 * UserInterface/Views/NetworkTimelineOverviewGraph.js:
2504 (WebInspector.NetworkTimelineOverviewGraph):
2505 * UserInterface/Views/OverviewTimelineView.js:
2506 * UserInterface/Views/ProbeSetDetailsSection.js:
2507 * UserInterface/Views/QuickConsole.js:
2508 * UserInterface/Views/ReplayDashboardView.js:
2509 * UserInterface/Views/ScriptContentView.js:
2510 (WebInspector.ScriptContentView):
2511 * UserInterface/Views/ScriptTimelineOverviewGraph.js:
2512 (WebInspector.ScriptTimelineOverviewGraph):
2513 * UserInterface/Views/TextContentView.js:
2514 (WebInspector.TextContentView):
2515 * UserInterface/Views/TimelineOverview.js:
2516 (WebInspector.TimelineOverview):
2517 * UserInterface/Views/TimelineOverviewGraph.js:
2518 (WebInspector.TimelineOverviewGraph):
2519 * UserInterface/Views/TimelineRecordBar.js:
2520 (WebInspector.TimelineRecordBar):
2521 * UserInterface/Views/TimelineRecordFrame.js:
2522 (WebInspector.TimelineRecordFrame):
2523 * UserInterface/Views/TimelineRecordingContentView.js:
2524 (WebInspector.TimelineRecordingContentView):
2525 * UserInterface/Views/TimelineRuler.js:
2526 (WebInspector.TimelineRuler):
2527 (WebInspector.TimelineRuler.prototype.set allowsTimeRangeSelection):
2529 2015-05-22 Joseph Pecoraro <pecoraro@apple.com>
2531 Web Inspector: DOMTree Keyboard Shortcut 'H' to toggle element visibility is not working
2532 https://bugs.webkit.org/show_bug.cgi?id=145331
2534 Reviewed by Brian Burg.
2536 We no longer have CSSProperty.value setters. Instead of attempting
2537 to toggle and clobber inline style values on the element we:
2539 1. inject a <style> on the page like ".WebInspectorHide { visibility:hidden }"
2540 2. toggle the WebInspectorHide class on the selected element
2542 This approach is inspired by the original WebKit change in the
2543 old inspector frontend: <https://webkit.org/b/110641>.
2545 The old approach toggled a few properties (opacity and pointer events)
2546 while the new approach uses visibility, matching other browsers.
2548 * UserInterface/Views/DOMTreeOutline.js:
2549 (WebInspector.DOMTreeOutline.prototype._hideElement.resolvedNode.injectStyleAndToggleClass):
2550 (WebInspector.DOMTreeOutline.prototype._hideElement.resolvedNode):
2551 (WebInspector.DOMTreeOutline.prototype._hideElement):
2552 (WebInspector.DOMTreeOutline.prototype._hideElement.toggleProperties): Deleted.
2554 2015-05-21 Joseph Pecoraro <pecoraro@apple.com>
2556 Web Inspector: Give Toolbar buttons an active style
2557 https://bugs.webkit.org/show_bug.cgi?id=145292
2559 Reviewed by Timothy Hatcher.
2561 * UserInterface/Views/ButtonToolbarItem.css:
2562 (.toolbar .item.button:active):
2564 2015-05-21 Nikita Vasilyev <nvasilyev@apple.com>
2566 Web Inspector: Dashboard debugger information can be clipped
2567 https://bugs.webkit.org/show_bug.cgi?id=144209
2569 Reviewed by Timothy Hatcher.
2571 * UserInterface/Views/DashboardContainerView.css:
2572 (.toolbar .dashboard-container):
2573 Make dashboard flexible by using vw (viewport width units).
2575 * UserInterface/Views/DefaultDashboardView.css:
2576 (.toolbar .dashboard.default):
2577 Center default dashboard icons in the middle, don't spread them along the dashboard.
2579 2015-05-21 Joseph Pecoraro <pecoraro@apple.com>
2581 Web Inspector: Improve the UI of the type profiler popover
2582 https://bugs.webkit.org/show_bug.cgi?id=140737
2584 Reviewed by Timothy Hatcher.
2586 Display TypeDescriptions in a Tree similiar to ObjectTrees.
2587 Currently the only information we have in a TypeDescription
2588 is the property names, and not their types, so all we can
2589 display in the tree are names.
2591 * Localizations/en.lproj/localizedStrings.js:
2592 * UserInterface/Controllers/TypeTokenAnnotator.js:
2593 (WebInspector.TypeTokenAnnotator.prototype._insertTypeToken):
2594 * UserInterface/Main.html:
2595 * UserInterface/Models/ScriptSyntaxTree.js:
2596 (WebInspector.ScriptSyntaxTree.prototype.updateTypes):
2597 * UserInterface/Models/StructureDescription.js: Added.
2598 (WebInspector.StructureDescription):
2599 (WebInspector.StructureDescription.fromPayload):
2600 (WebInspector.StructureDescription.prototype.get fields):
2601 (WebInspector.StructureDescription.prototype.get optionalFields):
2602 (WebInspector.StructureDescription.prototype.get constructorName):
2603 (WebInspector.StructureDescription.prototype.get prototypeStructure):
2604 (WebInspector.StructureDescription.prototype.get imprecise):
2605 * UserInterface/Models/TypeDescription.js: Added.
2606 (WebInspector.TypeDescription):
2607 (WebInspector.TypeDescription.fromPayload):
2608 (WebInspector.TypeDescription.prototype.get leastCommonAncestor):
2609 (WebInspector.TypeDescription.prototype.get typeSet):
2610 (WebInspector.TypeDescription.prototype.get structures):
2611 (WebInspector.TypeDescription.prototype.get valid):
2612 (WebInspector.TypeDescription.prototype.get truncated):
2613 * UserInterface/Models/TypeSet.js:
2614 (WebInspector.TypeSet):
2615 (WebInspector.TypeSet.prototype.get primitiveTypeNames):
2616 * UserInterface/Views/ObjectTreeView.js:
2617 (WebInspector.ObjectTreeView.prototype._updateChildren):
2618 * UserInterface/Views/Section.css: Removed.
2619 * UserInterface/Views/Section.js: Removed.
2620 * UserInterface/Views/SourceCodeTextEditor.css:
2621 (.popover .expandable):
2622 * UserInterface/Views/SourceCodeTextEditor.js:
2623 (WebInspector.SourceCodeTextEditor):
2624 (WebInspector.SourceCodeTextEditor.prototype.showPopoverForTypes):
2625 (WebInspector.SourceCodeTextEditor.prototype._populateWithScriptContent):
2626 (WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedJavaScriptTypeInformation.handler):
2627 (WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedJavaScriptTypeInformation):
2628 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForObject):
2629 * UserInterface/Views/TypePropertiesSection.js: Removed.
2630 * UserInterface/Views/TypeTokenView.js:
2631 (WebInspector.TypeTokenView):
2632 (WebInspector.TypeTokenView.titleForPopover):
2633 (WebInspector.TypeTokenView.prototype.update):
2634 (WebInspector.TypeTokenView.prototype._setUpMouseoverHandlers):
2635 (WebInspector.TypeTokenView.prototype._shouldShowPopover):
2636 (WebInspector.TypeTokenView.prototype._displayTypeName):
2637 * UserInterface/Views/TypeTreeElement.css: Added.
2638 (.type-tree-element):
2639 (.type-tree-element > .titles):
2640 (.type-tree-element > .disclosure-button):
2641 (.type-tree-element.parent > .disclosure-button):
2642 (.type-tree-element.parent.expanded > .disclosure-button):
2643 (.type-tree-element > .icon):
2644 (.type-tree-element.prototype):
2645 (.type-tree-element.prototype:focus):
2646 (.type-tree-element.prototype + ol):
2647 * UserInterface/Views/TypeTreeElement.js: Added.
2648 (WebInspector.TypeTreeElement):
2649 (WebInspector.TypeTreeElement.prototype.get name):
2650 (WebInspector.TypeTreeElement.prototype.get isPrototype):
2651 (WebInspector.TypeTreeElement.prototype.onpopulate):
2652 (WebInspector.TypeTreeElement.prototype.onexpand):
2653 * UserInterface/Views/TypeTreeView.css: Renamed from Source/WebInspectorUI/UserInterface/Views/PropertiesSection.js.
2655 (.type-tree-outline):
2656 (.type-tree-outline li):
2657 (.type-tree-outline ol):
2658 (.type-tree-outline ol.expanded):
2659 (.type-tree-outline li .empty-message):
2660 * UserInterface/Views/TypeTreeView.js: Added.
2661 (WebInspector.TypeTreeView):
2662 (WebInspector.TypeTreeView.prototype.get typeDescription):
2663 (WebInspector.TypeTreeView.prototype.get element):
2664 (WebInspector.TypeTreeView.prototype.get treeOutline):
2665 (WebInspector.TypeTreeView.prototype._populate):
2667 2015-05-20 Joseph Pecoraro <pecoraro@apple.com>
2669 Web Inspector: Fix WebInspector.StackTrace style
2670 https://bugs.webkit.org/show_bug.cgi?id=145240
2672 Reviewed by Timothy Hatcher.
2674 * UserInterface/Models/StackTrace.js:
2675 Reorder and add our usual marker comments.
2677 2015-05-19 Joseph Pecoraro <pecoraro@apple.com>
2679 Web Inspector: Improve Preview for NodeList / array like collections
2680 https://bugs.webkit.org/show_bug.cgi?id=145177
2682 Reviewed by Timothy Hatcher.
2684 * UserInterface/Views/ObjectPreviewView.js:
2685 (WebInspector.ObjectPreviewView.prototype._appendPreview):
2686 Show the class name for a non-basic-Array, but still hide
2687 it for a basic Array.
2689 2015-05-19 Nikita Vasilyev <nvasilyev@apple.com>
2691 Web Inspector: Convert stackTrace from raw payload data to an array of CallFrames
2692 https://bugs.webkit.org/show_bug.cgi?id=144982
2694 Reviewed by Joseph Pecoraro.
2696 * UserInterface/Controllers/LogManager.js:
2697 * UserInterface/Main.html:
2698 * UserInterface/Models/CallFrame.js:
2699 (WebInspector.CallFrame.fromPayload):
2700 Consider an empty string url as a native code as it was in
2701 WebInspector.ConsoleMessageView.prototype._firstNonNativeCallFrame
2703 * UserInterface/Models/ConsoleMessage.js:
2704 (WebInspector.ConsoleMessage):
2705 Convert _stackTrace from an array of payload objects to WebInspector.StackTrace model.
2707 * UserInterface/Models/StackTrace.js: Added.
2708 (WebInspector.StackTrace):
2709 (WebInspector.StackTrace.prototype.get callFrames):
2710 (WebInspector.StackTrace.prototype.get firstNonNativeCallFrame): Added.
2711 (WebInspector.StackTrace.fromPayload):
2712 * UserInterface/Test.html:
2713 * UserInterface/Views/CallFrameView.js:
2714 (WebInspector.CallFrameView):
2715 Don't show a URL when sourceCodeLocation is missing, fix webkit.org/b/145071.
2717 * UserInterface/Views/ConsoleMessageView.js:
2718 (WebInspector.ConsoleMessageView):
2719 (WebInspector.ConsoleMessageView.prototype.toClipboardString):
2720 (WebInspector.ConsoleMessageView.prototype._appendLocationLink):
2721 (WebInspector.ConsoleMessageView.prototype._appendStackTrace):
2722 (WebInspector.ConsoleMessageView.prototype._shouldShowStackTrace):
2723 (WebInspector.ConsoleMessageView.prototype._linkifyCallFrame):
2724 (WebInspector.ConsoleMessageView.prototype._firstNonNativeCallFrame): Deleted.
2726 2015-05-18 Joseph Pecoraro <pecoraro@apple.com>
2728 Web Inspector: Improve Reliability of Closing and Reopening Elements Tab
2729 https://bugs.webkit.org/show_bug.cgi?id=145139
2731 Reviewed by Timothy Hatcher.
2733 * UserInterface/Views/DOMTreeElement.js:
2734 (WebInspector.DOMTreeElement.prototype.highlightSearchResults):
2735 (WebInspector.DOMTreeElement.prototype.hideSearchHighlights):
2736 (WebInspector.DOMTreeElement.prototype.emphasizeSearchHighlight.animationEnded):
2737 (WebInspector.DOMTreeElement.prototype.emphasizeSearchHighlight):
2738 (WebInspector.DOMTreeElement.prototype._updateChildren):
2739 (WebInspector.DOMTreeElement.prototype.adjustCollapsedRange):
2740 (WebInspector.DOMTreeElement.prototype._startEditingAsHTML.dispose):
2741 (WebInspector.DOMTreeElement.prototype._startEditingAsHTML):
2742 (WebInspector.DOMTreeElement.prototype.updateTitle):
2743 Stop using the `delete` operator.
2745 * UserInterface/Views/DOMTreeOutline.js:
2746 (WebInspector.DOMTreeOutline.prototype.setVisible):
2747 Trigger an update when the outline is made visible.
2749 * UserInterface/Views/FrameDOMTreeContentView.js:
2750 (WebInspector.FrameDOMTreeContentView.prototype._rootDOMNodeAvailable):
2751 Provide a reasonable default selection if there is no body or document element.
2752 For example in an augmented DOM tree.
2754 2015-05-18 Joseph Pecoraro <pecoraro@apple.com>
2756 Web Inspector: Tab Restoration incorrectly makes ContentViews "shown" in background tabs
2757 https://bugs.webkit.org/show_bug.cgi?id=145080
2759 Reviewed by Timothy Hatcher.
2761 Many tabs have their own content browser / navigation sidebar. During
2762 state restoration, each tab would immediately try to restore an
2763 appropriate ContentView after the load / navigation. However, in doing
2764 so, we weren't respecting whether or not the Tab the ContentBrowser
2765 was in was hidden or not, so ContentViews in background tags were
2766 still being treated as shown/visible.
2768 This patch changes state restoration to only affect the foreground
2769 tab, and be delayed on all background tabs until that tab is shown.
2770 This reduces the amount of work on load and navigation to just a
2771 single tab instead of all tabs. Most importantly, it avoids having
2772 performing work on ContentBrowsers that are non-visible, so state
2773 restoration only happens for visible ContentBrowsers.
2775 For simplicity, in the case of a delayed tab restoration triggered
2776 by the user switching tabs, we don't try twice (like we occasionally
2777 do on load/reload). We could add back some hueristic here if needed.
2779 * UserInterface/Base/Main.js:
2780 (WebInspector.contentLoaded):
2781 (WebInspector.activateExtraDomains):
2782 (WebInspector._mainResourceDidChange):
2783 (WebInspector._restoreCookieForOpenTabs):
2784 * UserInterface/Views/NavigationSidebarPanel.js:
2786 * UserInterface/Views/TabContentView.js:
2787 (WebInspector.TabContentView.prototype.shown):
2788 (WebInspector.TabContentView.prototype.restoreStateFromCookie):
2789 (WebInspector.TabContentView.prototype.saveStateToCookie):
2790 When asked to restore state, save that logic until the next time the tab is shown.
2792 * UserInterface/Views/TextEditor.js:
2793 (WebInspector.TextEditor.prototype.get visible):
2794 * UserInterface/Views/SourceCodeTextEditor.js:
2795 (WebInspector.SourceCodeTextEditor.prototype.editingControllerDidStartEditing):
2796 (WebInspector.SourceCodeTextEditor.prototype._setTypeTokenAnnotatorEnabledState): Deleted.
2797 Although this didn't actually catch the issue, it could potentially
2798 catch other issues in the future. We don't want to enable the annotators
2799 in a non-visible text editor, as it could be a performance issue.
2801 2015-05-15 Matt Baker <mattbaker@apple.com>
2803 Web Inspector: empty timeline should not use previous timeline's zoom interval
2804 https://bugs.webkit.org/show_bug.cgi?id=132754
2806 Reviewed by Joseph Pecoraro.
2808 When a timeline recording is started in response to a provisional load, TimelineManager should check whether
2809 the main resource url is changing before loading a new timeline recording. If the main resource is changing,
2810 set the selection start, selection duration, and duration-per-pixel settings of the TimelineOverview to their
2813 * UserInterface/Controllers/TimelineManager.js:
2814 (WebInspector.TimelineManager):
2815 (WebInspector.TimelineManager.prototype.isCapturingPageReload):
2816 (WebInspector.TimelineManager.prototype.capturingStopped):
2817 (WebInspector.TimelineManager.prototype.pageDidLoad):
2818 (WebInspector.TimelineManager.prototype._startAutoCapturing):
2819 Added a property for checking whether auto capture was triggered by a page reload.
2821 * UserInterface/Views/LinearTimelineOverview.js:
2822 (WebInspector.LinearTimelineOverview):
2823 Increase default selection time to 15 seconds.
2825 * UserInterface/Views/TimelineOverview.js:
2826 (WebInspector.TimelineOverview):
2827 Reset selection and zoom if TimelineManager isn't capturing in response to a page reload.
2829 (WebInspector.TimelineOverview.prototype.reset):
2830 Reset selection and zoom.
2832 (WebInspector.TimelineOverview.prototype._timeRangeSelectionChanged):
2833 (WebInspector.TimelineOverview.prototype._resetSelection):
2834 Added a helper function for resetting selection and zoom to their default values.
2836 2015-05-15 Matt Baker <mattbaker@apple.com>
2838 Web Inspector: Timeline data grid displays wrong records after switching between Timelines/Frames mode
2839 https://bugs.webkit.org/show_bug.cgi?id=145084
2841 Reviewed by Timothy Hatcher.
2843 Update timeline sidebar filter whenever the view mode changes.
2845 * UserInterface/Views/TimelineSidebarPanel.js:
2846 (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject.get if.get if):
2847 (WebInspector.TimelineSidebarPanel.get else):
2848 (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject.get if):
2849 (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject):
2851 2015-05-15 Joseph Pecoraro <pecoraro@apple.com>
2853 Web Inspector: Bump image format number to force image regeneration
2854 https://bugs.webkit.org/show_bug.cgi?id=145074
2856 Reviewed by Timothy Hatcher.
2858 * UserInterface/Base/ImageUtilities.js:
2860 2015-05-15 Joseph Pecoraro <pecoraro@apple.com>
2862 Web Inspector: Reduce type annotation update frequency
2863 https://bugs.webkit.org/show_bug.cgi?id=145066
2865 Reviewed by Timothy Hatcher.
2867 * UserInterface/Controllers/TypeTokenAnnotator.js:
2868 Reduce the frequency which could commonly be 16-24ms
2869 to a minimum of 100ms and maximum of 2000ms.
2871 2015-05-15 Joseph Pecoraro <pecoraro@apple.com>
2873 Web Inspector: Fix some possible event listener leakers in content views
2874 https://bugs.webkit.org/show_bug.cgi?id=145068
2876 Reviewed by Timothy Hatcher.
2878 Now that some content views can be closed that weren't closable before, ensure
2879 we clean up after global event listeners that may strongly reference "this".
2881 * UserInterface/Views/DOMTreeContentView.js:
2882 (WebInspector.DOMTreeContentView.prototype.closed):
2883 * UserInterface/Views/DOMTreeOutline.js:
2884 (WebInspector.DOMTreeOutline.prototype.close):
2885 * UserInterface/Views/LayoutTimelineView.js:
2886 (WebInspector.LayoutTimelineView.prototype.closed):
2887 * UserInterface/Views/NetworkTimelineView.js:
2888 (WebInspector.NetworkTimelineView.prototype.closed):
2889 * UserInterface/Views/RenderingFrameTimelineView.js:
2890 (WebInspector.RenderingFrameTimelineView.prototype.closed):
2891 * UserInterface/Views/ScriptContentView.js:
2892 (WebInspector.ScriptContentView.prototype.closed):
2893 * UserInterface/Views/ScriptTimelineView.js:
2894 (WebInspector.ScriptTimelineView.prototype.closed):
2895 * UserInterface/Views/SourceCodeTextEditor.js:
2896 (WebInspector.SourceCodeTextEditor.prototype.close):
2897 * UserInterface/Views/TextResourceContentView.js:
2898 (WebInspector.TextResourceContentView.prototype.closed):
2899 * UserInterface/Views/TimelineDataGrid.js:
2900 (WebInspector.TimelineDataGrid.prototype.closed):
2901 (WebInspector.TimelineDataGrid.prototype.handleEvent):
2903 2015-05-15 Joseph Pecoraro <pecoraro@apple.com>
2905 Web Inspector: Initiator Popovers no longer work in Layout Timeline
2906 https://bugs.webkit.org/show_bug.cgi?id=145067
2908 Reviewed by Timothy Hatcher.
2910 * UserInterface/Views/LayoutTimelineDataGrid.js:
2911 (WebInspector.LayoutTimelineDataGrid.prototype.callFramePopoverAnchorElement):
2912 Update the column name, which changed in r183134.
2914 2015-05-14 Joseph Pecoraro <pecoraro@apple.com>
2916 Web Inspector: Update the New Tab button disabled state after extra domains are activated
2917 https://bugs.webkit.org/show_bug.cgi?id=145028
2919 Reviewed by Timothy Hatcher.
2921 * UserInterface/Base/Main.js:
2922 (WebInspector.activateExtraDomains):
2924 2015-05-14 Matt Baker <mattbaker@apple.com>
2926 Web Inspector: Current time marker is always at zero in Rendering Frames ruler
2927 https://bugs.webkit.org/show_bug.cgi?id=144518
2929 Reviewed by Timothy Hatcher.
2931 The current and end time values for the rendering frame timeline overview should always be equal to the frame
2932 number of the last record in the rendering frames timeline.
2934 * UserInterface/Views/TimelineOverview.js:
2935 (WebInspector.TimelineOverview):
2936 (WebInspector.TimelineOverview.prototype.updateLayout):
2937 * UserInterface/Views/TimelineRecordingContentView.js:
2938 (WebInspector.TimelineRecordingContentView.prototype._updateTimes):
2939 (WebInspector.TimelineRecordingContentView.prototype._recordingTimesUpdated):
2941 2015-05-11 Brent Fulgham <bfulgham@apple.com>
2943 [Win] Move Windows build target to Windows 7 (or newer)
2944 https://bugs.webkit.org/show_bug.cgi?id=144890
2945 <rdar://problem/20707307>
2947 Reviewed by Anders Carlsson.
2949 Update linked SDK and minimal Windows level to be compatible with
2952 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
2954 2015-05-11 Timothy Hatcher <timothy@apple.com>
2956 Web Inspector: REGRESSION (Tabs): Issues reloading a resource with breakpoints
2957 https://bugs.webkit.org/show_bug.cgi?id=144650
2959 Fix a number of issues with Debugger tab and navigation/reloading:
2960 - Close old content views in the Debugger tab when main frame navigates.
2961 - Prune old resource tree elements before attempting to restore a cookie that might match an old resource.
2962 - Allow breakpoint selections to be restored from a saved cookie.
2963 - Fix an assert when closing a content view that isn't the current index, but is the current view.
2964 - Avoid calling closed() multiple times when a ContentView is in the back/forward list more than once.
2965 - Make restoreStateFromCookie properly set and use the causedByNavigation argument for a longer restore delay.
2966 - Create a new cookie object per tab instead of it being cumulative from the previous cookie.
2968 Reviewed by Brian Burg.
2970 * UserInterface/Base/Main.js:
2971 (WebInspector._mainResourceDidChange): Delay calling _restoreCookieForOpenTabs to give time for sidebars
2972 and tabs to respond to the main resource change.
2973 (WebInspector._restoreCookieForOpenTabs): Rename causedByReload to causedByNavigation. Nothing special about
2974 reload since we restore on all navigation.
2976 * UserInterface/Views/ContentView.js:
2977 (WebInspector.ContentView): Support Breakpoint as a represented object, which happens during a cookie restore.
2978 (WebInspector.ContentView.isViewable): Ditto.
2980 * UserInterface/Views/ContentViewContainer.js:
2981 (WebInspector.ContentViewContainer.prototype.closeAllContentViews): Disassociate if the view is current and not just
2982 the current entry index. This matches other close functions. This fixes an assert in _disassociateFromContentView.
2983 (WebInspector.ContentViewContainer.prototype._disassociateFromContentView): Don't disassociate multiple times. This
2984 avoids calling the closed() function on a view more than once.
2986 * UserInterface/Views/DebuggerSidebarPanel.js:
2987 (WebInspector.DebuggerSidebarPanel.prototype.saveStateToCookie):
2988 (WebInspector.DebuggerSidebarPanel.prototype._mainResourceDidChange): Renamed from _mainResourceChanged.
2989 Close all content views if this is the main frame. Also prune all old resources. Doing this now avoids a flash
2990 of having old and new resources in the tree caused by the default delay in NavigationSidebarPanel's _checkForOldResources.
2992 * UserInterface/Views/NavigationSidebarPanel.js:
2993 (WebInspector.NavigationSidebarPanel): Set _autoPruneOldTopLevelResourceTreeElements for later.
2994 (WebInspector.NavigationSidebarPanel.prototype.get contentTreeOutlineToAutoPrune): Deleted.
2995 (WebInspector.NavigationSidebarPanel.prototype.showDefaultContentView): Fix typo.
2996 (WebInspector.NavigationSidebarPanel.prototype.showDefaultContentViewForTreeElement): Fix whitespace.
2997 (WebInspector.NavigationSidebarPanel.prototype.pruneOldResourceTreeElements): Added. Broken out from
2998 _checkForOldResources.delayedWork so it can be called manually. Also check all visible tree outlines.
2999 (WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged): Pass treeElement in an array.
3000 (WebInspector.NavigationSidebarPanel.prototype._checkForOldResourcesIfNeeded): Added.
3001 (WebInspector.NavigationSidebarPanel.prototype._checkForOldResources): Call pruneOldResourceTreeElements on a delay.
3002 (WebInspector.NavigationSidebarPanel.prototype._checkForOldResources.delayedWork): Deleted.
3003 (WebInspector.NavigationSidebarPanel.prototype._checkOutlinesForPendingViewStateCookie): Call _checkForOldResourcesIfNeeded.
3004 (WebInspector.NavigationSidebarPanel.prototype._checkElementsForPendingViewStateCookie): Remove array folding code.
3006 * UserInterface/Views/TabContentView.js:
3007 (WebInspector.TabContentView.prototype.restoreStateFromCookie): Rename causedByReload to causedByNavigation.
3008 (WebInspector.TabContentView.prototype.saveStateToCookie): Don't allow the cookie to build on the old cookie.
3010 2015-05-11 Timothy Hatcher <timothy@apple.com>
3012 Web Inspector: NavigationSidebarPanel leaks some event listeners
3013 https://bugs.webkit.org/show_bug.cgi?id=144523
3015 Reviewed by Joseph Pecoraro.
3017 * UserInterface/Views/NavigationSidebarPanel.js:
3018 (WebInspector.NavigationSidebarPanel):
3019 (WebInspector.NavigationSidebarPanel.prototype.closed):
3020 * UserInterface/Views/ResourceSidebarPanel.js:
3021 (WebInspector.ResourceSidebarPanel.prototype.closed):
3022 * UserInterface/Views/SearchSidebarPanel.js:
3023 (WebInspector.SearchSidebarPanel.prototype.closed):
3024 * UserInterface/Views/StorageSidebarPanel.js:
3025 (WebInspector.StorageSidebarPanel.prototype.closed):
3026 * UserInterface/Views/TimelineSidebarPanel.js:
3027 (WebInspector.TimelineSidebarPanel.prototype.closed):
3029 2015-05-10 Nikita Vasilyev <nvasilyev@apple.com>
3031 Web Inspector: In the console, show function name next to the source link
3032 https://bugs.webkit.org/show_bug.cgi?id=144372
3034 Introduce CallFrameView to display counsole message source links. It looks like this:
3036 [f] functionName - filename.js:42
3038 Reviewed by Timothy Hatcher.
3040 * UserInterface/Base/Main.js:
3041 (WebInspector.createSourceCodeLocationLink):
3042 (WebInspector.linkifyLocation):
3043 (.showSourceCodeLocation):
3044 (WebInspector.linkifyElement):
3045 Abstract this out as it's used in WebInspector.CallFrameView and WebInspector.createSourceCodeLocationLink.
3047 (WebInspector.sourceCodeForURL):
3048 Move this code from Timeline to Main.js as it's used by Console too.
3050 (WebInspector.linkifyURLAsNode):
3051 Remove tooltipText argument as it is never used.
3053 * UserInterface/Controllers/TimelineManager.js:
3054 (WebInspector.TimelineManager.prototype._callFramesFromPayload):
3055 * UserInterface/Main.html:
3056 * UserInterface/Models/CallFrame.js:
3057 (WebInspector.CallFrame.fromPayload):
3058 Abstract this out as it's used in WebInspector.TimelineManager.prototype._callFramesFromPayload and
3059 WebInspector.ConsoleMessageView._appendLocationLink.
3061 (WebInspector.CallFrame):
3062 * UserInterface/Views/CallFrameTreeElement.js:
3063 (WebInspector.CallFrameTreeElement):
3064 Move it to WebInspector.CallFrameView.iconForCallFrame.
3066 * UserInterface/Views/CallFrameView.css: Added.
3068 (.call-frame .icon):
3069 (.call-frame .titles):
3070 (.call-frame .title):
3071 (.call-frame .source-link):
3072 (.call-frame .title + .subtitle > .source-link):
3073 (.call-frame .subtitle .source-link):
3074 (.call-frame:focus .subtitle .source-link):
3075 (.call-frame .subtitle:empty):
3076 (.call-frame .subtitle):
3077 (.call-frame .colon):
3078 (.call-frame .title + .subtitle::before):
3079 * UserInterface/Views/CallFrameView.js: Added.
3080 (WebInspector.CallFrameView):
3081 (WebInspector.CallFrameView.iconClassNameForCallFrame):
3082 * UserInterface/Views/ConsoleMessageView.css:
3083 (.console-message .console-message-location):
3084 (.console-message .call-frame):
3085 (.console-message .go-to-link):
3086 (.console-message .go-to-link:focus):
3087 (.console-message .console-message-url::before):
3088 (.console-saved-variable): Deleted.
3089 * UserInterface/Views/ConsoleMessageView.js:
3090 (WebInspector.ConsoleMessageView.prototype._appendLocationLink):
3091 * UserInterface/Views/DebuggerDashboardView.js:
3092 * UserInterface/Views/Main.css:
3094 * UserInterface/Views/ProfileNodeTreeElement.js:
3095 (WebInspector.ProfileNodeTreeElement):
3096 * UserInterface/Views/TimelineDataGridNode.js:
3097 (WebInspector.TimelineDataGridNode.prototype.createCellContent):
3099 2015-05-08 Tobias Reiss <tobi+webkit@basecode.de>
3101 Web Inspector: Styles sidebar editing with incomplete property looks poor in UI
3102 https://bugs.webkit.org/show_bug.cgi?id=141692
3104 Reviewed by Timothy Hatcher.
3106 Add "css-rule" Formatter that breaks CSS declarations into multiple lines,
3107 keeps comments and invalid styles and adds whitespace.
3109 * Tools/PrettyPrinting/css-rule-tests/*.css: Added.
3112 * Tools/PrettyPrinting/index.html:
3113 Enable Test setup to be able to run "css-rule" Formatter tests.
3115 * UserInterface/Controllers/Formatter.js:
3116 (Formatter.prototype._handleToken):
3117 * UserInterface/Controllers/FormatterContentBuilder.js:
3118 (FormatterContentBuilder.prototype.removeLastNewline):
3119 (FormatterContentBuilder.prototype.removeLastWhitespace):
3120 (FormatterContentBuilder.prototype._popFormattedContent):
3121 (FormatterContentBuilder.prototype._popNewLine): Deleted.
3122 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
3123 (WebInspector.CSSStyleDeclarationTextEditor.prototype._formattedContentFromEditor):
3124 (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent.update.set this):
3125 (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent.update.get this):
3126 (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent.update):
3127 (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent):
3128 (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent.update.countNewLineCharacters): Deleted.
3129 (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent.update.else): Deleted.
3130 * UserInterface/Views/CodeMirrorFormatters.js:
3132 2015-05-07 Joseph Pecoraro <pecoraro@apple.com>
3134 Web Inspector: Expanding Object with only __proto__ looks poor should have a label
3135 https://bugs.webkit.org/show_bug.cgi?id=144755
3137 Reviewed by Timothy Hatcher.
3139 Better handle cases where expanding an object has only a __proto__
3140 and no other properties.
3142 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
3143 (WebInspector.ObjectTreePropertyTreeElement.mode.prototype.this.children.length):
3144 (WebInspector.ObjectTreePropertyTreeElement):
3145 * UserInterface/Views/ObjectTreeView.css:
3146 (.object-tree-outline li .empty-message):
3147 * UserInterface/Views/ObjectTreeView.js:
3148 (WebInspector.ObjectTreeView.createEmptyMessageElement):
3149 (WebInspector.ObjectTreeView.comparePropertyDescriptors):
3150 (WebInspector.ObjectTreeView.prototype._updateProperties):
3152 2015-05-07 Joseph Pecoraro <pecoraro@apple.com>
3154 Web Inspector: Fix querySelector in ResourceContentView.js, caught by assertion
3155 https://bugs.webkit.org/show_bug.cgi?id=144756
3157 Reviewed by Timothy Hatcher.
3159 * UserInterface/Views/ResourceContentView.js:
3160 (WebInspector.ResourceContentView.prototype._hasContent):
3161 Ensure querySelector call is using the class name correctly.
3163 2015-05-06 Joseph Pecoraro <pecoraro@apple.com>
3165 Web Inspector: Docking Toolbar Buttons do not respect Docking Availability
3166 https://bugs.webkit.org/show_bug.cgi?id=144714
3168 Reviewed by Timothy Hatcher.
3170 * UserInterface/Base/Main.js:
3171 (WebInspector.contentLoaded):
3172 (WebInspector.updateDockingAvailability):
3173 (WebInspector._updateDockNavigationItems):
3174 Update the Toolbar UI based on docking availability.
3175 Assume docking is unavailable by default.
3177 * UserInterface/Protocol/InspectorFrontendAPI.js:
3178 (InspectorFrontendAPI.setDockingUnavailable):
3179 Add back this API as the backend may be calling it when
3180 docking availability changes. This just calls out to
3181 global WebInspector functions to update the Toolbar UI.
3183 * UserInterface/Base/Test.js:
3184 (WebInspector.updateDockedState):
3185 (WebInspector.updateDockingAvailability):
3186 Do nothing in tests.
3188 2015-05-06 Matt Baker <mattbaker@apple.com>
3190 Web Inspector: The text in the left pane overlaps the "Filter Time Events" field in the Timeline after the Web Inspector is resized
3191 https://bugs.webkit.org/show_bug.cgi?id=144720
3193 Reviewed by Timothy Hatcher.
3195 * UserInterface/Views/FilterBar.css:
3197 (.filter-bar > .navigation-bar):
3198 (.filter-bar > input[type="search"]):
3199 (.filter-bar > .navigation-bar > .item): Deleted.
3200 Filter bar now has opaque background and height updated to the ubiquitous 29px.
3202 2015-05-06 Joseph Pecoraro <pecoraro@apple.com>
3204 Web Inspector: DOMStorage exception and issue with sessionStorage
3205 https://bugs.webkit.org/show_bug.cgi?id=144646
3207 Reviewed by Timothy Hatcher.
3209 * UserInterface/Views/DOMStorageContentView.js:
3210 (WebInspector.DOMStorageContentView):
3211 (WebInspector.DOMStorageContentView.prototype._populate):
3212 (WebInspector.DOMStorageContentView.prototype.reset): Deleted.
3213 Always have the datagrid be available with a default sort.
3215 (WebInspector.DOMStorageContentView.prototype._sortDataGrid.comparator):
3216 (WebInspector.DOMStorageContentView.prototype._sortDataGrid):
3217 Simplify and correct the order.
3219 (WebInspector.DOMStorageContentView.prototype.cleanup):
3220 Cleanup some uses of delete.
3222 * UserInterface/Views/DataGrid.js:
3223 (WebInspector.DataGrid.prototype.sortNodesImmediately):
3224 Provide a way to sort immediately without a visible delay.
3226 (WebInspector.DataGrid.prototype._sortNodesCallback):
3227 Cleanup some dead code to simplify sorting.
3229 (WebInspector.DataGridNode.prototype._attach):
3230 When sorting, the children list does not match the child node list,
3231 so ensure that placeholder nodes are added to the end.
3233 (WebInspector.PlaceholderDataGridNode.prototype.makeNormal):
3234 Cleanup some uses of delete.
3236 2015-05-06 Joseph Pecoraro <pecoraro@apple.com>
3238 Web Inspector: SourceCodeTextEditor shows "undefined" instead of resource content when pausing during resource load
3239 https://bugs.webkit.org/show_bug.cgi?id=144662
3241 Reviewed by Timothy Hatcher.
3243 * UserInterface/Protocol/InspectorBackend.js:
3244 (InspectorBackend.Command.prototype.promise):
3245 Start standardizing on rejecting Promises with Error objects.
3247 * UserInterface/Views/ResourceContentView.js:
3248 (WebInspector.ResourceContentView):
3249 (WebInspector.ResourceContentView.prototype._protocolError):
3250 When there is a protocol error, show a nice UI string for the error.
3252 (WebInspector.ResourceContentView.prototype._contentAvailable):
3253 (WebInspector.ResourceContentView.prototype._contentError):
3254 (WebInspector.ResourceContentView.prototype._hasContent):
3255 Whenever we hit an error case in ResourceContentView, check to make sure
3256 that a subclass hasn't already populated the content view with content.
3257 This can happen when a TextResourceContentView populates a Resource with
3258 Script content while paused, because the Resource content would be
3259 unavailable. We check that content has loaded by checking that the
3260 indeterminate spinner is no longer showing.
3262 2015-05-05 Andres Gomez <agomez@igalia.com>
3264 [GTK] Web Inspector: Further optimize SVG images
3265 https://bugs.webkit.org/show_bug.cgi?id=144441
3267 SVG images optimized with a combination of sed replacements, the
3268 usage of the scour tool (http://www.codedread.com/scour/) and a
3269 forked version of the svgo tool (https://github.com/tanty/svgo).
3271 Also, added the class attribute to the shape elements following
3272 the convention used in Apple's images.
3274 Reviewed by Joseph Pecoraro.
3276 * UserInterface/Images/gtk/BackArrow.svg: Optimized.
3277 * UserInterface/Images/gtk/BreakpointActionAdd.svg: Optimized.
3278 * UserInterface/Images/gtk/BreakpointActionRemove.svg: Optimized.
3279 * UserInterface/Images/gtk/BreakpointButton.svg: Optimized.
3280 * UserInterface/Images/gtk/BreakpointInactiveButton.svg: Optimized.
3281 * UserInterface/Images/gtk/Breakpoints.svg: Optimized.
3282 * UserInterface/Images/gtk/Checkers.svg: Optimized.
3283 * UserInterface/Images/gtk/Circle.svg: Optimized.
3284 * UserInterface/Images/gtk/Close.svg: Optimized.
3285 * UserInterface/Images/gtk/CloseLarge.svg: Optimized.
3286 * UserInterface/Images/gtk/CloseWhite.svg: Optimized.
3287 * UserInterface/Images/gtk/ContentFlow.svg: Optimized.
3288 * UserInterface/Images/gtk/Crosshair.svg: Optimized.
3289 * UserInterface/Images/gtk/DOMCharacterData.svg: Optimized.
3290 * UserInterface/Images/gtk/DOMComment.svg: Optimized.
3291 * UserInterface/Images/gtk/DOMDocument.svg: Optimized.
3292 * UserInterface/Images/gtk/DOMDocumentType.svg: Optimized.
3293 * UserInterface/Images/gtk/DOMElement.svg: Optim