Web Inspector: iOS 8: Profile Nodes not showing in JavaScript Timeline
[WebKit-https.git] / Source / WebInspectorUI / ChangeLog
1 2015-06-30  Joseph Pecoraro  <pecoraro@apple.com>
2
3         Web Inspector: iOS 8: Profile Nodes not showing in JavaScript Timeline
4         https://bugs.webkit.org/show_bug.cgi?id=146471
5
6         Reviewed by Brian Burg.
7
8         * UserInterface/Models/ScriptTimelineRecord.js:
9         (WebInspector.ScriptTimelineRecord.prototype._initializeProfileFromPayload.profileNodeCallFromPayload):
10         For legacy backends, convert the startTime to the proper timestamp type.
11
12 2015-06-30  Matt Baker  <mattbaker@apple.com>
13
14         Web Inspector: Reduce rendering frames "Other" time by instrumenting compositing
15         https://bugs.webkit.org/show_bug.cgi?id=146168
16
17         Reviewed by Brian Burg.
18
19         * Localizations/en.lproj/localizedStrings.js:
20         * UserInterface/Controllers/TimelineManager.js:
21         (WebInspector.TimelineManager.prototype._processRecord):
22         Added handling for new Composite record type. Paint records with a parent Composite record
23         are flagged to simplify processing after the event hierarchy is unpacked.
24
25         * UserInterface/Images/TimelineRecordComposite.svg: Added.
26         New composite record icon.
27
28         * UserInterface/Models/LayoutTimelineRecord.js:
29         (WebInspector.LayoutTimelineRecord):
30         (WebInspector.LayoutTimelineRecord.displayNameForEventType):
31         (WebInspector.LayoutTimelineRecord.prototype.get duringComposite): Added
32         Composite record support.
33
34         * UserInterface/Models/RenderingFrameTimelineRecord.js:
35         (WebInspector.RenderingFrameTimelineRecord.prototype.durationForTask.get validRecordForTaskType):
36         Add compositing time when bucketing runloop tasks, ignoring Paint events that are
37         contained within a Composite event.
38
39         * UserInterface/Views/LayoutTimelineOverviewGraph.js:
40         (WebInspector.LayoutTimelineOverviewGraph.prototype._layoutTimelineRecordAdded):
41         Add Composite records to paint timeline row.
42
43         * UserInterface/Views/RenderingFrameTimelineView.js:
44         (WebInspector.RenderingFrameTimelineView.prototype._processPendingRecords):
45         Small unrelated fix.
46
47         * UserInterface/Views/TimelineIcons.css:
48         (.composite-record .icon):
49         * UserInterface/Views/TimelineRecordBar.css:
50         (.timeline-record-bar.timeline-record-type-layout.layout-timeline-record-composite > .segment):
51         * UserInterface/Views/TimelineRecordTreeElement.js:
52         (WebInspector.TimelineRecordTreeElement):
53         New styles and tree element icon.
54
55 2015-06-30  Joseph Pecoraro  <pecoraro@apple.com>
56
57         Web Inspector: iOS 8: Uncaught Exception expanding Object Prototype
58         https://bugs.webkit.org/show_bug.cgi?id=146427
59
60         Reviewed by Timothy Hatcher.
61
62         * UserInterface/Views/ObjectTreePropertyTreeElement.js:
63         (WebInspector.ObjectTreePropertyTreeElement.prototype._updateProperties):
64         * UserInterface/Views/ObjectTreeView.js:
65         (WebInspector.ObjectTreeView.prototype._updateProperties):
66         We are supposed to receive value properties for __proto__ properties
67         so that we can immediately start showing information about the property.
68         When that is not the case, which appeared to only be on legacy
69         backends for the top level prototype, just ignore it.
70
71 2015-06-30  Joseph Pecoraro  <pecoraro@apple.com>
72
73         Web Inspector: Misc. Timeline cleanup
74         https://bugs.webkit.org/show_bug.cgi?id=146430
75
76         Reviewed by Timothy Hatcher.
77
78         * UserInterface/Models/Timeline.js:
79         (WebInspector.Timeline.prototype.reset):
80         Nobody listens for this event. Just remove it.
81
82         * UserInterface/Models/TimelineRecording.js:
83         Avoiding doing multiple lookups.
84
85         * UserInterface/Views/TimelineDataGridNode.js:
86         * UserInterface/Views/TimelineRecordingContentView.js:
87         (WebInspector.TimelineRecordingContentView.prototype._updateTimes):
88         * UserInterface/Views/TimelineView.js:
89         (WebInspector.TimelineView.prototype.updateLayout):
90         Eliminate some unnecessary deletes.
91
92 2015-06-29  Nikita Vasilyev  <nvasilyev@apple.com>
93
94         Web Inspector: Unable to select the text of an inline error message
95         https://bugs.webkit.org/show_bug.cgi?id=145813
96
97         Reviewed by Timothy Hatcher.
98
99         * UserInterface/Views/CodeMirrorOverrides.css:
100         (.CodeMirror-linewidget):
101         * UserInterface/Views/TextEditor.js:
102         (WebInspector.TextEditor.prototype.createWidgetForLine):
103
104 2015-06-29  Joseph Pecoraro  <pecoraro@apple.com>
105
106         Web Inspector: Remove harmless error for not getting named flows
107         https://bugs.webkit.org/show_bug.cgi?id=146417
108
109         Reviewed by Darin Adler.
110
111         * UserInterface/Controllers/DOMTreeManager.js:
112
113 2015-06-29  Joseph Pecoraro  <pecoraro@apple.com>
114
115         Web Inspector: Network errors (404) are missing location link in console messages
116         https://bugs.webkit.org/show_bug.cgi?id=146442
117
118         Reviewed by Darin Adler.
119
120         * UserInterface/Views/ConsoleMessageView.js:
121         (WebInspector.ConsoleMessageView.prototype._appendLocationLink):
122         Restore behavior of adding a location link for network messages with urls.
123
124 2015-06-29  Joseph Pecoraro  <pecoraro@apple.com>
125
126         Web Inspector: iOS 8: Resources Timeline Data does not show up
127         https://bugs.webkit.org/show_bug.cgi?id=146433
128
129         Reviewed by Timothy Hatcher.
130
131         There were a couple issues with initializing the legacy base timestamp
132         for attempting to dynamically compute monotonically increasing timestamps
133         for timeline events for legacy backends.
134
135             * Sometimes legacy timestamps were in seconds since epochs,
136               sometimes milliseconds. The frontend did not handle both.
137
138             * On navigations, even while resetting the base timestamp for
139               the first new record received, the main resource still had
140               a will send request time computed from the previous page's
141               time system. This patch re-uses the original timestamp for
142               this main resource as the new base and all future records
143               are computed relative to this.
144
145         * UserInterface/Controllers/FrameResourceManager.js:
146         (WebInspector.FrameResourceManager.prototype.resourceRequestWillBeSent):
147         (WebInspector.FrameResourceManager.prototype._addNewResourceToFrame):
148         * UserInterface/Models/Resource.js:
149         (WebInspector.Resource):
150         (WebInspector.Resource.prototype.get originalRequestWillBeSentTimestamp):
151         For legacy timestamp calculations, save the original request will be sent
152         timestamp on the Resource in case it is needed.
153
154         * UserInterface/Controllers/TimelineManager.js:
155         (WebInspector.TimelineManager.prototype._loadNewRecording):
156         When auto-starting a new recording for a navigation / reload, use the
157         main resource's request will be sent timestamp as the new base.
158
159         * UserInterface/Models/TimelineRecording.js:
160         Address legacy timeline timestamps by handling both legacy timestamps
161         that may be seconds / milliseconds.
162
163 2015-06-29  Joseph Pecoraro  <pecoraro@apple.com>
164
165         REGRESSION: Web Inspector: Jump to Definition is broken
166         https://bugs.webkit.org/show_bug.cgi?id=146376
167
168         Reviewed by Timothy Hatcher.
169
170         * UserInterface/Views/ObjectTreeBaseTreeElement.js:
171         (WebInspector.ObjectTreeBaseTreeElement.prototype._appendMenusItemsForObject):
172         Allow changing tabs when jumping to function definition.
173
174 2015-06-28  Nikita Vasilyev  <nvasilyev@apple.com>
175
176         Web Inspector: Wrong border color of console messages when filters are enabled
177         https://bugs.webkit.org/show_bug.cgi?id=146392
178
179         Reviewed by Timothy Hatcher.
180
181         * UserInterface/Views/LogContentView.css:
182         (.console-error-level:not(.filtered-out, .filtered-out-by-search) + .console-item):
183         (.console-warning-level:not(.filtered-out, .filtered-out-by-search) + .console-item):
184
185 2015-06-25  Matt Baker  <mattbaker@apple.com>
186
187         Web Inspector: Wrong timeline selected after switching from Rendering Frames to Timelines
188         https://bugs.webkit.org/show_bug.cgi?id=146331
189
190         Reviewed by Timothy Hatcher.
191
192         * UserInterface/Views/TimelineSidebarPanel.js:
193         Set previously selected timeline type to null if no tree element is selected when switching
194         view mode to Rendering Frames.
195
196 2015-06-25  Joseph Pecoraro  <pecoraro@apple.com>
197
198         [Mac] Web Inspector: Window dragging on toolbar should behave more like native window dragging
199         https://bugs.webkit.org/show_bug.cgi?id=146324
200
201         Reviewed by Timothy Hatcher.
202
203         * UserInterface/Base/Main.js:
204         On Mac 10.11 transition to using InspectorFrontendHost.startWindowDrag.
205         For older Macs continue to use InspectorFrontendHost.moveWindowBy.
206         
207         * UserInterface/Protocol/InspectorFrontendHostStub.js:
208         (WebInspector.InspectorFrontendHostStub.prototype.startWindowDrag):
209         Add the stub for InspectorFrontendHostStub.
210
211 2015-06-24  Devin Rousso  <drousso@apple.com>
212
213         Web Inspector: Pressing tab in the styles sidebar shouldn't insert a tab character
214         https://bugs.webkit.org/show_bug.cgi?id=146189
215
216         Reviewed by Timothy Hatcher.
217
218         * UserInterface/Controllers/CodeMirrorCompletionController.js: Added variable to control whether semicolons are added to the end of autocompleted css values.
219         (WebInspector.CodeMirrorCompletionController):
220         (WebInspector.CodeMirrorCompletionController.prototype.set noEndingSemicolon):
221         (WebInspector.CodeMirrorCompletionController.prototype._generateCSSCompletions):
222         * UserInterface/Views/CSSStyleDeclarationSection.js:
223         (WebInspector.CSSStyleDeclarationSection):
224         (WebInspector.CSSStyleDeclarationSection.prototype.cssStyleDeclarationTextEditorSwitchRule):
225         (WebInspector.CSSStyleDeclarationSection.prototype.focusRuleSelector):
226         (WebInspector.CSSStyleDeclarationSection.prototype.selectLastProperty):
227         (WebInspector.CSSStyleDeclarationSection.prototype.get selectorLocked):
228         (WebInspector.CSSStyleDeclarationSection.prototype.get locked):
229         (WebInspector.CSSStyleDeclarationSection.prototype._handleKeyDown):
230         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
231         (WebInspector.CSSStyleDeclarationTextEditor): Added functions for "Tab", "Shift-Tab", and "Shift-Enter" keypresses to improve usability.
232         (WebInspector.CSSStyleDeclarationTextEditor.prototype.selectFirstProperty): Highlights the first property.
233         (WebInspector.CSSStyleDeclarationTextEditor.prototype.selectLastProperty): Highlights the last property.
234         (WebInspector.CSSStyleDeclarationTextEditor.prototype._insertNewlineAfterCurrentLine): Inserts a newline after the currently selected line.
235         (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleShiftTabKey.switchRule):
236         (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleShiftTabKey): Pressing shift-tab will move the cursor to the previous non-word character that is immediately after a word character.
237         (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleTabKey.switchRule):
238         (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleTabKey.highlightNextNameOrValue):
239         (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleTabKey): Pressing tab will move the cursor to each space character until the end of the line is reached, at
240         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.
241         * UserInterface/Views/RulesStyleDetailsPanel.js:
242         (WebInspector.RulesStyleDetailsPanel.prototype.cssStyleDeclarationSectionEditorNextRule): Switches the focused rule to the next section.
243         (WebInspector.RulesStyleDetailsPanel.prototype.cssStyleDeclarationSectionEditorPrevRule): Switches the focused rule to the previous section.
244
245 2015-06-24  Joseph Pecoraro  <pecoraro@apple.com>
246
247         Web Inspector: console.group looks poor in console
248         https://bugs.webkit.org/show_bug.cgi?id=146295
249
250         Reviewed by Timothy Hatcher.
251
252         * Localizations/en.lproj/localizedStrings.js:
253         String for the default group name if you use console.group() without a name parameter.
254
255         * UserInterface/Views/LogContentView.css:
256         (.console-group-title::before):
257         Tweak the positioning and eliminate the log level ::before image.
258
259         * UserInterface/Views/ConsoleMessageView.js:
260         (WebInspector.ConsoleMessageView):
261         Reorder a bit to reduce a couple branches.
262
263         (WebInspector.ConsoleMessageView.prototype._appendMessageTextAndArguments):
264         Take a very straightforward approach for group names.
265
266 2015-06-24  Devin Rousso  <drousso@apple.com>
267
268         Web Inspector: Show warning icon for invalid CSS properties and/or values
269         https://bugs.webkit.org/show_bug.cgi?id=145657
270
271         Reviewed by Timothy Hatcher.
272
273         * UserInterface/Models/CSSCompletions.js:
274         (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.
275         (WebInspector.CSSCompletions.prototype.propertyRequiresWebkitPrefix): Retruns if the property name exists only with a '-webkit-' prefix.
276         (WebInspector.CSSCompletions):
277         * UserInterface/Views/CSSStyleDeclarationTextEditor.css:
278         (.css-style-text-editor > .CodeMirror .CodeMirror-lines .invalid-warning-marker):
279         (.css-style-text-editor > .CodeMirror .CodeMirror-lines .invalid-warning-marker.clickable:hover):
280         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
281         (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded.duplicatePropertyExistsBelow): Determines if there exists a property below (visually) the given property that has the same name.
282         (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded.generateInvalidMarker): Creates a warning icon marker at the given position with the given title.
283         (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded.instancesOfProperty): Returns the number of properties in the rule that have the same name.
284         (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.
285
286 2015-06-24  Devin Rousso  <drousso@apple.com>
287
288         Web Inspector: Background of Computed Styles is missing
289         https://bugs.webkit.org/show_bug.cgi?id=146209
290
291         Reviewed by Timothy Hatcher.
292
293         * UserInterface/Views/ComputedStyleDetailsPanel.css:
294         (.computed-style-properties.details-section): Added white background.
295
296 2015-06-24  Joseph Pecoraro  <pecoraro@apple.com>
297
298         Web Inspector: Right/Left arrow no longer works in console to expand/collapse ObjectTrees
299         https://bugs.webkit.org/show_bug.cgi?id=141949
300
301         Reviewed by Timothy Hatcher.
302
303         * UserInterface/Views/ConsoleMessageView.js:
304         (WebInspector.ConsoleMessageView):
305         (WebInspector.ConsoleMessageView.prototype.get expandable):
306         (WebInspector.ConsoleMessageView.prototype.set expandable): Deleted.
307         (WebInspector.ConsoleMessageView.prototype._appendExtraParameters):
308         (WebInspector.ConsoleMessageView.prototype._appendStackTrace):
309         (WebInspector.ConsoleMessageView.prototype._makeExpandable):
310         Clarify what makes a ConsoleMessageView expandable or not.
311
312         (WebInspector.ConsoleMessageView.prototype.expand):
313         (WebInspector.ConsoleMessageView.prototype.collapse):
314         Handle the expand/collapse cases which could apply to the
315         ConsoleMessageView itself or an inner ObjectTreeView if that is all we contain.
316
317         (WebInspector.ConsoleMessageView.prototype._formatParameterAsObject):
318         Delete out of date comment. A console.log("message", obj) will want the
319         object tree member variable to handle auto expanding/collapsing of the
320         single object in the message.
321
322         * UserInterface/Views/LogContentView.js:
323         (WebInspector.LogContentView.prototype._leftArrowWasPressed):
324         (WebInspector.LogContentView.prototype._rightArrowWasPressed):
325         Use the higher level ConsoleMessageView objects accessible from the element
326         to call through to expand/collapse.
327
328 2015-06-23  Joseph Pecoraro  <pecoraro@apple.com>
329
330         Web Inspector: Reduce QuickConsole DidResize events if it did not change
331         https://bugs.webkit.org/show_bug.cgi?id=146258
332
333         Reviewed by Timothy Hatcher.
334
335         * UserInterface/Views/QuickConsole.js:
336         (WebInspector.QuickConsole.prototype.consoleLogVisibilityChanged):
337         Do not trigger the event unless there was a change in visibility.
338
339 2015-06-23  Joseph Pecoraro  <pecoraro@apple.com>
340
341         Web Inspector: TextEditor scroll position not correctly restored when switching tabs
342         https://bugs.webkit.org/show_bug.cgi?id=146254
343
344         Reviewed by Timothy Hatcher.
345
346         * UserInterface/Views/TextEditor.js:
347         (WebInspector.TextEditor.prototype.updateLayout):
348         Workaround a larger issue with ContentView restoration so that
349         TextEditors restore their scroll position as expected.
350
351 2015-06-23  Joseph Pecoraro  <pecoraro@apple.com>
352
353         Web Inspector: Some brief previews are incorrectly treated as lossless
354         https://bugs.webkit.org/show_bug.cgi?id=146247
355
356         Reviewed by Timothy Hatcher.
357
358         * UserInterface/Views/ObjectPreviewView.js:
359         (WebInspector.ObjectPreviewView.prototype._appendEntryPreviews):
360         (WebInspector.ObjectPreviewView.prototype._appendPropertyPreviews):
361         When we have a brief preview we may need to override lossless / overflow
362         if the preview view itself shows less properties than were in the preview.
363
364 2015-06-23  Matt Baker  <mattbaker@apple.com>
365
366         Web Inspector: Layout & Rendering timeline should show paint and layout records in separate rows
367         https://bugs.webkit.org/show_bug.cgi?id=146119
368
369         Reviewed by Timothy Hatcher.
370
371         This patch makes the original Layout & Rendering timeline visually consistent with the Rendering Frames
372         timeline, which uses green to distinguish Paint from Layout. In order to support having record bars with
373         different colors in the same overview graph, the timeline has been split into two rows.
374
375         * UserInterface/Views/LayoutTimelineOverviewGraph.css:
376         (.timeline-overview-graph.layout > .graph-row):
377         (.timeline-overview-graph.layout > .graph-row > .timeline-record-bar):
378         (.timeline-overview-graph.layout > .graph-row > .timeline-record-bar > .segment):
379         New row styles.
380
381         * UserInterface/Views/LayoutTimelineOverviewGraph.js:
382         (WebInspector.LayoutTimelineOverviewGraph.prototype.reset.createRecordRow):
383         (WebInspector.LayoutTimelineOverviewGraph.prototype.reset):
384         (WebInspector.LayoutTimelineOverviewGraph.prototype.updateLayout):
385         (WebInspector.LayoutTimelineOverviewGraph.prototype._updateRowLayout.createBar):
386         (WebInspector.LayoutTimelineOverviewGraph.prototype._updateRowLayout):
387         (WebInspector.LayoutTimelineOverviewGraph.prototype._layoutTimelineRecordAdded):
388         (WebInspector.LayoutTimelineOverviewGraph): Deleted.
389         Added bookkeeping objects for timeline row elements and their associated records.
390
391         * UserInterface/Views/TimelineRecordBar.css:
392         (.timeline-record-bar.timeline-record-type-layout.layout-timeline-record-paint > .segment):
393         New style for layout record event types.
394
395         * UserInterface/Views/TimelineRecordBar.js:
396         (WebInspector.TimelineRecordBar.prototype.set records):
397         Add style class for eventType, if present.
398
399 2015-06-22  Devin Rousso  <drousso@apple.com>
400
401         Web Inspector: gaps between sections of the styles sidebar rules tab confusing, should say "Media: all"
402         https://bugs.webkit.org/show_bug.cgi?id=142918
403
404         Reviewed by Timothy Hatcher.
405
406         * UserInterface/Views/RulesStyleDetailsPanel.css:
407         (.sidebar > .panel.details.css-style > .content.filter-in-progress .label:not(.filter-section-non-matching) ~ .label):
408         Now properly adds padding to filtered labels.
409         (.sidebar > .panel.details.css-style > .content.filter-in-progress .label ~ .label): Deleted.
410         * UserInterface/Views/RulesStyleDetailsPanel.js:
411         (WebInspector.RulesStyleDetailsPanel.prototype.refresh): If a section of CSS rules has no media or inheritance, add
412         a label that says "Media: all" above the section.
413
414 2015-06-22  Nikita Vasilyev  <nvasilyev@apple.com>
415
416         Web Inspector: Consider making read-only style rules have a darker background
417         https://bugs.webkit.org/show_bug.cgi?id=145983
418
419         Reviewed by Timothy Hatcher.
420
421         * UserInterface/Views/CSSStyleDeclarationSection.css:
422         (.style-declaration-section:not(.locked)):
423         (.style-declaration-section): Deleted.
424         * UserInterface/Views/CSSStyleDeclarationTextEditor.css:
425         (.css-style-text-editor.read-only > .CodeMirror):
426
427 2015-06-22  Nikita Vasilyev  <nvasilyev@apple.com>
428
429         Web Inspector: Unable to select text of user input messages in the console
430         https://bugs.webkit.org/show_bug.cgi?id=145888
431
432         Reviewed by Timothy Hatcher.
433
434         * UserInterface/Views/ConsoleMessageView.css:
435         (.console-user-command > .console-message-text):
436
437 2015-06-20  Nikita Vasilyev  <nvasilyev@apple.com>
438
439         Web Inspector: Unable to select parent element in the DOM tree path bar
440         https://bugs.webkit.org/show_bug.cgi?id=145810
441
442         Reviewed by Timothy Hatcher.
443
444         * UserInterface/Views/DOMTreeContentView.js:
445         (WebInspector.DOMTreeContentView.prototype.get selectionPathComponents):
446         * UserInterface/Views/HierarchicalPathComponent.js:
447         (WebInspector.HierarchicalPathComponent.prototype.get selectedPathComponent):
448         (WebInspector.HierarchicalPathComponent.prototype._selectElementMouseUp):
449         (WebInspector.HierarchicalPathComponent.prototype._selectElementSelectionChanged):
450         (WebInspector.HierarchicalPathComponent):
451         (WebInspector.HierarchicalPathComponent.prototype._selectElementMouseDown): Deleted.
452
453 2015-06-19  Joseph Pecoraro  <pecoraro@apple.com>
454
455         Web Inspector: Duplication of style attribute in rules panel for shadow content
456         https://bugs.webkit.org/show_bug.cgi?id=146176
457
458         Reviewed by Timothy Hatcher.
459
460         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
461         The styleText can be non-empty for a readonly editor if the editor is for
462         the style attribute of a shadow dom node. Instead of assuming it is empty
463         we can just clear the editor ourselves and regenerate from properties.
464
465 2015-06-19  Devin Rousso  <drousso@apple.com>
466
467         Web Inspector: Highlight currently edited CSS selector
468         https://bugs.webkit.org/show_bug.cgi?id=145658
469
470         Reviewed by Joseph Pecoraro.
471
472         * UserInterface/Views/CSSStyleDeclarationSection.js:
473         (WebInspector.CSSStyleDeclarationSection): Added event listeners on the selector text for mouseover and mouseout.
474         (WebInspector.CSSStyleDeclarationSection.prototype._highlightNodesWithSelector): Selector text mouseover action that highlights all nodes that match the selector string in the corresponding frame.
475         (WebInspector.CSSStyleDeclarationSection.prototype._hideHighlightOnNodesWithSelector): Selector text mouseout action that clears all highlights on matching nodes.
476         * UserInterface/Views/DOMNode.js:
477         (WebInspector.DOMNode): If the payload contains a frameId, then save it.
478         (WebInspector.DOMNode.frameIdentifier):
479
480 2015-06-19  Joseph Pecoraro  <pecoraro@apple.com>
481
482         Web Inspector: Overlapping dashboard views causing lots of layers in source view
483         https://bugs.webkit.org/show_bug.cgi?id=146153
484
485         Reviewed by Darin Adler.
486
487         * UserInterface/Views/DashboardContainerView.css:
488         (.toolbar .dashboard:not(.visible)):
489         Hide non-visible dashboard views. The !important is used
490         to override more specific toolbar .dashboard.foo styles.
491
492 2015-06-19  Devin Rousso  <drousso@apple.com>
493
494         Web Inspector: Make rule icon toggle all properties for that selector on and off
495         https://bugs.webkit.org/show_bug.cgi?id=146031
496
497         Reviewed by Timothy Hatcher.
498
499         * UserInterface/Views/CSSStyleDeclarationSection.css:
500         (.style-declaration-section > .header > .icon.toggle-able:hover):
501         (.style-declaration-section.rule-disabled > .header > .icon):
502         * UserInterface/Views/CSSStyleDeclarationSection.js:
503         (WebInspector.CSSStyleDeclarationSection): Added event listener to selector icon to toggle commenting of all properties for that rule.
504         (WebInspector.CSSStyleDeclarationSection.prototype._toggleRuleOnOff): Adds or removes comments to all properties for that rule.
505         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
506         (WebInspector.CSSStyleDeclarationTextEditor.prototype.uncommentAllProperties.uncommentProperties):
507         (WebInspector.CSSStyleDeclarationTextEditor.prototype.uncommentAllProperties): Uncomments all properties.
508         (WebInspector.CSSStyleDeclarationTextEditor.prototype.commentAllProperties): Comments out all properties.
509         (WebInspector.CSSStyleDeclarationTextEditor.prototype._propertyCheckboxChanged): Moved comment logic to its own function.
510         (WebInspector.CSSStyleDeclarationTextEditor.prototype._propertyCommentCheckboxChanged): Moved uncomment logic to its own function.
511
512 2015-06-19  Jon Lee  <jonlee@apple.com>
513
514         Update font and font-family keyword completions
515         https://bugs.webkit.org/show_bug.cgi?id=144558
516         <rdar://problem/20795292>
517
518         Reviewed by Timothy Hatcher.
519
520         * UserInterface/Models/CSSKeywordCompletions.js: Replace -webkit-system-font and
521         -apple-system-font with -apple-system, which is the recommended token for getting the
522         system font. Also add -title{1,2,3} for font, as they were missing, but already exist
523         in font-family.
524
525 2015-06-19  Joseph Pecoraro  <pecoraro@apple.com>
526
527         Web Inspector: Avoid getOwnPropertyNames/Symbols on very large lists
528         https://bugs.webkit.org/show_bug.cgi?id=146141
529
530         Reviewed by Timothy Hatcher.
531
532         * UserInterface/Controllers/JavaScriptRuntimeCompletionProvider.js:
533         (WebInspector.JavaScriptRuntimeCompletionProvider.prototype.completionControllerCompletionsNeeded):
534         When building completions for a large array, instead of building a list of all the indices
535         just send a single number back to the frontend and let it generate a list for completion.
536         We should do even better and avoid building a lookup table here for completion of an index.
537
538 2015-06-18  Matt Baker  <mattbaker@apple.com>
539
540         Web Inspector: Rendering Frames timeline selection should snap to frame boundaries
541         https://bugs.webkit.org/show_bug.cgi?id=146120
542
543         Reviewed by Timothy Hatcher.
544
545         * UserInterface/Views/RenderingFrameTimelineOverview.js:
546         Enable snapping to frame boundaries.
547
548         * UserInterface/Views/TimelineRecordingContentView.js:
549         (WebInspector.TimelineRecordingContentView.prototype._updateFrameSelection):
550         Updated filtering to account for ruler snapping.
551
552         * UserInterface/Views/TimelineRuler.js:
553         (WebInspector.TimelineRuler.prototype.get snapInterval):
554         (WebInspector.TimelineRuler.prototype.set snapInterval):
555         (WebInspector.TimelineRuler.prototype.set selectionStartTime):
556         (WebInspector.TimelineRuler.prototype.set selectionEndTime):
557         (WebInspector.TimelineRuler.prototype._snapValue):
558         (WebInspector.TimelineRuler.prototype._handleMouseMove):
559         Added support for snapping to a specified interval.
560
561         * UserInterface/Views/TimelineSidebarPanel.js:
562         Removed unnecessary code.
563
564 2015-06-18  Devin Rousso  <drousso@apple.com>
565
566         Web Inspector: Add a filter for CSS properties in the Styles sidebar
567         https://bugs.webkit.org/show_bug.cgi?id=145536
568
569         Reviewed by Timothy Hatcher.
570
571         * UserInterface/Base/Utilities.js: Added function to Strings that returns an array of all matching indexes of a given string.
572         (.value):
573         * UserInterface/Views/CSSStyleDeclarationSection.js:
574         (WebInspector.CSSStyleDeclarationSection):
575         (WebInspector.CSSStyleDeclarationSection.prototype.refresh.appendSelector):
576         (WebInspector.CSSStyleDeclarationSection.prototype.findMatchingPropertiesAndSelectors): Loops through the property list and selectors of each section to find matches to the filtered text.
577         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
578         (WebInspector.CSSStyleDeclarationTextEditor.prototype.findMatchingProperties): Searches through the properties list to find and highlight all matching properties.
579         (WebInspector.CSSStyleDeclarationTextEditor.prototype.removeNonMatchingProperties): Removes all properties that do not match and highlights the specific matched text in matching properties.
580         (WebInspector.CSSStyleDeclarationTextEditor.prototype.resetFilteredProperties): Restores all properties to full visibility and removes any highlighting.
581         (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).
582         (WebInspector.CSSStyleDeclarationTextEditor.prototype._iterateOverProperties): If a filter is active, find properties matching the filter instead of all properties.
583         * UserInterface/Views/CSSStyleDetailsSidebarPanel.css:
584         (.sidebar > .panel.details.css-style > .content.has-filter-bar + .filter-bar):
585         (.sidebar > .panel.details.css-style > .content:not(.has-filter-bar) + .filter-bar):
586         * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
587         (WebInspector.CSSStyleDetailsSidebarPanel): Added a filter bar to the CSS sidebar.
588         (WebInspector.CSSStyleDetailsSidebarPanel.prototype._switchPanels): Switching panels preserves and applies filter bar text.
589         (WebInspector.CSSStyleDetailsSidebarPanel.prototype._filterDidChange): Function called when the filter bar text changes that calls the current panel's filterDidChange function if it exists.
590         * UserInterface/Views/FilterBar.js: Added function and variable to check if the text in the filter bar had changed.
591         * UserInterface/Views/MetricsStyleDetailsPanel.js:
592         (WebInspector.MetricsStyleDetailsPanel.prototype.refresh): Now calls superclass refresh.
593         (WebInspector.MetricsStyleDetailsPanel): Added delegate variable to constructor.
594         * UserInterface/Views/RulesStyleDetailsPanel.css:
595         (.sidebar > .panel.details.css-style > .content.filter-in-progress .label):
596         (.sidebar > .panel.details.css-style > .content.filter-in-progress .label ~ .label):
597         (.sidebar > .panel.details.css-style > .content.filter-in-progress .label.filter-matching-label):
598         (.sidebar > .panel.details.css-style > .content.filter-in-progress .new-rule):
599         (.sidebar > .panel.details.css-style > .content.filter-in-progress .style-declaration-section:not(.filter-section-non-matching) ~ .label:not(.filter-section-non-matching)):
600         (.sidebar > .panel.details.css-style > .content:not(.filter-in-progress) > .rules > .new-rule + .style-declaration-section):
601         (.sidebar > .panel.details.css-style > .content > .rules:not(.filter-non-matching) > .no-filter-results):
602         (.sidebar > .panel.details.css-style > .content.filter-in-progress > .rules.filter-non-matching > .no-filter-results):
603         (.sidebar > .panel.details.css-style > .content.filter-in-progress > .rules.filter-non-matching > .no-filter-results > .no-filter-results-message):
604         * UserInterface/Views/RulesStyleDetailsPanel.js:
605         (WebInspector.RulesStyleDetailsPanel): Added delegate variable to constructor.
606         (WebInspector.RulesStyleDetailsPanel.prototype.refresh): Now calls superclass refresh.
607         (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).
608         (WebInspector.StyleDetailsPanel): Added delegate variable to constructor.
609         (WebInspector.StyleDetailsPanel.prototype.refresh): Added event dispatch for panel refresh.
610
611 2015-06-18  Devin Rousso  <drousso@apple.com>
612
613         Web Inspector: Ability to Copy entire CSS Rule from Styles Sidebar
614         https://bugs.webkit.org/show_bug.cgi?id=138812
615
616         Reviewed by Timothy Hatcher.
617
618         * Localizations/en.lproj/localizedStrings.js:
619         * UserInterface/Views/CSSStyleDeclarationSection.js:
620         (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.
621         (WebInspector.CSSStyleDeclarationSection.prototype._handleContextMenuEvent): Creates a new context menu to copy the entire CSS rule.
622         (WebInspector.CSSStyleDeclarationSection.prototype._generateCSSRuleString): Generates a string representing the formatted CSS rule.
623
624 2015-06-18  Joseph Pecoraro  <pecoraro@apple.com>
625
626         Web Inspector: Improve a few more node preview types
627         https://bugs.webkit.org/show_bug.cgi?id=146048
628
629         Reviewed by Timothy Hatcher.
630
631         * UserInterface/Views/FormattedValue.js:
632         (WebInspector.FormattedValue.createElementForNodePreview):
633
634 2015-06-18  Devin Rousso  <drousso@apple.com>
635
636         Web Inspector: New Rule button doesn't reveal the newly added rule if not visible upon creation
637         https://bugs.webkit.org/show_bug.cgi?id=117600
638
639         Reviewed by Timothy Hatcher.
640
641         * 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.
642         (WebInspector.RulesStyleDetailsPanel):
643         (WebInspector.RulesStyleDetailsPanel.prototype.refresh.appendStyleSection):
644         (WebInspector.RulesStyleDetailsPanel.prototype.nodeStylesRefreshed):
645         (WebInspector.RulesStyleDetailsPanel.prototype.refresh): Deleted.
646
647 2015-06-18  Commit Queue  <commit-queue@webkit.org>
648
649         Unreviewed, rolling out r185671.
650         https://bugs.webkit.org/show_bug.cgi?id=146114
651
652         Caused frequent flaky failures on profiler tests (Requested by
653         ap on #webkit).
654
655         Reverted changeset:
656
657         "Web Inspector: Improve a few more node preview types"
658         https://bugs.webkit.org/show_bug.cgi?id=146048
659         http://trac.webkit.org/changeset/185671
660
661 2015-06-17  Joseph Pecoraro  <pecoraro@apple.com>
662
663         Web Inspector: Improve a few more node preview types
664         https://bugs.webkit.org/show_bug.cgi?id=146048
665
666         Reviewed by Timothy Hatcher.
667
668         * UserInterface/Views/FormattedValue.js:
669         (WebInspector.FormattedValue.createElementForNodePreview):
670
671 2015-06-17  Diego Pino Garcia  <dpino@igalia.com>
672
673         Web Inspector: Show/Hide sidebar buttons have inconsistent highlighted state
674         https://bugs.webkit.org/show_bug.cgi?id=145073
675
676         Reviewed by Joseph Pecoraro.
677
678         * UserInterface/Views/ContentBrowserTabContentView.js:
679         (WebInspector.ContentBrowserTabContentView.prototype._detailsSidebarPanelSelected):
680
681 2015-06-16  Joseph Pecoraro  <pecoraro@apple.com>
682
683         Web Inspector: Inspector Scripts evaluated in the page should not be searchable
684         https://bugs.webkit.org/show_bug.cgi?id=146040
685
686         Reviewed by Darin Adler.
687
688         Any script with a __WebInspector source URL will be hidden by the tools.
689         There were a number of ways the inspector could evaluate script on the page
690         without getting the sourceURL and therefore not getting hidden. Audit
691         all cases of Runtime.evaluate, Runtime.callFunctionOn, and
692         Debugger.evaluateOnCallFrame, to ensure we have an appropriate source URL.
693
694         * UserInterface/Base/Utilities.js:
695         (appendWebInspectorSourceURL):
696         Helper to append a __WebInspectorInternal__ sourceURL to a string that may
697         be evaluated directly on the inspected context.
698
699         * UserInterface/Controllers/DOMTreeManager.js:
700         (WebInspector.DOMTreeManager.domNodeResolved):
701         * UserInterface/Controllers/JavaScriptLogViewController.js:
702         (WebInspector.JavaScriptLogViewController.prototype.consolePromptTextCommitted): Deleted.
703         * UserInterface/Controllers/RuntimeManager.js:
704         * UserInterface/Models/DOMTree.js:
705         (WebInspector.DOMTree.prototype._requestRootDOMNode):
706         * UserInterface/Protocol/RemoteObject.js:
707         (WebInspector.RemoteObject.):
708         * UserInterface/Views/SourceCodeTextEditor.js:
709         (WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedJavaScriptExpression):
710         Ensure all cases that evaluate directly on the inspected page / context
711         have the intenral source URL.
712
713 2015-06-16  Matt Baker  <mattbaker@apple.com>
714
715         Web Inspector: REGRESSION (r171645): up/down key navigation of timeline sidebar tree elements is broken when scope bar filters are applied
716         https://bugs.webkit.org/show_bug.cgi?id=142315
717
718         Reviewed by Timothy Hatcher.
719
720         TreeOutline's element traversal algorithms have been rewritten to correctly skip over unrevealed tree elements.
721         Previously traversal would halt after encountering a hidden element. We now use an iterative approach, with
722         each iteration producing the next (or previous) element, with respect to the last candidate element. Iteration
723         begins with the current node, and halts once a valid element is found or candidate elements are exhausted.
724
725         * UserInterface/Views/TreeOutline.js:
726         (WebInspector.TreeElement.prototype.traverseNextTreeElement.shouldSkip):
727         (WebInspector.TreeElement.prototype.traverseNextTreeElement):
728         (WebInspector.TreeElement.prototype.traversePreviousTreeElement.shouldSkip):
729         (WebInspector.TreeElement.prototype.traversePreviousTreeElement):
730
731 2015-06-15  Joseph Pecoraro  <pecoraro@apple.com>
732
733         Web Inspector: Stylize Node Previews
734         https://bugs.webkit.org/show_bug.cgi?id=145990
735
736         Reviewed by Timothy Hatcher.
737
738         * UserInterface/Views/FormattedValue.js:
739         (WebInspector.FormattedValue.createElementForNodePreview):
740         Style a node preview like a DOMNode. It is a simple small snippet.
741
742         * UserInterface/Views/ObjectPreviewView.js:
743         (WebInspector.ObjectPreviewView.prototype._appendPropertyPreviews):
744         Use node previews in ObjectPreviewViews.
745
746 2015-06-15  Joseph Pecoraro  <pecoraro@apple.com>
747
748         Web Inspector: Improve some cases of "Object?" Type Annotations
749         https://bugs.webkit.org/show_bug.cgi?id=145954
750
751         Reviewed by Timothy Hatcher.
752
753         * UserInterface/Views/TypeTokenView.js:
754         (WebInspector.TypeTokenView.prototype._displayTypeName):
755         The TypeSet inclusions cover all types, so we can use the leastCommonAncestor
756         name as long as the type set is just object or object and null/undefined.
757         If the typeset includes other primitives then it will gracefully go down
758         below to become something like Object or (many). 
759
760 2015-06-14  Andres Gomez  <agomez@igalia.com>
761
762         [GTK] Web Inspector: Update icon so Rendering Frames timeline distinguish between layout and painting
763         https://bugs.webkit.org/show_bug.cgi?id=145956
764
765         Reviewed by Carlos Garcia Campos.
766
767         * UserInterface/Images/gtk/TimelineRecordPaint.svg:
768         Changed to use green color.
769
770 2015-06-13  Joseph Pecoraro  <pecoraro@apple.com>
771
772         Web Inspector: console.table() with a list of objects no longer works
773         https://bugs.webkit.org/show_bug.cgi?id=145952
774
775         Reviewed by Timothy Hatcher.
776
777         * UserInterface/Views/ConsoleMessageView.js:
778         (WebInspector.ConsoleMessageView.prototype._appendMessageTextAndArguments):
779         (WebInspector.ConsoleMessageView.prototype._formatParameterAsTable):
780         Don't allow expanding a cosole.table message, and don't output the total
781         object even if the table preview was lossless, as the experience is poor.
782
783 2015-06-11  Joseph Pecoraro  <pecoraro@apple.com>
784
785         Web Inspector: CSS Regions not displaying DOM Trees in inspector
786         https://bugs.webkit.org/show_bug.cgi?id=145903
787
788         Reviewed by Timothy Hatcher.
789
790         * UserInterface/Controllers/DOMTreeManager.js:
791         (WebInspector.DOMTreeManager.prototype._updateContentFlowFromPayload):
792         Fix function inside the assertion to actually return a value.
793
794         * UserInterface/Views/DOMTreeOutline.js:
795         (WebInspector.DOMTreeOutline.prototype.update):
796         For DOMTreeOutlines without a root node, don't clear the tree on updates,
797         since that will clear the nodes that have already been added explicitly.
798
799         * UserInterface/Views/ResourceSidebarPanel.js:
800         (WebInspector.ResourceSidebarPanel.prototype._treeElementSelected):
801         * UserInterface/Views/ResourcesTabContentView.js:
802         (WebInspector.ResourcesTabContentView.prototype.canShowRepresentedObject):
803         ResourceTab and sidebar can deal with ContentFlow related views.
804
805 2015-06-11  Joseph Pecoraro  <pecoraro@apple.com>
806
807         Web Inspector: IndexedDB data not showing for MDN example page
808         https://bugs.webkit.org/show_bug.cgi?id=145851
809
810         Reviewed by Anders Carlsson.
811
812         * UserInterface/Views/StorageSidebarPanel.js:
813         (WebInspector.StorageSidebarPanel.prototype._indexedDatabaseWasAdded):
814         Fix typo in Storage tab refactoring that was causing an
815         uncaught exception and not showing Indexed DBs.
816
817 2015-06-11  Devin Rousso  <drousso@apple.com>
818
819         Web Inspector: font-family names interpreted as color
820         https://bugs.webkit.org/show_bug.cgi?id=123468
821
822         Reviewed by Timothy Hatcher.
823
824         * UserInterface/Views/CodeMirrorAdditions.js: Added logic to prevent color picker buttons from appearing before colors that come after a quote character (both " and ').
825
826 2015-06-11  Matt Baker  <mattbaker@apple.com>
827
828         Web Inspector: Rendering Frames timeline should distinguish between layout and painting
829         https://bugs.webkit.org/show_bug.cgi?id=145856
830
831         Reviewed by Timothy Hatcher.
832
833         This patch formalizes the runloop task concept in the frontend, adds new Paint task type to the Rendering
834         Frames timeline, and reorders UI elements such as chart sections and frame "segments" to match the order in
835         which tasks are executed within the runloop.
836
837         We will need to make UI changes to the standard Timelines view in a follow up patch, since tree element icons
838         for Paint records now use a different color that those of other Layout records.
839
840         * UserInterface/Images/TimelineRecordPaint.svg:
841         Changed to use green color.
842
843         * UserInterface/Models/RenderingFrameTimelineRecord.js:
844         (WebInspector.RenderingFrameTimelineRecord):
845         (WebInspector.RenderingFrameTimelineRecord.displayNameForTaskType):
846         (WebInspector.RenderingFrameTimelineRecord.prototype.durationForTask.get validRecordForTaskType):
847         (WebInspector.RenderingFrameTimelineRecord.prototype.durationForTask.set return):
848         (WebInspector.RenderingFrameTimelineRecord.prototype.durationForTask):
849         (WebInspector.RenderingFrameTimelineRecord.prototype.get durationRemainder): Deleted.
850         (WebInspector.RenderingFrameTimelineRecord.prototype.durationForRecords.get var): Deleted.
851         Added TaskType enum to decouple runloop task types from timeline record types, and removed duration remainder
852         support now that "Other" has an associated task type.
853
854         * UserInterface/Views/RenderingFrameTimelineDataGridNode.js:
855         (WebInspector.RenderingFrameTimelineDataGridNode.prototype.get data):
856         (WebInspector.RenderingFrameTimelineDataGridNode.prototype.createCellContent):
857         * UserInterface/Views/RenderingFrameTimelineView.js:
858         (WebInspector.RenderingFrameTimelineView):
859         Added new grid column for Paint task, reordered columns to be consistent with the rest of the UI.
860
861         * UserInterface/Views/TimelineRecordFrame.css:
862         (.timeline-record-frame > .frame > .duration.rendering-frame-timeline-record-script):
863         (.timeline-record-frame > .frame > .duration.rendering-frame-timeline-record-layout):
864         (.timeline-record-frame > .frame > .duration.rendering-frame-timeline-record-paint):
865         (.timeline-record-frame > .frame > .duration): Deleted.
866         (.timeline-record-frame > .frame > .duration.timeline-record-type-network): Deleted.
867         (.timeline-record-frame > .frame > .duration.timeline-record-type-layout): Deleted.
868         (.timeline-record-frame > .frame > .duration.timeline-record-type-script): Deleted.
869         Updated styles for Render Frame tasks.
870
871         * UserInterface/Views/TimelineRecordFrame.js:
872         (WebInspector.TimelineRecordFrame.prototype._updateChildElements.createDurationElement):
873         Updated to use Render Frame task types. Frame segment insertion order is now consistent with the rest of the UI.
874
875         * UserInterface/Views/TimelineSidebarPanel.js:
876         (WebInspector.TimelineSidebarPanel._refreshFrameSelectionChart.chartData.Object.keys.map):
877         (WebInspector.TimelineSidebarPanel.set this):
878         (WebInspector.TimelineSidebarPanel._refreshFrameSelectionChart.get this):
879         (WebInspector.TimelineSidebarPanel): Deleted.
880         (WebInspector.TimelineSidebarPanel.prototype._refreshFrameSelectionChart.durationForRecordType): Deleted.
881         (WebInspector.TimelineSidebarPanel.prototype._refreshFrameSelectionChart): Deleted.
882         Updated to use Render Frame task types.
883
884 2015-06-11  Matt Baker  <mattbaker@apple.com>
885
886         Web Inspector: Wrong overview graph shown after switching from Frames to Timelines
887         https://bugs.webkit.org/show_bug.cgi?id=145778
888
889         Reviewed by Timothy Hatcher.
890
891         TimelineSidebarPanel stores a reference to the selected timeline before switching to the Rendering Frames view,
892         which is used to restore the tree selection, overview graph, and content views when switching back to the
893         standard Timelines view. However if another recording is created before switching, the previously selected
894         timeline tracked by the sidebar cannot be restored, since it doesn't belong to the active recording.
895
896         This is addressed by storing the previously selected timeline type, rather than the timeline object itself.
897         The type is also updated whenever the selected timeline in the tree outline changes, ensuring that the correct
898         timeline will always be restored.
899
900         * UserInterface/Views/TimelineSidebarPanel.js:
901         (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject.get if.get if):
902         (WebInspector.TimelineSidebarPanel.get else): Deleted.
903         (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject.get if): Deleted.
904         (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject): Deleted.
905
906 2015-06-08  Matt Baker  <mattbaker@apple.com>
907
908         Web Inspector: Clearing active Timeline recording should stop capturing
909         https://bugs.webkit.org/show_bug.cgi?id=145767
910
911         Reviewed by Joseph Pecoraro.
912
913         * UserInterface/Views/TimelineRecordingContentView.js:
914         (WebInspector.TimelineRecordingContentView.prototype._clearTimeline):
915         Stop capturing if necessary.
916
917 2015-06-07  Tobias Reiss  <tobi+webkit@basecode.de>
918
919         Web Inspector: Add PrettyPrinter CSSRule tests
920         https://bugs.webkit.org/show_bug.cgi?id=145740
921
922         Reviewed by Brian Burg.
923
924         * Tools/PrettyPrinting/css-rule-tests/add-whitespace-after-colon-expected.css: Added.
925         * Tools/PrettyPrinting/css-rule-tests/add-whitespace-after-colon.css: Added.
926         * Tools/PrettyPrinting/css-rule-tests/add-whitespace-after-comma-expected.css: Added.
927         * Tools/PrettyPrinting/css-rule-tests/add-whitespace-after-comma.css: Added.
928         * Tools/PrettyPrinting/css-rule-tests/do-not-append-semicolon-expected.css: Added.
929         * Tools/PrettyPrinting/css-rule-tests/do-not-append-semicolon.css: Added.
930         * Tools/PrettyPrinting/css-rule-tests/invalid-property-is-not-removed-expected.css: Added.
931         * Tools/PrettyPrinting/css-rule-tests/invalid-property-is-not-removed.css: Added.
932         * Tools/PrettyPrinting/css-rule-tests/keep-prefixed-value-expected.css: Added.
933         * Tools/PrettyPrinting/css-rule-tests/keep-prefixed-value.css: Added.
934         * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-colon-expected.css: Added.
935         * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-colon.css: Added.
936         * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-comment-expected.css: Added.
937         * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-comment.css: Added.
938         * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-invalid-property-expected.css: Added.
939         * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-invalid-property.css: Added.
940         * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-prefixed-property-expected.css: Added.
941         * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-prefixed-property.css: Added.
942         * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-property-expected.css: Added.
943         * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-property.css: Added.
944         * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-semicolon-expected.css: Added.
945         * Tools/PrettyPrinting/css-rule-tests/remove-whitespace-before-semicolon.css: Added.
946         * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-comment-expected.css: Added.
947         * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-comment.css: Added.
948         * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-invalid-property-expected.css: Added.
949         * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-invalid-property.css: Added.
950         * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-prefixed-property-expected.css: Added.
951         * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-prefixed-property.css: Added.
952         * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-property-expected.css: Added.
953         * Tools/PrettyPrinting/css-rule-tests/split-comment-followed-by-property.css: Added.
954         * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-comment-expected.css: Added.
955         * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-comment.css: Added.
956         * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-invalid-property-expected.css: Added.
957         * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-invalid-property.css: Added.
958         * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-prefixed-property-expected.css: Added.
959         * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-prefixed-property.css: Added.
960         * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-property-expected.css: Added.
961         * Tools/PrettyPrinting/css-rule-tests/split-invalid-property-followed-by-property.css: Added.
962         * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-comment-expected.css: Added.
963         * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-comment.css: Added.
964         * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-invalid-property-expected.css: Added.
965         * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-invalid-property.css: Added.
966         * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-prefixed-property-expected.css: Added.
967         * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-prefixed-property.css: Added.
968         * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-property-expected.css: Added.
969         * Tools/PrettyPrinting/css-rule-tests/split-property-followed-by-property.css: Added.
970         * Tools/PrettyPrinting/css-rule-tests/split-property-without-semicolon-followed-by-comment-and-property-expected.css: Added.
971         * Tools/PrettyPrinting/css-rule-tests/split-property-without-semicolon-followed-by-comment-and-property.css: Added.
972
973 2015-06-05  Devin Rousso  <drousso@apple.com>
974
975         Web Inspector: Fixing code style and adding more limitations for bug 141262
976         https://bugs.webkit.org/show_bug.cgi?id=145668
977
978         Reviewed by Timothy Hatcher.
979
980         * UserInterface/Models/CSSCompletions.js:
981         (WebInspector.CSSCompletions.prototype.isValidPropertyName): Loops through the full property list and returns true only if a property exactly matches the given property name.
982         (WebInspector.CSSCompletions): Added isValidPropertyName function.
983         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
984         (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.
985
986 2015-06-05  Devin Rousso  <drousso@apple.com>
987
988         Web Inspector: Highlighting a CSS section does not deselect previously highlighted CSS sections
989         https://bugs.webkit.org/show_bug.cgi?id=145399
990
991         Reviewed by Timothy Hatcher.
992
993         * UserInterface/Views/CSSStyleDeclarationSection.js:
994         (WebInspector.CSSStyleDeclarationSection): Added delegate variable to constructor.
995         (WebInspector.CSSStyleDeclarationSection.prototype.clearSelection):
996         (WebInspector.CSSStyleDeclarationSection.prototype.cssStyleDeclarationTextEditorFocused):
997         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
998         (WebInspector.CSSStyleDeclarationTextEditor): Added event listener to codeMirror on "focus".
999         (WebInspector.CSSStyleDeclarationTextEditor.prototype.clearSelection): Sets the cursor of the codeMirror to character 0 on line 0.
1000         (WebInspector.CSSStyleDeclarationTextEditor.prototype._editorFocused): Function that calls the delegate function "editorFocused" when the codeMirror is focused
1001         * UserInterface/Views/RulesStyleDetailsPanel.js:
1002         (WebInspector.RulesStyleDetailsPanel.prototype.refresh.appendStyleSection):
1003         (WebInspector.RulesStyleDetailsPanel.prototype.cssStyleDeclarationSectionEditorFocused): Loops through all sections except for the ignoredSection (parameter) and clears the selected text in each of them.
1004
1005 2015-06-05  Joseph Pecoraro  <pecoraro@apple.com>
1006
1007         REGRESSION (r185213): TypeError: undefined is not an object (evaluating 'WebInspector.clearLogOnReload.value')
1008         https://bugs.webkit.org/show_bug.cgi?id=145695
1009
1010         Reviewed by Mark Lam.
1011
1012         Move and rename the clear log on reload setting property from
1013         WebInspector (Main.js) to LogManager (shared with tests).
1014
1015         * UserInterface/Base/Main.js:
1016         (WebInspector.loaded): Deleted.
1017         * UserInterface/Controllers/LogManager.js:
1018         (WebInspector.LogManager):
1019         (WebInspector.LogManager.prototype._delayedMessagesCleared):
1020         * UserInterface/Views/LogContentView.js:
1021         (WebInspector.LogContentView.prototype._sessionStarted):
1022         (WebInspector.LogContentView.prototype._handleContextMenuEvent):
1023         (WebInspector.LogContentView.prototype._toggleClearLogOnReloadSetting):
1024
1025 2015-06-05  Nikita Vasilyev  <nvasilyev@apple.com>
1026
1027         Web Inspector: [REGRESSION] Dashboard's resource count does not reset when main resource navigates
1028         https://bugs.webkit.org/show_bug.cgi?id=144553
1029
1030         Add missing _mainResourceDidChange, which was removed after switching to the tabs UI.
1031
1032         Reviewed by Timothy Hatcher.
1033
1034         * UserInterface/Models/DefaultDashboard.js:
1035         (WebInspector.DefaultDashboard):
1036         _waitingForFirstMainResourceToStartTrackingSize is not used anywhere, remove it.
1037
1038         (WebInspector.DefaultDashboard.prototype._mainResourceDidChange): Added.
1039
1040         (WebInspector.DefaultDashboard.prototype._resourceSizeDidChange): Removed.
1041         Unused.
1042
1043 2015-06-05  Matt Baker  <mattbaker@apple.com>
1044
1045         Web Inspector: Switch to doughnut chart and remove idle time in the Rendering Frames timeline
1046         https://bugs.webkit.org/show_bug.cgi?id=145671
1047
1048         Reviewed by Timothy Hatcher.
1049
1050         * Localizations/en.lproj/localizedStrings.js:
1051         "Idle" string no longer used.
1052
1053         * UserInterface/Views/TimelineRecordFrame.js:
1054         Reduced maximum frame width by 2px.
1055
1056         * UserInterface/Views/TimelineSidebarPanel.js:
1057         (WebInspector.TimelineSidebarPanel):
1058         (WebInspector.TimelineSidebarPanel.prototype._refreshFrameSelectionChart):
1059         Added inner radius to chart and removed "Idle" value.
1060
1061 2015-06-04  Joseph Pecoraro  <pecoraro@apple.com>
1062
1063         Web Inspector: Class constructor appearing as Object Tree property does not include parameters
1064         https://bugs.webkit.org/show_bug.cgi?id=145661
1065
1066         Reviewed by Timothy Hatcher.
1067
1068         * UserInterface/Protocol/RemoteObject.js:
1069         (WebInspector.RemoteObject):
1070         (WebInspector.RemoteObject.fromPrimitiveValue):
1071         (WebInspector.RemoteObject.fromPayload):
1072         (WebInspector.RemoteObject.prototype.get functionDescription):
1073         Include the className as only use it for "class" types to override
1074         the normal description string. Stash the actual function description
1075         in a property we can access later.
1076
1077         * UserInterface/Views/ObjectTreePropertyTreeElement.js:
1078         (WebInspector.ObjectTreePropertyTreeElement.prototype._functionParameterString):
1079         Even if this property is a "class" we want to specifically parse it's
1080         function description string. So use functionDescription.
1081
1082 2015-06-04  Nikita Vasilyev  <nvasilyev@apple.com>
1083
1084         Web Inspector: Close and open tabs on mouseup, not mousedown
1085         https://bugs.webkit.org/show_bug.cgi?id=145656
1086
1087         Match Safari's behaviour.
1088
1089         Reviewed by Timothy Hatcher.
1090
1091         * UserInterface/Views/TabBar.js:
1092         (WebInspector.TabBar):
1093         (WebInspector.TabBar.prototype.set newTabItem):
1094         (WebInspector.TabBar.prototype._handleMouseDown):
1095         (WebInspector.TabBar.prototype._handleClick): Added.
1096         (WebInspector.TabBar.prototype._handleMouseUp):
1097         (WebInspector.TabBar.prototype._handleNewTabClick): Added.
1098         (WebInspector.TabBar.prototype._handleMouseMoved):
1099
1100 2015-06-04  Nikita Vasilyev  <nvasilyev@apple.com>
1101
1102         Web Inspector: Decrease tabs height to match Safari's tabs height
1103         https://bugs.webkit.org/show_bug.cgi?id=145647
1104
1105         Reviewed by Timothy Hatcher.
1106
1107         * UserInterface/Views/TabBar.css:
1108         (.tab-bar):
1109
1110 2015-06-04  Tobias Reiss  <tobi+webkit@basecode.de>
1111         
1112         Web Inspector: Activity Viewer does not update on "Clear Log on reload"
1113         https://bugs.webkit.org/show_bug.cgi?id=145466
1114         
1115         Reviewed by Joseph Pecoraro.
1116
1117         1. Isolate logic within LogManager and remove hacks/logic from all other files
1118         2. Within LogManager: Differentiate "messagesCleared" calls
1119          a) that happen as a result of a "requested clear" by Frontend (e.g. Button)
1120          b) that happen on page reload and install "clear/keep-on-page-reload" logic
1121          c) that happen on frame navigated, console.clear() or clear()
1122         3. Unify "ActiveLogCleared" and "Cleared" events to "Cleared"
1123         
1124         For step 2b and 2c it is important to delay the handling and wait until
1125         "_mainResourceDidChange" has determined whether a page reload happened or
1126         not.
1127         
1128         * UserInterface/Base/Main.js:
1129         (WebInspector.loaded):
1130         Store "clear-log-on-reload" setting globally.
1131         
1132         * UserInterface/Controllers/IssueManager.js:
1133         (WebInspector.IssueManager):
1134         * UserInterface/Models/DefaultDashboard.js:
1135         (WebInspector.DefaultDashboard): Deleted.
1136         * UserInterface/Views/ObjectTreeView.js:
1137         (WebInspector.ObjectTreeView.prototype._trackWeakEntries): Deleted.
1138         (WebInspector.ObjectTreeView.prototype._untrackWeakEntries): Deleted.
1139         (WebInspector.ObjectTreeView): Deleted.
1140         Remove deleted events.
1141         
1142         * UserInterface/Controllers/JavaScriptLogViewController.js:
1143         (WebInspector.JavaScriptLogViewController.prototype._handleClearShortcut):
1144         (WebInspector.JavaScriptLogViewController.prototype.clear): Deleted.
1145         Remove delegate function call and call LogManager directly.
1146         
1147         * UserInterface/Controllers/LogManager.js:
1148         (WebInspector.LogManager):
1149         (WebInspector.LogManager.prototype.messagesCleared):
1150         (WebInspector.LogManager.prototype._delayedMessagesCleared):
1151         (WebInspector.LogManager.prototype.requestClearMessages):
1152         (WebInspector.LogManager.prototype._mainResourceDidChange):
1153         Isolate "clear log" logic, especially clear/keep-log-on-reload logic.
1154         
1155         * UserInterface/Views/LogContentView.js:
1156         (WebInspector.LogContentView):
1157         (WebInspector.LogContentView.prototype._sessionStarted):
1158         (WebInspector.LogContentView.prototype._handleContextMenuEvent):
1159         (WebInspector.LogContentView.prototype._logCleared):
1160         (WebInspector.LogContentView.prototype._toggleClearLogOnReloadSetting):
1161         (WebInspector.LogContentView.prototype._clearLog):
1162         (WebInspector.LogContentView.prototype.didClearMessages): Deleted.
1163         (WebInspector.LogContentView.prototype._sessionsCleared): Deleted.
1164         (WebInspector.LogContentView.prototype._activeLogCleared): Deleted.
1165         (WebInspector.LogContentView.prototype._clearLogIgnoringClearMessages): Deleted.
1166         Make it a consumer of LogManager and remove special hacks. Simplify code.
1167
1168 2015-06-03  Devin Rousso  <drousso@apple.com>
1169
1170         Web Inspector: if a known CSS property has an unsupported value, only strikethrough the value
1171         https://bugs.webkit.org/show_bug.cgi?id=141262
1172
1173         Reviewed by Timothy Hatcher.
1174
1175         * UserInterface/Models/CSSCompletions.js:
1176         (WebInspector.CSSCompletions.prototype.nameMatchesValidPropertyExactly): Loops through the full property list and returns true only if a property exactly matches the given property name.
1177         (WebInspector.CSSCompletions): Added nameMatchesValidPropertyExactly function.
1178         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
1179         (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.
1180
1181 2015-06-03  Nikita Vasilyev  <nvasilyev@apple.com>
1182
1183         Web Inspector: Search field bottom border doesn't match the rest of the toolbar
1184         https://bugs.webkit.org/show_bug.cgi?id=145611
1185
1186         Reviewed by Timothy Hatcher.
1187
1188         * UserInterface/Views/Toolbar.css:
1189         (body:not(.unknown-mac) .toolbar .search-bar > input[type="search"]):
1190
1191 2015-06-03  Joseph Pecoraro  <pecoraro@apple.com>
1192
1193         Web Inspector: Uncaught exception starting a NavigationBar drag and mousing over a different NavigationBar
1194         https://bugs.webkit.org/show_bug.cgi?id=145589
1195
1196         Reviewed by Timothy Hatcher.
1197
1198         * UserInterface/Views/NavigationBar.js:
1199         (WebInspector.NavigationBar.prototype._mouseDown):
1200         (WebInspector.NavigationBar.prototype._mouseUp):
1201         When mouse dragging for navigation bars, only match against navigation
1202         bar items inside this navigation bar. Also, fix horizontal detection
1203         of navigation bar items by scanning in the middle of the navigation
1204         bar instead of the top, which missed the items.
1205
1206 2015-06-03  Joseph Pecoraro  <pecoraro@apple.com>
1207
1208         Web Inspector: Debugger Popover for Node object should have go-to-arrow to show the node in DOM tree
1209         https://bugs.webkit.org/show_bug.cgi?id=145594
1210
1211         Reviewed by Timothy Hatcher.
1212
1213         * UserInterface/Controllers/DOMTreeManager.js:
1214         (WebInspector.DOMTreeManager.prototype.inspectElement):
1215         Previously we could get an exception later on if we tried to
1216         inspect an element that was not in the DOM. Bail if the node
1217         is not in the DOM or not.
1218
1219         * UserInterface/Views/SourceCodeTextEditor.css:
1220         (.popover .debugger-popover-content > .title > .go-to-arrow):
1221         * UserInterface/Views/SourceCodeTextEditor.js:
1222         (WebInspector.SourceCodeTextEditor.prototype._showPopoverForObject.data.pushNodeToFrontend):
1223         (WebInspector.SourceCodeTextEditor.prototype._showPopoverForObject):
1224         For a node type, add a go-to-arrow in the popover if it is in the DOM or not.
1225
1226 2015-06-02  Joseph Pecoraro  <pecoraro@apple.com>
1227
1228         Web Inspector: Remove uses of delete in Sidebar related code
1229         https://bugs.webkit.org/show_bug.cgi?id=145592
1230
1231         Reviewed by Timothy Hatcher.
1232
1233         * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
1234         (WebInspector.CSSStyleDetailsSidebarPanel.prototype.refresh):
1235         Clear value instead of deleting.
1236
1237         * UserInterface/Views/SearchSidebarPanel.js:
1238         (WebInspector.SearchSidebarPanel.prototype.performSearch):
1239         Just clear the search identifier. Also assert it (a required string) is always non-falsey.
1240
1241         * UserInterface/Views/Sidebar.js:
1242         (WebInspector.Sidebar.prototype.resizerDragEnded): Deleted.
1243         This entire callback is unnecessary because whenever we start
1244         a drag we save the value.
1245
1246 2015-06-02  Joseph Pecoraro  <pecoraro@apple.com>
1247
1248         Web Inspector: Sidebar and sometimes ContentView scroll position is lost when switching between tabs
1249         https://bugs.webkit.org/show_bug.cgi?id=145591
1250
1251         Reviewed by Timothy Hatcher.
1252
1253         * UserInterface/Views/Sidebar.js:
1254         (WebInspector.Sidebar.prototype.removeSidebarPanel):
1255         When removing a sidebar panel, ensure we call hidden if it was the visible panel.
1256
1257         * UserInterface/Views/SidebarPanel.js:
1258         (WebInspector.SidebarPanel):
1259         (WebInspector.SidebarPanel.prototype.shown):
1260         (WebInspector.SidebarPanel.prototype.hidden):
1261         Save and restore content element scroll position when sidebar panels are shown / hidden.
1262
1263         * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
1264         (WebInspector.CSSStyleDetailsSidebarPanel.prototype.visibilityDidChange):
1265         * UserInterface/Views/ComputedStyleDetailsPanel.js:
1266         (WebInspector.ComputedStyleDetailsPanel.prototype.shown):
1267         * UserInterface/Views/DetailsSidebarPanel.js:
1268         (WebInspector.DetailsSidebarPanel.prototype.shown):
1269         * UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
1270         (WebInspector.LayerTreeDetailsSidebarPanel.prototype.shown):
1271         (WebInspector.LayerTreeDetailsSidebarPanel.prototype.hidden):
1272         Cleanup. Since sidebar panels are using ES6 classes, have super class calls use `super`!
1273
1274 2015-06-02  Nikita Vasilyev  <nvasilyev@apple.com>
1275
1276         Web Inspector: Use non-monospace font for the frame selector
1277         https://bugs.webkit.org/show_bug.cgi?id=145586
1278
1279         Reviewed by Timothy Hatcher.
1280
1281         * UserInterface/Views/HierarchicalPathComponent.css:
1282         (.hierarchical-path-component):
1283
1284 2015-06-02  Nikita Vasilyev  <nvasilyev@apple.com>
1285
1286         Web Inspector: Dashboard arrow icon on the right is overlapped by a long function/file name
1287         https://bugs.webkit.org/show_bug.cgi?id=145540
1288
1289         Also, increase clickable area of the arrow icon.
1290
1291         Reviewed by Timothy Hatcher.
1292
1293         * UserInterface/Views/DashboardContainerView.css:
1294         (.dashboard-container .advance-arrow):
1295         (.dashboard-container .advance-arrow.advance-forward):
1296         (.dashboard-container .advance-arrow.advance-backward):
1297         * UserInterface/Views/DebuggerDashboardView.css:
1298         (.dashboard.debugger > .location):
1299         (.toolbar .dashboard.debugger):
1300         Increase padding on the right so the content of the dashboard would be never be overlayed by the arrow.
1301
1302 2015-06-02  Joseph Pecoraro  <pecoraro@apple.com>
1303
1304         Web Inspector: Shift + Cmd + Left/Right shouldn't switch tabs while editing text
1305         https://bugs.webkit.org/show_bug.cgi?id=145562
1306
1307         Reviewed by Timothy Hatcher.
1308
1309         * UserInterface/Views/TabBrowser.js:
1310         (WebInspector.TabBrowser):
1311         Only these keyboard shortcuts should check if we are in an editable field.
1312         Remove the implicit prevent default so they can fall back to system behavior
1313         if necessary.
1314
1315         (WebInspector.TabBrowser.prototype._showNextTabCheckingForEditableField):
1316         (WebInspector.TabBrowser.prototype._showPreviousTabCheckingForEditableField):
1317         Bail if we are in an editable field. Otherwise perform the action and prevent default.
1318
1319 2015-06-02  Joseph Pecoraro  <pecoraro@apple.com>
1320
1321         Web Inspector: ⌘F no longer brings up the find-in-page bar after typing in the quick console
1322         https://bugs.webkit.org/show_bug.cgi?id=145546
1323
1324         Reviewed by Timothy Hatcher.
1325
1326         Scope ContentBrowser keyboard events within the ContentBrowser instead
1327         of global, where they might conflict between ContentBrowsers. The scoped
1328         shortcuts now no longer need to be enabled/disabled.
1329
1330         * UserInterface/Views/ContentBrowser.js:
1331         (WebInspector.ContentBrowser):
1332         Scope the keyboard shortcuts.
1333
1334         (WebInspector.ContentBrowser.prototype.shown):
1335         (WebInspector.ContentBrowser.prototype.hidden):
1336         No longer need to control enabling / disabling these non-global shortcuts.
1337
1338 2015-06-01  Jono Wells  <jonowells@apple.com>
1339
1340         Web Inspector: Type token text descenders touch bottom of container
1341         https://bugs.webkit.org/show_bug.cgi?id=145544
1342
1343         Reviewed by Timothy Hatcher.
1344
1345         Move 1px padding from top to bottom of token.
1346
1347         * UserInterface/Views/TypeTokenView.css:
1348         (.type-token):
1349
1350 2015-06-01  Joseph Pecoraro  <pecoraro@apple.com>
1351
1352         Web Inspector: Better handle keyboard events in the quick console prompt
1353         https://bugs.webkit.org/show_bug.cgi?id=145548
1354
1355         Reviewed by Timothy Hatcher.
1356
1357         * UserInterface/Base/Main.js:
1358         (WebInspector.saveDataToFile):
1359         Move generic InspectorFrontendHost code here.
1360
1361         * UserInterface/Views/ContentBrowser.js:
1362         (WebInspector.ContentBrowser.prototype._save):
1363         (WebInspector.ContentBrowser.prototype._saveAs):
1364         (WebInspector.ContentBrowser.prototype._saveDataToFile): Deleted.
1365         Use the generic save code.
1366
1367         * UserInterface/Controllers/JavaScriptLogViewController.js:
1368         (WebInspector.JavaScriptLogViewController):
1369         (WebInspector.JavaScriptLogViewController.prototype._save):
1370         (WebInspector.JavaScriptLogViewController.prototype._saveAs):
1371         Handle save keyboard shortcuts while the prompt is focused.
1372
1373         * UserInterface/Views/LogContentView.js:
1374         (WebInspector.LogContentView.prototype.focusSearchBar):
1375         (WebInspector.LogContentView.prototype.save):
1376         (WebInspector.LogContentView.prototype.saveAs):
1377         Better handle keyboard shortcut cases in the console prompt for cases
1378         like a collapsed or split console view.
1379
1380 2015-06-01  Nikita Vasilyev  <nvasilyev@apple.com>
1381
1382         Web Inspector: Pause/resume button in the debugger dashboard is vertically misaligned
1383         https://bugs.webkit.org/show_bug.cgi?id=145534
1384
1385         Reviewed by Timothy Hatcher.
1386
1387         * UserInterface/Views/ButtonNavigationItem.css:
1388         (.navigation-bar .item.button.suppress-emboss):
1389         Never show borders for the pause/resume button.
1390
1391         * UserInterface/Views/DebuggerDashboardView.css:
1392         (.dashboard.debugger .navigation-bar .item.button):
1393
1394 2015-05-31  Yusuke Suzuki  <utatane.tea@gmail.com>
1395
1396         Web Inspector: Drop forEach from WeakMap / WeakSet native member function maps
1397         https://bugs.webkit.org/show_bug.cgi?id=145497
1398
1399         Reviewed by Sam Weinig.
1400
1401         WeakMap / WeakSet don't have forEach method.
1402         This patch drops it from the native prototype function parameters map.
1403
1404         * UserInterface/Models/NativeFunctionParameters.js:
1405
1406 2015-05-29  Timothy Hatcher  <timothy@apple.com>
1407
1408         Web Inspector: Resources tab navigation sidebar should have a type filter header
1409         https://bugs.webkit.org/show_bug.cgi?id=145474
1410
1411         Reviewed by Joseph Pecoraro.
1412
1413         * Localizations/en.lproj/localizedStrings.js: Updated.
1414
1415         * UserInterface/Images/UpDownArrows.svg: Make styleable.
1416
1417         * UserInterface/Main.html: Added new files.
1418
1419         * UserInterface/Views/LogContentView.js:
1420         (WebInspector.LogContentView): Drive-by fix. Mark All as exclusive.
1421
1422         * UserInterface/Views/MultipleScopeBarItem.js: Added.
1423         (WebInspector.MultipleScopeBarItem):
1424         (WebInspector.MultipleScopeBarItem.prototype.get element):
1425         (WebInspector.MultipleScopeBarItem.prototype.get exclusive):
1426         (WebInspector.MultipleScopeBarItem.prototype.get scopeBarItems):
1427         (WebInspector.MultipleScopeBarItem.set scopeBarItems.createOption):
1428         (WebInspector.MultipleScopeBarItem.prototype.set scopeBarItems):
1429         (WebInspector.MultipleScopeBarItem.prototype.get selected):
1430         (WebInspector.MultipleScopeBarItem.prototype.set selected):
1431         (WebInspector.MultipleScopeBarItem.prototype.get selectedScopeBarItem):
1432         (WebInspector.MultipleScopeBarItem.prototype.set selectedScopeBarItem):
1433         (WebInspector.MultipleScopeBarItem.prototype._clicked):
1434         (WebInspector.MultipleScopeBarItem.prototype._selectElementSelectionChanged):
1435         (WebInspector.MultipleScopeBarItem.prototype._itemSelectionDidChange):
1436
1437         * UserInterface/Views/NavigationSidebarPanel.js:
1438         (WebInspector.NavigationSidebarPanel.prototype.matchTreeElementAgainstFilterFunctions):
1439         (WebInspector.NavigationSidebarPanel.prototype.applyFiltersToTreeElement.matchTextFilter):
1440         (WebInspector.NavigationSidebarPanel.prototype.applyFiltersToTreeElement.makeVisible):
1441         (WebInspector.NavigationSidebarPanel.prototype.applyFiltersToTreeElement):
1442         (WebInspector.NavigationSidebarPanel.prototype._updateFilter):
1443         (WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged):
1444         Improve filtering so non-text filters can choose to auto-expand the tree.
1445
1446         * UserInterface/Views/ResourceSidebarPanel.css: Added.
1447         (.sidebar > .panel.navigation.resource > :matches(.content, .empty-content-placeholder)):
1448         (.sidebar > .panel.navigation.resource > .navigation-bar):
1449
1450         * UserInterface/Views/ResourceSidebarPanel.js:
1451         (WebInspector.ResourceSidebarPanel):
1452         (WebInspector.ResourceSidebarPanel.prototype.hasCustomFilters):
1453         (WebInspector.ResourceSidebarPanel.prototype.matchTreeElementAgainstCustomFilters.match):
1454         (WebInspector.ResourceSidebarPanel.prototype.matchTreeElementAgainstCustomFilters):
1455         (WebInspector.ResourceSidebarPanel.prototype._scopeBarSelectionDidChange):
1456         Make a ScopeBar and make it filter the TreeOutline when needed.
1457
1458         * UserInterface/Views/ScopeBar.css:
1459         (.scope-bar > li.multiple):
1460         (.scope-bar > li.multiple > select):
1461         (.scope-bar > li.multiple.selected > select):
1462         (.scope-bar > li.multiple > .arrows):
1463         (.scope-bar > li.multiple:matches(.selected, :hover, :active) > .arrows svg .filled):
1464         (.scope-bar > li.multiple:matches(.selected, :hover, :active) > .arrows svg .stroked):
1465
1466         * UserInterface/Views/ScopeBar.js:
1467         (WebInspector.ScopeBar): Support shouldGroupNonExclusiveItems which will use MultipleScopeBarItem.
1468         (WebInspector.ScopeBar.prototype._populate):
1469         (WebInspector.ScopeBar.prototype._itemSelectionDidChange):
1470         (WebInspector.ScopeBar.prototype.updateLayout): Deleted. Not needed for our current styles.
1471
1472         * UserInterface/Views/ScopeBarItem.js:
1473         (WebInspector.ScopeBarItem):
1474         (WebInspector.ScopeBarItem.prototype.get id):
1475         (WebInspector.ScopeBarItem.prototype.get label):
1476         (WebInspector.ScopeBarItem.prototype.get exclusive):
1477         (WebInspector.ScopeBarItem.prototype.setSelected):
1478         (WebInspector.ScopeBarItem.prototype._clicked):
1479         (WebInspector.ScopeBarItem.prototype.get element): Deleted.
1480         (WebInspector.ScopeBarItem.prototype._markElementSelected): Deleted.
1481         Cleaned up and modernized a bit.
1482
1483 2015-05-29  Tobias Reiss  <tobi+webkit@basecode.de>
1484
1485         Web Inspector: Activity Viewer does not update on "clear all console messages"
1486         https://bugs.webkit.org/show_bug.cgi?id=144681
1487
1488         Reviewed by Joseph Pecoraro.
1489
1490         Do not apply "ignoreDidClearMessages" hack on "Clear log" Button and Context menu.
1491
1492         * UserInterface/Views/LogContentView.js:
1493         (WebInspector.LogContentView.prototype._sessionStarted):
1494         (WebInspector.LogContentView.prototype._clearLogIgnoringClearMessages):
1495         (WebInspector.LogContentView.prototype._clearLog): Deleted.
1496
1497 2015-05-29  Matt Baker  <mattbaker@apple.com>
1498
1499         Web Inspector: Remove unused expandTreeElementsWhenArrowing property from TreeOutline
1500         https://bugs.webkit.org/show_bug.cgi?id=145470
1501
1502         Reviewed by Joseph Pecoraro.
1503
1504         * UserInterface/Views/TreeOutline.js:
1505         (WebInspector.TreeOutline.prototype._treeKeyDown):
1506         Replaced uses of removed property with boolean literal.
1507
1508 2015-05-29  Joseph Pecoraro  <pecoraro@apple.com>
1509
1510         Web Inspector: Tabs should have Context Menus
1511         https://bugs.webkit.org/show_bug.cgi?id=144208
1512
1513         Reviewed by Timothy Hatcher.
1514
1515         Give non-pinned tabs "Close Tab" and "Close Other Tabs" context
1516         menu items to affect other non-pinned tabs.
1517
1518         * Localizations/en.lproj/localizedStrings.js:
1519         * UserInterface/Views/TabBarItem.js:
1520         (WebInspector.TabBarItem):
1521         (WebInspector.TabBarItem.prototype._handleContextMenuEvent.closeTab):
1522         (WebInspector.TabBarItem.prototype._handleContextMenuEvent.closeOtherTabs):
1523         (WebInspector.TabBarItem.prototype._handleContextMenuEvent):
1524
1525 2015-05-29  Matt Baker  <mattbaker@apple.com>
1526
1527         Web Inspector: Restoring the last selected DOM node fails on reload (DOMAgent: No node with given path found)
1528         https://bugs.webkit.org/show_bug.cgi?id=144231
1529
1530         Reviewed by Timothy Hatcher.
1531
1532         Removed _restoreSelectedNodeIsAllowed flag from DOMTreeContentView. The frontend receives two documentUpdated
1533         events from the DOM Agent during page reload, and the flag was preventing DOMTreeContentView from restoring
1534         the previous selection in response to the second event.
1535
1536         * UserInterface/Views/DOMTreeContentView.js:
1537         (WebInspector.DOMTreeContentView.prototype.selectLastSelectedNode):
1538         (WebInspector.DOMTreeContentView.prototype._restoreSelectedNodeAfterUpdate):
1539
1540 2015-05-28  Nikita Vasilyev  <nvasilyev@apple.com>
1541
1542         Web Inspector: Update toolbar styles
1543         https://bugs.webkit.org/show_bug.cgi?id=145419
1544
1545         Also, use hairline borders (1 phisical pixel) on retina (DPI >= 2).
1546
1547         Reviewed by Timothy Hatcher.
1548
1549         * UserInterface/Views/ButtonToolbarItem.css:
1550         (.toolbar .item.button): Deleted.
1551         (.toolbar.icon-and-label-vertical .item.button): Deleted.
1552         (.toolbar.icon-and-label-horizontal .item.button): Deleted.
1553         (.toolbar .item.button > .glyph): Deleted.
1554         (.toolbar.small-size .item.button > .glyph): Deleted.
1555         * UserInterface/Views/DashboardContainerView.css:
1556         (.toolbar .dashboard-container): Deleted.
1557         (.toolbar.collapsed .dashboard-container): Deleted.
1558         (.toolbar.small-size:matches(.icon-only, .icon-and-label-vertical, .icon-and-label-horizontal) .dashboard-container): Deleted.
1559         (.toolbar .dashboard.slide-out-down): Deleted.
1560         (.toolbar .dashboard.slide-in-up): Deleted.
1561         * UserInterface/Views/Toolbar.css:
1562         (.toolbar .search-bar > input[type="search"]):
1563         (.toolbar .search-bar > input[type="search"]::-webkit-textfield-decoration-container):
1564         (body:not(.unknown-mac) .toolbar .dashboard-container):
1565         (body:not(.unknown-mac) .toolbar .search-bar > input[type="search"]):
1566         (body:not(.unknown-mac) .toolbar .search-bar > input[type="search"]:focus):
1567         (body:not(.unknown-mac) .toolbar .item.button:active):
1568         (body.window-inactive:not(.unknown-mac) .toolbar .dashboard-container):
1569         (body.unknown-mac .toolbar .dashboard-container):
1570         (body.unknown-mac .toolbar .search-bar > input[type="search"]):
1571         (body.unknown-mac .toolbar .search-bar > input[type="search"]:focus):
1572         (@media (-webkit-min-device-pixel-ratio: 2)):
1573         (body.unknown-mac .toolbar .item.button:active):
1574         (body.unknown-mac.window-inactive .toolbar .dashboard-container):
1575
1576 2015-05-28  Devin Rousso  <drousso@apple.com>
1577
1578         Web Inspector: Jump from a computed style to the rule it came from
1579         https://bugs.webkit.org/show_bug.cgi?id=120640
1580
1581         Reviewed by Timothy Hatcher.
1582
1583         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
1584         (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded):
1585         If the delegate of CSSStyleDeclarationTextEditor has cssStyleDeclarationTextEditorShouldAddPropertyGoToArrows set to true, add a goToArrow to all CSS property entries.
1586         (WebInspector.CSSStyleDeclarationTextEditor.prototype.highlightProperty.propertiesMatch):
1587         (WebInspector.CSSStyleDeclarationTextEditor.prototype.highlightProperty.hasMatchingLonghandProperty):
1588         (WebInspector.CSSStyleDeclarationTextEditor.prototype.highlightProperty):
1589         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.
1590         * UserInterface/Views/CSSStyleDeclarationSection.js:
1591         (WebInspector.CSSStyleDeclarationSection.prototype.highlightProperty):
1592         Searches through the properties of the section for a given property and scrolls to it if found.
1593         * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
1594         (WebInspector.CSSStyleDetailsSidebarPanel.prototype.computedStyleDetailsPanelShowProperty):
1595         Switches to the rulesStyleDetailsPanel and scrolls to and hightlights a given property in that panel.
1596         (WebInspector.CSSStyleDetailsSidebarPanel.prototype._navigationItemSelected):
1597         (WebInspector.CSSStyleDetailsSidebarPanel.prototype._switchPanels):
1598         Moved this function out of _navigationItemSelected for better reusablity.
1599         * UserInterface/Views/ComputedStyleDetailsPanel.js:
1600         (WebInspector.ComputedStyleDetailsPanel.prototype.cssStyleDeclarationTextEditorShowProperty):
1601         Function that calls the delegate (which should be CSSStyleDetailsSidebarPanel) function computedStyleDetailsPanelShowProperty.
1602         * UserInterface/Views/RulesStyleDetailsPanel.js:
1603         (WebInspector.RulesStyleDetailsPanel):
1604         (WebInspector.RulesStyleDetailsPanel.prototype.refresh):
1605         (WebInspector.RulesStyleDetailsPanel.prototype.scrollToSectionAndHighlightProperty):
1606         Searches through all the sections of the RulesStyleDetailsPanel for a given CSS property.
1607         (WebInspector.RulesStyleDetailsPanel.prototype.shown):
1608         (WebInspector.RulesStyleDetailsPanel.prototype.hidden):
1609         (WebInspector.RulesStyleDetailsPanel.prototype.nodeStylesRefreshed):
1610         Added a flag to this function that will highlight and scroll to a given property (_propertyToSelectAndHighlight) if set on load.
1611         * UserInterface/Views/StyleDetailsPanel.js:
1612         (WebInspector.StyleDetailsPanel.prototype.markAsNeedsRefresh):
1613         (WebInspector.StyleDetailsPanel.prototype.nodeStylesRefreshed):
1614         Made into protected function to allow it to be overridden.
1615         (WebInspector.StyleDetailsPanel.prototype._nodeStylesRefreshed): Deleted.
1616
1617 2015-05-28  Joseph Pecoraro  <pecoraro@apple.com>
1618
1619         Web Inspector: Should have a keyboard shortcut to switch between inspector tabs
1620         https://bugs.webkit.org/show_bug.cgi?id=144207
1621
1622         Reviewed by Timothy Hatcher.
1623
1624         These keyboard shortcuts work well in an undocked inspector window.
1625         Be careful that some keyboard shortcuts, when used inside a text
1626         editor / text field are just text actions. However, some keyboard
1627         shortcuts will work no matter where you trigger them.
1628
1629         * UserInterface/Models/KeyboardShortcut.js:
1630         * UserInterface/Views/TabBar.js:
1631         (WebInspector.TabBar.prototype.selectPreviousTab):
1632         (WebInspector.TabBar.prototype.selectNextTab):
1633         * UserInterface/Views/TabBrowser.js:
1634         (WebInspector.TabBrowser):
1635         (WebInspector.TabBrowser.prototype._showPreviousTab):
1636         (WebInspector.TabBrowser.prototype._showNextTab):
1637
1638 2015-05-28  Joseph Pecoraro  <pecoraro@apple.com>
1639
1640         Web Inspector: NewTabContentView should update button disabled state as other tabs are added/removed
1641         https://bugs.webkit.org/show_bug.cgi?id=145448
1642
1643         Reviewed by Timothy Hatcher.
1644
1645         * UserInterface/Views/NewTabContentView.js:
1646         (WebInspector.NewTabContentView):
1647         Always add a click listener and add the type as a private property on the element.
1648
1649         (WebInspector.NewTabContentView.prototype.shown):
1650         (WebInspector.NewTabContentView.prototype.hidden):
1651         Add / remove event listeners for tab changes. Also update the view when shown.
1652         
1653         (WebInspector.NewTabContentView.prototype._createNewTab):
1654         A disabled button an now be clicked. Do nothing if a new tab of this type is not allowed.
1655
1656         (WebInspector.NewTabContentView.prototype._updateTabItems):
1657         Refresh the disabled state for each of the buttons.
1658
1659 2015-05-27  Joseph Pecoraro  <pecoraro@apple.com>
1660
1661         Web Inspector: Show Page Source does not switch to Resources tab if inspector was closed
1662         https://bugs.webkit.org/show_bug.cgi?id=145423
1663
1664         Reviewed by Timothy Hatcher.
1665
1666         * UserInterface/Base/Main.js:
1667         (WebInspector._frameWasAdded.delayedWork):
1668         (WebInspector._frameWasAdded):
1669         In the special case where we are holding to show a frame's source code when
1670         the frame becomes available (_frameIdentifierToShowSourceCodeWhenAvailable)
1671         we should be forcing to show the tab.
1672
1673 2015-05-27  Joseph Pecoraro  <pecoraro@apple.com>
1674
1675         Web Inspector: Toggling an inherited property sometimes stops working
1676         https://bugs.webkit.org/show_bug.cgi?id=145416
1677
1678         Reviewed by Timothy Hatcher.
1679
1680         * UserInterface/Models/DOMNodeStyles.js:
1681         (WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload):
1682         Ensure we update the existing model objects with the new state information
1683         before possibly bailing. This may produce changed events that update
1684         parts of the inspector appropriately.
1685
1686 2015-05-27  Joseph Pecoraro  <pecoraro@apple.com>
1687
1688         Web Inspector: REGRESSION(r179286) Editing Style Metrics Values no longer works
1689         https://bugs.webkit.org/show_bug.cgi?id=143164
1690
1691         Reviewed by Brian Burg.
1692
1693         * UserInterface/Views/BoxModelDetailsSectionRow.js:
1694         (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics.createElement):
1695         (WebInspector.BoxModelDetailsSectionRow.prototype._applyUserInput.resolvedNode.toggleInlineStyleProperty):
1696         (WebInspector.BoxModelDetailsSectionRow.prototype._applyUserInput.resolvedNode.didToggle):
1697         (WebInspector.BoxModelDetailsSectionRow.prototype._applyUserInput.resolvedNode):
1698         (WebInspector.BoxModelDetailsSectionRow.prototype._applyUserInput):
1699         Make it so editing in the metrics pane just evaluates elem.style.setProperty
1700         on the inspected page. Use "!important" to try and give the maximum priority
1701         possible, which is a change from older behavior. Finally, refresh the sidebar
1702         to update all values, and update the UI if bad input didn't change styles.
1703
1704 2015-05-26  Joseph Pecoraro  <pecoraro@apple.com>
1705
1706         Web Inspector: Function parameter string parsing improperly handles empty parameter list
1707         https://bugs.webkit.org/show_bug.cgi?id=145391
1708
1709         Reviewed by Darin Adler.
1710
1711         * UserInterface/Views/ObjectTreePropertyTreeElement.js:
1712         (WebInspector.ObjectTreePropertyTreeElement.prototype._functionParameterString):
1713
1714 2015-05-26  Joseph Pecoraro  <pecoraro@apple.com>
1715
1716         Web Inspector: Add Array.prototype.copyWithin parameter list
1717         https://bugs.webkit.org/show_bug.cgi?id=145388
1718
1719         Reviewed by Darin Adler.
1720
1721         * UserInterface/Models/NativeFunctionParameters.js:
1722
1723 2015-05-26  Nikita Vasilyev  <nvasilyev@apple.com>
1724
1725         Web Inspector: focus outline of a search field should have a radius
1726         https://bugs.webkit.org/show_bug.cgi?id=145383
1727
1728         Add a focus outline animation to roughly mimic the default focus outline of OS X.
1729
1730         Reviewed by Timothy Hatcher.
1731
1732         * UserInterface/Views/Toolbar.css:
1733         (.toolbar .search-bar > input[type="search"]):
1734         -webkit-focus-ring-color doesn't follow element's curvature (e.g. border-radius)
1735         and it cannot be animated. Replace it with box-shadow.
1736
1737         (.toolbar .search-bar > input[type="search"]:focus):
1738
1739 2015-05-26  Nikita Vasilyev  <nvasilyev@apple.com>
1740
1741         Web Inspector: The bottom part "debugger" is clipped in the tab’s title
1742         https://bugs.webkit.org/show_bug.cgi?id=145381
1743
1744         Reviewed by Timothy Hatcher.
1745
1746         * UserInterface/Views/TabBar.css:
1747         (.tab-bar > .item):
1748         Set line-height to fit "debugger". Setting line-height to 16px, which is the
1749         size of the tabs icons, moves the text one pixel up, so set it to 15px.
1750
1751 2015-05-26  Dan Bernstein  <mitz@apple.com>
1752
1753         <rdar://problem/21104551> Update build settings
1754
1755         Reviewed by Anders Carlsson.
1756
1757         * Configurations/Base.xcconfig:
1758         * Configurations/DebugRelease.xcconfig:
1759         * Configurations/Version.xcconfig:
1760
1761 2015-05-23  Dan Bernstein  <mitz@apple.com>
1762
1763         Remove unused definitions of WEBKIT_VERSION_MIN_REQUIRED
1764         https://bugs.webkit.org/show_bug.cgi?id=145345
1765
1766         Reviewed by Sam Weinig.
1767
1768         * Configurations/Base.xcconfig:
1769
1770 2015-05-23  Joseph Pecoraro  <pecoraro@apple.com>
1771
1772         Web Inspector: Remove code related with unused style classes
1773         https://bugs.webkit.org/show_bug.cgi?id=145332
1774
1775         Reviewed by Timothy Hatcher.
1776
1777         * UserInterface/Views/ConsoleMessageView.js:
1778         (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString.append):
1779         (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString):
1780         The "type-string" class has no styles associated with it. So the entire span can be removed.
1781
1782         * UserInterface/Views/DOMTreeElement.js:
1783         Both of these style classes have no styles associated with them. Remove the class names.
1784
1785 2015-05-23  Joseph Pecoraro  <pecoraro@apple.com>
1786
1787         Web Inspector: Improve native parameter lists a bit
1788         https://bugs.webkit.org/show_bug.cgi?id=145338
1789
1790         Reviewed by Timothy Hatcher.
1791
1792         * UserInterface/Models/NativeFunctionParameters.js:
1793         * UserInterface/Views/ObjectTreePropertyTreeElement.js:
1794         (WebInspector.ObjectTreePropertyTreeElement.prototype._functionParameterString):
1795
1796 2015-05-23  Joseph Pecoraro  <pecoraro@apple.com>
1797
1798         Web Inspector: Update CSS Autocompletion properties and values
1799         https://bugs.webkit.org/show_bug.cgi?id=145341
1800
1801         Reviewed by Timothy Hatcher.
1802
1803         * UserInterface/Models/CSSKeywordCompletions.js:
1804
1805 2015-05-22  Joseph Pecoraro  <pecoraro@apple.com>
1806
1807         Web Inspector: Adopt Object.setPrototypeOf
1808         https://bugs.webkit.org/show_bug.cgi?id=145335
1809
1810         Reviewed by Timothy Hatcher.
1811
1812         For a case that won't easily move to ES6 classes use Object.setPrototypeOf.
1813
1814         * UserInterface/Protocol/InspectorBackend.js:
1815         (InspectorBackend.Command.create):
1816
1817 2015-05-22  Joseph Pecoraro  <pecoraro@apple.com>
1818
1819         Web Inspector: Inline use once class names and remove some unused class names
1820         https://bugs.webkit.org/show_bug.cgi?id=145334
1821
1822         Reviewed by Timothy Hatcher.
1823
1824         * UserInterface/Views/ApplicationCacheFrameContentView.js:
1825         (WebInspector.ApplicationCacheFrameContentView):
1826         * UserInterface/Views/BoxModelDetailsSectionRow.js:
1827         (WebInspector.BoxModelDetailsSectionRow):
1828         * UserInterface/Views/CSSStyleDeclarationSection.js:
1829         (WebInspector.CSSStyleDeclarationSection):
1830         * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
1831         (WebInspector.CSSStyleDetailsSidebarPanel):
1832         * UserInterface/Views/ClusterContentView.js:
1833         (WebInspector.ClusterContentView):
1834         * UserInterface/Views/CompletionSuggestionsView.js:
1835         (WebInspector.CompletionSuggestionsView):
1836         * UserInterface/Views/ConsolePrompt.js:
1837         (WebInspector.ConsolePrompt):
1838         * UserInterface/Views/ContentBrowser.js:
1839         (WebInspector.ContentBrowser):
1840         * UserInterface/Views/ContentFlowTreeElement.js:
1841         (WebInspector.ContentFlowTreeElement):
1842         * UserInterface/Views/ContentView.js:
1843         (WebInspector.ContentView):
1844         * UserInterface/Views/ContentViewContainer.js:
1845         (WebInspector.ContentViewContainer):
1846         * UserInterface/Views/CookieStorageContentView.js:
1847         (WebInspector.CookieStorageContentView):
1848         * UserInterface/Views/CookieStorageTreeElement.js:
1849         (WebInspector.CookieStorageTreeElement):
1850         * UserInterface/Views/DOMStorageContentView.js:
1851         (WebInspector.DOMStorageContentView):
1852         * UserInterface/Views/DOMTreeContentView.js:
1853         (WebInspector.DOMTreeContentView):
1854         * UserInterface/Views/DashboardView.js:
1855         (WebInspector.DashboardView):
1856         * UserInterface/Views/DatabaseTableContentView.js:
1857         (WebInspector.DatabaseTableContentView):
1858         * UserInterface/Views/DebuggerDashboardView.js:
1859         (WebInspector.DebuggerDashboardView):
1860         (WebInspector.DebuggerDashboardView.prototype._rebuildLocation):
1861         * UserInterface/Views/DetailsSection.js:
1862         (WebInspector.DetailsSection):
1863         * UserInterface/Views/DetailsSectionSimpleRow.js:
1864         * UserInterface/Views/FontResourceContentView.js:
1865         (WebInspector.FontResourceContentView):
1866         (WebInspector.FontResourceContentView.prototype.createMetricElement):
1867         (WebInspector.FontResourceContentView.prototype.contentAvailable):
1868         * UserInterface/Views/HierarchicalPathComponent.js:
1869         (WebInspector.HierarchicalPathComponent):
1870         (WebInspector.HierarchicalPathComponent.prototype.set selectorArrows):
1871         * UserInterface/Views/IndexedDatabaseObjectStoreContentView.js:
1872         * UserInterface/Views/LayoutTimelineOverviewGraph.js:
1873         (WebInspector.LayoutTimelineOverviewGraph):
1874         * UserInterface/Views/NetworkTimelineOverviewGraph.js:
1875         (WebInspector.NetworkTimelineOverviewGraph):
1876         * UserInterface/Views/OverviewTimelineView.js:
1877         * UserInterface/Views/ProbeSetDetailsSection.js:
1878         * UserInterface/Views/QuickConsole.js:
1879         * UserInterface/Views/ReplayDashboardView.js:
1880         * UserInterface/Views/ScriptContentView.js:
1881         (WebInspector.ScriptContentView):
1882         * UserInterface/Views/ScriptTimelineOverviewGraph.js:
1883         (WebInspector.ScriptTimelineOverviewGraph):
1884         * UserInterface/Views/TextContentView.js:
1885         (WebInspector.TextContentView):
1886         * UserInterface/Views/TimelineOverview.js:
1887         (WebInspector.TimelineOverview):
1888         * UserInterface/Views/TimelineOverviewGraph.js:
1889         (WebInspector.TimelineOverviewGraph):
1890         * UserInterface/Views/TimelineRecordBar.js:
1891         (WebInspector.TimelineRecordBar):
1892         * UserInterface/Views/TimelineRecordFrame.js:
1893         (WebInspector.TimelineRecordFrame):
1894         * UserInterface/Views/TimelineRecordingContentView.js:
1895         (WebInspector.TimelineRecordingContentView):
1896         * UserInterface/Views/TimelineRuler.js:
1897         (WebInspector.TimelineRuler):
1898         (WebInspector.TimelineRuler.prototype.set allowsTimeRangeSelection):
1899
1900 2015-05-22  Joseph Pecoraro  <pecoraro@apple.com>
1901
1902         Web Inspector: DOMTree Keyboard Shortcut 'H' to toggle element visibility is not working
1903         https://bugs.webkit.org/show_bug.cgi?id=145331
1904
1905         Reviewed by Brian Burg.
1906
1907         We no longer have CSSProperty.value setters. Instead of attempting
1908         to toggle and clobber inline style values on the element we:
1909         
1910           1. inject a <style> on the page like ".WebInspectorHide { visibility:hidden }"
1911           2. toggle the WebInspectorHide class on the selected element
1912
1913         This approach is inspired by the original WebKit change in the
1914         old inspector frontend: <https://webkit.org/b/110641>.
1915
1916         The old approach toggled a few properties (opacity and pointer events)
1917         while the new approach uses visibility, matching other browsers.
1918
1919         * UserInterface/Views/DOMTreeOutline.js:
1920         (WebInspector.DOMTreeOutline.prototype._hideElement.resolvedNode.injectStyleAndToggleClass):
1921         (WebInspector.DOMTreeOutline.prototype._hideElement.resolvedNode):
1922         (WebInspector.DOMTreeOutline.prototype._hideElement):
1923         (WebInspector.DOMTreeOutline.prototype._hideElement.toggleProperties): Deleted.
1924
1925 2015-05-21  Joseph Pecoraro  <pecoraro@apple.com>
1926
1927         Web Inspector: Give Toolbar buttons an active style
1928         https://bugs.webkit.org/show_bug.cgi?id=145292
1929
1930         Reviewed by Timothy Hatcher.
1931
1932         * UserInterface/Views/ButtonToolbarItem.css:
1933         (.toolbar .item.button:active):
1934
1935 2015-05-21  Nikita Vasilyev  <nvasilyev@apple.com>
1936
1937         Web Inspector: Dashboard debugger information can be clipped
1938         https://bugs.webkit.org/show_bug.cgi?id=144209
1939
1940         Reviewed by Timothy Hatcher.
1941
1942         * UserInterface/Views/DashboardContainerView.css:
1943         (.toolbar .dashboard-container):
1944         Make dashboard flexible by using vw (viewport width units).
1945
1946         * UserInterface/Views/DefaultDashboardView.css:
1947         (.toolbar .dashboard.default):
1948         Center default dashboard icons in the middle, don't spread them along the dashboard.
1949
1950 2015-05-21  Joseph Pecoraro  <pecoraro@apple.com>
1951
1952         Web Inspector: Improve the UI of the type profiler popover
1953         https://bugs.webkit.org/show_bug.cgi?id=140737
1954
1955         Reviewed by Timothy Hatcher.
1956
1957         Display TypeDescriptions in a Tree similiar to ObjectTrees.
1958         Currently the only information we have in a TypeDescription
1959         is the property names, and not their types, so all we can
1960         display in the tree are names.
1961
1962         * Localizations/en.lproj/localizedStrings.js:
1963         * UserInterface/Controllers/TypeTokenAnnotator.js:
1964         (WebInspector.TypeTokenAnnotator.prototype._insertTypeToken):
1965         * UserInterface/Main.html:
1966         * UserInterface/Models/ScriptSyntaxTree.js:
1967         (WebInspector.ScriptSyntaxTree.prototype.updateTypes):
1968         * UserInterface/Models/StructureDescription.js: Added.
1969         (WebInspector.StructureDescription):
1970         (WebInspector.StructureDescription.fromPayload):
1971         (WebInspector.StructureDescription.prototype.get fields):
1972         (WebInspector.StructureDescription.prototype.get optionalFields):
1973         (WebInspector.StructureDescription.prototype.get constructorName):
1974         (WebInspector.StructureDescription.prototype.get prototypeStructure):
1975         (WebInspector.StructureDescription.prototype.get imprecise):
1976         * UserInterface/Models/TypeDescription.js: Added.
1977         (WebInspector.TypeDescription):
1978         (WebInspector.TypeDescription.fromPayload):
1979         (WebInspector.TypeDescription.prototype.get leastCommonAncestor):
1980         (WebInspector.TypeDescription.prototype.get typeSet):
1981         (WebInspector.TypeDescription.prototype.get structures):
1982         (WebInspector.TypeDescription.prototype.get valid):
1983         (WebInspector.TypeDescription.prototype.get truncated):
1984         * UserInterface/Models/TypeSet.js:
1985         (WebInspector.TypeSet):
1986         (WebInspector.TypeSet.prototype.get primitiveTypeNames):
1987         * UserInterface/Views/ObjectTreeView.js:
1988         (WebInspector.ObjectTreeView.prototype._updateChildren):
1989         * UserInterface/Views/Section.css: Removed.
1990         * UserInterface/Views/Section.js: Removed.
1991         * UserInterface/Views/SourceCodeTextEditor.css:
1992         (.popover .expandable):
1993         * UserInterface/Views/SourceCodeTextEditor.js:
1994         (WebInspector.SourceCodeTextEditor):
1995         (WebInspector.SourceCodeTextEditor.prototype.showPopoverForTypes):
1996         (WebInspector.SourceCodeTextEditor.prototype._populateWithScriptContent):
1997         (WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedJavaScriptTypeInformation.handler):
1998         (WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedJavaScriptTypeInformation):
1999         (WebInspector.SourceCodeTextEditor.prototype._showPopoverForObject):
2000         * UserInterface/Views/TypePropertiesSection.js: Removed.
2001         * UserInterface/Views/TypeTokenView.js:
2002         (WebInspector.TypeTokenView):
2003         (WebInspector.TypeTokenView.titleForPopover):
2004         (WebInspector.TypeTokenView.prototype.update):
2005         (WebInspector.TypeTokenView.prototype._setUpMouseoverHandlers):
2006         (WebInspector.TypeTokenView.prototype._shouldShowPopover):
2007         (WebInspector.TypeTokenView.prototype._displayTypeName):
2008         * UserInterface/Views/TypeTreeElement.css: Added.
2009         (.type-tree-element):
2010         (.type-tree-element > .titles):
2011         (.type-tree-element > .disclosure-button):
2012         (.type-tree-element.parent > .disclosure-button):
2013         (.type-tree-element.parent.expanded > .disclosure-button):
2014         (.type-tree-element > .icon):
2015         (.type-tree-element.prototype):
2016         (.type-tree-element.prototype:focus):
2017         (.type-tree-element.prototype + ol):
2018         * UserInterface/Views/TypeTreeElement.js: Added.
2019         (WebInspector.TypeTreeElement):
2020         (WebInspector.TypeTreeElement.prototype.get name):
2021         (WebInspector.TypeTreeElement.prototype.get isPrototype):
2022         (WebInspector.TypeTreeElement.prototype.onpopulate):
2023         (WebInspector.TypeTreeElement.prototype.onexpand):
2024         * UserInterface/Views/TypeTreeView.css: Renamed from Source/WebInspectorUI/UserInterface/Views/PropertiesSection.js.
2025         (.type-tree):
2026         (.type-tree-outline):
2027         (.type-tree-outline li):
2028         (.type-tree-outline ol):
2029         (.type-tree-outline ol.expanded):
2030         (.type-tree-outline li .empty-message):
2031         * UserInterface/Views/TypeTreeView.js: Added.
2032         (WebInspector.TypeTreeView):
2033         (WebInspector.TypeTreeView.prototype.get typeDescription):
2034         (WebInspector.TypeTreeView.prototype.get element):
2035         (WebInspector.TypeTreeView.prototype.get treeOutline):
2036         (WebInspector.TypeTreeView.prototype._populate):
2037
2038 2015-05-20  Joseph Pecoraro  <pecoraro@apple.com>
2039
2040         Web Inspector: Fix WebInspector.StackTrace style
2041         https://bugs.webkit.org/show_bug.cgi?id=145240
2042
2043         Reviewed by Timothy Hatcher.
2044
2045         * UserInterface/Models/StackTrace.js:
2046         Reorder and add our usual marker comments.
2047
2048 2015-05-19  Joseph Pecoraro  <pecoraro@apple.com>
2049
2050         Web Inspector: Improve Preview for NodeList / array like collections
2051         https://bugs.webkit.org/show_bug.cgi?id=145177
2052
2053         Reviewed by Timothy Hatcher.
2054
2055         * UserInterface/Views/ObjectPreviewView.js:
2056         (WebInspector.ObjectPreviewView.prototype._appendPreview):
2057         Show the class name for a non-basic-Array, but still hide
2058         it for a basic Array.
2059
2060 2015-05-19  Nikita Vasilyev  <nvasilyev@apple.com>
2061
2062         Web Inspector: Convert stackTrace from raw payload data to an array of CallFrames
2063         https://bugs.webkit.org/show_bug.cgi?id=144982
2064
2065         Reviewed by Joseph Pecoraro.
2066
2067         * UserInterface/Controllers/LogManager.js:
2068         * UserInterface/Main.html:
2069         * UserInterface/Models/CallFrame.js:
2070         (WebInspector.CallFrame.fromPayload):
2071         Consider an empty string url as a native code as it was in 
2072         WebInspector.ConsoleMessageView.prototype._firstNonNativeCallFrame
2073
2074         * UserInterface/Models/ConsoleMessage.js:
2075         (WebInspector.ConsoleMessage):
2076         Convert _stackTrace from an array of payload objects to WebInspector.StackTrace model.
2077
2078         * UserInterface/Models/StackTrace.js: Added.
2079         (WebInspector.StackTrace):
2080         (WebInspector.StackTrace.prototype.get callFrames):
2081         (WebInspector.StackTrace.prototype.get firstNonNativeCallFrame): Added.
2082         (WebInspector.StackTrace.fromPayload):
2083         * UserInterface/Test.html:
2084         * UserInterface/Views/CallFrameView.js:
2085         (WebInspector.CallFrameView):
2086         Don't show a URL when sourceCodeLocation is missing, fix webkit.org/b/145071.
2087
2088         * UserInterface/Views/ConsoleMessageView.js:
2089         (WebInspector.ConsoleMessageView):
2090         (WebInspector.ConsoleMessageView.prototype.toClipboardString):
2091         (WebInspector.ConsoleMessageView.prototype._appendLocationLink):
2092         (WebInspector.ConsoleMessageView.prototype._appendStackTrace):
2093         (WebInspector.ConsoleMessageView.prototype._shouldShowStackTrace):
2094         (WebInspector.ConsoleMessageView.prototype._linkifyCallFrame):
2095         (WebInspector.ConsoleMessageView.prototype._firstNonNativeCallFrame): Deleted.
2096
2097 2015-05-18  Joseph Pecoraro  <pecoraro@apple.com>
2098
2099         Web Inspector: Improve Reliability of Closing and Reopening Elements Tab
2100         https://bugs.webkit.org/show_bug.cgi?id=145139
2101
2102         Reviewed by Timothy Hatcher.
2103
2104         * UserInterface/Views/DOMTreeElement.js:
2105         (WebInspector.DOMTreeElement.prototype.highlightSearchResults):
2106         (WebInspector.DOMTreeElement.prototype.hideSearchHighlights):
2107         (WebInspector.DOMTreeElement.prototype.emphasizeSearchHighlight.animationEnded):
2108         (WebInspector.DOMTreeElement.prototype.emphasizeSearchHighlight):
2109         (WebInspector.DOMTreeElement.prototype._updateChildren):
2110         (WebInspector.DOMTreeElement.prototype.adjustCollapsedRange):
2111         (WebInspector.DOMTreeElement.prototype._startEditingAsHTML.dispose):
2112         (WebInspector.DOMTreeElement.prototype._startEditingAsHTML):
2113         (WebInspector.DOMTreeElement.prototype.updateTitle):
2114         Stop using the `delete` operator.
2115
2116         * UserInterface/Views/DOMTreeOutline.js:
2117         (WebInspector.DOMTreeOutline.prototype.setVisible):
2118         Trigger an update when the outline is made visible.
2119
2120         * UserInterface/Views/FrameDOMTreeContentView.js:
2121         (WebInspector.FrameDOMTreeContentView.prototype._rootDOMNodeAvailable):
2122         Provide a reasonable default selection if there is no body or document element.
2123         For example in an augmented DOM tree.
2124
2125 2015-05-18  Joseph Pecoraro  <pecoraro@apple.com>
2126
2127         Web Inspector: Tab Restoration incorrectly makes ContentViews "shown" in background tabs
2128         https://bugs.webkit.org/show_bug.cgi?id=145080
2129
2130         Reviewed by Timothy Hatcher.
2131
2132         Many tabs have their own content browser / navigation sidebar. During
2133         state restoration, each tab would immediately try to restore an
2134         appropriate ContentView after the load / navigation. However, in doing
2135         so, we weren't respecting whether or not the Tab the ContentBrowser
2136         was in was hidden or not, so ContentViews in background tags were
2137         still being treated as shown/visible.
2138
2139         This patch changes state restoration to only affect the foreground
2140         tab, and be delayed on all background tabs until that tab is shown.
2141         This reduces the amount of work on load and navigation to just a
2142         single tab instead of all tabs. Most importantly, it avoids having
2143         performing work on ContentBrowsers that are non-visible, so state
2144         restoration only happens for visible ContentBrowsers.
2145
2146         For simplicity, in the case of a delayed tab restoration triggered
2147         by the user switching tabs, we don't try twice (like we occasionally
2148         do on load/reload). We could add back some hueristic here if needed.
2149
2150         * UserInterface/Base/Main.js:
2151         (WebInspector.contentLoaded):
2152         (WebInspector.activateExtraDomains):
2153         (WebInspector._mainResourceDidChange):
2154         (WebInspector._restoreCookieForOpenTabs):
2155         * UserInterface/Views/NavigationSidebarPanel.js:
2156
2157         * UserInterface/Views/TabContentView.js:
2158         (WebInspector.TabContentView.prototype.shown):
2159         (WebInspector.TabContentView.prototype.restoreStateFromCookie):
2160         (WebInspector.TabContentView.prototype.saveStateToCookie):
2161         When asked to restore state, save that logic until the next time the tab is shown.
2162
2163         * UserInterface/Views/TextEditor.js:
2164         (WebInspector.TextEditor.prototype.get visible):
2165         * UserInterface/Views/SourceCodeTextEditor.js:
2166         (WebInspector.SourceCodeTextEditor.prototype.editingControllerDidStartEditing):
2167         (WebInspector.SourceCodeTextEditor.prototype._setTypeTokenAnnotatorEnabledState): Deleted.
2168         Although this didn't actually catch the issue, it could potentially
2169         catch other issues in the future. We don't want to enable the annotators
2170         in a non-visible text editor, as it could be a performance issue.
2171
2172 2015-05-15  Matt Baker  <mattbaker@apple.com>
2173
2174         Web Inspector: empty timeline should not use previous timeline's zoom interval
2175         https://bugs.webkit.org/show_bug.cgi?id=132754
2176
2177         Reviewed by Joseph Pecoraro.
2178
2179         When a timeline recording is started in response to a provisional load, TimelineManager should check whether
2180         the main resource url is changing before loading a new timeline recording. If the main resource is changing,
2181         set the selection start, selection duration, and duration-per-pixel settings of the TimelineOverview to their
2182         default values.
2183
2184         * UserInterface/Controllers/TimelineManager.js:
2185         (WebInspector.TimelineManager):
2186         (WebInspector.TimelineManager.prototype.isCapturingPageReload):
2187         (WebInspector.TimelineManager.prototype.capturingStopped):
2188         (WebInspector.TimelineManager.prototype.pageDidLoad):
2189         (WebInspector.TimelineManager.prototype._startAutoCapturing):
2190         Added a property for checking whether auto capture was triggered by a page reload.
2191
2192         * UserInterface/Views/LinearTimelineOverview.js:
2193         (WebInspector.LinearTimelineOverview):
2194         Increase default selection time to 15 seconds.
2195
2196         * UserInterface/Views/TimelineOverview.js:
2197         (WebInspector.TimelineOverview):
2198         Reset selection and zoom if TimelineManager isn't capturing in response to a page reload.
2199
2200         (WebInspector.TimelineOverview.prototype.reset):
2201         Reset selection and zoom.
2202
2203         (WebInspector.TimelineOverview.prototype._timeRangeSelectionChanged):
2204         (WebInspector.TimelineOverview.prototype._resetSelection):
2205         Added a helper function for resetting selection and zoom to their default values.
2206
2207 2015-05-15  Matt Baker  <mattbaker@apple.com>
2208
2209         Web Inspector: Timeline data grid displays wrong records after switching between Timelines/Frames mode
2210         https://bugs.webkit.org/show_bug.cgi?id=145084
2211
2212         Reviewed by Timothy Hatcher.
2213
2214         Update timeline sidebar filter whenever the view mode changes.
2215
2216         * UserInterface/Views/TimelineSidebarPanel.js:
2217         (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject.get if.get if):
2218         (WebInspector.TimelineSidebarPanel.get else):
2219         (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject.get if):
2220         (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject):
2221
2222 2015-05-15  Joseph Pecoraro  <pecoraro@apple.com>
2223
2224         Web Inspector: Bump image format number to force image regeneration
2225         https://bugs.webkit.org/show_bug.cgi?id=145074
2226
2227         Reviewed by Timothy Hatcher.
2228
2229         * UserInterface/Base/ImageUtilities.js:
2230
2231 2015-05-15  Joseph Pecoraro  <pecoraro@apple.com>
2232
2233         Web Inspector: Reduce type annotation update frequency
2234         https://bugs.webkit.org/show_bug.cgi?id=145066
2235
2236         Reviewed by Timothy Hatcher.
2237
2238         * UserInterface/Controllers/TypeTokenAnnotator.js:
2239         Reduce the frequency which could commonly be 16-24ms
2240         to a minimum of 100ms and maximum of 2000ms.
2241
2242 2015-05-15  Joseph Pecoraro  <pecoraro@apple.com>
2243
2244         Web Inspector: Fix some possible event listener leakers in content views
2245         https://bugs.webkit.org/show_bug.cgi?id=145068
2246
2247         Reviewed by Timothy Hatcher.
2248
2249         Now that some content views can be closed that weren't closable before, ensure
2250         we clean up after global event listeners that may strongly reference "this".
2251
2252         * UserInterface/Views/DOMTreeContentView.js:
2253         (WebInspector.DOMTreeContentView.prototype.closed):
2254         * UserInterface/Views/DOMTreeOutline.js:
2255         (WebInspector.DOMTreeOutline.prototype.close):
2256         * UserInterface/Views/LayoutTimelineView.js:
2257         (WebInspector.LayoutTimelineView.prototype.closed):
2258         * UserInterface/Views/NetworkTimelineView.js:
2259         (WebInspector.NetworkTimelineView.prototype.closed):
2260         * UserInterface/Views/RenderingFrameTimelineView.js:
2261         (WebInspector.RenderingFrameTimelineView.prototype.closed):
2262         * UserInterface/Views/ScriptContentView.js:
2263         (WebInspector.ScriptContentView.prototype.closed):
2264         * UserInterface/Views/ScriptTimelineView.js:
2265         (WebInspector.ScriptTimelineView.prototype.closed):
2266         * UserInterface/Views/SourceCodeTextEditor.js:
2267         (WebInspector.SourceCodeTextEditor.prototype.close):
2268         * UserInterface/Views/TextResourceContentView.js:
2269         (WebInspector.TextResourceContentView.prototype.closed):
2270         * UserInterface/Views/TimelineDataGrid.js:
2271         (WebInspector.TimelineDataGrid.prototype.closed):
2272         (WebInspector.TimelineDataGrid.prototype.handleEvent):
2273
2274 2015-05-15  Joseph Pecoraro  <pecoraro@apple.com>
2275
2276         Web Inspector: Initiator Popovers no longer work in Layout Timeline
2277         https://bugs.webkit.org/show_bug.cgi?id=145067
2278
2279         Reviewed by Timothy Hatcher.
2280
2281         * UserInterface/Views/LayoutTimelineDataGrid.js:
2282         (WebInspector.LayoutTimelineDataGrid.prototype.callFramePopoverAnchorElement):
2283         Update the column name, which changed in r183134.
2284
2285 2015-05-14  Joseph Pecoraro  <pecoraro@apple.com>
2286
2287         Web Inspector: Update the New Tab button disabled state after extra domains are activated
2288         https://bugs.webkit.org/show_bug.cgi?id=145028
2289
2290         Reviewed by Timothy Hatcher.
2291
2292         * UserInterface/Base/Main.js:
2293         (WebInspector.activateExtraDomains):
2294
2295 2015-05-14  Matt Baker  <mattbaker@apple.com>
2296
2297         Web Inspector: Current time marker is always at zero in Rendering Frames ruler
2298         https://bugs.webkit.org/show_bug.cgi?id=144518
2299
2300         Reviewed by Timothy Hatcher.
2301
2302         The current and end time values for the rendering frame timeline overview should always be equal to the frame
2303         number of the last record in the rendering frames timeline.
2304
2305         * UserInterface/Views/TimelineOverview.js:
2306         (WebInspector.TimelineOverview):
2307         (WebInspector.TimelineOverview.prototype.updateLayout):
2308         * UserInterface/Views/TimelineRecordingContentView.js:
2309         (WebInspector.TimelineRecordingContentView.prototype._updateTimes):
2310         (WebInspector.TimelineRecordingContentView.prototype._recordingTimesUpdated):
2311
2312 2015-05-11  Brent Fulgham  <bfulgham@apple.com>
2313
2314         [Win] Move Windows build target to Windows 7 (or newer)
2315         https://bugs.webkit.org/show_bug.cgi?id=144890
2316         <rdar://problem/20707307>
2317
2318         Reviewed by Anders Carlsson.
2319
2320         Update linked SDK and minimal Windows level to be compatible with
2321         Windows 7 or newer.
2322
2323         * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
2324
2325 2015-05-11  Timothy Hatcher  <timothy@apple.com>
2326
2327         Web Inspector: REGRESSION (Tabs): Issues reloading a resource with breakpoints
2328         https://bugs.webkit.org/show_bug.cgi?id=144650
2329
2330         Fix a number of issues with Debugger tab and navigation/reloading:
2331         - Close old content views in the Debugger tab when main frame navigates.
2332         - Prune old resource tree elements before attempting to restore a cookie that might match an old resource.
2333         - Allow breakpoint selections to be restored from a saved cookie.
2334         - Fix an assert when closing a content view that isn't the current index, but is the current view.
2335         - Avoid calling closed() multiple times when a ContentView is in the back/forward list more than once.
2336         - Make restoreStateFromCookie properly set and use the causedByNavigation argument for a longer restore delay.
2337         - Create a new cookie object per tab instead of it being cumulative from the previous cookie.
2338
2339         Reviewed by Brian Burg.
2340
2341         * UserInterface/Base/Main.js:
2342         (WebInspector._mainResourceDidChange): Delay calling _restoreCookieForOpenTabs to give time for sidebars
2343         and tabs to respond to the main resource change.
2344         (WebInspector._restoreCookieForOpenTabs): Rename causedByReload to causedByNavigation. Nothing special about
2345         reload since we restore on all navigation.
2346
2347         * UserInterface/Views/ContentView.js:
2348         (WebInspector.ContentView): Support Breakpoint as a represented object, which happens during a cookie restore.
2349         (WebInspector.ContentView.isViewable): Ditto.
2350
2351         * UserInterface/Views/ContentViewContainer.js:
2352         (WebInspector.ContentViewContainer.prototype.closeAllContentViews): Disassociate if the view is current and not just
2353         the current entry index. This matches other close functions. This fixes an assert in _disassociateFromContentView.
2354         (WebInspector.ContentViewContainer.prototype._disassociateFromContentView): Don't disassociate multiple times. This
2355         avoids calling the closed() function on a view more than once.
2356
2357         * UserInterface/Views/DebuggerSidebarPanel.js:
2358         (WebInspector.DebuggerSidebarPanel.prototype.saveStateToCookie):
2359         (WebInspector.DebuggerSidebarPanel.prototype._mainResourceDidChange): Renamed from _mainResourceChanged.
2360         Close all content views if this is the main frame. Also prune all old resources. Doing this now avoids a flash
2361         of having old and new resources in the tree caused by the default delay in NavigationSidebarPanel's _checkForOldResources.
2362
2363         * UserInterface/Views/NavigationSidebarPanel.js:
2364         (WebInspector.NavigationSidebarPanel): Set _autoPruneOldTopLevelResourceTreeElements for later.
2365         (WebInspector.NavigationSidebarPanel.prototype.get contentTreeOutlineToAutoPrune): Deleted.
2366         (WebInspector.NavigationSidebarPanel.prototype.showDefaultContentView): Fix typo.
2367         (WebInspector.NavigationSidebarPanel.prototype.showDefaultContentViewForTreeElement): Fix whitespace.
2368         (WebInspector.NavigationSidebarPanel.prototype.pruneOldResourceTreeElements): Added. Broken out from
2369         _checkForOldResources.delayedWork so it can be called manually. Also check all visible tree outlines.
2370         (WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged): Pass treeElement in an array.
2371         (WebInspector.NavigationSidebarPanel.prototype._checkForOldResourcesIfNeeded): Added.
2372         (WebInspector.NavigationSidebarPanel.prototype._checkForOldResources): Call pruneOldResourceTreeElements on a delay.
2373         (WebInspector.NavigationSidebarPanel.prototype._checkForOldResources.delayedWork): Deleted.
2374         (WebInspector.NavigationSidebarPanel.prototype._checkOutlinesForPendingViewStateCookie): Call _checkForOldResourcesIfNeeded.
2375         (WebInspector.NavigationSidebarPanel.prototype._checkElementsForPendingViewStateCookie): Remove array folding code.
2376
2377         * UserInterface/Views/TabContentView.js:
2378         (WebInspector.TabContentView.prototype.restoreStateFromCookie): Rename causedByReload to causedByNavigation.
2379         (WebInspector.TabContentView.prototype.saveStateToCookie): Don't allow the cookie to build on the old cookie.
2380
2381 2015-05-11  Timothy Hatcher  <timothy@apple.com>
2382
2383         Web Inspector: NavigationSidebarPanel leaks some event listeners
2384         https://bugs.webkit.org/show_bug.cgi?id=144523
2385
2386         Reviewed by Joseph Pecoraro.
2387
2388         * UserInterface/Views/NavigationSidebarPanel.js:
2389         (WebInspector.NavigationSidebarPanel):
2390         (WebInspector.NavigationSidebarPanel.prototype.closed):
2391         * UserInterface/Views/ResourceSidebarPanel.js:
2392         (WebInspector.ResourceSidebarPanel.prototype.closed):
2393         * UserInterface/Views/SearchSidebarPanel.js:
2394         (WebInspector.SearchSidebarPanel.prototype.closed):
2395         * UserInterface/Views/StorageSidebarPanel.js:
2396         (WebInspector.StorageSidebarPanel.prototype.closed):
2397         * UserInterface/Views/TimelineSidebarPanel.js:
2398         (WebInspector.TimelineSidebarPanel.prototype.closed):
2399
2400 2015-05-10  Nikita Vasilyev  <nvasilyev@apple.com>
2401
2402         Web Inspector: In the console, show function name next to the source link
2403         https://bugs.webkit.org/show_bug.cgi?id=144372
2404
2405         Introduce CallFrameView to display counsole message source links. It looks like this:
2406
2407             [f] functionName - filename.js:42
2408
2409         Reviewed by Timothy Hatcher.
2410
2411         * UserInterface/Base/Main.js:
2412         (WebInspector.createSourceCodeLocationLink):
2413         (WebInspector.linkifyLocation):
2414         (.showSourceCodeLocation):
2415         (WebInspector.linkifyElement):
2416         Abstract this out as it's used in WebInspector.CallFrameView and WebInspector.createSourceCodeLocationLink.
2417
2418         (WebInspector.sourceCodeForURL):
2419         Move this code from Timeline to Main.js as it's used by Console too.
2420
2421         (WebInspector.linkifyURLAsNode):
2422         Remove tooltipText argument as it is never used.
2423
2424         * UserInterface/Controllers/TimelineManager.js:
2425         (WebInspector.TimelineManager.prototype._callFramesFromPayload):
2426         * UserInterface/Main.html:
2427         * UserInterface/Models/CallFrame.js:
2428         (WebInspector.CallFrame.fromPayload):
2429         Abstract this out as it's used in WebInspector.TimelineManager.prototype._callFramesFromPayload and
2430         WebInspector.ConsoleMessageView._appendLocationLink.
2431
2432         (WebInspector.CallFrame):
2433         * UserInterface/Views/CallFrameTreeElement.js:
2434         (WebInspector.CallFrameTreeElement):
2435         Move it to WebInspector.CallFrameView.iconForCallFrame.
2436
2437         * UserInterface/Views/CallFrameView.css: Added.
2438         (.call-frame):
2439         (.call-frame .icon):
2440         (.call-frame .titles):
2441         (.call-frame .title):
2442         (.call-frame .source-link):
2443         (.call-frame .title + .subtitle > .source-link):
2444         (.call-frame .subtitle .source-link):
2445         (.call-frame:focus .subtitle .source-link):
2446         (.call-frame .subtitle:empty):
2447         (.call-frame .subtitle):
2448         (.call-frame .colon):
2449         (.call-frame .title + .subtitle::before):
2450         * UserInterface/Views/CallFrameView.js: Added.
2451         (WebInspector.CallFrameView):
2452         (WebInspector.CallFrameView.iconClassNameForCallFrame):
2453         * UserInterface/Views/ConsoleMessageView.css:
2454         (.console-message .console-message-location):
2455         (.console-message .call-frame):
2456         (.console-message .go-to-link):
2457         (.console-message .go-to-link:focus):
2458         (.console-message .console-message-url::before):
2459         (.console-saved-variable): Deleted.
2460         * UserInterface/Views/ConsoleMessageView.js:
2461         (WebInspector.ConsoleMessageView.prototype._appendLocationLink):
2462         * UserInterface/Views/DebuggerDashboardView.js:
2463         * UserInterface/Views/Main.css:
2464         (.hidden): Deleted.
2465         * UserInterface/Views/ProfileNodeTreeElement.js:
2466         (WebInspector.ProfileNodeTreeElement):
2467         * UserInterface/Views/TimelineDataGridNode.js:
2468         (WebInspector.TimelineDataGridNode.prototype.createCellContent):
2469
2470 2015-05-08  Tobias Reiss  <tobi+webkit@basecode.de>
2471
2472         Web Inspector: Styles sidebar editing with incomplete property looks poor in UI
2473         https://bugs.webkit.org/show_bug.cgi?id=141692
2474
2475         Reviewed by Timothy Hatcher.
2476
2477         Add "css-rule" Formatter that breaks CSS declarations into multiple lines,
2478         keeps comments and invalid styles and adds whitespace.
2479
2480         * Tools/PrettyPrinting/css-rule-tests/*.css: Added.
2481         Add test cases.
2482
2483         * Tools/PrettyPrinting/index.html:
2484         Enable Test setup to be able to run "css-rule" Formatter tests.
2485
2486         * UserInterface/Controllers/Formatter.js:
2487         (Formatter.prototype._handleToken):
2488         * UserInterface/Controllers/FormatterContentBuilder.js:
2489         (FormatterContentBuilder.prototype.removeLastNewline):
2490         (FormatterContentBuilder.prototype.removeLastWhitespace):
2491         (FormatterContentBuilder.prototype._popFormattedContent):
2492         (FormatterContentBuilder.prototype._popNewLine): Deleted.
2493         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
2494         (WebInspector.CSSStyleDeclarationTextEditor.prototype._formattedContentFromEditor):
2495         (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent.update.set this):
2496         (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent.update.get this):
2497         (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent.update):
2498         (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent):
2499         (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent.update.countNewLineCharacters): Deleted.
2500         (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent.update.else): Deleted.
2501         * UserInterface/Views/CodeMirrorFormatters.js:
2502
2503 2015-05-07  Joseph Pecoraro  <pecoraro@apple.com>
2504
2505         Web Inspector: Expanding Object with only __proto__ looks poor should have a label
2506         https://bugs.webkit.org/show_bug.cgi?id=144755
2507
2508         Reviewed by Timothy Hatcher.
2509
2510         Better handle cases where expanding an object has only a __proto__
2511         and no other properties.
2512
2513         * UserInterface/Views/ObjectTreePropertyTreeElement.js:
2514         (WebInspector.ObjectTreePropertyTreeElement.mode.prototype.this.children.length):
2515         (WebInspector.ObjectTreePropertyTreeElement):
2516         * UserInterface/Views/ObjectTreeView.css:
2517         (.object-tree-outline li .empty-message):
2518         * UserInterface/Views/ObjectTreeView.js:
2519         (WebInspector.ObjectTreeView.createEmptyMessageElement):
2520         (WebInspector.ObjectTreeView.comparePropertyDescriptors):
2521         (WebInspector.ObjectTreeView.prototype._updateProperties):
2522
2523 2015-05-07  Joseph Pecoraro  <pecoraro@apple.com>
2524
2525         Web Inspector: Fix querySelector in ResourceContentView.js, caught by assertion
2526         https://bugs.webkit.org/show_bug.cgi?id=144756
2527
2528         Reviewed by Timothy Hatcher.
2529
2530         * UserInterface/Views/ResourceContentView.js:
2531         (WebInspector.ResourceContentView.prototype._hasContent):
2532         Ensure querySelector call is using the class name correctly.
2533
2534 2015-05-06  Joseph Pecoraro  <pecoraro@apple.com>
2535
2536         Web Inspector: Docking Toolbar Buttons do not respect Docking Availability
2537         https://bugs.webkit.org/show_bug.cgi?id=144714
2538
2539         Reviewed by Timothy Hatcher.
2540
2541         * UserInterface/Base/Main.js:
2542         (WebInspector.contentLoaded):
2543         (WebInspector.updateDockingAvailability):
2544         (WebInspector._updateDockNavigationItems):
2545         Update the Toolbar UI based on docking availability.
2546         Assume docking is unavailable by default.
2547
2548         * UserInterface/Protocol/InspectorFrontendAPI.js:
2549         (InspectorFrontendAPI.setDockingUnavailable):
2550         Add back this API as the backend may be calling it when
2551         docking availability changes. This just calls out to
2552         global WebInspector functions to update the Toolbar UI.
2553
2554         * UserInterface/Base/Test.js:
2555         (WebInspector.updateDockedState):
2556         (WebInspector.updateDockingAvailability):
2557         Do nothing in tests.
2558
2559 2015-05-06  Matt Baker  <mattbaker@apple.com>
2560
2561         Web Inspector: The text in the left pane overlaps the "Filter Time Events" field in the Timeline after the Web Inspector is resized
2562         https://bugs.webkit.org/show_bug.cgi?id=144720
2563
2564         Reviewed by Timothy Hatcher.
2565
2566         * UserInterface/Views/FilterBar.css:
2567         (.filter-bar):
2568         (.filter-bar > .navigation-bar):
2569         (.filter-bar > input[type="search"]):
2570         (.filter-bar > .navigation-bar > .item): Deleted.
2571         Filter bar now has opaque background and height updated to the ubiquitous 29px.
2572
2573 2015-05-06  Joseph Pecoraro  <pecoraro@apple.com>
2574
2575         Web Inspector: DOMStorage exception and issue with sessionStorage
2576         https://bugs.webkit.org/show_bug.cgi?id=144646
2577
2578         Reviewed by Timothy Hatcher.
2579
2580         * UserInterface/Views/DOMStorageContentView.js:
2581         (WebInspector.DOMStorageContentView):
2582         (WebInspector.DOMStorageContentView.prototype._populate):
2583         (WebInspector.DOMStorageContentView.prototype.reset): Deleted.
2584         Always have the datagrid be available with a default sort.
2585
2586         (WebInspector.DOMStorageContentView.prototype._sortDataGrid.comparator):
2587         (WebInspector.DOMStorageContentView.prototype._sortDataGrid):
2588         Simplify and correct the order.
2589
2590         (WebInspector.DOMStorageContentView.prototype.cleanup):
2591         Cleanup some uses of delete.
2592
2593         * UserInterface/Views/DataGrid.js:
2594         (WebInspector.DataGrid.prototype.sortNodesImmediately):
2595         Provide a way to sort immediately without a visible delay.
2596
2597         (WebInspector.DataGrid.prototype._sortNodesCallback):
2598         Cleanup some dead code to simplify sorting.
2599
2600         (WebInspector.DataGridNode.prototype._attach):
2601         When sorting, the children list does not match the child node list,
2602         so ensure that placeholder nodes are added to the end.
2603
2604         (WebInspector.PlaceholderDataGridNode.prototype.makeNormal):
2605         Cleanup some uses of delete.
2606
2607 2015-05-06  Joseph Pecoraro  <pecoraro@apple.com>
2608
2609         Web Inspector: SourceCodeTextEditor shows "undefined" instead of resource content when pausing during resource load
2610         https://bugs.webkit.org/show_bug.cgi?id=144662
2611
2612         Reviewed by Timothy Hatcher.
2613
2614         * UserInterface/Protocol/InspectorBackend.js:
2615         (InspectorBackend.Command.prototype.promise):
2616         Start standardizing on rejecting Promises with Error objects.
2617
2618         * UserInterface/Views/ResourceContentView.js:
2619         (WebInspector.ResourceContentView):
2620         (WebInspector.ResourceContentView.prototype._protocolError):
2621         When there is a protocol error, show a nice UI string for the error.
2622
2623         (WebInspector.ResourceContentView.prototype._contentAvailable):
2624         (WebInspector.ResourceContentView.prototype._contentError):
2625         (WebInspector.ResourceContentView.prototype._hasContent):
2626         Whenever we hit an error case in ResourceContentView, check to make sure
2627         that a subclass hasn't already populated the content view with content.
2628         This can happen when a TextResourceContentView populates a Resource with
2629         Script content while paused, because the Resource content would be
2630         unavailable. We check that content has loaded by checking that the
2631         indeterminate spinner is no longer showing.
2632
2633 2015-05-05  Andres Gomez  <agomez@igalia.com>
2634
2635         [GTK] Web Inspector: Further optimize SVG images
2636         https://bugs.webkit.org/show_bug.cgi?id=144441
2637
2638         SVG images optimized with a combination of sed replacements, the
2639         usage of the scour tool (http://www.codedread.com/scour/) and a
2640         forked version of the svgo tool (https://github.com/tanty/svgo).
2641
2642         Also, added the class attribute to the shape elements following
2643         the convention used in Apple's images.
2644
2645         Reviewed by Joseph Pecoraro.
2646
2647         * UserInterface/Images/gtk/BackArrow.svg: Optimized.
2648         * UserInterface/Images/gtk/BreakpointActionAdd.svg: Optimized.
2649         * UserInterface/Images/gtk/BreakpointActionRemove.svg: Optimized.
2650         * UserInterface/Images/gtk/BreakpointButton.svg: Optimized.
2651         * UserInterface/Images/gtk/BreakpointInactiveButton.svg: Optimized.
2652         * UserInterface/Images/gtk/Breakpoints.svg: Optimized.
2653         * UserInterface/Images/gtk/Checkers.svg: Optimized.
2654         * UserInterface/Images/gtk/Circle.svg: Optimized.
2655         * UserInterface/Images/gtk/Close.svg: Optimized.
2656         * UserInterface/Images/gtk/CloseLarge.svg: Optimized.
2657         * UserInterface/Images/gtk/CloseWhite.svg: Optimized.
2658         * UserInterface/Images/gtk/ContentFlow.svg: Optimized.
2659         * UserInterface/Images/gtk/Crosshair.svg: Optimized.
2660         * UserInterface/Images/gtk/DOMCharacterData.svg: Optimized.
2661         * UserInterface/Images/gtk/DOMComment.svg: Optimized.
2662         * UserInterface/Images/gtk/DOMDocument.svg: Optimized.
2663         * UserInterface/Images/gtk/DOMDocumentType.svg: Optimized.
2664         * UserInterface/Images/gtk/DOMElement.svg: Optimized.
2665         * UserInterface/Images/gtk/DOMNode.svg: Optimized.
2666         * UserInterface/Images/gtk/DOMTextNode.svg: Optimized.
2667         * UserInterface/Images/gtk/DisclosureTriangleSmallClosed.svg: Optimized.
2668         * UserInterface/Images/gtk/DisclosureTriangleSmallOpen.svg: Optimized.
2669         * UserInterface/Images/gtk/DisclosureTriangleTinyClosed.svg: Optimized.
2670         * UserInterface/Images/gtk/DisclosureTriangleTinyOpen.svg: Optimized.
2671         * UserInterface/Images/gtk/DockBottom.svg: Optimized.
2672         * UserInterface/Images/gtk/DockRight.svg: Optimized.
2673         * UserInterface/Images/gtk/DownloadArrow.svg: Optimized.
2674         * UserInterface/Images/gtk/Error.svg: Optimized.
2675         * UserInterface/Images/gtk/Errors.svg: Optimized.
2676         * UserInterface/Images/gtk/ErrorsEnabled.svg: Optimized.
2677         * UserInterface/Images/gtk/EventListener.svg: Optimized.
2678         * UserInterface/Images/gtk/Exception.svg: Optimized.
2679         * UserInterface/Images/gtk/Eye.svg: Optimized.
2680         * UserInterface/Images/gtk/FilterFieldGlyph.svg: Optimized.
2681         * UserInterface/Images/gtk/ForwardArrow.svg: Optimized.
2682         * UserInterface/Images/gtk/Function.svg: Optimized.
2683         * UserInterface/Images/gtk/GoToArrow.svg: Optimized.
2684         * UserInterface/Images/gtk/HierarchicalNavigationItemChevron.svg: Optimized.
2685         * UserInterface/Images/gtk/IndeterminateProgressSpinner1.svg: Optimized.
2686         * UserInterface/Images/gtk/IndeterminateProgressSpinner10.svg: Optimized.
2687         * UserInterface/Images/gtk/IndeterminateProgressSpinner11.svg: Optimized.
2688         * UserInterface/Images/gtk/IndeterminateProgressSpinner12.svg: Optimized.
2689         * UserInterface/Images/gtk/IndeterminateProgressSpinner2.svg: Optimized.
2690         * UserInterface/Images/gtk/IndeterminateProgressSpinner3.svg: Optimized.
2691         * UserInterface/Images/gtk/IndeterminateProgressSpinner4.svg: Optimized.
2692         * UserInterface/Images/gtk/IndeterminateProgressSpinner5.svg: Optimized.
2693         * UserInterface/Images/gtk/IndeterminateProgressSpinner6.svg: Optimized.
2694         * UserInterface/Images/gtk/IndeterminateProgressSpinner7.svg: Optimized.
2695         * UserInterface/Images/gtk/IndeterminateProgressSpinner8.svg: Optimized.
2696         * UserInterface/Images/gtk/IndeterminateProgressSpinner9.svg: Optimized.
2697         * UserInterface/Images/gtk/Issues.svg: Optimized.
2698         * UserInterface/Images/gtk/IssuesEnabled.svg: Optimized.
2699         * UserInterface/Images/gtk/LayerBorders.svg: Optimized.
2700         * UserInterface/Images/gtk/Locked.svg: Optimized.
2701         * UserInterface/Images/gtk/Logs.svg: Optimized.
2702         * UserInterface/Images/gtk/Native.svg: Optimized.
2703         * UserInterface/Images/gtk/NavigationItemCurleyBraces.svg: Optimized.
2704         * UserInterface/Images/gtk/NavigationItemTrash.svg: Optimized.
2705         * UserInterface/Images/gtk/NavigationItemTypes.svg: Optimized.
2706         * UserInterface/Images/gtk/PaintFlashing.svg: Optimized.
2707         * UserInterface/Images/gtk/Pause.svg: Optimized.
2708         * UserInterface/Images/gtk/PausedBreakpoint.svg: Optimized.
2709         * UserInterface/Images/gtk/Pencil.svg: Optimized.
2710         * UserInterface/Images/gtk/Plus.svg: Optimized. Text element
2711         converted into a shape.
2712         * UserInterface/Images/gtk/PseudoElement.svg: Optimized.
2713         * UserInterface/Images/gtk/Record.svg: Optimized.
2714         * UserInterface/Images/gtk/Reflection.svg: Optimized.
2715         * UserInterface/Images/gtk/ReloadFull.svg: Optimized.
2716         * UserInterface/Images/gtk/ReplayPauseButton.svg: Optimized.
2717         * UserInterface/Images/gtk/ReplayPlayButton.svg: Optimized.
2718         * UserInterface/Images/gtk/ReplayRecordingButton.svg: Optimized.
2719         * UserInterface/Images/gtk/Request.svg: Optimized.
2720         * UserInterface/Images/gtk/Resources.svg: Optimized.
2721         * UserInterface/Images/gtk/Response.svg: Optimized.
2722         * UserInterface/Images/gtk/ResultLine.svg: Optimized.
2723         * UserInterface/Images/gtk/Resume.svg: Optimized.
2724         * UserInterface/Images/gtk/ShadowDOM.svg: Optimized.
2725         * UserInterface/Images/gtk/SortIndicatorDownArrow.svg: Optimized.
2726         * UserInterface/Images/gtk/SortIndicatorUpArrow.svg: Optimized.
2727         * UserInterface/Images/gtk/SplitToggleUp.svg: Optimized.
2728         * UserInterface/Images/gtk/StepInto.svg: Optimized.
2729         * UserInterface/Images/gtk/StepOut.svg: Optimized.
2730         * UserInterface/Images/gtk/StepOver.svg: Optimized.
2731         * UserInterface/Images/gtk/Stop.svg: Optimized.
2732         * UserInterface/Images/gtk/StyleRuleAuthor.svg: Optimized.
2733         * UserInterface/Images/gtk/StyleRuleInherited.svg: Optimized.
2734         * UserInterface/Images/gtk/StyleRuleInheritedElement.svg: Optimized.
2735         * UserInterface/Images/gtk/StyleRuleInspector.svg: Optimized.
2736         * UserInterface/Images/gtk/StyleRuleUser.svg: Optimized.
2737         * UserInterface/Images/gtk/StyleRuleUserAgent.svg: Optimized.
2738         * UserInterface/Images/gtk/TimelineRecordAnimation.svg: Optimized.
2739         * UserInterface/Images/gtk/TimelineRecordConsoleProfile.svg: Optimized.
2740         * UserInterface/Images/gtk/TimelineRecordEvent.svg: Optimized.
2741         * UserInterface/Images/gtk/TimelineRecordLayout.svg: Optimized.
2742         * UserInterface/Images/gtk/TimelineRecordPaint.svg: Optimized.
2743         * UserInterface/Images/gtk/TimelineRecordProbeSampled.svg: Optimized.
2744         * UserInterface/Images/gtk/TimelineRecordScriptEvaluated.svg: Optimized.
2745         * UserInterface/Images/gtk/TimelineRecordStyle.svg: Optimized.
2746         * UserInterface/Images/gtk/TimelineRecordTimer.svg: Optimized.
2747         * UserInterface/Images/gtk/TypeBoolean.svg: Optimized.
2748         * UserInterface/Images/gtk/TypeNull.svg: Optimized.
2749         * UserInterface/Images/gtk/TypeNumber.svg: Optimized.
2750         * UserInterface/Images/gtk/TypeObject.svg: Optimized.
2751         * UserInterface/Images/gtk/TypeRegex.svg: Optimized. Removed
2752         mistaken extra shape.
2753         * UserInterface/Images/gtk/TypeString.svg: Optimized.
2754         * UserInterface/Images/gtk/TypeSymbol.svg: Optimized. Removed
2755         mistaken extra shape.
2756         * UserInterface/Images/gtk/TypeUndefined.svg: Optimized.
2757         * UserInterface/Images/gtk/Undock.svg: Optimized.
2758         * UserInterface/Images/gtk/UpDownArrows.svg: Optimized.
2759         * UserInterface/Images/gtk/UserInputPrompt.svg: Optimized.
2760         * UserInterface/Images/gtk/UserInputPromptPrevious.svg: Optimized.
2761         * UserInterface/Images/gtk/UserInputResult.svg: Optimized.
2762         * UserInterface/Images/gtk/Warning.svg: Optimized.
2763
2764 2015-05-05  Timothy Hatcher  <timothy@apple.com>
2765
2766         REGRESSION: Web Inspector: no way to navigate to a resource/source location from overview timeline view
2767         https://bugs.webkit.org/show_bug.cgi?id=144539
2768
2769         Reviewed by Brian Burg.
2770
2771         * UserInterface/Views/GeneralTreeElement.js:
2772         (WebInspector.GeneralTreeElement.prototype.set status): Call didChange() so the onchange event fires. This allows
2773         TimelineSidebarPanel to update the status element when it goes from a spinner to empty for ResourceTreeElements.
2774         (WebInspector.GeneralTreeElement.prototype.onattach): Don't call _updateStatusElement, just append it if needed.
2775         Calling _updateStatusElement caused DOMNodeFragments as status elements to be appended a second time and fail.
2776         * UserInterface/Views/NavigationSidebarPanel.js:
2777         (WebInspector.NavigationSidebarPanel.prototype.treeElementAddedOrChanged):
2778         (WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged):
2779         * UserInterface/Views/NetworkTimelineView.js:
2780         (WebInspector.NetworkTimelineView.prototype.canShowContentViewForTreeElement):
2781         (WebInspector.NetworkTimelineView.prototype.showContentViewForTreeElement):
2782         (WebInspector.NetworkTimelineView.prototype.treeElementSelected):
2783         (WebInspector.NetworkTimelineView.prototype._dataGridNodeSelected):
2784         (WebInspector.NetworkTimelineView.prototype._updateTreeElementWithCloseButton): Deleted.
2785         (WebInspector.NetworkTimelineView.prototype._closeStatusButtonClicked): Deleted.
2786         * UserInterface/Views/OverviewTimelineView.js:
2787         (WebInspector.OverviewTimelineView.prototype.canShowContentViewForTreeElement):
2788         (WebInspector.OverviewTimelineView.prototype.showContentViewForTreeElement):
2789         (WebInspector.OverviewTimelineView.prototype._dataGridNodeSelected):
2790         (WebInspector.OverviewTimelineView.prototype._treeElementDeselected): Deleted.
2791         (WebInspector.OverviewTimelineView.prototype._treeElementSelected): Deleted.
2792         (WebInspector.OverviewTimelineView.prototype._updateTreeElementWithCloseButton): Deleted.
2793         (WebInspector.OverviewTimelineView.prototype._closeStatusButtonClicked): Deleted.
2794         * UserInterface/Views/RenderingFrameTimelineView.js:
2795         (WebInspector.RenderingFrameTimelineView.prototype.canShowContentViewForTreeElement):
2796         (WebInspector.RenderingFrameTimelineView.prototype.showContentViewForTreeElement):
2797         * UserInterface/Views/ResourceTimelineDataGridNode.js:
2798         (WebInspector.ResourceTimelineDataGridNode.prototype.createCellContent): Don't show a go-to arrow in the Domain column.
2799         (WebInspector.ResourceTimelineDataGridNode.prototype._goToResource): Deleted.
2800         * UserInterface/Views/ScriptTimelineView.js:
2801         (WebInspector.ScriptTimelineView.prototype.canShowContentViewForTreeElement):
2802         (WebInspector.ScriptTimelineView.prototype.showContentViewForTreeElement):
2803         (WebInspector.ScriptTimelineView.prototype.treeElementSelected):
2804         * UserInterface/Views/TimelineRecordTreeElement.js:
2805         (WebInspector.TimelineRecordTreeElement.prototype.get sourceCodeLocation):
2806         * UserInterface/Views/TimelineSidebarPanel.css:
2807         (.sidebar > .panel.navigation.timeline .item:hover:not(.selected) .status .close.status-button):
2808         (.sidebar > .panel.navigation.timeline:not(.timeline-recording-content-view-showing) .status .go-to-arrow.status-button):
2809         (.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .status .close.status-button):
2810         * UserInterface/Views/TimelineSidebarPanel.js:
2811         (WebInspector.TimelineSidebarPanel.prototype.treeElementAddedOrChanged): Added.
2812         (WebInspector.TimelineSidebarPanel.prototype.canShowDifferentContentView):
2813         (WebInspector.TimelineSidebarPanel.prototype._treeElementGoToArrowWasClicked): Added.
2814         (WebInspector.TimelineSidebarPanel.prototype._treeElementCloseButtonClicked): Added.
2815         * UserInterface/Views/TimelineView.js:
2816         (WebInspector.TimelineView):
2817         (WebInspector.TimelineView.prototype.canShowContentViewForTreeElement):
2818         (WebInspector.TimelineView.prototype.showContentViewForTreeElement):
2819         (WebInspector.TimelineView.prototype.treeElementDeselected):
2820         (WebInspector.TimelineView.prototype.treeElementSelected):
2821         (WebInspector.TimelineView.prototype.needsLayout):
2822         (WebInspector.TimelineView.prototype._closeStatusButtonClicked): Deleted.
2823         (WebInspector.TimelineView.prototype._updateTreeElementWithCloseButton): Deleted.
2824         * UserInterface/Views/TreeElementStatusButton.css:
2825         (.item > .status > .status-button): Fix an alignment issue with close and go-to arrows being side-by-side.
2826         Does not happen in the final patch because they are mutually exclusive, but still good to fix.
2827
2828 2015-05-05  Timothy Hatcher  <timothy@apple.com>
2829
2830         Web Inspector: Fix some issues with Search tabs
2831         https://bugs.webkit.org/show_bug.cgi?id=144531
2832
2833         Reviewed by Darin Adler.
2834
2835         * UserInterface/Views/ContentView.js:
2836         (WebInspector.ContentView):
2837         (WebInspector.ContentView.isViewable):
2838         Support DOMSearchMatchObject and SourceCodeSearchMatchObject representedObjects. These are usually
2839         handled at a higher level, but cookie restoring requires ContentView to handle them.
2840
2841         * UserInterface/Views/DOMTreeContentView.js:
2842         (WebInspector.DOMTreeContentView):
2843         (WebInspector.DOMTreeContentView.prototype.selectAndRevealDOMNode):
2844         (WebInspector.DOMTreeContentView.prototype.selectLastSelectedNode):
2845         (WebInspector.DOMTreeContentView.prototype._restoreSelectedNodeAfterUpdate):
2846         Don't allow restoring the previous selected node when another not has already been selected.
2847
2848         * UserInterface/Views/SearchTabContentView.js:
2849         (WebInspector.SearchTabContentView.prototype.canShowRepresentedObject):
2850         Allow Script objects to be shown in the Search tab.
2851
2852 2015-05-05  Timothy Hatcher  <timothy@apple.com>
2853
2854         Web Inspector: Source/WebInspectorUI/UserInterface/Images/Logs.svg has unknown attribute "fille"
2855         https://bugs.webkit.org/show_bug.cgi?id=144627
2856
2857         Reviewed by Darin Adler.
2858
2859         * UserInterface/Images/Logs.svg: Change "fille" to "fill".
2860
2861 2015-05-05  Andres Gomez  <agomez@igalia.com>
2862
2863         [GTK] Web Inspector: New Images added in r183339, r183338, r183332, r183323, r182660, and r182186
2864         https://bugs.webkit.org/show_bug.cgi?id=144329
2865
2866         Reviewed by Joseph Pecoraro.
2867
2868         * UserInterface/Images/gtk/Console.svg: Added.
2869         * UserInterface/Images/gtk/Debugger.svg: Added.
2870         * UserInterface/Images/gtk/Elements.svg: Added.
2871         * UserInterface/Images/gtk/Gear.svg: Added.
2872         * UserInterface/Images/gtk/NewTab.svg: Added.
2873         * UserInterface/Images/gtk/NewTabPlus.svg: Added.
2874         * UserInterface/Images/gtk/ReloadToolbar.svg: Added.
2875         * UserInterface/Images/gtk/SearchResults.svg: Added.
2876         * UserInterface/Images/gtk/Storage.svg: Added.
2877         * UserInterface/Images/gtk/Timeline.svg: Added.
2878         * UserInterface/Images/gtk/TimelineRecordRenderingFrame.svg: Added.
2879         * UserInterface/Images/gtk/ToggleLeftSidebar.svg: Added.
2880         * UserInterface/Images/gtk/ToggleRightSidebar.svg: Added.
2881
2882 2015-05-05  Andres Gomez  <agomez@igalia.com>
2883
2884         [GTK] Web Inspector: icons for console.info() messages
2885         https://bugs.webkit.org/show_bug.cgi?id=144461
2886
2887         Reviewed by Joseph Pecoraro.
2888
2889         * UserInterface/Images/gtk/Debug.svg: Added.
2890         * UserInterface/Images/gtk/Info.svg: Added.
2891         * UserInterface/Images/gtk/Log.svg: Added.
2892
2893 2015-05-04  Joseph Pecoraro  <pecoraro@apple.com>
2894
2895         Web Inspector: Always expand initial top level DOM tree nodes when not including the root (frame views)
2896         https://bugs.webkit.org/show_bug.cgi?id=144607
2897
2898         Reviewed by Timothy Hatcher.
2899
2900         * UserInterface/Views/DOMTreeOutline.js:
2901         (WebInspector.DOMTreeOutline.prototype.update):
2902
2903 2015-05-04  Timothy Hatcher  <timothy@apple.com>
2904
2905         Web Inspector: Allow closing and reopening the Debugger tab
2906         https://bugs.webkit.org/show_bug.cgi?id=144536
2907
2908         Reviewed by Joseph Pecoraro.
2909
2910         * UserInterface/Base/Main.js:
2911         (WebInspector._updateNewTabButtonState):
2912         * UserInterface/Views/DebuggerSidebarPanel.js:
2913         (WebInspector.DebuggerSidebarPanel):
2914         (WebInspector.DebuggerSidebarPanel.prototype.closed):
2915         (WebInspector.DebuggerSidebarPanel.prototype._addIssuesForSourceCode):
2916         (WebInspector.DebuggerSidebarPanel.prototype._addResourcesRecursivelyForFrame):
2917         (WebInspector.DebuggerSidebarPanel.prototype._resourceAdded):
2918         (WebInspector.DebuggerSidebarPanel.prototype._addResource):
2919         (WebInspector.DebuggerSidebarPanel.prototype._mainResourceChanged):
2920         (WebInspector.DebuggerSidebarPanel.prototype._scriptAdded):
2921         (WebInspector.DebuggerSidebarPanel.prototype._addScript):
2922         * UserInterface/Views/DebuggerTabContentView.js:
2923         (WebInspector.DebuggerTabContentView):
2924         * UserInterface/Views/NewTabContentView.js:
2925         (WebInspector.NewTabContentView):
2926
2927 2015-05-04  Timothy Hatcher  <timothy@apple.com>
2928
2929         REGRESSION: Web Inspector: FrameTreeElement does not folders properly when loading a page
2930         https://bugs.webkit.org/show_bug.cgi?id=144535
2931
2932         Reviewed by Joseph Pecoraro.
2933
2934         * UserInterface/Views/FolderizedTreeElement.js:
2935         (WebInspector.FolderizedTreeElement.prototype.addChildForRepresentedObject): Fix an exception if not in a tree.
2936         (WebInspector.FolderizedTreeElement.prototype.prepareToPopulate):
2937         (WebInspector.FolderizedTreeElement.prototype._populateFromNewChildQueue):
2938
2939 2015-05-04  Timothy Hatcher  <timothy@apple.com>
2940
2941         Web Inspector: Allow closing and reopening the Timelines tab
2942         https://bugs.webkit.org/show_bug.cgi?id=144520
2943
2944         Reviewed by Joseph Pecoraro.
2945
2946         * UserInterface/Base/Main.js:
2947         (WebInspector._updateNewTabButtonState):
2948         * UserInterface/Controllers/TimelineManager.js:
2949         (WebInspector.TimelineManager): No need for a delay now. Call reset().
2950         (WebInspector.TimelineManager.prototype.reset):
2951         (WebInspector.TimelineManager.delayedWork): Deleted.
2952         * UserInterface/Views/ContentBrowserTabContentView.js:
2953         (WebInspector.ContentBrowserTabContentView):
2954         (WebInspector.ContentBrowserTabContentView.prototype.closed):
2955         * UserInterface/Views/LayoutTimelineView.js:
2956         (WebInspector.LayoutTimelineView.prototype.closed): Added. Fixed leak.
2957         * UserInterface/Views/NetworkTimelineView.js:
2958         (WebInspector.NetworkTimelineView.prototype.closed): Added. Fixed leak.
2959         * UserInterface/Views/NewTabContentView.js:
2960         (WebInspector.NewTabContentView): Added Timelines.
2961         * UserInterface/Views/OverviewTimelineView.js:
2962         (WebInspector.OverviewTimelineView.prototype.closed): Added. Fixed leak.
2963         * UserInterface/Views/RenderingFrameTimelineView.js:
2964         (WebInspector.RenderingFrameTimelineView.prototype.closed): Added. Fixed leak.
2965         * UserInterface/Views/ScriptTimelineView.js:
2966         (WebInspector.ScriptTimelineView.prototype.closed):
2967         * UserInterface/Views/SearchTabContentView.js:
2968         (WebInspector.SearchTabContentView.prototype.closed): Deleted. Made generic
2969         in ContentBrowserTabContentView.prototype.closed.
2970         * UserInterface/Views/TabBrowser.js:
2971         (WebInspector.TabBrowser.prototype._tabBarItemSelected): Fix a potential exception
2972         when selectedTabBarItem is null.
2973         * UserInterface/Views/TimelineSidebarPanel.js:
2974         (WebInspector.TimelineSidebarPanel):
2975         (WebInspector.TimelineSidebarPanel.prototype.closed):
2976         (WebInspector.TimelineSidebarPanel._recordingCreated): Call _addRecording.
2977         (WebInspector.TimelineSidebarPanel._addRecording): Added.
2978         * UserInterface/Views/TimelineTabContentView.js:
2979         (WebInspector.TimelineTabContentView):
2980
2981 2015-05-04  Timothy Hatcher  <timothy@apple.com>
2982
2983         Web Inspector: Switching recordings in the Timeline navigation bar is broken
2984         https://bugs.webkit.org/show_bug.cgi?id=144519
2985
2986         Reviewed by Joseph Pecoraro.
2987
2988         * UserInterface/Views/ContentBrowser.js:
2989         (WebInspector.ContentBrowser.prototype._hierarchicalPathComponentWasSelected): Use revealAndSelect
2990         on the TreeElement instead of showing the representedObject directly. This fixes an exception in
2991         TimelineRecordingContentView where it wouldn't be initialized with the TimelineSidebarPanel extra argument.
2992         * UserInterface/Views/TimelineOverview.js:
2993         (WebInspector.TimelineOverview.prototype.get visibleDuration): Fix an annoying assert. We show the view
2994         early in construction, before it is in the document. Future updateLayout calls work and fix this.
2995         * UserInterface/Views/TimelineRecordingContentView.js:
2996         (WebInspector.TimelineRecordingContentView.prototype.shown): Call _currentContentViewDidChange
2997         to trigger the sidebar to update when this recording view is shown.
2998         * UserInterface/Views/TimelineSidebarPanel.js:
2999         (WebInspector.TimelineSidebarPanel.prototype._recordingsTreeElementSelected): Moved code from here...
3000         (WebInspector.TimelineSidebarPanel.prototype._recordingSelected): ... to here. Take two different paths
3001         to state restoration here. If the view existed before, use its state. If now, use the current state that
3002         is captured by the cookie logic and explicitly restore it.
3003
3004 2015-05-03  Timothy Hatcher  <timothy@apple.com>
3005
3006         Web Inspector: Exception under ContentViewContainer _disassociateFromContentView
3007         https://bugs.webkit.org/show_bug.cgi?id=144546
3008
3009         Reviewed by Brian Burg.
3010
3011         * UserInterface/Views/ContentViewContainer.js:
3012         (WebInspector.ContentViewContainer.prototype.showContentView):
3013         Make sure to pass the ContentView to _disassociateFromContentView. Also negate the result
3014         of the _backForwardList.some(), since we don't want to dissociate if the content view is
3015         still in the back-forward list.
3016
3017 2015-05-02  Matt Baker  <mattbaker@apple.com>
3018
3019         Web Inspector: Relocate the selected range details in the Rendering Frames timeline UI
3020         https://bugs.webkit.org/show_bug.cgi?id=144346
3021
3022         This patch removes the details sidebar used by the rendering frames view, and relocates the frame selection
3023         chart the Timelines navigation sidebar.
3024
3025         Reviewed by Timothy Hatcher.
3026
3027         * Localizations/en.lproj/localizedStrings.js:
3028         * UserInterface/Base/Main.js:
3029         (WebInspector.contentLoaded):
3030         RenderingFramesDetailsSidebar is no longer used.
3031
3032         * UserInterface/Controllers/TimelineManager.js:
3033         (WebInspector.TimelineManager.prototype._loadNewRecording):
3034         Reordered timelines.
3035
3036         * UserInterface/Main.html:
3037         Removed references to deleted files.
3038
3039         * UserInterface/Views/ChartDetailsSectionLegendRow.js: Removed.
3040         No longer used. The legend is now a child element of the chart.
3041
3042         * UserInterface/Views/ChartDetailsSectionRow.css:
3043         (.details-section > .content > .group > .row.chart > .title):
3044         (.details-section > .content > .group > .row.chart > .chart-content):
3045         (.details-section > .content > .group > .row.chart > .chart-content > .legend):
3046         (.details-section > .content > .group > .row.chart > .chart-content > .legend > .legend-item):
3047         (.details-section > .content > .group > .row.chart > .chart-content > .legend > .legend-item > .label > .color-swatch):
3048         (.details-section > .content > .group > .row.chart > .chart-content > .legend > .legend-item > .label):
3049         (.details-section > .content > .group > .row.chart > .chart-content > .legend > .legend-item > .value):
3050         (.details-section > .content > .group > .row.chart > .chart-content > .legend > .legend-item > *):
3051         New chart and legend styles.
3052
3053         * UserInterface/Views/ChartDetailsSectionRow.js:
3054         (WebInspector.ChartDetailsSectionRow):
3055         (WebInspector.ChartDetailsSectionRow.prototype.set title):
3056         (WebInspector.ChartDetailsSectionRow.prototype.set innerLabel):
3057         (WebInspector.ChartDetailsSectionRow.prototype.set innerRadius):
3058         (WebInspector.ChartDetailsSectionRow.prototype.get total):
3059         (WebInspector.ChartDetailsSectionRow.set data):
3060         (WebInspector.ChartDetailsSectionRow.prototype.set data):
3061         (WebInspector.ChartDetailsSectionRow.prototype._createLegendItem):
3062         (WebInspector.ChartDetailsSectionRow.prototype._refresh):
3063
3064         A few changes have been made to the appearance and behavior of the chart. A chart title can now be set,
3065         and the legend appears to the right of the chart rather than in a separate details group.
3066
3067         The chart now has better support for adding empty data points, ensuring that a meaningful legend is shown even
3068         when no rendering frames are selected in the timeline overview graph. This ensures that the task associated
3069         with each colored frame segment is apparent, without having to make a selection or record a timeline.
3070
3071         * UserInterface/Views/RenderingFrameDetailsSidebarPanel.js: Removed.
3072         No longer used.
3073
3074         * UserInterface/Views/RenderingFrameTimelineOverviewGraph.js:
3075         Reduced maximum timeline height to increase the height of short frames.
3076
3077         * UserInterface/Views/RenderingFrameTimelineView.js:
3078         (WebInspector.RenderingFrameTimelineView.prototype.shown):
3079         (WebInspector.RenderingFrameTimelineView.prototype.hidden):
3080         RenderingFramesDetailsSidebar is no longer used.
3081
3082         * UserInterface/Views/TimelineRecordingContentView.js:
3083         (WebInspector.TimelineRecordingContentView):
3084         (WebInspector.TimelineRecordingContentView.prototype._updateTimes):
3085         (WebInspector.TimelineRecordingContentView.prototype._updateTimelineOverviewHeight):
3086         (WebInspector.TimelineRecordingContentView.prototype._timelineRemoved):
3087         (WebInspector.TimelineRecordingContentView.prototype._timeRangeSelectionChanged):
3088         (WebInspector.TimelineRecordingContentView.prototype._updateFrameSelection):
3089         Improved logic for updating the frame selection.
3090
3091         * UserInterface/Views/TimelineSidebarPanel.css:
3092         (.sidebar > .panel.navigation.timeline > .timelines-content > .details-section > div.header):
3093         (.sidebar > .panel.navigation.timeline > .timelines-content > .details-section > .content > .group > .row.chart):
3094         (.sidebar > .panel.navigation.timeline > .timelines-content > .details-section > .content > .group > .row.chart > .chart-content > .chart):
3095         (.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing > .content): Deleted.
3096         New chart styles.
3097
3098         * UserInterface/Views/TimelineSidebarPanel.js:
3099         (WebInspector.TimelineSidebarPanel):
3100         (WebInspector.TimelineSidebarPanel.prototype.shown):
3101         (WebInspector.TimelineSidebarPanel._timelineAdded.set this):
3102         (WebInspector.TimelineSidebarPanel.this._timelineTreeElementMap.get select):
3103         (WebInspector.TimelineSidebarPanel.get else):
3104         (WebInspector.TimelineSidebarPanel._refreshFrameSelectionChart.getSelectedRecords.get var):
3105         (WebInspector.TimelineSidebarPanel._refreshFrameSelectionChart.getSelectedRecords):
3106         (WebInspector.TimelineSidebarPanel.showTimelineViewForTimeline.this._timelineTreeElementMap.get select):
3107         (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject.get if.get if):
3108         (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject.get if):
3109         (WebInspector.TimelineSidebarPanel._refreshFrameSelectionChart.durationForRecordType):
3110         (WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject):
3111         (WebInspector.TimelineSidebarPanel.set contentTreeOutlineLabel): Deleted.
3112         (WebInspector.TimelineSidebarPanel._recordingCreated.set this): Deleted.
3113         (WebInspector.TimelineSidebarPanel.get this): Deleted.
3114         Moved the selected frames chart to the navigation sidebar.
3115
3116         * UserInterface/Views/TimelineTabContentView.js:
3117         (WebInspector.TimelineTabContentView):
3118         RenderingFramesDetailsSidebar is no longer used.
3119
3120         * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
3121         * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:
3122         Removed references to deleted files.
3123
3124 2015-05-02  Timothy Hatcher  <timothy@apple.com>
3125
3126         Web Inspector: Allow closing and reopening the Resources tab
3127         https://bugs.webkit.org/show_bug.cgi?id=144513
3128
3129         Reviewed by Joseph Pecoraro.
3130
3131         * UserInterface/Base/Main.js:
3132         (WebInspector._updateNewTabButtonState):
3133         * UserInterface/Views/NewTabContentView.js:
3134         (WebInspector.NewTabContentView):
3135         * UserInterface/Views/ResourceSidebarPanel.js:
3136         (WebInspector.ResourceSidebarPanel):
3137         (WebInspector.ResourceSidebarPanel.prototype.closed):
3138         * UserInterface/Views/ResourcesTabContentView.js:
3139         (WebInspector.ResourcesTabContentView):
3140
3141 2015-05-02  Timothy Hatcher  <timothy@apple.com>
3142
3143         Web Inspector: REGRESSION: Resources section doesn't update after changes are made to a local file
3144         https://bugs.webkit.org/show_bug.cgi?id=144512
3145
3146         The content view was being associated with the wrong represented object. This caused the code to use
3147         the old main resource when showing the frame again.
3148
3149         Reviewed by Joseph Pecoraro.
3150
3151         * UserInterface/Base/Main.js:
3152         (WebInspector._frameWasAdded.delayedWork):
3153         (WebInspector._frameWasAdded):
3154         With the changes in ResourceSidebarPanel, we need to delay showing the frame.
3155
3156         * UserInterface/Views/ContentBrowserTabContentView.js:
3157         (WebInspector.ContentBrowserTabContentView.prototype.showRepresentedObject):
3158         Avoid restoring state by calling cancelRestoringState(). Not fully related to this bug,
3159         but it was preventing testing the cases.
3160
3161         * UserInterface/Views/ContentViewContainer.js:
3162         (WebInspector.ContentViewContainer.prototype.contentViewForRepresentedObject):
3163         This fixes the bug. Don't associate the content view with the Frame, associate it with
3164         the Resource that we actually show.
3165
3166         * UserInterface/Views/NavigationSidebarPanel.js:
3167         (WebInspector.NavigationSidebarPanel.prototype.cancelRestoringState): Added.
3168
3169         * UserInterface/Views/ResourceSidebarPanel.js:
3170         (WebInspector.ResourceSidebarPanel): Remove unused _waitingForInitialMainFrame.
3171         (WebInspector.ResourceSidebarPanel.prototype.treeElementForRepresentedObject):
3172         (WebInspector.ResourceSidebarPanel.prototype._mainResourceDidChange):
3173         (WebInspector.ResourceSidebarPanel.prototype._mainFrameDidChange):
3174         (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange.delayedWork):
3175         (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange):
3176         Clean up how we show the main frame in the sidebar. This was a two step mess before.
3177
3178 2015-04-29  Timothy Hatcher  <timothy@apple.com>
3179
3180         Web Inspector: Remove FrameContentView.js
3181         https://bugs.webkit.org/show_bug.cgi?id=144415
3182
3183         Reviewed by Joseph Pecoraro.
3184
3185         * UserInterface/Images/DOMTree.svg: Removed.
3186         * UserInterface/Images/SourceCode.svg: Removed.
3187         * UserInterface/Main.html: Removed FrameContentView.js.
3188         * UserInterface/Views/FrameContentView.js: Removed.
3189         * UserInterface/Views/PathComponentIcons.css:
3190         (.source-code-icon .icon): Deleted.
3191         (.dom-tree-icon .icon): Deleted.
3192
3193         * UserInterface/Views/ResourceSidebarPanel.js:
3194         (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange.delayedWork):
3195         (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange):
3196         Simplify the code here. We don't need these checks now with tabs and the Storage tab.
3197
3198 2015-04-30  Nikita Vasilyev  <nvasilyev@apple.com>
3199
3200         REGRESSION: Web Inspector: Console message repeat count overlapped by icon
3201         https://bugs.webkit.org/show_bug.cgi?id=144344
3202
3203         Reviewed by Timothy Hatcher.
3204
3205         * UserInterface/Views/ConsoleMessageView.css:
3206         (.console-message .repeat-count):
3207
3208 2015-04-30  Jon Davis  <jond@apple.com>
3209
3210         Web Inspector: console should show an icon for console.info() messages
3211         https://bugs.webkit.org/show_bug.cgi?id=18530
3212
3213         Reviewed by Timothy Hatcher.
3214
3215         Added icons for console.log, console.info and console.debug messages.
3216
3217         Separated console.info from console.log.
3218
3219         * UserInterface/Images/Debug.svg: Added.
3220         * UserInterface/Images/Info.svg: Added.
3221         * UserInterface/Images/Log.svg: Added.
3222         New icon files.
3223
3224         * UserInterface/Models/ConsoleMessage.js:
3225         * UserInterface/Views/ConsoleMessageView.css:
3226         (.console-log-level::before):
3227         (.console-info-level::before):
3228         (.console-debug-level::before):
3229         (:matches(.console-warning-level, .console-error-level, .console-log-level, .console-info-level, .console-debug-level).console-message):
3230         (:matches(.console-warning-level, .console-error-level, .console-log-level, .console-info-level, .console-debug-level)::before):
3231         (:matches(.console-warning-level, .console-error-level, .console-log-level).console-message): Deleted.
3232         (:matches(.console-warning-level, .console-error-level, .console-log-level)::before): Deleted.
3233         Include console.info messages in layout adjustments.
3234
3235         * UserInterface/Views/ConsoleMessageView.js:
3236         (WebInspector.ConsoleMessageView):
3237         (WebInspector.ConsoleMessageView.prototype._levelString):
3238
3239 2015-04-30  Timothy Hatcher  <timothy@apple.com>
3240
3241         Web Inspector: Scope Chain sidebar should be selected immediately when paused
3242         https://bugs.webkit.org/show_bug.cgi?id=144352
3243
3244         Reviewed by Joseph Pecoraro.
3245
3246         * UserInterface/Base/Main.js:
3247         (WebInspector.showDebuggerTab): Added showScopeChainDetailsSidebarPanel argument.
3248         (WebInspector._debuggerDidPause): Pass true for showScopeChainDetailsSidebarPanel.
3249         * UserInterface/Views/ContentBrowserTabContentView.js:
3250         (WebInspector.ContentBrowserTabContentView): Wire the event to showDetailsSidebarPanels instead of
3251         _contentBrowserRepresentedObjectsDidChange, allowing subclasses to do work during the event.
3252         (WebInspector.ContentBrowserTabContentView.prototype.showDetailsSidebarPanels): Moved content of
3253         _contentBrowserRepresentedObjectsDidChange here.
3254         (WebInspector.ContentBrowserTabContentView.prototype._contentBrowserRepresentedObjectsDidChange): Deleted.
3255         * UserInterface/Views/DebuggerTabContentView.js:
3256         (WebInspector.DebuggerTabContentView.prototype.showDetailsSidebarPanels): Added. Show the scope sidebar panel
3257         if it is available and it was requested by showScopeChainDetailsSidebarPanel().
3258         (WebInspector.DebuggerTabContentView.prototype.showScopeChainDetailsSidebarPanel): Added.
3259
3260 2015-04-30  Andres Gomez  <agomez@igalia.com>
3261
3262         [GTK] Web Inspector: New Images for ObjectTreeView - Setter
3263         https://bugs.webkit.org/show_bug.cgi?id=143173
3264
3265         Reviewed by Martin Robinson.
3266
3267         * UserInterface/Images/gtk/Pencil.svg: Added.
3268
3269 2015-04-30  Andres Gomez  <agomez@igalia.com>
3270
3271         [GTK] Web Inspector: Remove some unused Images
3272         https://bugs.webkit.org/show_bug.cgi?id=144445
3273
3274         Reviewed by Carlos Garcia Campos.
3275
3276         * UserInterface/Images/gtk/BottomUpTree.svg: Removed.
3277         * UserInterface/Images/gtk/Log.png: Removed.
3278         * UserInterface/Images/gtk/Log@2x.png: Removed.
3279         * UserInterface/Images/gtk/NavigationItemAngleBrackets.svg: Removed.
3280         * UserInterface/Images/gtk/NavigationItemBrushAndRuler.svg: Removed.
3281         * UserInterface/Images/gtk/NavigationItemBug.svg: Removed.
3282         * UserInterface/Images/gtk/NavigationItemFile.svg: Removed.
3283         * UserInterface/Images/gtk/NavigationItemLayers.svg: Removed.
3284         * UserInterface/Images/gtk/NavigationItemLog.svg: Removed.
3285         * UserInterface/Images/gtk/NavigationItemProbes.svg: Removed.
3286         * UserInterface/Images/gtk/NavigationItemStopwatch.svg: Removed.
3287         * UserInterface/Images/gtk/NavigationItemStorage.svg: Removed.
3288         * UserInterface/Images/gtk/NavigationItemVariable.svg: Removed.
3289         * UserInterface/Images/gtk/Percent.svg: Removed.
3290         * UserInterface/Images/gtk/Reload.svg: Removed.
3291         * UserInterface/Images/gtk/SplitToggleDown.svg: Removed.
3292         * UserInterface/Images/gtk/Time.svg: Removed.
3293         * UserInterface/Images/gtk/Weight.svg: Removed.
3294
3295 2015-04-30  Joseph Pecoraro  <pecoraro@apple.com>
3296
3297         Web Inspector: Copy not working in Console
3298         https://bugs.webkit.org/show_bug.cgi?id=144354
3299
3300         Reviewed by Timothy Hatcher.
3301
3302         * UserInterface/Base/Main.js:
3303         (WebInspector._focusedContentView):
3304         Select the inner most content view to check if handleCopyEvent exists.
3305         Previously we were stopping at the top level TabContentView.
3306
3307 2015-04-29  Timothy Hatcher  <timothy@apple.com>
3308
3309         Web Inspector: Remove some unused Images
3310         https://bugs.webkit.org/show_bug.cgi?id=144412
3311
3312         Reviewed by Joseph Pecoraro.
3313
3314         * UserInterface/Images/BottomUpTree.svg: Removed.
3315         * UserInterface/Images/Log.png: Removed.
3316         * UserInterface/Images/Log@2x.png: Removed.
3317         * UserInterface/Images/NavigationItemAngleBrackets.svg: Removed.
3318         * UserInterface/Images/NavigationItemBrushAndRuler.svg: Removed.
3319         * UserInterface/Images/NavigationItemBug.svg: Removed.
3320         * UserInterface/Images/NavigationItemDoughnutChart.svg: Removed.
3321         * UserInterface/Images/NavigationItemFile.svg: Removed.
3322         * UserInterface/Images/NavigationItemLayers.svg: Removed.
3323         * UserInterface/Images/NavigationItemLog.svg: Removed.
3324         * UserInterface/Images/NavigationItemProbes.svg: Removed.
3325         * UserInterface/Images/NavigationItemStopwatch.svg: Removed.
3326         * UserInterface/Images/NavigationItemStorage.svg: Removed.
3327         * UserInterface/Images/NavigationItemVariable.svg: Removed.
3328         * UserInterface/Images/NetworkBarLabelCalloutLeft.svg: Removed.
3329         * UserInterface/Images/NetworkBarLabelCalloutRight.svg: Removed.
3330         * UserInterface/Images/NetworkBarLabelCalloutWhiteLeft.svg: Removed.
3331         * UserInterface/Images/NetworkBarLabelCalloutWhiteRight.svg: Removed.
3332         * UserInterface/Images/Percent.svg: Removed.
3333         * UserInterface/Images/Reload.svg: Removed.
3334         * UserInterface/Images/SplitToggleDown.svg: Removed.
3335         * UserInterface/Images/Time.svg: Removed.
3336         * UserInterface/Images/Weight.svg: Removed.
3337
3338 2015-04-29  Timothy Hatcher  <timothy@apple.com>
3339
3340         Web Inspector: Split Storage from Resources tab
3341         https://bugs.webkit.org/show_bug.cgi?id=144404
3342
3343         Reviewed by Joseph Pecoraro.
3344
3345         * Localizations/en.lproj/localizedStrings.js:
3346         * UserInterface/Base/Main.js:
3347         (WebInspector.loaded):
3348         (WebInspector.isTabTypeAllowed):
3349         (WebInspector._tabContentViewForType):
3350         (WebInspector._updateNewTabButtonState):
3351         (WebInspector.showStorageTab):
3352         (WebInspector._storageWasInspected):
3353         * UserInterface/Controllers/ApplicationCacheManager.js:
3354         (WebInspector.ApplicationCacheManager.prototype.initialize):
3355         (WebInspector.ApplicationCacheManager.prototype.get applicationCacheObjects):
3356         * UserInterface/Controllers/StorageManager.js:
3357         (WebInspector.StorageManager.prototype.get domStorageObjects):
3358         (WebInspector.StorageManager.prototype.get databases):
3359         (WebInspector.StorageManager.prototype.get indexedDatabases):
3360         (WebInspector.StorageManager.prototype.get cookieStorageObjects):
3361         * UserInterface/Images/Storage.svg: Added.
3362         * UserInterface/Main.html:
3363         * UserInterface/Views/DatabaseTableContentView.js:
3364         (WebInspector.DatabaseTableContentView.prototype._queryFinished): Clear _dataGrid,
3365         since it might have been allocated but still be empty. This avoids an exception in
3366         updateLayout next time layout is updated.
3367         * UserInterface/Views/NewTabContentView.js:
3368         (WebInspector.NewTabContentView):
3369         * UserInterface/Views/ResourceSidebarPanel.js:
3370         (WebInspector.ResourceSidebarPanel):
3371         (WebInspector.ResourceSidebarPanel.prototype._treeElementSelected):
3372         (WebInspector.ResourceSidebarPanel.prototype._domStorageObjectWasAdded): Deleted.
3373         (WebInspector.ResourceSidebarPanel.prototype._domStorageObjectWasInspected): Deleted.
3374         (WebInspector.ResourceSidebarPanel.prototype._databaseWasAdded): Deleted.
3375         (WebInspector.ResourceSidebarPanel.prototype._databaseWasInspected): Deleted.
3376         (WebInspector.ResourceSidebarPanel.prototype._indexedDatabaseWasAdded): Deleted.
3377         (WebInspector.ResourceSidebarPanel.prototype._cookieStorageObjectWasAdded): Deleted.
3378         (WebInspector.ResourceSidebarPanel.prototype._frameManifestAdded): Deleted.
3379         (WebInspector.ResourceSidebarPanel.prototype._frameManifestRemoved): Deleted.
3380         (WebInspector.ResourceSidebarPanel.prototype._addStorageChild): Deleted.
3381         (WebInspector.ResourceSidebarPanel.prototype._storageCleared): Deleted.
3382         * UserInterface/Views/ResourcesTabContentView.js:
3383         (WebInspector.ResourcesTabContentView):
3384         (WebInspector.ResourcesTabContentView.prototype.canShowRepresentedObject):
3385         * UserInterface/Views/StorageSidebarPanel.js: Added.
3386         (WebInspector.StorageSidebarPanel):
3387         (WebInspector.StorageSidebarPanel.prototype.showDefaultContentView):
3388         (WebInspector.StorageSidebarPanel.prototype.closed):
3389         (WebInspector.StorageSidebarPanel.prototype._treeElementSelected):
3390         (WebInspector.StorageSidebarPanel.prototype._domStorageObjectWasAdded):
3391         (WebInspector.StorageSidebarPanel.prototype._addDOMStorageObject):
3392         (WebInspector.StorageSidebarPanel.prototype._domStorageObjectWasInspected):
3393         (WebInspector.StorageSidebarPanel.prototype._databaseWasAdded):
3394         (WebInspector.StorageSidebarPanel.prototype._addDatabase):
3395         (WebInspector.StorageSidebarPanel.prototype._databaseWasInspected):
3396         (WebInspector.StorageSidebarPanel.prototype._indexedDatabaseWasAdded):
3397         (WebInspector.StorageSidebarPanel.prototype._addIndexedDatabase):
3398         (WebInspector.StorageSidebarPanel.prototype._cookieStorageObjectWasAdded):
3399         (WebInspector.StorageSidebarPanel.prototype._addCookieStorageObject):
3400         (WebInspector.StorageSidebarPanel.prototype._frameManifestAdded):
3401         (WebInspector.StorageSidebarPanel.prototype._addFrameManifest):
3402         (WebInspector.StorageSidebarPanel.prototype._frameManifestRemoved):
3403         (WebInspector.StorageSidebarPanel.prototype._compareTreeElements):
3404         (WebInspector.StorageSidebarPanel.prototype._addStorageChild):
3405         (WebInspector.StorageSidebarPanel.prototype._storageCleared):
3406         * UserInterface/Views/StorageTabContentView.js: Copied from Source/WebInspectorUI/UserInterface/Views/ResourcesTabContentView.js.
3407         (WebInspector.StorageTabContentView):
3408         (WebInspector.StorageTabContentView.prototype.get type):
3409         (WebInspector.StorageTabContentView.prototype.canShowRepresentedObject):
3410
3411 2015-04-29  Timothy Hatcher  <timothy@apple.com>
3412
3413         Web Inspector: Remove Legacy images and styles
3414         https://bugs.webkit.org/show_bug.cgi?id=144390
3415
3416         Reviewed by Joseph Pecoraro.
3417
3418         * UserInterface/Base/ImageUtilities.js:
3419         (.generateImage):
3420         (.generateImage.generateLegacyImage): Deleted.
3421         * UserInterface/Base/Main.js:
3422         (WebInspector.contentLoaded):
3423         (WebInspector._updateToolbarHeight):
3424         * UserInterface/Base/Platform.js:
3425         * UserInterface/Controllers/TimelineManager.js:
3426         (WebInspector.TimelineManager.prototype._loadNewRecording):
3427         * UserInterface/Images/Legacy/BackArrow.svg: Removed.
3428         * UserInterface/Images/Legacy/Breakpoints.svg: Removed.
3429         * UserInterface/Images/Legacy/Close.svg: Removed.
3430         * UserInterface/Images/Legacy/CloseLarge.svg: Removed.
3431         * UserInterface/Images/Legacy/Colors.png: Removed.
3432         * UserInterface/Images/Legacy/Colors@2x.png: Removed.
3433         * UserInterface/Images/Legacy/ColorsLarge.png: Removed.
3434         * UserInterface/Images/Legacy/ColorsLarge@2x.png: Removed.
3435         * UserInterface/Images/Legacy/DockBottom.svg: Removed.
3436         * UserInterface/Images/Legacy/DockRight.svg: Removed.
3437         * UserInterface/Images/Legacy/DownloadArrow.svg: Removed.
3438         * UserInterface/Images/Legacy/Errors.svg: Removed.
3439         * UserInterface/Images/Legacy/ErrorsEnabled.svg: Removed.
3440         * UserInterface/Images/Legacy/FilterFieldGlyph.svg: Removed.
3441         * UserInterface/Images/Legacy/FolderGeneric.png: Removed.
3442         * UserInterface/Images/Legacy/FolderGeneric@2x.png: Removed.
3443         * UserInterface/Images/Legacy/ForwardArrow.svg: Removed.
3444         * UserInterface/Images/Legacy/Issues.svg: Removed.
3445         * UserInterface/Images/Legacy/IssuesEnabled.svg: Removed.
3446         * UserInterface/Images/Legacy/LayerBorders.svg: Removed.
3447         * UserInterface/Images/Legacy/Logs.svg: Removed.
3448         * UserInterface/Images/Legacy/NavigationItemCurleyBraces.svg: Removed.
3449         * UserInterface/Images/Legacy/NavigationItemTrash.svg: Removed.
3450         * UserInterface/Images/Legacy/Network.png: Removed.
3451         * UserInterface/Images/Legacy/Network@2x.png: Removed.
3452         * UserInterface/Images/Legacy/NetworkLarge.png: Removed.
3453         * UserInterface/Images/Legacy/NetworkLarge@2x.png: Removed.
3454         * UserInterface/Images/Legacy/Pause.svg: Removed.
3455         * UserInterface/Images/Legacy/Plus.svg: Removed.
3456         * UserInterface/Images/Legacy/Recording.png: Removed.
3457         * UserInterface/Images/Legacy/Recording@2x.png: Removed.
3458         * UserInterface/Images/Legacy/RecordingHovered.png: Removed.
3459         * UserInterface/Images/Legacy/RecordingHovered@2x.png: Removed.
3460         * UserInterface/Images/Legacy/RecordingStopped.png: Removed.
3461         * UserInterface/Images/Legacy/RecordingStopped@2x.png: Removed.
3462         * UserInterface/Images/Legacy/Reload.svg: Removed.
3463         * UserInterface/Images/Legacy/Resources.svg: Removed.
3464         * UserInterface/Images/Legacy/Resume.svg: Removed.
3465         * UserInterface/Images/Legacy/ShadowDOM.svg: Removed.
3466         * UserInterface/Images/Legacy/SortIndicatorDownArrow.svg: Removed.
3467         * UserInterface/Images/Legacy/SortIndicatorUpArrow.svg: Removed.
3468         * UserInterface/Images/Legacy/SplitToggleDown.svg: Removed.
3469         * UserInterface/Images/Legacy/SplitToggleUp.svg: Removed.
3470         * UserInterface/Images/Legacy/StepInto.svg: Removed.
3471         * UserInterface/Images/Legacy/StepOut.svg: Removed.
3472         * UserInterface/Images/Legacy/StepOver.svg: Removed.
3473         * UserInterface/Images/Legacy/Time.svg: Removed.
3474         * UserInterface/Images/Legacy/Undock.svg: Removed.
3475         * UserInterface/Images/Legacy/UpDownArrows.svg: Removed.
3476         * UserInterface/Images/Legacy/Weight.svg: Removed.
3477         * UserInterface/Views/ButtonNavigationItem.css:
3478         (body.mac-platform.legacy .navigation-bar .item.button.text-only): Deleted.
3479         * UserInterface/Views/ButtonToolbarItem.css:
3480         (body.mac-platform.legacy .toolbar .item.button > .label): Deleted.
3481         * UserInterface/Views/CSSStyleDeclarationSection.css:
3482         (body.mac-platform.legacy .style-declaration-section): Deleted.
3483         (body.mac-platform.legacy .style-declaration-section + .style-declaration-section): Deleted.
3484         (body.mac-platform.legacy .style-declaration-section.last-in-group): Deleted.
3485         (body.mac-platform.legacy .style-declaration-section.last-in-group + .style-declaration-section): Deleted.
3486         (body.mac-platform.legacy .style-declaration-section.last-in-group + .style-declaration-section:matches(.last-in-group, :last-child)): Deleted.
3487         * UserInterface/Views/CSSStyleDetailsSidebarPanel.css:
3488         (body.mac-platform.legacy .sidebar > .panel.details.css-style > .content): Deleted.
3489         * UserInterface/Views/ContentBrowser.js:
3490         (WebInspector.ContentBrowser):
3491         * UserInterface/Views/ControlToolbarItem.css:
3492         (body.mac-platform.legacy .toolbar .item.control): Deleted.
3493         (body.mac-platform.legacy .toolbar .item.control:hover): Deleted.
3494         * UserInterface/Views/DOMTreeContentView.js:
3495         (WebInspector.DOMTreeContentView):
3496         * UserInterface/Views/DOMTreeOutline.css:
3497         (body.mac-platform.legacy .dom-tree-outline li.hovered:not(.selected) .selection): Deleted.
3498         (body.mac-platform.legacy .dom-tree-outline li.elements-drag-over .selection): Deleted.
3499         (body.mac-platform.legacy .dom-tree-outline:focus li.selected .selection): Deleted.
3500         * UserInterface/Views/DashboardContainerView.css:
3501         (body.mac-platform.legacy .toolbar .dashboard-container): Deleted.
3502         (body.mac-platform.legacy.window-inactive .toolbar .dashboard-container): Deleted.
3503         (body.mac-platform.legacy.window-inactive .toolbar .dashboard): Deleted.
3504         (body.mac-platform.legacy .dashboard-container .advance-arrow): Deleted.
3505         * UserInterface/Views/DataGrid.css:
3506         (body.mac-platform.legacy .data-grid:focus tr.selected td:not(:last-child)): Deleted.
3507         (body.mac-platform.legacy .data-grid:focus tr.selected): Deleted.
3508         * UserInterface/Views/DataGrid.js:
3509         (WebInspector.DataGrid.prototype.get _generateSortIndicatorImagesIfNeeded):
3510         * UserInterface/Views/DatabaseTableContentView.js:
3511         (WebInspector.DatabaseTableContentView):
3512         * UserInterface/Views/DebuggerDashboardView.js:
3513         (WebInspector.DebuggerDashboardView):
3514         * UserInterface/Views/DebuggerSidebarPanel.css:
3515         (body.mac-platform.legacy .sidebar > .panel.navigation.debugger > .content): Deleted.
3516         * UserInterface/Views/DebuggerSidebarPanel.js:
3517         * UserInterface/Views/DefaultDashboardView.css:
3518         (body.mac-platform.legacy .toolbar .dashboard.default > .item): Deleted.
3519         (body.mac-platform.legacy .toolbar .dashboard.default > .resourcesCount > img): Deleted.
3520         (body.mac-platform.legacy .toolbar .dashboard.default > .logs > img): Deleted.
3521         (body.mac-platform.legacy .toolbar .dashboard.default > .errors > img): Deleted.
3522         (body.mac-platform.legacy .toolbar .dashboard.default > .errors.enabled > img): Deleted.
3523         (body.mac-platform.legacy .toolbar .dashboard.default > .issues > img): Deleted.
3524         (body.mac-platform.legacy .toolbar .dashboard.default > .issues.enabled > img): Deleted.
3525         * UserInterface/Views/DetailsSection.css:
3526         (body.mac-platform.legacy .details-section): Deleted.
3527         (body.mac-platform.legacy .details-section .details-section): Deleted.
3528         (body.mac-platform.legacy .details-section .details-section:first-child): Deleted.
3529         (body.mac-platform.legacy .details-section > .header): Deleted.
3530         (body.mac-platform.legacy .details-section .details-section > .header): Deleted.
3531         (body.mac-platform.legacy .details-section .details-section.collapsed > .header): Deleted.
3532         (body.mac-platform.legacy .details-section:not(.collapsed) .data-grid.inline): Deleted.
3533         (body.mac-platform.legacy .details-section.computed-style-properties:not(.collapsed) > .header): Deleted.
3534         (body.mac-platform.legacy .details-section > .content > .group): Deleted.
3535         (body.mac-platform.legacy .details-section > .content > .group:nth-child(even)): Deleted.
3536         (body.mac-platform.legacy .details-section > .content > .group:matches(:nth-child(even), :last-child) > .row.simple:last-child > *): Deleted.
3537         (body.mac-platform.legacy .details-section > .content > .group > .row:matches(.empty, .text)): Deleted.
3538         * UserInterface/Views/DividerNavigationItem.css:
3539         (.navigation-bar .item.divider):
3540         (body.mac-platform.legacy .navigation-bar .item.divider): Deleted.
3541         * UserInterface/Views/FilterBar.css:
3542         (.filter-bar > input[type="search"]::-webkit-search-decoration):
3543         (body.mac-platform.legacy .filter-bar): Deleted.
3544         (body.mac-platform.legacy .filter-bar > input[type="search"]): Deleted.
3545         (body.mac-platform.legacy .filter-bar > input[type="search"]::-webkit-search-decoration): Deleted.
3546         * UserInterface/Views/FindBanner.css:
3547         (body.mac-platform.legacy .find-banner > input[type="search"]): Deleted.
3548         (body.mac-platform.legacy .find-banner > button > .glyph): Deleted.
3549         (body.mac-platform.legacy .find-banner > button.segmented.left > .glyph): Deleted.
3550         (body.mac-platform.legacy .find-banner > button.segmented.right > .glyph): Deleted.
3551         (body.mac-platform.legacy .find-banner > button.segmented): Deleted.
3552         * UserInterface/Views/FindBanner.js:
3553         (WebInspector.FindBanner.prototype._generateButtonsGlyphsIfNeeded):
3554         (WebInspector.FindBanner):
3555         * UserInterface/Views/FolderIcon.css:
3556         (.folder-icon .icon):
3557         (body.mac-platform.legacy .folder-icon .icon): Deleted.
3558         * UserInterface/Views/HierarchicalPathComponent.css:
3559         (body.mac-platform.legacy .hierarchical-path-component > .selector-arrows): Deleted.
3560         * UserInterface/Views/IndexedDatabaseObjectStoreContentView.js:
3561         (WebInspector.IndexedDatabaseObjectStoreContentView):
3562         * UserInterface/Views/LayerTreeDetailsSidebarPanel.css:
3563         (body.mac-platform.legacy .sidebar > .panel.details.layer-tree > .content): Deleted.
3564         (body.mac-platform.legacy .panel.details.layer-tree .bottom-bar): Deleted.
3565         (body.mac-platform.legacy .panel.details.layer-tree .bottom-bar > div): Deleted.
3566         (body.mac-platform.legacy .layer-tree-popover): Deleted.
3567         * UserInterface/Views/LogContentView.css:
3568         (body.mac-platform.legacy .search-bar.log-search-bar > input[type="search"]): Deleted.
3569         * UserInterface/Views/LogContentView.js:
3570         (WebInspector.LogContentView):
3571         * UserInterface/Views/Main.css:
3572         (body.mac-platform.legacy:not(.docked)): Deleted.
3573         (body.docked.bottom.mac-platform.legacy): Deleted.
3574         (body.docked.right.mac-platform.legacy): Deleted.
3575         (body.mac-platform.legacy #split-content-browser > .navigation-bar): Deleted.
3576         * UserInterface/Views/NavigationBar.css:
3577         (.navigation-bar .item):
3578         (body.mac-platform.legacy .navigation-bar): Deleted.
3579         (body.mac-platform.legacy .navigation-bar .item): Deleted.
3580         * UserInterface/Views/NavigationSidebarPanel.css:
3581         (body.mac-platform.legacy .sidebar > .panel.navigation > .content): Deleted.
3582         (body.mac-platform.legacy .sidebar > .panel.navigation > .overflow-shadow): Deleted.
3583         (body.mac-platform.legacy .sidebar > .panel.navigation > .overflow-shadow.top): Deleted.
3584         (body.mac-platform.legacy .sidebar > .panel.navigation > .empty-content-placeholder): Deleted.
3585         (body.mac-platform.legacy .navigation-sidebar-panel-content-tree-outline .item.selected): Deleted.
3586         (body.mac-platform.legacy .navigation-sidebar-panel-content-tree-outline:focus .item.selected): Deleted.
3587         (body.mac-platform.legacy.window-inactive .navigation-sidebar-panel-content-tree-outline .item.selected): Deleted.
3588         * UserInterface/Views/NavigationSidebarPanel.js:
3589         (WebInspector.NavigationSidebarPanel.prototype._updateContentOverflowShadowVisibility):
3590         (WebInspector.NavigationSidebarPanel.prototype._generateDisclosureTrianglesIfNeeded):
3591         * UserInterface/Views/Popover.js:
3592         * UserInterface/Views/ProbeDetailsSidebarPanel.css:
3593         (body.mac-platform.legacy .details-section.probe-set .options > .probe-clear-samples): Deleted.
3594         (body.mac-platform.legacy .details-section.probe-set .options > .probe-remove): Deleted.
3595         (body.mac-platform.legacy .details-section.probe-set .options > .probe-add): Deleted.
3596         * UserInterface/Views/QuickConsole.css:
3597         (body.mac-platform.legacy .quick-console): Deleted.
3598         * UserInterface/Views/RadioButtonNavigationItem.css:
3599         (.navigation-bar .item.radio.button.text-only.selected:active):
3600         (body.mac-platform.legacy .navigation-bar .item.radio.button.text-only:hover): Deleted.
3601         (body.mac-platform.legacy .navigation-bar .item.radio.button.text-only.selected): Deleted.
3602         (body.mac-platform.legacy .navigation-bar .item.radio.button.text-only.selected:active): Deleted.
3603         * UserInterface/Views/RulesStyleDetailsPanel.css:
3604         (body.mac-platform.legacy .sidebar > .panel.details.css-style .rules .label + .style-declaration-section): Deleted.
3605         (body.mac-platform.legacy .sidebar > .panel.details.css-style .rules .new-rule): Deleted.
3606         (body.mac-platform.legacy .sidebar > .panel.details.css-style .rules .new-rule + .style-declaration-section): Deleted.
3607         (body.mac-platform.legacy .sidebar > .panel.details.css-style .rules .new-rule img): Deleted.
3608         * UserInterface/Views/ScopeBar.css:
3609         (.scope-bar > li.selected:active):
3610         (body.mac-platform.legacy .scope-bar > li): Deleted.
3611         (body.mac-platform.legacy .scope-bar > li:hover): Deleted.
3612         (body.mac-platform.legacy .scope-bar > li.selected): Deleted.
3613         (body.mac-platform.legacy .scope-bar > li:active): Deleted.
3614         (body.mac-platform.legacy .scope-bar > li.selected:active): Deleted.
3615         * UserInterface/Views/ScriptContentView.js:
3616         (WebInspector.ScriptContentView):
3617         * UserInterface/Views/SearchBar.css:
3618         (body.mac-platform.legacy .search-bar > input[type="search"]): Deleted.
3619         * UserInterface/Views/SearchSidebarPanel.css:
3620         (.sidebar > .panel.navigation.search > .search-bar > input[type="search"]):
3621         (body.mac-platform.legacy .sidebar > .panel.navigation.search > :matches(.content, .empty-content-placeholder)): Deleted.
3622         (body.mac-platform.legacy .sidebar > .panel.navigation.search > .search-bar): Deleted.
3623         (body.mac-platform.legacy .sidebar > .panel.navigation.search > .search-bar > input[type="search"]): Deleted.
3624         * UserInterface/Views/Sidebar.css:
3625         (body.window-inactive .sidebar.right):
3626         (body.mac-platform.legacy .sidebar): Deleted.
3627         (body.mac-platform.legacy.window-inactive .sidebar): Deleted.
3628         (body.mac-platform.legacy .sidebar.right): Deleted.
3629         * UserInterface/Views/TextContentView.js:
3630         (WebInspector.TextContentView):
3631         * UserInterface/Views/TextResourceContentView.js:
3632         (WebInspector.TextResourceContentView):
3633         * UserInterface/Views/TimelineDataGrid.css:
3634         (body.mac-platform.legacy .data-grid.timeline > .navigation-bar-container > .navigation-bar): Deleted.
3635         * UserInterface/Views/TimelineIcons.css:
3636         (body.mac-platform.legacy .network-icon .icon): Deleted.
3637         (body.mac-platform.legacy .network-icon.large .icon): Deleted.
3638         (body.mac-platform.legacy .colors-icon .icon): Deleted.
3639         (body.mac-platform.legacy .colors-icon.large .icon): Deleted.
3640         * UserInterface/Views/TimelineRecordingContentView.js:
3641         (WebInspector.TimelineRecordingContentView):
3642         * UserInterface/Views/TimelineRuler.css:
3643         (body.mac-platform.legacy .timeline-ruler > .header): Deleted.
3644         (body.mac-platform.legacy .timeline-ruler > .selection-drag): Deleted.
3645         (body.mac-platform.legacy .timeline-ruler > .selection-handle): Deleted.
3646         * UserInterface/Views/TimelineSidebarPanel.css:
3647         (.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing > .content):
3648         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar): Deleted.
3649         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-glyph): Deleted.
3650         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-glyph.recording): Deleted.
3651         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-glyph:hover): Deleted.
3652         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-glyph.recording:hover): Deleted.
3653         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-glyph.forced): Deleted.
3654         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-glyph.recording.forced): Deleted.
3655         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-status): Deleted.
3656         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .title-bar): Deleted.
3657         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .title-bar.timelines): Deleted.
3658         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .title-bar.timeline-events): Deleted.
3659         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .timelines-content): Deleted.
3660         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .timelines-content .close-button): Deleted.
3661         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .timelines-content li.item.selected + li.item): Deleted.
3662         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .timelines-content :focus li.item.selected + li.item): Deleted.
3663         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > :matches(.content, .empty-content-placeholder)): Deleted.
3664         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .content .item > .status > .status-button): Deleted.
3665         * UserInterface/Views/TimelineSidebarPanel.js:
3666         (WebInspector.TimelineSidebarPanel):
3667         * UserInterface/Views/Toolbar.css:
3668         (body.mac-platform:not(.docked) .toolbar):
3669         (body.mac-platform:not(.legacy, .docked) .toolbar): Deleted.
3670         (body.mac-platform.legacy .toolbar): Deleted.
3671         (body.mac-platform.legacy.docked .toolbar): Deleted.
3672         (body.mac-platform.legacy:not(.docked) .toolbar .item.button > .label): Deleted.
3673         (body.mac-platform.legacy.window-inactive .toolbar): Deleted.
3674         * UserInterface/Views/TreeElementStatusButton.css:
3675         (body.mac-platform.legacy .item > .status > .status-button > svg .filled): Deleted.
3676         (body.mac-platform.legacy .item > .status > .status-button > svg .stroked): Deleted.
3677
3678 2015-04-29  Andres Gomez  <agomez@igalia.com>
3679
3680         [GTK] Web Inspector: Optimize SVG images
3681         https://bugs.webkit.org/show_bug.cgi?id=143476
3682
3683         SVG images optimized with a combination of sed replacements and
3684         the usage of the scour tool (http://www.codedread.com/scour/).
3685
3686         Also, modified the spelling of the license word to use the US one
3687         in the copyright files.
3688
3689         Reviewed by Martin Robinson.
3690
3691         * UserInterface/Images/gtk/BackArrow.svg:
3692         * UserInterface/Images/gtk/BottomUpTree.svg:
3693         * UserInterface/Images/gtk/BreakpointActionAdd.svg:
3694         * UserInterface/Images/gtk/BreakpointActionRemove.svg:
3695         * UserInterface/Images/gtk/BreakpointButton.svg:
3696         * UserInterface/Images/gtk/BreakpointInactiveButton.svg:
3697         * UserInterface/Images/gtk/Breakpoints.svg:
3698         * UserInterface/Images/gtk/COPYING:
3699         * UserInterface/Images/gtk/COPYING_CCBYSA3:
3700         * UserInterface/Images/gtk/Checkers.svg:
3701         * UserInterface/Images/gtk/Circle.svg:
3702         * UserInterface/Images/gtk/Close.svg:
3703         * UserInterface/Images/gtk/CloseLarge.svg:
3704         * UserInterface/Images/gtk/CloseWhite.svg:
3705         * UserInterface/Images/gtk/ContentFlow.svg:
3706         * UserInterface/Images/gtk/Crosshair.svg:
3707         * UserInterface/Images/gtk/DOMCharacterData.svg:
3708         * UserInterface/Images/gtk/DOMComment.svg:
3709         * UserInterface/Images/gtk/DOMDocument.svg:
3710         * UserInterface/Images/gtk/DOMDocumentType.svg:
3711         * UserInterface/Images/gtk/DOMElement.svg:
3712         * UserInterface/Images/gtk/DOMNode.svg:
3713         * UserInterface/Images/gtk/DOMTextNode.svg:
3714         * UserInterface/Images/gtk/DOMTree.svg:
3715         * UserInterface/Images/gtk/DisclosureTriangleSmallClosed.svg:
3716         * UserInterface/Images/gtk/DisclosureTriangleSmallOpen.svg:
3717         * UserInterface/Images/gtk/DisclosureTriangleTinyClosed.svg:
3718         * UserInterface/Images/gtk/DisclosureTriangleTinyOpen.svg:
3719         * UserInterface/Images/gtk/DockBottom.svg:
3720         * UserInterface/Images/gtk/DockRight.svg:
3721         * UserInterface/Images/gtk/DownloadArrow.svg:
3722         * UserInterface/Images/gtk/Error.svg:
3723         * UserInterface/Images/gtk/Errors.svg:
3724         * UserInterface/Images/gtk/ErrorsEnabled.svg:
3725         * UserInterface/Images/gtk/EventListener.svg:
3726         * UserInterface/Images/gtk/Exception.svg:
3727         * UserInterface/Images/gtk/Eye.svg:
3728         * UserInterface/Images/gtk/FilterFieldGlyph.svg:
3729         * UserInterface/Images/gtk/ForwardArrow.svg:
3730         * UserInterface/Images/gtk/Function.svg:
3731         * UserInterface/Images/gtk/GoToArrow.svg:
3732         * UserInterface/Images/gtk/HierarchicalNavigationItemChevron.svg:
3733         * UserInterface/Images/gtk/IndeterminateProgressSpinner1.svg:
3734         * UserInterface/Images/gtk/IndeterminateProgressSpinner10.svg:
3735         * UserInterface/Images/gtk/IndeterminateProgressSpinner11.svg:
3736         * UserInterface/Images/gtk/IndeterminateProgressSpinner12.svg:
3737         * UserInterface/Images/gtk/IndeterminateProgressSpinner2.svg:
3738         * UserInterface/Images/gtk/IndeterminateProgressSpinner3.svg:
3739         * UserInterface/Images/gtk/IndeterminateProgressSpinner4.svg:
3740         * UserInterface/Images/gtk/IndeterminateProgressSpinner5.svg:
3741         * UserInterface/Images/gtk/IndeterminateProgressSpinner6.svg:
3742         * UserInterface/Images/gtk/IndeterminateProgressSpinner7.svg:
3743         * UserInterface/Images/gtk/IndeterminateProgressSpinner8.svg:
3744         * UserInterface/Images/gtk/IndeterminateProgressSpinner9.svg:
3745         * UserInterface/Images/gtk/Issues.svg:
3746         * UserInterface/Images/gtk/IssuesEnabled.svg:
3747         * UserInterface/Images/gtk/LayerBorders.svg:
3748         * UserInterface/Images/gtk/Locked.svg:
3749         * UserInterface/Images/gtk/Logs.svg:
3750         * UserInterface/Images/gtk/Native.svg:
3751         * UserInterface/Images/gtk/NavigationItemAngleBrackets.svg:
3752         * UserInterface/Images/gtk/NavigationItemBrushAndRuler.svg:
3753         * UserInterface/Images/gtk/NavigationItemBug.svg:
3754         * UserInterface/Images/gtk/NavigationItemCurleyBraces.svg:
3755         * UserInterface/Images/gtk/NavigationItemFile.svg:
3756         * UserInterface/Images/gtk/NavigationItemLayers.svg:
3757         * UserInterface/Images/gtk/NavigationItemLog.svg:
3758         * UserInterface/Images/gtk/NavigationItemProbes.svg:
3759         * UserInterface/Images/gtk/NavigationItemStopwatch.svg:
3760         * UserInterface/Images/gtk/NavigationItemStorage.svg:
3761         * UserInterface/Images/gtk/NavigationItemTrash.svg:
3762         * UserInterface/Images/gtk/NavigationItemTypes.svg:
3763         * UserInterface/Images/gtk/NavigationItemVariable.svg:
3764         * UserInterface/Images/gtk/PaintFlashing.svg:
3765         * UserInterface/Images