Unprefix -webkit-font-feature-settings
[WebKit-https.git] / Source / WebInspectorUI / ChangeLog
1 2015-10-05  Myles C. Maxfield  <mmaxfield@apple.com>
2
3         Unprefix -webkit-font-feature-settings
4         https://bugs.webkit.org/show_bug.cgi?id=149722
5
6         Reviewed by Sam Weinig.
7
8         * UserInterface/Models/CSSKeywordCompletions.js:
9
10 2015-10-04  Nikita Vasilyev  <nvasilyev@apple.com>
11
12         Web Inspector: Wrong column numbers in error object views
13         https://bugs.webkit.org/show_bug.cgi?id=149795
14
15         Convert columnNumber and lineNumber properties from strings to numbers
16         to prevent accidental string concatenations.
17
18         Reviewed by Timothy Hatcher.
19
20         * UserInterface/Models/StackTrace.js:
21         (WebInspector.StackTrace._parseStackTrace):
22
23 2015-10-02  Matt Baker  <mattbaker@apple.com>
24
25         Web Inspector: Add breakpoint option to ignore n times before stopping
26         https://bugs.webkit.org/show_bug.cgi?id=147664
27
28         Reviewed by Timothy Hatcher.
29
30         * Localizations/en.lproj/localizedStrings.js:
31         New strings for breakpoint popover labels.
32
33         * UserInterface/Controllers/BreakpointPopoverController.js:
34         (WebInspector.BreakpointPopoverController.prototype._createPopoverContent):
35         Add ignoreCount UI to popover, if backend support exists. UI based on same
36         feature in Xcode's breakpoint editing dialog.
37         (WebInspector.BreakpointPopoverController.prototype._popoverIgnoreInputChanged):
38         User input sanity checks on numeric input.
39
40         * UserInterface/Controllers/DebuggerManager.js:
41         Listen for changes to breakpoint ignoreCount property.
42
43         * UserInterface/Models/Breakpoint.js:
44         (WebInspector.Breakpoint):
45         (WebInspector.Breakpoint.prototype.get ignoreCount):
46         (WebInspector.Breakpoint.prototype.set ignoreCount):
47         New property for ignoreCount.
48         (WebInspector.Breakpoint.prototype.get options):
49         Added ignoreCount to options object.
50         (WebInspector.Breakpoint.prototype.get info):
51         Added ignoreCount to info object.
52
53         * UserInterface/Views/BreakpointPopoverController.css:
54         (#edit-breakpoint-popover-ignore):
55         New styles for breakpoint popover.
56
57 2015-10-02  Matt Baker  <mattbaker@apple.com>
58
59         Web Inspector: Cleanup DebuggerManager, reduce `delete` and use Maps instead of objects
60         https://bugs.webkit.org/show_bug.cgi?id=149760
61
62         Reviewed by Joseph Pecoraro.
63
64         Replaced objects used as hashmaps with Map.
65
66         * UserInterface/Controllers/DebuggerManager.js:
67         (WebInspector.DebuggerManager.prototype.breakpointsForSourceCode):
68         (WebInspector.DebuggerManager.prototype.breakpointForIdentifier):
69         (WebInspector.DebuggerManager.prototype.scriptForIdentifier):
70         (WebInspector.DebuggerManager.prototype.scriptsForURL):
71         (WebInspector.DebuggerManager.prototype.get knownNonResourceScripts):
72         (WebInspector.DebuggerManager.prototype.removeBreakpoint):
73         (WebInspector.DebuggerManager.prototype.breakpointResolved):
74         (WebInspector.DebuggerManager.prototype.reset):
75         (WebInspector.DebuggerManager.prototype.scriptDidParse):
76         (WebInspector.DebuggerManager.prototype._sourceCodeLocationFromPayload):
77         (WebInspector.DebuggerManager.prototype._setBreakpoint.didSetBreakpoint):
78         (WebInspector.DebuggerManager.prototype._setBreakpoint):
79         (WebInspector.DebuggerManager.prototype._removeBreakpoint.didRemoveBreakpoint):
80         (WebInspector.DebuggerManager.prototype._removeBreakpoint):
81
82 2015-10-02  Devin Rousso  <dcrousso+webkit@gmail.com>
83
84         Web Inspector: Copying inline style text puts "undefined" in the pasteboard
85         https://bugs.webkit.org/show_bug.cgi?id=149155
86
87         Reviewed by Brian Burg.
88
89         CSSStyleDeclarations for inline styles do not have a owner CSSRule, which means
90         that they do not have a selector or media list. CSS strings must have a selector
91         and, for inline styles without an owner rule and selector, this was a problem.
92
93         * UserInterface/Models/CSSStyleDeclaration.js:
94         (WebInspector.CSSStyleDeclaration.prototype.get mediaList):
95         (WebInspector.CSSStyleDeclaration.prototype.get selectorText):
96         (WebInspector.CSSStyleDeclaration.prototype.generateCSSRuleString):
97         Added getters for the list of media queries and selector text with fallbacks
98         for CSSStyleDeclarations that do not have an owner CSSRule (inline styles).
99
100         * UserInterface/Test.html:
101         Added CSSMedia include for new inspector/css/generate-css-rule-string.html test.
102
103         * UserInterface/Views/VisualStyleSelectorTreeItem.js:
104         (WebInspector.VisualStyleSelectorTreeItem.prototype._handleContextMenuEvent):
105         Removed parameter that no longer exists.
106
107 2015-10-02  Joseph Pecoraro  <pecoraro@apple.com>
108
109         Unreviewed, rolling out r190520, some tests assert / crash.
110
111         * Localizations/en.lproj/localizedStrings.js:
112         * UserInterface/Base/Main.js:
113         (WebInspector.loaded): Deleted.
114         * UserInterface/Base/Utilities.js:
115         (value): Deleted.
116         * UserInterface/Controllers/HeapManager.js: Removed.
117         * UserInterface/Controllers/TimelineManager.js:
118         (WebInspector.TimelineManager): Deleted.
119         (WebInspector.TimelineManager.prototype._garbageCollected): Deleted.
120         * UserInterface/Images/TimelineRecordGarbageCollection.svg: Removed.
121         * UserInterface/Main.html:
122         * UserInterface/Models/GarbageCollection.js: Removed.
123         * UserInterface/Models/ScriptTimelineRecord.js:
124         (WebInspector.ScriptTimelineRecord.EventType.displayName):
125         (WebInspector.ScriptTimelineRecord.prototype.isGarbageCollection): Deleted.
126         * UserInterface/Protocol/HeapObserver.js: Removed.
127         * UserInterface/Test.html:
128         * UserInterface/Test/Test.js:
129         (WebInspector.loaded): Deleted.
130         * UserInterface/Views/ScriptTimelineDataGridNode.js:
131         (WebInspector.ScriptTimelineDataGridNode.prototype.get data):
132         (WebInspector.ScriptTimelineDataGridNode.prototype.createCellContent): Deleted.
133         (WebInspector.ScriptTimelineDataGridNode): Deleted.
134         * UserInterface/Views/ScriptTimelineOverviewGraph.js:
135         (WebInspector.ScriptTimelineOverviewGraph.prototype.updateLayout):
136         * UserInterface/Views/ScriptTimelineView.js:
137         (WebInspector.ScriptTimelineView.prototype._processPendingRecords):
138         * UserInterface/Views/SourceCodeTimelineTreeElement.js:
139         (WebInspector.SourceCodeTimelineTreeElement):
140         * UserInterface/Views/TimelineIcons.css:
141         (.garbage-collection-profile-record .icon): Deleted.
142         * UserInterface/Views/TimelineRecordBar.css:
143         (.timeline-record-bar.timeline-record-type-script.script-timeline-record-garbage-collected > .segment): Deleted.
144         * UserInterface/Views/TimelineRecordBar.js:
145         (WebInspector.TimelineRecordBar.createCombinedBars):
146         * UserInterface/Views/TimelineRecordTreeElement.js:
147         (WebInspector.TimelineRecordTreeElement):
148
149 2015-10-02  Devin Rousso  <dcrousso+webkit@gmail.com>
150
151         Web Inspector: Option-Click on a property name in the Computed view should jump to resource view
152         https://bugs.webkit.org/show_bug.cgi?id=149521
153
154         Reviewed by Timothy Hatcher.
155
156         * UserInterface/Models/DOMNodeStyles.js:
157         (WebInspector.DOMNodeStyles.prototype.effectivePropertyForName):
158         Now tries to search for a non-canonical property before falling back to
159         the canonical version.
160
161         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
162         (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded):
163         If the user option-clicks the goto arrow, it shows the source for the
164         property instead.
165
166         * UserInterface/Views/ComputedStyleDetailsPanel.js:
167         (WebInspector.ComputedStyleDetailsPanel.prototype.cssStyleDeclarationTextEditorShowProperty.delegateShowProperty):
168         (WebInspector.ComputedStyleDetailsPanel.prototype.cssStyleDeclarationTextEditorShowProperty):
169         Attempts to show the source of the given property. Will fallback to
170         highlighting the property in the rules panel.
171
172 2015-10-02  Joseph Pecoraro  <pecoraro@apple.com>
173
174         Web Inspector: Include Garbage Collection Event in Timeline
175         https://bugs.webkit.org/show_bug.cgi?id=142510
176
177         Reviewed by Geoffrey Garen.
178
179         * UserInterface/Base/Utilities.js:
180         (Array.prototype.parition):
181         Helper to partition an Array into two arrays.
182
183         * UserInterface/Main.html:
184         * Localizations/en.lproj/localizedStrings.js:
185         * UserInterface/Base/Main.js:
186         (WebInspector.loaded):
187         * UserInterface/Test.html:
188         * UserInterface/Test/Test.js:
189         (WebInspector.loaded):
190         * UserInterface/Protocol/HeapObserver.js:
191         (WebInspector.HeapObserver.prototype.garbageCollected):
192         (WebInspector.HeapObserver):
193         Create the new observer and manager.
194
195         * UserInterface/Models/GarbageCollection.js:
196         (WebInspector.GarbageCollection):
197         (WebInspector.GarbageCollection.fromPayload):
198         (WebInspector.GarbageCollection.prototype.get type):
199         (WebInspector.GarbageCollection.prototype.get startTime):
200         (WebInspector.GarbageCollection.prototype.get endTime):
201         (WebInspector.GarbageCollection.prototype.get duration):
202         Model object for Heap.GarbageCollection.
203
204         * UserInterface/Controllers/HeapManager.js:
205         (WebInspector.HeapManager):
206         (WebInspector.HeapManager.prototype.garbageCollected):
207         Dispatch events with.
208
209         * UserInterface/Controllers/TimelineManager.js:
210         (WebInspector.TimelineManager):
211         (WebInspector.TimelineManager.prototype._garbageCollected):
212         Include new GC Timeline Events as Script events.
213
214         * UserInterface/Views/ScriptTimelineOverviewGraph.js:
215         (WebInspector.ScriptTimelineOverviewGraph.prototype.updateLayout):
216         For the Script overview, make two sets of bars, one for Scripts and one for GCs.
217         The GCs bar will be on top of the the Scripts bar. This is particularly useful
218         since a GC can happen during script execution.
219
220         * UserInterface/Views/ScriptTimelineDataGridNode.js:
221         (WebInspector.ScriptTimelineDataGridNode.prototype.get data):
222         (WebInspector.ScriptTimelineDataGridNode.prototype.createCellContent):
223         (WebInspector.ScriptTimelineDataGridNode):
224         Give a NaN call count to top level Script DataGridNodes.
225         In the UI, display the empty placeholder for NaN call counts.
226
227         * UserInterface/Images/TimelineRecordGarbageCollection.svg: Added.
228         * UserInterface/Models/ScriptTimelineRecord.js:
229         (WebInspector.ScriptTimelineRecord.prototype.isGarbageCollection):
230         (WebInspector.ScriptTimelineRecord.EventType.displayName):
231         * UserInterface/Views/ScriptTimelineView.js:
232         (WebInspector.ScriptTimelineView.prototype._processPendingRecords):
233         * UserInterface/Views/SourceCodeTimelineTreeElement.js:
234         (WebInspector.SourceCodeTimelineTreeElement):
235         * UserInterface/Views/TimelineIcons.css:
236         (.garbage-collection-profile-record .icon):
237         * UserInterface/Views/TimelineRecordBar.css:
238         (.timeline-record-bar.timeline-record-type-script.script-timeline-record-garbage-collected > .segment):
239         UI for GC events.
240
241         * UserInterface/Views/TimelineRecordBar.js:
242         (WebInspector.TimelineRecordBar.createCombinedBars):
243         Simplify by storing start time into a variable.
244
245         * UserInterface/Views/TimelineRecordTreeElement.js:
246         (WebInspector.TimelineRecordTreeElement):
247         Icon for GC events.
248
249 2015-10-02  Nikita Vasilyev  <nvasilyev@apple.com>
250
251         Web Inspector: Fix indentation of console message parameters
252         https://bugs.webkit.org/show_bug.cgi?id=149740
253
254         Reviewed by Darin Adler.
255
256         * UserInterface/Views/ConsoleMessageView.css:
257         (.console-message .console-message-stack-trace-container > li):
258         (.console-message .console-message-extra-parameters-container > li::before):
259
260 2015-10-02  Andres Gomez  <agomez@igalia.com>
261
262         [GTK] Web Inspector: Add GTK+ icons for new plus icons in the style sidebar
263         https://bugs.webkit.org/show_bug.cgi?id=149227
264
265         Reviewed by Carlos Garcia Campos.
266
267         * UserInterface/Images/gtk/NewTabPlus.svg: Updated.
268         * UserInterface/Images/gtk/Plus13.svg: Copied from Source/WebInspectorUI/UserInterface/Images/gtk/Plus.svg.
269         * UserInterface/Images/gtk/Plus15.svg: Renamed from Source/WebInspectorUI/UserInterface/Images/gtk/Plus.svg.
270
271 2015-10-01  Joseph Pecoraro  <pecoraro@apple.com>
272
273         Web Inspector: Simplify filterableData processing
274         https://bugs.webkit.org/show_bug.cgi?id=149730
275
276         Reviewed by Timothy Hatcher.
277
278         * UserInterface/Views/BreakpointTreeElement.js:
279         (WebInspector.BreakpointTreeElement.prototype.get filterableData):
280         * UserInterface/Views/NavigationSidebarPanel.js:
281         (WebInspector.NavigationSidebarPanel.prototype.applyFiltersToTreeElement.matchTextFilter):
282         * UserInterface/Views/ResourceTreeElement.js:
283         (WebInspector.ResourceTreeElement.prototype.get filterableData):
284         * UserInterface/Views/ScriptTimelineView.js:
285         (WebInspector.ScriptTimelineView.prototype.matchTreeElementAgainstCustomFilters): Deleted.
286         * UserInterface/Views/SearchResultTreeElement.js:
287         (WebInspector.SearchResultTreeElement.prototype.get filterableData):
288         (WebInspector.SearchResultTreeElement):
289
290 2015-10-01  Joseph Pecoraro  <pecoraro@apple.com>
291
292         Web Inspector: Do not immediately create all ProfileNodeTreeElements when showing JavaScript and Events timeline
293         https://bugs.webkit.org/show_bug.cgi?id=149726
294
295         Reviewed by Timothy Hatcher.
296
297         * UserInterface/Views/NavigationSidebarPanel.js:
298         (WebInspector.NavigationSidebarPanel.prototype.shouldFilterPopulate):
299         (WebInspector.NavigationSidebarPanel.prototype._updateFilter):
300         (WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged):
301         We were populating during filtering if there were any custom filters.
302         However the TimelineSidebarPanel has custom filters (based on time and type)
303         but those don't need to trigger population. Delay population until it
304         would actually be needed (like a text search).
305
306         * UserInterface/Views/TimelineSidebarPanel.js:
307         (WebInspector.TimelineSidebarPanel.prototype.shouldFilterPopulate):
308         Do not populate on filter via this custom filters.
309
310 2015-10-01  Matt Baker  <mattbaker@apple.com>
311
312         Web Inspector: REGRESSION (r189567): Toolbar collapses when inspector at minimum height with console open
313         https://bugs.webkit.org/show_bug.cgi?id=149725
314
315         Reviewed by Timothy Hatcher.
316
317         CSS Flexible Box Layout Module Level 1 introduces a new `auto` initial value for the min-{width|height}
318         of flex box items, breaking some areas of the inspector UI. This is fixed by setting a min-height of
319         zero for the #main <div>.
320
321         * UserInterface/Views/Main.css:
322         (#main):
323
324 2015-10-01  Nikita Vasilyev  <nvasilyev@apple.com>
325
326         Web Inspector: Clip string previews
327         https://bugs.webkit.org/show_bug.cgi?id=149708
328
329         Only show first 140 characters in strings previews.
330
331         Reviewed by Joseph Pecoraro.
332
333         * UserInterface/Base/Utilities.js:
334         (String.prototype.truncate): Added.
335         A smart trancate function that doesn't split words.
336
337         * UserInterface/Views/ConsoleMessageView.js:
338         (WebInspector.ConsoleMessageView.prototype._shouldConsiderObjectLossless):
339         * UserInterface/Views/FormattedValue.js:
340         (WebInspector.FormattedValue.createElementForTypesAndValue):
341
342 2015-09-30  João Oliveira  <hello@jxs.pt>
343
344         Web Inspector: Adjust font size of Developer Tools using Command,+ or Command,-
345         https://bugs.webkit.org/show_bug.cgi?id=149590
346
347         Reviewed by Joseph Pecoraro.
348
349         Patch by João Oliveira and Brian Burg.
350
351         * UserInterface/Base/Main.js:
352         (WebInspector.contentLoaded): Add global keyboard shortcuts for zoom in and zoom out.
353
354 2015-10-01  Andres Gomez  <agomez@igalia.com>
355
356         [GTK] Web Inspector: Add GTK+ icons for the numerical input and slider based Visual editors for CSS properties
357         https://bugs.webkit.org/show_bug.cgi?id=147847
358
359         Reviewed by Carlos Garcia Campos.
360
361         * UserInterface/Images/gtk/VisualStylePropertyLinked.svg: Added.
362         * UserInterface/Images/gtk/VisualStylePropertyUnlinked.svg: Added.
363
364 2015-10-01  Andres Gomez  <agomez@igalia.com>
365
366         [GTK] Web Inspector: Add GTK+ icons for the different types of non-numerical Visual editors for CSS properties
367         https://bugs.webkit.org/show_bug.cgi?id=147846
368
369         Reviewed by Carlos Garcia Campos.
370
371         * UserInterface/Images/gtk/AUTHORS: Updated.
372         * UserInterface/Images/gtk/ClearBoth.svg: Added.
373         * UserInterface/Images/gtk/ClearLeft.svg: Added.
374         * UserInterface/Images/gtk/ClearRight.svg: Added.
375         * UserInterface/Images/gtk/CubicBezier.svg: Updated.
376         * UserInterface/Images/gtk/FloatLeft.svg: Added.
377         * UserInterface/Images/gtk/FloatRight.svg: Added.
378         * UserInterface/Images/gtk/FontStyleItalic.svg: Added.
379         * UserInterface/Images/gtk/FontStyleNormal.svg: Added.
380         * UserInterface/Images/gtk/FontVariantSmallCaps.svg: Added.
381         * UserInterface/Images/gtk/TextAlignCenter.svg: Added.
382         * UserInterface/Images/gtk/TextAlignJustify.svg: Added.
383         * UserInterface/Images/gtk/TextAlignLeft.svg: Added.
384         * UserInterface/Images/gtk/TextAlignRight.svg: Added.
385         * UserInterface/Images/gtk/TextDecorationLineThrough.svg: Added.
386         * UserInterface/Images/gtk/TextDecorationOverline.svg: Added.
387         * UserInterface/Images/gtk/TextDecorationUnderline.svg: Added.
388         * UserInterface/Images/gtk/TextTransformCapitalize.svg: Added.
389         * UserInterface/Images/gtk/TextTransformLowercase.svg: Added.
390         * UserInterface/Images/gtk/TextTransformUppercase.svg: Added.
391         * UserInterface/Images/gtk/VisualStyleNone.svg: Added.
392
393 2015-09-30  Joseph Pecoraro  <pecoraro@apple.com>
394
395         Web Inspector: Reduce `delete` in Timeline related classes
396         https://bugs.webkit.org/show_bug.cgi?id=149686
397
398         Reviewed by Timothy Hatcher.
399
400         * UserInterface/Controllers/TimelineManager.js:
401         (WebInspector.TimelineManager.prototype.capturingStopped):
402         * UserInterface/Views/TimelineDataGrid.js:
403         (WebInspector.TimelineDataGrid.prototype._refreshDirtyDataGridNodes):
404         (WebInspector.TimelineDataGrid.prototype._sort):
405         (WebInspector.TimelineDataGrid.prototype._updatePopoverForSelectedNode):
406         * UserInterface/Views/TimelineOverview.js:
407         (WebInspector.TimelineOverview.prototype.updateLayout):
408         (WebInspector.TimelineOverview.prototype._handleScrollEvent):
409         * UserInterface/Views/TreeOutlineDataGridSynchronizer.js:
410         (WebInspector.TreeOutlineDataGridSynchronizer.prototype._treeOutlineScrolled):
411         (WebInspector.TreeOutlineDataGridSynchronizer.prototype._dataGridScrolled):
412
413         * UserInterface/Views/ProbeSetDataGrid.js:
414         (WebInspector.ProbeSetDataGrid):
415         (WebInspector.ProbeSetDataGrid.prototype._teardownData):
416         Remove an unused member variable as well.
417
418 2015-09-30  Joseph Pecoraro  <pecoraro@apple.com>
419
420         Web Inspector: Thousands of timers fire after switching to JavaScript and Events timeline
421         https://bugs.webkit.org/show_bug.cgi?id=149682
422
423         Reviewed by Timothy Hatcher.
424
425         Setting the status element of a GeneralTreeElement was triggering a
426         TreeOutline.onchange event. For TreeOutlines with lots of tree elements
427         (JavaScript & Events with profile nodes) this could result in thousands
428         of onchange events that causes lots of unnecessary work and blocks
429         future timers (like scroll synchronization) from firing.
430
431         This change eliminates TreeOutline change events for tree element
432         changes that are not interesting.
433
434         * UserInterface/Views/GeneralTreeElement.js:
435         (WebInspector.GeneralTreeElement.prototype.set status): Deleted.
436         * UserInterface/Views/TreeOutline.js:
437         (WebInspector.TreeElement.prototype.set tooltip): Deleted.
438
439 2015-09-30  Joseph Pecoraro  <pecoraro@apple.com>
440
441         Web Inspector: Reduce `delete` in TreeElements and DataGridNodes
442         https://bugs.webkit.org/show_bug.cgi?id=149680
443
444         Reviewed by Timothy Hatcher.
445
446         * UserInterface/Views/BreakpointTreeElement.js:
447         (WebInspector.BreakpointTreeElement):
448         (WebInspector.BreakpointTreeElement.prototype._removeProbeSet):
449         * UserInterface/Views/DataGrid.js:
450         (WebInspector.DataGrid.prototype._editingCommitted.moveToNextCell):
451         (WebInspector.DataGrid.prototype._editingCommitted):
452         (WebInspector.DataGrid.prototype._editingCancelled):
453         (WebInspector.DataGrid.prototype.removeColumn):
454         (WebInspector.DataGridNode.prototype.refreshIfNeeded):
455         (WebInspector.DataGridNode.prototype.refresh):
456         (WebInspector.DataGridNode.prototype.expand):
457         (WebInspector.DataGridNode.prototype.restorePosition):
458         (WebInspector.DataGridNode):
459         * UserInterface/Views/GeneralTreeElement.js:
460         (WebInspector.GeneralTreeElement.prototype.ondetach):
461         * UserInterface/Views/ResourceTimelineDataGridNode.js:
462         (WebInspector.ResourceTimelineDataGridNode.prototype.refresh):
463         * UserInterface/Views/TreeOutline.js:
464         (WebInspector.TreeElement.prototype._fireDidChange):
465         (WebInspector.TreeElement.prototype.expand):
466
467 2015-09-30  Andres Gomez  <agomez@igalia.com>
468
469         [GTK] Web Inspector: Add GTK+ icon for the Bezier curve visual editor
470         https://bugs.webkit.org/show_bug.cgi?id=147681
471
472         Reviewed by Joseph Pecoraro.
473
474         * UserInterface/Images/gtk/CubicBezier.svg: Added.
475
476 2015-09-29  Joseph Pecoraro  <pecoraro@apple.com>
477
478         Web Inspector: Console completion suggestions should include properties on Object (hasOwnProperty, toString, etc)
479         https://bugs.webkit.org/show_bug.cgi?id=149649
480
481         Reviewed by Darin Adler.
482
483         * UserInterface/Base/Utilities.js:
484         (value):
485         Since keySets in this instance are often used as hash maps with the
486         `in` operator, create a blank object that won't have Object.prototype
487         functions that would be seen by `in`.
488
489         * UserInterface/Controllers/JavaScriptRuntimeCompletionProvider.js:
490         (WebInspector.JavaScriptRuntimeCompletionProvider.prototype.completionControllerCompletionsNeeded.receivedPropertyNames.compare):
491         Sort __defineGetter__ and __lookupGetter__ and friends last, since they
492         are rarely used properties.
493
494 2015-09-29  Joseph Pecoraro  <pecoraro@apple.com>
495
496         Web Inspector: Missing completions for Symbol objects, console.error warning
497         https://bugs.webkit.org/show_bug.cgi?id=149641
498
499         Reviewed by Darin Adler.
500
501         * UserInterface/Controllers/JavaScriptRuntimeCompletionProvider.js:
502         (WebInspector.JavaScriptRuntimeCompletionProvider.prototype.completionControllerCompletionsNeeded.getCompletions):
503         (WebInspector.JavaScriptRuntimeCompletionProvider.prototype.completionControllerCompletionsNeeded.evaluated):
504         Include completions for symbol types.
505
506 2015-09-28  Joseph Pecoraro  <pecoraro@apple.com>
507
508         Web Inspector: Hitting ESC while editing element tag name leaves element in bad state
509         https://bugs.webkit.org/show_bug.cgi?id=149506
510
511         Reviewed by Timothy Hatcher.
512
513         * UserInterface/Views/DOMTreeElement.js:
514         (WebInspector.DOMTreeElement.prototype._startEditingTagName.editingCancelled):
515         (WebInspector.DOMTreeElement.prototype._startEditingTagName):
516         When cancelling editing of a tag name, revert any changes we had
517         been making to the closing tag name.
518
519 2015-09-28  João Oliveira  <hello@jxs.pt>
520
521         Web Inspector: search shortcut in split console moves focus to search box, but doesn't show caret
522         https://bugs.webkit.org/show_bug.cgi?id=149223
523
524         Reviewed by Timothy Hatcher.
525
526         When pressing console find shortcut (CMD+F) SearchBar now checks if there's text on _searchInput
527         if so text is selected, if the textbox is empty, textbox gains focus.
528
529         * UserInterface/Views/SearchBar.js:
530         (WebInspector.SearchBar.prototype.focus):
531
532 2015-09-25  Joseph Pecoraro  <pecoraro@apple.com>
533
534         Web Inspector: Reloading the page causes the inspector tab to switch back to "Resources" tab
535         https://bugs.webkit.org/show_bug.cgi?id=148732
536
537         Reviewed by Darin Adler.
538
539         * UserInterface/Views/ResourceSidebarPanel.js:
540         (WebInspector.ResourceSidebarPanel.prototype._scriptsCleared):
541         Suppress selection of sibiling tree elements when removing extra folders.
542
543 2015-09-24  Ryosuke Niwa  <rniwa@webkit.org>
544
545         Ran sort-Xcode-project-file.
546
547         * WebInspectorUI.xcodeproj/project.pbxproj:
548
549 2015-09-23  Saam barati  <sbarati@apple.com>
550
551         Fix broken inspector tests.
552
553         Reviewed by Joseph Pecoraro and Brian Burg.
554
555         We can't redeclare a "let" variable and "var" variable using the same
556         identifier at the top-level of a function.
557
558         * UserInterface/Test/InspectorProtocol.js:
559         (InspectorProtocol.sendCommand):
560         (InspectorProtocol.addEventListener):
561         (InspectorProtocol.dispatchMessageFromBackend):
562
563 2015-09-23  Saam barati  <sbarati@apple.com>
564
565         Web Inspector: Don't use bind() when creating internal AST, instead, pass in "this" parameter to map()
566         https://bugs.webkit.org/show_bug.cgi?id=149483
567
568         Reviewed by Joseph Pecoraro.
569
570         * UserInterface/Models/ScriptSyntaxTree.js:
571         (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):
572         (WebInspector.ScriptSyntaxTree):
573
574 2015-09-23  Saam barati  <sbarati@apple.com>
575
576         Web Inspector: Type bubbles missing for computed methods and methods on object literals
577         https://bugs.webkit.org/show_bug.cgi?id=148562
578
579         Reviewed by Joseph Pecoraro.
580
581         This patch makes sure that computed methods are working
582         for both classes and object literals. Also, methods now
583         work on object literals. This patch also cleans up the
584         "isGetterOrSetter" and "getterOrSetterRange" fields.
585         Basically, we used this as a way to ask the type profiler
586         for the return types of a function. Now, we just have
587         a field called "typeProfilingReturnDivot" that is set
588         on all functions so we don't need to conditionally ask
589         if it's a getter or setter.
590
591         * UserInterface/Controllers/TypeTokenAnnotator.js:
592         (WebInspector.TypeTokenAnnotator.prototype._insertTypeToken):
593         * UserInterface/Models/ScriptSyntaxTree.js:
594         (WebInspector.ScriptSyntaxTree.functionReturnDivot):
595         (WebInspector.ScriptSyntaxTree.prototype._recurseArray):
596         (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):
597         (WebInspector.ScriptSyntaxTree):
598
599 2015-09-22  Devin Rousso  <dcrousso+webkit@gmail.com>
600
601         Web Inspector: The right sidebar always opens up on breakpoint
602         https://bugs.webkit.org/show_bug.cgi?id=149261
603
604         Reviewed by Timothy Hatcher.
605
606         Whenever the debugger was paused, the sidebar was being forced to open.
607         This has been removed in favor of letting the user decide.
608
609         * UserInterface/Base/Main.js:
610         (WebInspector._debuggerDidPause):
611
612 2015-09-22  Saam barati  <sbarati@apple.com>
613
614         Web Inspector: [ES6] Improve Type Profiler Support for Arrow Functions
615         https://bugs.webkit.org/show_bug.cgi?id=143171
616
617         Reviewed by Joseph Pecoraro.
618
619         Esprima and JSC both support arrow functions. We just
620         need to support it in our AST and do the right things
621         to include support in the type profiler bits.
622
623         * UserInterface/Controllers/TypeTokenAnnotator.js:
624         (WebInspector.TypeTokenAnnotator.prototype._insertTypeToken):
625         (WebInspector.TypeTokenAnnotator.prototype._translateToOffsetAfterFunctionParameterList.isLineTerminator):
626         (WebInspector.TypeTokenAnnotator.prototype._translateToOffsetAfterFunctionParameterList):
627         * UserInterface/Models/ScriptSyntaxTree.js:
628         (WebInspector.ScriptSyntaxTree.prototype.containsNonEmptyReturnStatement.removeFunctionsFilter):
629         (WebInspector.ScriptSyntaxTree.prototype.containsNonEmptyReturnStatement):
630         (WebInspector.ScriptSyntaxTree.functionReturnDivot):
631         (WebInspector.ScriptSyntaxTree.prototype._recurse):
632         (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):
633         (WebInspector.ScriptSyntaxTree):
634
635 2015-09-22  Saam barati  <sbarati@apple.com>
636
637         Web Inspector: update Esprima to latest version
638         https://bugs.webkit.org/show_bug.cgi?id=148960
639
640         Reviewed by Joseph Pecoraro.
641
642         Esprima version 2.6 further supports ES6. We're
643         updating to it so we can support more ES6 features
644         in our script syntax tree.
645
646         * UserInterface/External/Esprima/LICENSE:
647         * UserInterface/External/Esprima/esprima.js:
648         * UserInterface/Models/ScriptSyntaxTree.js:
649         (WebInspector.ScriptSyntaxTree.prototype._gatherIdentifiersInDeclaration.gatherIdentifiers):
650         (WebInspector.ScriptSyntaxTree.prototype._gatherIdentifiersInDeclaration):
651         (WebInspector.ScriptSyntaxTree.prototype._recurse):
652         (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):
653         (WebInspector.ScriptSyntaxTree):
654
655 2015-09-21  Matt Baker  <mattbaker@apple.com>
656
657         Web Inspector: requestAnimationFrame continues to be called after stopping the timeline recording
658         https://bugs.webkit.org/show_bug.cgi?id=149390
659
660         Reviewed by Brian Burg.
661
662         * UserInterface/Views/TimelineRecordingContentView.js:
663         (WebInspector.TimelineRecordingContentView.prototype._update):
664         Stop calling requestAnimationFrame if this._updating is false and recording end time is NaN.
665
666 2015-09-17  Joseph Pecoraro  <pecoraro@apple.com>
667
668         Web Inspector: Simplify some functional callbacks
669         https://bugs.webkit.org/show_bug.cgi?id=149333
670
671         Reviewed by Brian Burg.
672
673         * UserInterface/Controllers/LogManager.js:
674         (WebInspector.LogManager.prototype.messageWasAdded):
675         * UserInterface/Models/Color.js:
676         (WebInspector.Color):
677         * UserInterface/Models/Geometry.js:
678         (WebInspector.CubicBezier.fromCoordinates):
679         * UserInterface/Models/ObjectPreview.js:
680         (WebInspector.ObjectPreview.fromPayload):
681         * UserInterface/Models/TypeDescription.js:
682         (WebInspector.TypeDescription.fromPayload):
683         * UserInterface/Protocol/RemoteObject.js:
684         (WebInspector.RemoteObject.prototype.getCollectionEntries):
685         (WebInspector.RemoteObject.prototype.getCollectionEntries.): Deleted.
686         * UserInterface/Views/TextEditor.js:
687         (WebInspector.TextEditor.prototype.get markers):
688         (WebInspector.TextEditor.prototype.markersAtPosition):
689
690 2015-09-17  Joseph Pecoraro  <pecoraro@apple.com>
691
692         Web Inspector: Remove unused canClearBrowserCookies / canClearBrowserCache protocol methods
693         https://bugs.webkit.org/show_bug.cgi?id=149307
694
695         Reviewed by Brian Burg.
696
697         * UserInterface/Protocol/Legacy/7.0/InspectorBackendCommands.js:
698         * UserInterface/Protocol/Legacy/8.0/InspectorBackendCommands.js:
699         * UserInterface/Protocol/Legacy/9.0/InspectorBackendCommands.js:
700         * Versions/Inspector-iOS-7.0.json:
701         * Versions/Inspector-iOS-8.0.json:
702         * Versions/Inspector-iOS-9.0.json:
703         Retroactively remove the protocol methods as they were unused
704         in these earlier versions as well.
705
706 2015-09-17  Joseph Pecoraro  <pecoraro@apple.com>
707
708         REGRESSION: Web Inspector: Double clicking on an attribute second time doesn't work
709         https://bugs.webkit.org/show_bug.cgi?id=149259
710
711         Reviewed by Timothy Hatcher.
712
713         * UserInterface/Views/DOMTreeElement.js:
714         Be sure to clear the editing state when committed, even if the value did not change.
715
716 2015-09-17  Joseph Pecoraro  <pecoraro@apple.com>
717
718         Web Inspector: Make Find / Save keyboard shortcuts work better globally
719         https://bugs.webkit.org/show_bug.cgi?id=149198
720
721         Reviewed by Brian Burg.
722
723         Previously find/save keyboard shortcuts required the user have the
724         ContentView in the ContentBrowser focused. That means nothing would
725         happen if you clicked / focused in the Sidebars. This change considers
726         the keyboard shortcuts globally, like Copy.
727
728         * UserInterface/Base/Main.js:
729         (WebInspector.contentLoaded):
730         Add global find and save keyboard shortcuts.
731
732         (WebInspector._focusChanged):
733         It is often useful to have the currentFocusedElement know if it is
734         in a TextEditor or other CodeMirror editor. When editable the <textarea>
735         is selected and not updating focused element. 
736
737         (WebInspector._focusedContentBrowser):
738         (WebInspector._focusedContentView):
739         Provide helpers for getting a good approximation of the current focused
740         or visible content view that users would expect to be interacting with.
741         Since the focus event may not fire when clicking around to elements
742         like the <body>. Rather than make it explicitly focusable, check the
743         document.activeElement, and if it is body aim for the main content
744         browser instead of the currentFocusedElement which may be stale.
745         Likewise, if the QuickConsole is focused and the split console is
746         showing, treat it like the split browser is focused.
747
748         (WebInspector._focusedOrVisibleContentBrowser):
749         (WebInspector._focusedOrVisibleContentView):
750         If nothing is focused, default to the main content browser.
751
752         (WebInspector._find):
753         Pass on to the ContentView which typically handles Find
754         by showing its find banner.
755
756         (WebInspector._save):
757         (WebInspector._saveAs):
758         Check and save the current ContentView if supported.
759
760         * UserInterface/Views/LogContentView.js:
761         (WebInspector.LogContentView.prototype.get supportsSearch):
762         (WebInspector.LogContentView.prototype.handleFindEvent):
763         Add custom find handling for LogContentView from the routed through the
764         BrowserController instead of special event handlers in the controller.
765
766         (WebInspector.LogContentView.prototype.get supportsSave):
767         (WebInspector.LogContentView.prototype.save): Deleted.
768         (WebInspector.LogContentView.prototype.saveAs): Deleted.
769         * UserInterface/Controllers/JavaScriptLogViewController.js:
770         (WebInspector.JavaScriptLogViewController): Deleted.
771         (WebInspector.JavaScriptLogViewController.prototype._handleFindShortcut): Deleted.
772         (WebInspector.JavaScriptLogViewController.prototype._save): Deleted.
773         (WebInspector.JavaScriptLogViewController.prototype._saveAs): Deleted.
774         Special save handling is no longer needed in the log view controller.
775
776         * UserInterface/Views/ContentBrowser.js:
777         (WebInspector.ContentBrowser.prototype.handleFindEvent):
778         (WebInspector.ContentBrowser): Deleted.
779         (WebInspector.ContentBrowser.prototype._save): Deleted.
780         (WebInspector.ContentBrowser.prototype._saveAs): Deleted.
781         (WebInspector.ContentBrowser.prototype._showFindBanner): Deleted.
782         Save functionality moved globally, find functionality moved to a
783         public method called like copy event handling.
784
785 2015-09-17  Joseph Pecoraro  <pecoraro@apple.com>
786
787         Web Inspector: Inactive window may cause many layers to be created due to Dashboard opacity
788         https://bugs.webkit.org/show_bug.cgi?id=149274
789
790         Reviewed by Brian Burg.
791
792         The dashboard container gets an opacity when the window is inactive. Combined
793         with the animating debugger continue button this caused a cascade of slightly
794         overlapping content causing a cascade of a lot of small layers. The simple
795         approach taken here is to stop the slight pulse animation when the window
796         is inactive.
797
798         * UserInterface/Views/DebuggerDashboardView.css:
799         (body.window-inactive .dashboard.debugger .navigation-bar .item.button > .glyph):
800
801 2015-09-17  Devin Rousso  <dcrousso+webkit@gmail.com>
802
803         REGRESSION(r188427): Web Inspector: Extra whitespace left behind in styles sidebar after clicking in and out
804         https://bugs.webkit.org/show_bug.cgi?id=149197
805
806         Reviewed by Timothy Hatcher.
807
808         In r188427, logic was added to preserve the leading whitespace of styles in a CSS file.
809         An unfortunate side effect of this was that extra newlines in between CSS properties
810         were treated as valid and left where they were.  This is undesired behaviour and often
811         clutters the styles sidebar.  These changes remove the extra newlines.
812
813         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
814         (WebInspector.CSSStyleDeclarationTextEditor.prototype._formattedContent):
815
816 2015-09-16  Joseph Pecoraro  <pecoraro@apple.com>
817
818         Web Inspector: Reduce Annotation Update Frequency
819         https://bugs.webkit.org/show_bug.cgi?id=149250
820
821         Reviewed by Saam Barati.
822
823         * UserInterface/Controllers/BasicBlockAnnotator.js:
824         (WebInspector.BasicBlockAnnotator.prototype._annotateBasicBlockExecutionRanges):
825         * UserInterface/Controllers/TypeTokenAnnotator.js:
826         (WebInspector.BasicBlockAnnotator.prototype.insertAnnotations):
827         Set a lower bound of 500ms on update frequency for both annotators.
828
829 2015-09-16  Joseph Pecoraro  <pecoraro@apple.com>
830
831         Web Inspector: Fix common typo "supress" => "suppress"
832         https://bugs.webkit.org/show_bug.cgi?id=149199
833
834         Reviewed by Gyuyoung Kim.
835
836         * UserInterface/Views/DataGrid.js:
837         (WebInspector.DataGridNode.prototype.select):
838         (WebInspector.DataGridNode.prototype.deselect):
839         * UserInterface/Views/SearchBar.js:
840         (WebInspector.SearchBar):
841
842 2015-09-16  Joseph Pecoraro  <pecoraro@apple.com>
843
844         Web Inspector: Turn off line wrapping in resource text editors
845         https://bugs.webkit.org/show_bug.cgi?id=149121
846
847         Reviewed by Darin Adler.
848
849         * UserInterface/Views/TextEditor.js:
850         (WebInspector.TextEditor):
851
852 2015-09-15  Devin Rousso  <dcrousso+webkit@gmail.com>
853
854         Web Inspector: Picking unchanged for font-size does not reset back to the unchanged value
855         https://bugs.webkit.org/show_bug.cgi?id=148351
856
857         Reviewed by Brian Burg.
858
859         Visual number editors now save any new values in the special placeholder element
860         to display it whenever the "Unchanged" option is selected by the user.
861
862         * UserInterface/Views/VisualStyleNumberInputBox.js:
863         (WebInspector.VisualStyleNumberInputBox.prototype.set value):
864         (WebInspector.VisualStyleNumberInputBox.prototype.set units):
865         (WebInspector.VisualStyleNumberInputBox.prototype._setNumberInputIsEditable):
866         (WebInspector.VisualStyleNumberInputBox.prototype._keywordChanged):
867         (WebInspector.VisualStyleNumberInputBox.prototype._valueNumberInputKeyDown.adjustValue):
868         (WebInspector.VisualStyleNumberInputBox.prototype._valueNumberInputKeyDown):
869
870 2015-09-15  Brian Burg  <bburg@apple.com>
871
872         Web Inspector: command-click in NewTabContentView should open new tab without switching to it
873         https://bugs.webkit.org/show_bug.cgi?id=149173
874
875         Reviewed by Joseph Pecoraro.
876
877         To allow a user to quickly restore tabs, it should be possible to command-click
878         all the tabs that are desired without going back through the [+] tab button.
879
880         * UserInterface/Base/Main.js:
881         (WebInspector.createNewTabWithType): Renamed.
882
883             Use an options object and split creating the tab from deleting the
884             replaced tab and showing the new tab. Add better error checking.
885
886         (WebInspector.createNewTab): Deleted.
887         * UserInterface/Views/NewTabContentView.js:
888         (WebInspector.NewTabContentView):
889         (WebInspector.NewTabContentView.prototype._createNewTabWithType): Renamed.
890
891             If the meta key is pressed, don't switch to the new tab or remove this view
892             unless there are no more tabs that can be created beyond the current one.
893
894         (WebInspector.NewTabContentView.prototype._allowableTabTypes): Added.
895         (WebInspector.NewTabContentView.prototype._createNewTab): Deleted.
896
897 2015-09-15  Joseph Pecoraro  <pecoraro@apple.com>
898
899         Web Inspector: Watch Expressions uncaught exceptions on page reload
900         https://bugs.webkit.org/show_bug.cgi?id=149150
901
902         Reviewed by Brian Burg.
903
904         Instead of waiting 50ms to Resume, when the page navigates
905         Resume immediately. This ensures nobody is using a stale
906         activeCallFrame after the navigation.
907
908         Also clean up the manager a bit by removing some deletes.
909
910         * UserInterface/Controllers/DebuggerManager.js:
911         (WebInspector.DebuggerManager.restoreBreakpointsSoon):
912         (WebInspector.DebuggerManager.prototype.reset):
913         (WebInspector.DebuggerManager.prototype.debuggerDidPause):
914         (WebInspector.DebuggerManager.prototype.debuggerDidResume):
915         (WebInspector.DebuggerManager.prototype._mainResourceDidChange):
916         (WebInspector.DebuggerManager.prototype._didResumeInternal):
917         (WebInspector.DebuggerManager.prototype._associateBreakpointsWithSourceCode):
918         (WebInspector.DebuggerManager.prototype.debuggerDidResume.delayedWork): Deleted.
919
920 2015-09-15  Joseph Pecoraro  <pecoraro@apple.com>
921
922         Web Inspector: Closing the final inspector tab should be allowed
923         https://bugs.webkit.org/show_bug.cgi?id=149130
924
925         Reviewed by Brian Burg.
926
927         Previously we did not allow closing the last inspector tab. Now, we
928         will allow closing all inspector tabs, and when the last is closed,
929         present an unclosable New Tab tab, which would then be used to create
930         a new tab.
931
932         * UserInterface/Base/Main.js:
933         (WebInspector.contentLoaded):
934         If we have no tabs to restore, show the New Tab tab.
935
936         (WebInspector._openDefaultTab):
937         When the last tab is closed, the tab bar requests we open a default tab.
938         Open the New Tab tab.
939
940         (WebInspector.TabBar.prototype._handleClick):
941         Disallow closing the single default tab.
942
943         (WebInspector._newTabItemClicked):
944         (WebInspector.showNewTabTab):
945         Share logic for showing the New Tab tab.
946
947         * UserInterface/Views/NewTabContentView.js:
948         (WebInspector.NewTabContentView):
949         Mark the new tab's tab bar item as the "default" tab bar item. It gets
950         special behavior when it is the single normal tab (cannot be closed).
951
952         * UserInterface/Views/TabBar.css:
953         (body:not(.window-inactive) .tab-bar > .item:hover > .close):
954         (body:not(.window-inactive) .tab-bar.single-tab > .item.default-tab:hover > .close):
955         (.tab-bar.single-tab > .item.default-tab > .close):
956         (body:not(.window-inactive) .tab-bar:not(.single-tab) > .item:not(.hide-close-button):hover > .close): Deleted.
957         (.tab-bar > .item.hide-close-button > .close): Deleted.
958         Update styles to only disable the close button on the
959         "default-tab" when it is the "single-tab" open. Otherwise
960         always allow closing tabs.
961
962         * UserInterface/Views/TabBar.js:
963         (WebInspector.TabBar.prototype.removeTabBarItem):
964         (WebInspector.TabBar.prototype.hasNormalTab):
965         (WebInspector.TabBar.prototype._openDefaultTab):
966         When removing the last normal tab, send an event to open
967         the default tab.
968
969         * UserInterface/Views/TabBarItem.js:
970         (WebInspector.TabBarItem.prototype.get default):
971         (WebInspector.TabBarItem.prototype.get isDefaultTab):
972         (WebInspector.TabBarItem.prototype.set isDefaultTab):
973         (WebInspector.TabBarItem.prototype.get hideCloseButton): Deleted.
974         (WebInspector.TabBarItem.prototype.set hideCloseButton): Deleted.
975         Switch to marking a tab bar item as the default tab. This tab
976         will be allowed when it is the single remaining tab. Currently
977         the default tab is always the "New Tab" tab.
978
979 2015-09-15  Brian Burg  <bburg@apple.com>
980
981         Web Inspector: new tab content view should disallow split console
982         https://bugs.webkit.org/show_bug.cgi?id=149164
983
984         Reviewed by Joseph Pecoraro.
985
986         * UserInterface/Views/NewTabContentView.js:
987         (WebInspector.NewTabContentView.prototype.get supportsSplitContentBrowser):
988
989 2015-09-14  Brian Burg  <bburg@apple.com>
990
991         Web Inspector: tab bar stutters when moving mouse after closing tab
992         https://bugs.webkit.org/show_bug.cgi?id=149138
993
994         Reviewed by Joseph Pecoraro.
995
996         The tab bar lacked the 'static-layout' class between when the Promise microtask
997         ran and the beginning of the requestAnimationFrame. This caused a flash of
998         tabs that are way too wide.
999
1000         Re-add the static-layout class immediately after measuring the 'after' tab size.
1001         This code should probably just manually compute tab sizes since flexbox
1002         layout is quite slow and our measurement code here forces layout several times.
1003
1004         * UserInterface/Views/TabBar.js:
1005
1006 2015-09-14  Brian Burg  <bburg@apple.com>
1007
1008         Web Inspector: backend command promises are not rejected when a protocol error occurs
1009         https://bugs.webkit.org/show_bug.cgi?id=141403
1010
1011         Reviewed by Joseph Pecoraro.
1012
1013         Fix a few corner cases for how InspectorBackend delivers command failures.
1014
1015         * UserInterface/Protocol/InspectorBackend.js:
1016         (InspectorBackend.Command.prototype.deliverFailure): Added.
1017         (InspectorBackend.Command.prototype._invokeWithArguments):
1018
1019             If argument-checking fails, return a rejected promise or invoke the supplied callback
1020             on a zero-delay setTimeout to ensure that the reply is asynchronous.
1021
1022 2015-09-14  Brian Burg  <bburg@apple.com>
1023
1024         Web Inspector: middle-clicking a tab in the tab bar should close it
1025         https://bugs.webkit.org/show_bug.cgi?id=149135
1026
1027         Reviewed by Joseph Pecoraro.
1028
1029         This matches the behavior of the tab bar in Safari and other browsers.
1030
1031         * UserInterface/Views/TabBar.js:
1032         (WebInspector.TabBar.prototype._handleMouseDown):
1033         (WebInspector.TabBar.prototype._handleClick):
1034
1035 2015-09-14  Nikita Vasilyev  <nvasilyev@apple.com>
1036
1037         Web Inspector: Border under the styles filter field is clipped
1038         https://bugs.webkit.org/show_bug.cgi?id=149115
1039
1040         Reviewed by Darin Adler.
1041
1042         * UserInterface/Views/CSSStyleDetailsSidebarPanel.css:
1043         (.sidebar > .panel.details.css-style > .content + .options-container > .filter-bar):
1044
1045 2015-09-11  Nan Wang  <n_wang@apple.com>
1046
1047         AX: ARIA 1.1 @aria-current
1048         https://bugs.webkit.org/show_bug.cgi?id=146012
1049
1050         Reviewed by Chris Fleizach.
1051
1052         Added support for ARIA 1.1 aria-current.
1053
1054         * Localizations/en.lproj/localizedStrings.js:
1055         * UserInterface/Models/DOMNode.js:
1056         * UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
1057
1058 2015-09-10  Devin Rousso  <dcrousso+webkit@gmail.com>
1059
1060         Web Inspector: Styles sidebar says Media: all when it should say Media: screen
1061         https://bugs.webkit.org/show_bug.cgi?id=148436
1062
1063         Reviewed by Timothy Hatcher.
1064
1065         Removed filter that prevented "Media: screen" from being displayed.
1066
1067         * UserInterface/Views/RulesStyleDetailsPanel.js:
1068         (WebInspector.RulesStyleDetailsPanel.prototype.refresh.insertMediaOrInheritanceLabel):
1069         (WebInspector.RulesStyleDetailsPanel.prototype.refresh.filteredMediaList): Deleted.
1070
1071 2015-09-10  Matt Baker  <mattbaker@apple.com>
1072
1073         Web Inspector: Prefer calling ContentViewContainer.updateLayout directly
1074         https://bugs.webkit.org/show_bug.cgi?id=149041
1075
1076         Reviewed by Timothy Hatcher.
1077
1078         Cleaned up two places where a parent view duplicated logic encapsulated by ContentViewContainer.
1079
1080         * UserInterface/Views/ClusterContentView.js:
1081         (WebInspector.ClusterContentView.prototype.updateLayout):
1082         * UserInterface/Views/TimelineRecordingContentView.js:
1083         (WebInspector.TimelineRecordingContentView.prototype.updateLayout):
1084
1085 2015-09-08  Matt Baker  <mattbaker@apple.com>
1086
1087         Web Inspector: REGRESSION (r189189): Missing breakpoint context menu for debugger sidebar tree elements
1088         https://bugs.webkit.org/show_bug.cgi?id=148651
1089
1090         Reviewed by Timothy Hatcher.
1091
1092         * UserInterface/Base/Main.js:
1093         (WebInspector.contentLoaded):
1094         Create BreakpointPopoverController singleton, expose as public property of global WebInspector object.
1095
1096         * UserInterface/Views/BreakpointTreeElement.js:
1097         (WebInspector.BreakpointTreeElement.prototype.oncontextmenu):
1098         Use BreakpointPopoverController singleton.
1099
1100         * UserInterface/Views/SourceCodeTextEditor.js:
1101         (WebInspector.SourceCodeTextEditor):
1102         Don't create BreakpointPopoverController instance.
1103         (WebInspector.SourceCodeTextEditor.prototype.textEditorGutterContextMenu):
1104         Use BreakpointPopoverController singleton.
1105
1106 2015-09-08  Joseph Pecoraro  <pecoraro@apple.com>
1107
1108         Fix inspector/codemirror tests.
1109
1110         Rubber-stamped by Brian Burg.
1111
1112         * UserInterface/Test.html:
1113         Reorder includes to be more like Main.html. This ensures that CodeMirror
1114         resources are loaded before Inspector sources use it, like CodeMirrorAdditions
1115         which gets merged into TestCombined.js.
1116
1117 2015-09-08  Joseph Pecoraro  <pecoraro@apple.com>
1118
1119         Web Inspector: Move PrettyPrinting tests into LayoutTests
1120         https://bugs.webkit.org/show_bug.cgi?id=148698
1121
1122         Reviewed by Timothy Hatcher.
1123
1124         * Tools/PrettyPrinting/index.html:
1125         Modify the relative path to the tests which are now in LayoutTests.
1126
1127         * UserInterface/Test.html:
1128         Load CodeMirror and related resources for Formatting.
1129
1130 2015-09-06  Andy Estes  <aestes@apple.com>
1131
1132         WebKit.xcworkspace should be be able to build iOS platforms
1133         https://bugs.webkit.org/show_bug.cgi?id=148881
1134
1135         Reviewed by Daniel Bates.
1136
1137         Since we don't want to create platform-specific schemes, all projects in the workspace's schemes need to build
1138         for all supported platforms.
1139
1140         * Configurations/Base.xcconfig: Included iphoneos and iphonesimulator in SUPPORTED_PLATFORMS.
1141         * Configurations/WebInspectorUIFramework.xcconfig: Skipped installing on iOS.
1142
1143 2015-09-04  Brian Burg  <bburg@apple.com>
1144
1145         Web Inspector: combine Test.html resources to make tests run faster
1146         https://bugs.webkit.org/show_bug.cgi?id=148726
1147
1148         Reviewed by Timothy Hatcher.
1149
1150         In an attempt to make inspector tests run faster, always combine resources
1151         on the Test.html page. This cuts down from 110+ resource loads to 5 loads.
1152
1153         To avoid name clashes, add the 'Combined' suffix to files that would clash
1154         with uncombined Test resources, and add the 'Test' prefix when combining
1155         or minifying files that would clash with production minification. So, it
1156         would be possible for Main.html and Test.html to have different minified
1157         versions of CodeMirror or other external libraries if they use different
1158         subsets.
1159
1160         Combining is unlikely to make debugging tests more difficult, since almost
1161         all test code is marshalled and eval'd into existence anyway.
1162
1163         * Configurations/WebInspectorUIFramework.xcconfig:
1164         * Scripts/combine-resources.pl: Drive-by spelling.
1165         (concatenateFiles):
1166         (concatinateFiles): Deleted.
1167         * Scripts/copy-user-interface-resources-dryrun.rb:
1168         * Scripts/copy-user-interface-resources.pl:
1169
1170             Drive-by spelling. Add a new code path for combining Test resources, which
1171             doesn't require minification or handling CSS, images, or most externals.
1172
1173         * WebInspectorUI.vcxproj/build-webinspectorui.pl:
1174
1175             Always combine Test.html, but also ditto everything into place for
1176             engineering builds.
1177
1178 2015-09-04  Joseph Pecoraro  <pecoraro@apple.com>
1179
1180         Web Inspector: Test Runtime.saveResult and $n values
1181         https://bugs.webkit.org/show_bug.cgi?id=148837
1182
1183         Reviewed by Timothy Hatcher.
1184
1185         * UserInterface/Protocol/InspectorBackend.js:
1186         (InspectorBackendClass):
1187         Initialize the dump logging function different if we are in tests or not.
1188         When in tests, using console.log as well as dumping system activity to
1189         the system console results in an infinite loop of logging!
1190
1191         (InspectorBackendClass.prototype.dispatch):
1192         (InspectorBackendClass.prototype._sendCommandToBackendWithCallback):
1193         Use the logging function we figured out earlier.
1194
1195 2015-09-04  Joseph Pecoraro  <pecoraro@apple.com>
1196
1197         Web Inspector: Clean up and modernize DOMTreeManager
1198         https://bugs.webkit.org/show_bug.cgi?id=148821
1199
1200         Reviewed by Timothy Hatcher.
1201
1202         * UserInterface/Controllers/DOMTreeManager.js:
1203         (WebInspector.DOMTreeManager.prototype.requestDocument.onDocumentAvailable):
1204         (WebInspector.DOMTreeManager.prototype.requestDocument):
1205         (WebInspector.DOMTreeManager.prototype.pushNodeByPathToFrontend):
1206         (WebInspector.DOMTreeManager.prototype._wrapClientCallback):
1207         (WebInspector.DOMTreeManager.prototype._attributeModified):
1208         (WebInspector.DOMTreeManager.prototype._attributeRemoved):
1209         (WebInspector.DOMTreeManager.prototype._inlineStyleInvalidated):
1210         (WebInspector.DOMTreeManager.prototype._loadNodeAttributes):
1211         (WebInspector.DOMTreeManager.prototype.cancelSearch):
1212         (WebInspector.DOMTreeManager.prototype.querySelector):
1213         (WebInspector.DOMTreeManager.prototype.querySelectorAll):
1214         (WebInspector.DOMTreeManager.prototype.highlightDOMNode):
1215         (WebInspector.DOMTreeManager.prototype._buildHighlightConfig):
1216         Cleanup and modernize where appropriate.
1217
1218         * UserInterface/Views/SearchSidebarPanel.js:
1219         (WebInspector.SearchSidebarPanel.prototype.performSearch):
1220         Callback is now required.
1221
1222 2015-09-04  Matt Baker  <mattbaker@apple.com>
1223
1224         Web Inspector: Render Frames "Other" task filter checkbox misaligned with text
1225         https://bugs.webkit.org/show_bug.cgi?id=148788
1226
1227         Reviewed by Timothy Hatcher.
1228
1229         * UserInterface/Views/ChartDetailsSectionRow.css:
1230         (.details-section > .content > .group > .row.chart > .chart-content > .legend > .legend-item > label > .color-key):
1231         Adjust "fake" checkbox margin to align with label text.
1232
1233 2015-09-04  Joseph Pecoraro  <pecoraro@apple.com>
1234
1235         Web Inspector: Expand Console domain test coverage
1236         https://bugs.webkit.org/show_bug.cgi?id=148740
1237
1238         Reviewed by Brian Burg.
1239
1240         * UserInterface/Protocol/RemoteObject.js:
1241         Add a few helpers for checking the RemoteObject type.
1242
1243 2015-09-02  Commit Queue  <commit-queue@webkit.org>
1244
1245         Unreviewed, rolling out r189241.
1246         https://bugs.webkit.org/show_bug.cgi?id=148703
1247
1248         These tests crash with assertions (Requested by ap on
1249         #webkit).
1250
1251         Reverted changeset:
1252
1253         "Web Inspector: Move PrettyPrinting tests into LayoutTests"
1254         https://bugs.webkit.org/show_bug.cgi?id=148698
1255         http://trac.webkit.org/changeset/189241
1256
1257 2015-09-01  Joseph Pecoraro  <pecoraro@apple.com>
1258
1259         Web Inspector: Move PrettyPrinting tests into LayoutTests
1260         https://bugs.webkit.org/show_bug.cgi?id=148698
1261
1262         Reviewed by Timothy Hatcher.
1263
1264         * Tools/PrettyPrinting/index.html:
1265         Modify the relative path to the tests which are now in LayoutTests.
1266
1267         * UserInterface/Test.html:
1268         Load CodeMirror and related resources for Formatting.
1269
1270 2015-09-01  Matt Baker  <mattbaker@apple.com>
1271
1272         Web Inspector: REGRESSION (r187873): Location column icon is missing in timeline data grids
1273         https://bugs.webkit.org/show_bug.cgi?id=148691
1274
1275         Reviewed by Timothy Hatcher.
1276
1277         * UserInterface/Views/TimelineDataGridNode.js:
1278         (WebInspector.TimelineDataGridNode.prototype.createCellContent):
1279         Added "icon" class name. Was using removed class variable (class="undefined").
1280
1281 2015-09-01  Matt Baker  <mattbaker@apple.com>
1282
1283         Web Inspector: Show layout/paint pixel area in the Rendering Frames tree outline
1284         https://bugs.webkit.org/show_bug.cgi?id=148674
1285
1286         Reviewed by Brian Burg.
1287
1288         * Localizations/en.lproj/localizedStrings.js:
1289         New UI string.
1290
1291         * UserInterface/Views/RenderingFrameTimelineView.css:
1292         (.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .navigation-sidebar-panel-content-tree-outline.rendering-frame .item:not(.paint-record):not(.layout-record) .subtitle):
1293         (.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .navigation-sidebar-panel-content-tree-outline.rendering-frame .item .subtitle): Deleted.
1294         Show subtitles for layout and paint records only. We still want to hide script record subtitles,
1295         since that information is already in the 'Location' column.
1296
1297         * UserInterface/Views/RenderingFrameTimelineView.js:
1298         (WebInspector.RenderingFrameTimelineView.prototype._processPendingRecords):
1299         Add tree element subtitle for LayoutTimelineRecords that specify width and height.
1300
1301 2015-09-01  Matt Baker  <mattbaker@apple.com>
1302
1303         Web Inspector: Reorder columns in the Rendering Frames data grid by importance
1304         https://bugs.webkit.org/show_bug.cgi?id=148672
1305
1306         Reviewed by Timothy Hatcher.
1307
1308         * UserInterface/Views/RenderingFrameTimelineView.js:
1309         (WebInspector.RenderingFrameTimelineView):
1310         Updated column order, rearranged the column object setup code to match.
1311
1312 2015-09-01  Brian Burg  <bburg@apple.com>
1313
1314         Web Inspector: rewrite inspector/console/command-line-api.html to use AsyncTestSuite
1315         https://bugs.webkit.org/show_bug.cgi?id=148637
1316
1317         Reviewed by Darin Adler.
1318
1319         * UserInterface/Base/Object.js:
1320         (WebInspector.Object.singleFireEventListener):
1321         (WebInspector.Object.singleFireEventListener.let.wrappedCallback): Arrow.
1322
1323 2015-09-01  Devin Rousso  <drousso@apple.com>
1324
1325         Web Inspector: New rule button in the style sidebar is blurry and too dark
1326         https://bugs.webkit.org/show_bug.cgi?id=148108
1327
1328         Reviewed by Timothy Hatcher.
1329
1330         Added support for Plus and Minus icons on non-retina screens.
1331         Also removed some CSS rules that no longer apply to anything.
1332
1333         * UserInterface/Images/Minus.svg:
1334         * UserInterface/Images/NewTabPlus.svg:
1335         * UserInterface/Images/Plus.svg: Removed.
1336         * UserInterface/Images/Plus13.svg: Copied from Source/WebInspectorUI/UserInterface/Images/Plus.svg.
1337         * UserInterface/Images/Plus15.svg: Copied from Source/WebInspectorUI/UserInterface/Images/Plus.svg.
1338
1339         * UserInterface/Views/CSSStyleDetailsSidebarPanel.css:
1340         (.sidebar > .panel.details.css-style > .content + .options-container):
1341         (.sidebar > .panel.details.css-style > .content + .options-container > .new-rule):
1342
1343         * UserInterface/Views/ProbeDetailsSidebarPanel.css:
1344         (.details-section.probe-set .options > .probe-add):
1345
1346         * UserInterface/Views/RulesStyleDetailsPanel.css:
1347         (.sidebar > .panel.details.css-style .rules .new-rule): Deleted.
1348         (.sidebar > .panel.details.css-style .rules > *:first-child:matches(.new-rule)): Deleted.
1349         (.sidebar > .panel.details.css-style > .content.filter-in-progress .new-rule): Deleted.
1350         (.sidebar > .panel.details.css-style > .content:not(.filter-in-progress) > .rules > .new-rule + .style-declaration-section): Deleted.
1351         (.sidebar > .panel.details.css-style > .content:not(.filter-in-progress) > .rules > .new-rule + .label): Deleted.
1352         (.sidebar > .panel.details.css-style .rules .new-rule img): Deleted.
1353         (.sidebar > .panel.details.css-style .rules .new-rule:hover): Deleted.
1354         (.sidebar > .panel.details.css-style .rules .new-rule:active): Deleted.
1355         (@media (-webkit-min-device-pixel-ratio: 2)): Deleted.
1356         Removed CSS rules that no longer apply.  The new rule button was moved to the Styles sidebar.
1357
1358         * UserInterface/Views/ScopeChainDetailsSidebarPanel.css:
1359         (.details-section.watch-expressions .options > .watch-expression-add):
1360
1361         * UserInterface/Views/TabBar.css:
1362         (.tab-bar > .item.new-tab-button > .icon):
1363
1364         * UserInterface/Views/VisualStyleCommaSeparatedKeywordEditor.css:
1365         (.visual-style-property-container.comma-separated-keyword-editor > .visual-style-property-value-container > .visual-style-comma-separated-keyword-controls > div):
1366
1367         * UserInterface/Views/VisualStyleCommaSeparatedKeywordEditor.js:
1368         (WebInspector.VisualStyleCommaSeparatedKeywordEditor):
1369
1370         * UserInterface/Views/VisualStyleSelectorSection.js:
1371         (WebInspector.VisualStyleSelectorSection):
1372
1373 2015-09-01  Brian Burg  <bburg@apple.com>
1374
1375         Web Inspector: add TestSuite hooks for per-testcase setup and teardown actions
1376         https://bugs.webkit.org/show_bug.cgi?id=148641
1377
1378         Reviewed by Timothy Hatcher.
1379
1380         It should be possible to run setup and teardown actions for each test case.
1381         The use case here is to add listeners, set up testcase-specific state, etc.
1382         To match how test functions work in each suite, the sync and async implementations
1383         take functions with no arguments and(resolve, reject), respectively.
1384
1385         * UserInterface/Test/TestSuite.js:
1386         (TestSuite.prototype.addTestCase):
1387         (TestSuite.messageFromThrownObject):
1388         (TestSuite):
1389         (AsyncTestSuite.prototype.runTestCases): Stick the extra functions in the chain.
1390         (AsyncTestSuite):
1391         (SyncTestSuite.prototype.runTestCases):
1392         (SyncTestSuite):
1393
1394 2015-09-01  Matt Baker  <mattbaker@apple.com>
1395
1396         Web Inspector: Visual style editor shouldn't allow alpha characters in numeric input fields
1397         https://bugs.webkit.org/show_bug.cgi?id=148580
1398
1399         Reviewed by Brian Burg.
1400
1401         * UserInterface/Views/VisualStyleNumberInputBox.js:
1402         (WebInspector.VisualStyleNumberInputBox):
1403         Added input element "changed" handler, renamed "keyup" handler to match "keydown" handler.
1404         (WebInspector.VisualStyleNumberInputBox.prototype._valueNumberInputChanged):
1405         Validate input in response to changed event.
1406
1407 2015-08-31  Nikita Vasilyev  <nvasilyev@apple.com>
1408
1409         Web Inspector: Command-Enter for selected JS in Debugger/Sources shouldn't change the focus
1410         https://bugs.webkit.org/show_bug.cgi?id=148613
1411
1412         Reviewed by Timothy Hatcher.
1413
1414         * UserInterface/Views/ConsoleTabContentView.js:
1415         (WebInspector.ConsoleTabContentView.prototype.shown):
1416         Always focus on the console prompt when the console tab get selected.
1417
1418         * UserInterface/Views/LogContentView.js:
1419         (WebInspector.LogContentView.prototype.shown): Deleted.
1420
1421 2015-08-31  Joseph Pecoraro  <pecoraro@apple.com>
1422
1423         Web Inspector: Debugger Popovers should work for object literal shorthand variables
1424         https://bugs.webkit.org/show_bug.cgi?id=148603
1425
1426         Reviewed by Timothy Hatcher.
1427
1428         * UserInterface/Controllers/CodeMirrorTokenTrackingController.js:
1429         (WebInspector.CodeMirrorTokenTrackingController.prototype._processJavaScriptExpression):
1430         Allow debugger popovers for object property shorthands, because they
1431         are actually variables that have values. Previously we ignored property
1432         name literals, because they were just property names until ES6.
1433
1434         * UserInterface/Views/CodeMirrorAdditions.js:
1435         Add a helper for walking through token types from a start position. It may be useful elsewhere.
1436
1437 2015-08-31  Matt Baker  <mattbaker@apple.com>
1438
1439         Web Inspector: Move the Popover code out of the Breakpoint model object
1440         https://bugs.webkit.org/show_bug.cgi?id=127328
1441
1442         Reviewed by Timothy Hatcher.
1443
1444         * UserInterface/Controllers/BreakpointPopoverController.js: Added.
1445         (WebInspector.BreakpointPopoverController):
1446         (WebInspector.BreakpointPopoverController.prototype.appendContextMenuItems.editBreakpoint):
1447         (WebInspector.BreakpointPopoverController.prototype.appendContextMenuItems.removeBreakpoint):
1448         (WebInspector.BreakpointPopoverController.prototype.appendContextMenuItems.toggleBreakpoint):
1449         (WebInspector.BreakpointPopoverController.prototype.appendContextMenuItems.toggleAutoContinue):
1450         (WebInspector.BreakpointPopoverController.prototype.appendContextMenuItems.revealOriginalSourceCodeLocation):
1451         (WebInspector.BreakpointPopoverController.prototype.appendContextMenuItems):
1452         (WebInspector.BreakpointPopoverController.prototype.showEditBreakpointPopover):
1453         (WebInspector.BreakpointPopoverController.prototype._createPopoverContent):
1454         (WebInspector.BreakpointPopoverController.prototype._popoverToggleEnabledCheckboxChanged):
1455         (WebInspector.BreakpointPopoverController.prototype._popoverConditionInputChanged):
1456         (WebInspector.BreakpointPopoverController.prototype._popoverToggleAutoContinueCheckboxChanged):
1457         (WebInspector.BreakpointPopoverController.prototype._popoverConditionInputKeyDown):
1458         (WebInspector.BreakpointPopoverController.prototype._popoverActionsCreateAddActionButton):
1459         (WebInspector.BreakpointPopoverController.prototype._popoverActionsAddActionButtonClicked):
1460         (WebInspector.BreakpointPopoverController.prototype._popoverActionsInsertBreakpointActionView):
1461         (WebInspector.BreakpointPopoverController.prototype.breakpointActionViewAppendActionView):
1462         (WebInspector.BreakpointPopoverController.prototype.breakpointActionViewRemoveActionView):
1463         (WebInspector.BreakpointPopoverController.prototype.breakpointActionViewResized):
1464         (WebInspector.BreakpointPopoverController.prototype.willDismissPopover):
1465         (WebInspector.BreakpointPopoverController.prototype.didDismissPopover):
1466         Added controller class to encapsulate view logic previously located in WebInspector.Breakpoint.
1467
1468         * UserInterface/Main.html:
1469         Added and updated file paths.
1470
1471         * UserInterface/Models/Breakpoint.js:
1472         (WebInspector.Breakpoint.prototype.appendContextMenuItems.editBreakpoint): Deleted.
1473         (WebInspector.Breakpoint.prototype.appendContextMenuItems.removeBreakpoint): Deleted.
1474         (WebInspector.Breakpoint.prototype.appendContextMenuItems.toggleBreakpoint): Deleted.
1475         (WebInspector.Breakpoint.prototype.appendContextMenuItems.toggleAutoContinue): Deleted.
1476         (WebInspector.Breakpoint.prototype.appendContextMenuItems.revealOriginalSourceCodeLocation): Deleted.
1477         (WebInspector.Breakpoint.prototype.appendContextMenuItems): Deleted.
1478         (WebInspector.Breakpoint.prototype._popoverToggleEnabledCheckboxChanged): Deleted.
1479         (WebInspector.Breakpoint.prototype._popoverConditionInputChanged): Deleted.
1480         (WebInspector.Breakpoint.prototype._popoverToggleAutoContinueCheckboxChanged): Deleted.
1481         (WebInspector.Breakpoint.prototype._popoverConditionInputKeyDown): Deleted.
1482         (WebInspector.Breakpoint.prototype._editBreakpointPopoverContentElement): Deleted.
1483         (WebInspector.Breakpoint.prototype._popoverActionsCreateAddActionButton): Deleted.
1484         (WebInspector.Breakpoint.prototype._popoverActionsAddActionButtonClicked): Deleted.
1485         (WebInspector.Breakpoint.prototype._popoverActionsInsertBreakpointActionView): Deleted.
1486         (WebInspector.Breakpoint.prototype.breakpointActionViewAppendActionView): Deleted.
1487         (WebInspector.Breakpoint.prototype.breakpointActionViewRemoveActionView): Deleted.
1488         (WebInspector.Breakpoint.prototype.breakpointActionViewResized): Deleted.
1489         (WebInspector.Breakpoint.prototype.willDismissPopover): Deleted.
1490         (WebInspector.Breakpoint.prototype.didDismissPopover): Deleted.
1491         (WebInspector.Breakpoint.prototype._showEditBreakpointPopover): Deleted.
1492         Removed view logic.
1493
1494         * UserInterface/Views/BreakpointPopoverController.css: Renamed from Source/WebInspectorUI/UserInterface/Views/Breakpoint.css.
1495         (.popover .edit-breakpoint-popover-content):
1496         (.popover .edit-breakpoint-popover-content.wide):
1497         (.popover .edit-breakpoint-popover-content > label.toggle):
1498         (.popover .edit-breakpoint-popover-content > table):
1499         (.popover .edit-breakpoint-popover-content > table > tr > th):
1500         (.popover .edit-breakpoint-popover-content > table > tr > td):
1501         (#edit-breakpoint-popover-condition):
1502         (#edit-breakpoint-popoover-auto-continue):
1503
1504         * UserInterface/Views/SourceCodeTextEditor.js:
1505         (WebInspector.SourceCodeTextEditor):
1506         Creates a BreakpointPopoverController instance. The lifetime of the 'Edit Breakpoint' view is internal to the
1507         controller, and can't be initiated outside of a context menu item click.
1508
1509 2015-08-31  Matt Baker  <mattbaker@apple.com>
1510
1511         Web Inspector: Rendering Frame tasks making up < 1% of the selection don't appear in the pie chart
1512         https://bugs.webkit.org/show_bug.cgi?id=148549
1513
1514         Reviewed by Timothy Hatcher.
1515
1516         Small data points can be invisible or difficult to see in the pie chart. This patch introduces
1517         a minimum slice size of 1.5% (determined by visual inspection) for chart items.
1518
1519         Legend items continue to show the original data point values, not the adjusted values used to
1520         draw the chart slices.
1521
1522         * UserInterface/Views/ChartDetailsSectionRow.js:
1523         (WebInspector.ChartDetailsSectionRow):
1524         (WebInspector.ChartDetailsSectionRow.prototype._updateLayout):
1525         Adjust display values up or down as needed, so no data point is less than the
1526         minimum and all chart slices still total 100%.
1527
1528 2015-08-28  Joseph Pecoraro  <pecoraro@apple.com>
1529
1530         Web Inspector: "animationEnd" event names should be "animationend" (broken dashboard animation after pause)
1531         https://bugs.webkit.org/show_bug.cgi?id=148604
1532
1533         Reviewed by Timothy Hatcher.
1534
1535         * UserInterface/Views/DOMTreeElement.js:
1536         (WebInspector.DOMTreeElement.prototype.emphasizeSearchHighlight):
1537         * UserInterface/Views/DashboardContainerView.js:
1538         (WebInspector.DashboardContainerView.prototype._showDashboardView.animationEnded):
1539         (WebInspector.DashboardContainerView.prototype._showDashboardView):
1540         (WebInspector.DashboardContainerView.prototype._hideDashboardView.animationEnded):
1541         (WebInspector.DashboardContainerView.prototype._hideDashboardView):
1542         * UserInterface/Views/DefaultDashboardView.js:
1543         (WebInspector.DefaultDashboardView.prototype._setConsoleItemValue.animationEnded):
1544         (WebInspector.DefaultDashboardView.prototype._setConsoleItemValue):
1545         * UserInterface/Views/TextEditor.js:
1546         (WebInspector.TextEditor.prototype._revealSearchResult):
1547
1548 2015-08-28  Joseph Pecoraro  <pecoraro@apple.com>
1549
1550         Web Inspector: Resource.prototype.associateWithScript assertions firing
1551         https://bugs.webkit.org/show_bug.cgi?id=148601
1552
1553         Reviewed by Timothy Hatcher.
1554
1555         * UserInterface/Models/Resource.js:
1556         (WebInspector.Resource.prototype.associateWithScript):
1557         Restore the code that was here before it was converted to asserts.
1558         It looked as if it was iOS 6 only but it was not.
1559
1560 2015-08-28  Joseph Pecoraro  <pecoraro@apple.com>
1561
1562         Web Inspector: Improve ScriptSyntaxTree a bit
1563         https://bugs.webkit.org/show_bug.cgi?id=148563
1564
1565         Reviewed by Timothy Hatcher.
1566
1567         * UserInterface/Models/ScriptSyntaxTree.js:
1568         (WebInspector.ScriptSyntaxTree.prototype._recurse):
1569         (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):
1570         Share and fix ClassDeclaration and ClassExpression recursion to visit
1571         the identifier (node.id). Include the kind with a VariableDeclaration
1572         ("var", "let", "const").
1573
1574 2015-08-28  Joseph Pecoraro  <pecoraro@apple.com>
1575
1576         Web Inspector: Separate creating a style sheet from adding a new rule in the protocol
1577         https://bugs.webkit.org/show_bug.cgi?id=148502
1578
1579         Reviewed by Timothy Hatcher.
1580
1581         The backend allows creating multiple stylesheets. This patch makes
1582         the frontend have a preferred InspectorStyleSheet per-frame.
1583
1584         * UserInterface/Base/Object.js:
1585         (WebInspector.Object.singleFireEventListener):
1586         Return the wrapped listener so it can be removed if needed.
1587
1588         * UserInterface/Models/CSSStyleSheet.js:
1589         (WebInspector.CSSStyleSheet.prototype.isInspectorStyleSheet):
1590         Helper to check if the current stylesheet is an inspector created stylesheet.
1591
1592         * UserInterface/Controllers/CSSStyleManager.js:
1593         (WebInspector.CSSStyleManager.prototype.preferredInspectorStyleSheetForFrame):
1594         (WebInspector.CSSStyleManager.prototype.preferredInspectorStyleSheetForFrame.documentNodeAvailable):
1595         (WebInspector.CSSStyleManager.prototype.preferredInspectorStyleSheetForFrame.bodyNodeAvailable):
1596         (WebInspector.CSSStyleManager.prototype.preferredInspectorStyleSheetForFrame.cssRuleAvailable):
1597         (WebInspector.CSSStyleManager.prototype._inspectorStyleSheetsForFrame):
1598         Lookup the inspector stylesheet for a particular frame. If one doesn't exist create it.
1599         For legacy backends, exploit "addRule" to create the inspector stylesheet.
1600
1601         * UserInterface/Models/DOMNode.js:
1602         * UserInterface/Models/DOMNodeStyles.js:
1603         (WebInspector.DOMNodeStyles.prototype.addEmptyRule.inspectorStyleSheetAvailable):
1604         (WebInspector.DOMNodeStyles.prototype.addEmptyRule):
1605         Currently add all new rules to the inspector stylesheet.
1606
1607 2015-08-28  Joseph Pecoraro  <pecoraro@apple.com>
1608
1609         Web Inspector: Type Profiler does not understand Functions within Default Argument Expressions
1610         https://bugs.webkit.org/show_bug.cgi?id=148557
1611
1612         Reviewed by Timothy Hatcher.
1613
1614         * UserInterface/Models/ScriptSyntaxTree.js:
1615         (WebInspector.ScriptSyntaxTree.prototype._recurse):
1616         (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):
1617         (WebInspector.ScriptSyntaxTree):
1618         Add support for abstracting and recursing through the default parameter
1619         expressions Esprima has on function expressions and declarations.
1620
1621 2015-08-28  Joseph Pecoraro  <pecoraro@apple.com>
1622
1623         Web Inspector: Type Profiler does not understand Functions inside Template Strings (ScriptSyntaxTree warnings)
1624         https://bugs.webkit.org/show_bug.cgi?id=148556
1625
1626         Reviewed by Timothy Hatcher.
1627
1628         * UserInterface/Models/ScriptSyntaxTree.js:
1629         (WebInspector.ScriptSyntaxTree.prototype._recurse):
1630         (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):
1631         (WebInspector.ScriptSyntaxTree):
1632         Add support for abstracting and recursing through the Esprima template nodes.
1633
1634 2015-08-27  Joseph Pecoraro  <pecoraro@apple.com>
1635
1636         Web Inspector: Standardize on CSSStyleSheet.Type enum and move more protocol enum conversion to the manager
1637         https://bugs.webkit.org/show_bug.cgi?id=148515
1638
1639         Reviewed by Brian Burg.
1640
1641         * UserInterface/Controllers/CSSStyleManager.js:
1642         (WebInspector.CSSStyleManager.protocolStyleSheetOriginToEnum):
1643         (WebInspector.CSSStyleManager.protocolMediaSourceToEnum):
1644         Protocol enum to frontend enum conversion.
1645
1646         * UserInterface/Models/DOMNodeStyles.js:
1647         (WebInspector.DOMNodeStyles.prototype.refresh.fetchedComputedStyle):
1648         (WebInspector.DOMNodeStyles.prototype.refresh):
1649         (WebInspector.DOMNodeStyles.prototype._parseRulePayload):
1650         (WebInspector.DOMNodeStyles.prototype._collectStylesInCascadeOrder):
1651         Use the manager to convert from a protocol payload enum to frontend num for css types.
1652
1653         * UserInterface/Models/CSSRule.js:
1654         (WebInspector.CSSRule.prototype.get editable):
1655         * UserInterface/Views/CSSStyleDeclarationSection.js:
1656         (WebInspector.CSSStyleDeclarationSection):
1657         (WebInspector.CSSStyleDeclarationSection.prototype.refresh):
1658         * UserInterface/Views/RulesStyleDetailsPanel.js:
1659         (WebInspector.RulesStyleDetailsPanel.prototype.refresh.appendStyleSection):
1660         (WebInspector.RulesStyleDetailsPanel.prototype.refresh):
1661         * UserInterface/Views/VisualStyleSelectorSection.js:
1662         (WebInspector.VisualStyleSelectorSection.prototype.update.createSelectorItem):
1663         (WebInspector.VisualStyleSelectorSection.prototype.update.uniqueOrderedRules.set return):
1664         (WebInspector.VisualStyleSelectorSection.prototype.update.uniqueOrderedRules):
1665         (WebInspector.VisualStyleSelectorSection.prototype.update):
1666         * UserInterface/Views/VisualStyleSelectorTreeItem.js:
1667         (WebInspector.VisualStyleSelectorTreeItem):
1668         Update enum use.
1669
1670 2015-08-26  Nikita Vasilyev  <nvasilyev@apple.com>
1671
1672         Web Inspector: [Regression] [Mavericks]: Undocked Web Inspector toolbar is two different colors and has extra space
1673         https://bugs.webkit.org/show_bug.cgi?id=148510
1674
1675         Make body element transparent and remove extra padding above the toolbar only for OS X Mavericks.
1676
1677         Reviewed by Timothy Hatcher.
1678
1679         * UserInterface/Base/Main.js:
1680         (WebInspector.contentLoaded):
1681         * UserInterface/Views/Main.css:
1682         (body:not(.mavericks)):
1683         (body): Deleted.
1684         * UserInterface/Views/Toolbar.css:
1685         (body:not(.mavericks) .toolbar):
1686         (body.window-inactive:not(.mavericks) .toolbar):
1687         (body.mac-platform:not(.docked, .mavericks) .toolbar):
1688         (.toolbar): Deleted.
1689         (body.window-inactive .toolbar): Deleted.
1690         (body.mac-platform:not(.docked) .toolbar): Deleted.
1691
1692 2015-08-26  Joseph Pecoraro  <pecoraro@apple.com>
1693
1694         Web Inspector: Uncaught exception in CSS Completion - TypeError: undefined is not an object (evaluating 'this._values[middleIndex].startsWith')
1695         https://bugs.webkit.org/show_bug.cgi?id=148508
1696
1697         Reviewed by Timothy Hatcher.
1698
1699         * UserInterface/Models/CSSCompletions.js:
1700         (WebInspector.CSSCompletions):
1701         Add a comment explaining that the constructor may be called with
1702         a list of strings or a list of objects from the protocol. Add
1703         a fast path for when this is constructed with a list of strings.
1704
1705 2015-08-26  Matt Baker  <mattbaker@apple.com>
1706
1707         Web Inspector: Rendering Frames timeline pie chart should use SVG instead of 2D canvas
1708         https://bugs.webkit.org/show_bug.cgi?id=148457
1709
1710         Reviewed by Timothy Hatcher.
1711
1712         * UserInterface/Views/ChartDetailsSectionRow.css:
1713         (.details-section > .content > .group > .row.chart > .chart-content > svg > path.hidden):
1714         (.details-section > .content > .group > .row.chart > .chart-content > svg > path.chart-segment):
1715         (.details-section > .content > .group > .row.chart > .chart-content > svg > path.empty-chart):
1716         New styles for SVG chart elements.
1717
1718         * UserInterface/Views/ChartDetailsSectionRow.js:
1719         (WebInspector.ChartDetailsSectionRow):
1720         Calculate radii and create SVG chart elements.
1721         (WebInspector.ChartDetailsSectionRow.prototype.clearItems):
1722         Remove chart segment path elements.
1723         (WebInspector.ChartDetailsSectionRow.prototype._needsLayout):
1724         (WebInspector.ChartDetailsSectionRow.prototype._updateLayout.createSegmentPathData):
1725         Helper function that creates path data for a single pie chart segment.
1726         (WebInspector.ChartDetailsSectionRow.prototype._updateLayout):
1727         Creates path elements as needed, and updates path data for for non-zero data points.
1728         (WebInspector.ChartDetailsSectionRow.prototype.set innerLabel): Deleted.
1729         (WebInspector.ChartDetailsSectionRow.prototype.set innerRadius): Deleted.
1730         These properties are now set during construction.
1731         (WebInspector.ChartDetailsSectionRow.prototype.updateLayout): Deleted.
1732         Renamed to _updateLayout.
1733
1734         * UserInterface/Views/TimelineSidebarPanel.js:
1735         Chart size and inner radius passed to chart constructor.
1736
1737 2015-08-26  Joseph Pecoraro  <pecoraro@apple.com>
1738
1739         Web Inspector: Implement tracking of active stylesheets in the frontend
1740         https://bugs.webkit.org/show_bug.cgi?id=105828
1741
1742         Reviewed by Timothy Hatcher.
1743
1744         * UserInterface/Models/CSSStyleSheet.js:
1745         (WebInspector.CSSStyleSheet):
1746         (WebInspector.CSSStyleSheet.prototype.get origin):
1747         (WebInspector.CSSStyleSheet.prototype.updateInfo):
1748         Add a new origin attribute that has been sent from the backend for a while.
1749
1750         * UserInterface/Controllers/CSSStyleManager.js:
1751         (WebInspector.CSSStyleManager.prototype.styleSheetAdded):
1752         (WebInspector.CSSStyleManager.prototype.styleSheetRemoved):
1753         Handle the new events by managing the new CSSStyleSheets.
1754         
1755         (WebInspector.CSSStyleManager):
1756         (WebInspector.CSSStyleManager.prototype._mainResourceDidChange):
1757         Reset the legacy fetching flag. Fetching is only needed for legacy backends.
1758
1759         (WebInspector.CSSStyleManager.prototype._fetchInfoForAllStyleSheets):
1760         Include the new origin property in the legacy updateInfo path.
1761
1762         * UserInterface/Protocol/CSSObserver.js:
1763         (WebInspector.CSSObserver.prototype.styleSheetAdded):
1764         (WebInspector.CSSObserver.prototype.styleSheetRemoved):
1765         Forward to the manager.
1766
1767         * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
1768         (WebInspector.CSSStyleDetailsSidebarPanel):
1769         Refresh the sidebar when stylesheets are added / removed, as that
1770         may affect the style of the select element.
1771
1772 2015-08-26  Joseph Pecoraro  <pecoraro@apple.com>
1773
1774         Web Inspector: Drop iOS 6 Legacy Remote Inspector Support
1775         https://bugs.webkit.org/show_bug.cgi?id=148456
1776
1777         Reviewed by Timothy Hatcher.
1778
1779         * UserInterface/Base/Main.js:
1780         (WebInspector.loaded):
1781         (WebInspector._updateReloadToolbarButton):
1782         (WebInspector._updateDownloadToolbarButton):
1783         (WebInspector.canArchiveMainFrame):
1784         * UserInterface/Controllers/CSSStyleManager.js:
1785         (WebInspector.CSSStyleManager.prototype._frameURLMapKey):
1786         (WebInspector.CSSStyleManager.prototype._lookupStyleSheet.styleSheetsFetched):
1787         (WebInspector.CSSStyleManager._updateResourceContent.fetchedStyleSheetContent):
1788         (WebInspector.CSSStyleManager.prototype._clearStyleSheetsForResource): Deleted.
1789         * UserInterface/Controllers/DOMTreeManager.js:
1790         (WebInspector.DOMTreeManager.prototype.highlightSelector):
1791         * UserInterface/Controllers/DebuggerManager.js:
1792         (WebInspector.DebuggerManager.prototype._setBreakpoint):
1793         * UserInterface/Controllers/JavaScriptLogViewController.js:
1794         * UserInterface/Controllers/RuntimeManager.js:
1795         (WebInspector.RuntimeManager):
1796         (WebInspector.RuntimeManager.prototype.evaluateInInspectedWindow):
1797         * UserInterface/Controllers/SourceMapManager.js:
1798         (WebInspector.SourceMapManager.prototype._loadAndParseSourceMap):
1799         * UserInterface/Controllers/StorageManager.js:
1800         (WebInspector.StorageManager):
1801         (WebInspector.StorageManager.prototype._addDOMStorageIfNeeded):
1802         (WebInspector.StorageManager.prototype.domStorageWasUpdated): Deleted.
1803         (WebInspector.StorageManager.prototype._domStorageForIdentifier): Deleted.
1804         (WebInspector.StorageManager.prototype._extraDomainsActivated): Deleted.
1805         * UserInterface/Controllers/TimelineManager.js:
1806         (WebInspector.TimelineManager.prototype._processRecord):
1807         * UserInterface/Models/Breakpoint.js:
1808         (WebInspector.Breakpoint.prototype._editBreakpointPopoverContentElement):
1809         * UserInterface/Models/CSSCompletions.js:
1810         (WebInspector.CSSCompletions):
1811         (WebInspector.CSSCompletions.requestCSSCompletions):
1812         * UserInterface/Models/CSSKeywordCompletions.js:
1813         (WebInspector.CSSKeywordCompletions.addCustomCompletions): Deleted.
1814         * UserInterface/Models/CSSProperty.js:
1815         (WebInspector.CSSProperty):
1816         (WebInspector.CSSProperty.prototype.update):
1817         * UserInterface/Models/CSSRule.js:
1818         (WebInspector.CSSRule.prototype.get matchedSelectors): Deleted.
1819         (WebInspector.CSSRule.prototype.get matchedSelectorText): Deleted.
1820         * UserInterface/Models/DOMNodeStyles.js:
1821         (WebInspector.DOMNodeStyles.prototype.refresh.parseRuleMatchArrayPayload):
1822         (WebInspector.DOMNodeStyles.prototype.refresh.fetchedMatchedStyles):
1823         (WebInspector.DOMNodeStyles.prototype.changeRule.changeText):
1824         (WebInspector.DOMNodeStyles.prototype.changeStyleText):
1825         (WebInspector.DOMNodeStyles.prototype._parseStylePropertyPayload):
1826         (WebInspector.DOMNodeStyles.prototype._parseRulePayload):
1827         (WebInspector.DOMNodeStyles.prototype.changeStyleText.attributeChanged): Deleted.
1828         (WebInspector.DOMNodeStyles.prototype.changeStyleText.fetchedStyleSheetContent.contentDidChange): Deleted.
1829         (WebInspector.DOMNodeStyles.prototype.changeStyleText.fetchedStyleSheetContent): Deleted.
1830         (WebInspector.DOMNodeStyles.prototype._parseSourceRangePayload): Deleted.
1831         (WebInspector.DOMNodeStyles.prototype._parseSelectorListPayload): Deleted.
1832         * UserInterface/Models/DOMStorageObject.js:
1833         * UserInterface/Models/DOMTree.js:
1834         (WebInspector.DOMTree.prototype.requestRootDOMNode):
1835         (WebInspector.DOMTree.prototype._requestRootDOMNode):
1836         * UserInterface/Models/DatabaseObject.js:
1837         (WebInspector.DatabaseObject.prototype.executeSQL.queryCallback):
1838         (WebInspector.DatabaseObject.prototype.executeSQL):
1839         (WebInspector.DatabaseObject):
1840         (WebInspector.DatabaseObject.prototype.executeSQL.callback): Deleted.
1841         * UserInterface/Models/ExecutionContext.js:
1842         (WebInspector.ExecutionContext.supported): Deleted.
1843         * UserInterface/Models/IssueMessage.js:
1844         (WebInspector.IssueMessage): Deleted.
1845         * UserInterface/Models/LayoutTimelineRecord.js:
1846         (WebInspector.LayoutTimelineRecord):
1847         (WebInspector.LayoutTimelineRecord.prototype.get width):
1848         (WebInspector.LayoutTimelineRecord.prototype.get height):
1849         (WebInspector.LayoutTimelineRecord.prototype.get area):
1850         (WebInspector.LayoutTimelineRecord.prototype.get x): Deleted.
1851         (WebInspector.LayoutTimelineRecord.prototype.get y): Deleted.
1852         (WebInspector.LayoutTimelineRecord.prototype.get rect): Deleted.
1853         * UserInterface/Models/ProfileNode.js:
1854         * UserInterface/Models/Resource.js:
1855         (WebInspector.Resource.prototype.associateWithScript):
1856         * UserInterface/Models/ScriptTimelineRecord.js:
1857         (WebInspector.ScriptTimelineRecord.prototype._initializeProfileFromPayload.profileNodeFromPayload):
1858         * UserInterface/Models/SourceMapResource.js:
1859         (WebInspector.SourceMapResource.prototype.requestContentFromBackend):
1860         * UserInterface/Models/TextRange.js:
1861         (WebInspector.TextRange.prototype.resolveLinesAndColumns.countNewLineCharacters): Deleted.
1862         (WebInspector.TextRange.prototype.resolveLinesAndColumns): Deleted.
1863         * UserInterface/Models/TimelineRecording.js:
1864         * UserInterface/Protocol/ConsoleObserver.js:
1865         (WebInspector.ConsoleObserver.prototype.messageAdded): Deleted.
1866         * UserInterface/Protocol/DOMStorageObserver.js:
1867         (WebInspector.DOMStorageObserver.prototype.addDOMStorage): Deleted.
1868         (WebInspector.DOMStorageObserver.prototype.updateDOMStorage): Deleted.
1869         * UserInterface/Protocol/DatabaseObserver.js:
1870         (WebInspector.DatabaseObserver.prototype.sqlTransactionSucceeded): Deleted.
1871         (WebInspector.DatabaseObserver.prototype.sqlTransactionFailed): Deleted.
1872         (WebInspector.DatabaseObserver): Deleted.
1873         * UserInterface/Protocol/Legacy/6.0/InspectorBackendCommands.js: Removed.
1874         * UserInterface/Views/CookieStorageContentView.js:
1875         (WebInspector.CookieStorageContentView.prototype._deleteCallback):
1876         (WebInspector.CookieStorageContentView):
1877         * UserInterface/Views/DOMTreeContentView.js:
1878         (WebInspector.DOMTreeContentView.prototype._updateCompositingBordersButtonToMatchPageSettings): Deleted.
1879         * UserInterface/Views/EventListenerSectionGroup.js:
1880         (WebInspector.EventListenerSectionGroup.prototype._functionTextOrLink):
1881         (WebInspector.EventListenerSectionGroup):
1882         * UserInterface/Views/LayoutTimelineView.js:
1883         (WebInspector.LayoutTimelineView.prototype._showHighlightForRecord):
1884         * UserInterface/Views/QuickConsole.js:
1885         (WebInspector.QuickConsole):
1886         (WebInspector.QuickConsole.prototype._createExecutionContextPathComponentFromFrame):
1887         (WebInspector.QuickConsole.prototype._frameAdded): Deleted.
1888         (WebInspector.QuickConsole.prototype._frameRemoved): Deleted.
1889         (WebInspector.QuickConsole.prototype._frameMainResourceChanged): Deleted.
1890         * UserInterface/Views/ScriptTimelineDataGridNode.js:
1891         (WebInspector.ScriptTimelineDataGridNode.prototype.get data):
1892         * UserInterface/Views/SourceCodeTextEditor.js:
1893         (WebInspector.SourceCodeTextEditor.prototype._makeTypeTokenAnnotator):
1894         (WebInspector.SourceCodeTextEditor.prototype._makeBasicBlockAnnotator):
1895         * Versions/Inspector-iOS-6.0.json: Removed.
1896         * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
1897         * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:
1898
1899 2015-08-26  Nikita Vasilyev  <nvasilyev@apple.com>
1900
1901         Web Inspector: Command-Enter should evaluate selected JS in Debugger/Sources
1902         https://bugs.webkit.org/show_bug.cgi?id=148368
1903
1904         Reviewed by Timothy Hatcher.
1905
1906         * UserInterface/Controllers/CodeMirrorCompletionController.js:
1907         (WebInspector.CodeMirrorCompletionController):
1908         (WebInspector.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions):
1909         Evaluate selected text in the console only for JS and HTML resources. HTML resources
1910         should be allowed because they can have commented out (inside <!-- -->) and
1911         inline (onclick="") JavaScript.
1912
1913 2015-08-25  Brian Burg  <bburg@apple.com>
1914
1915         Web Inspector: no need to allocate protocolErrors array for every dispatched backend command
1916         https://bugs.webkit.org/show_bug.cgi?id=146466
1917
1918         Reviewed by Joseph Pecoraro.
1919
1920         * UserInterface/TestStub.html: Fix a typo, this property exists on ProtocolTest.
1921
1922 2015-08-26  Matt Baker  <mattbaker@apple.com>
1923
1924         Web Inspector: Rendering Frames legend item checkbox colors are too light
1925         https://bugs.webkit.org/show_bug.cgi?id=148465
1926
1927         Reviewed by Timothy Hatcher.
1928
1929         * UserInterface/Views/ChartDetailsSectionRow.js:
1930         (WebInspector.ChartDetailsSectionRow.prototype._addCheckboxColorFilter):
1931         Gamma primitive should use an "exponent" attribute instead of "value".
1932         Increased gamma exponent to 1.4.
1933
1934 2015-08-26  Nikita Vasilyev  <nvasilyev@apple.com>
1935
1936         Web Inspector: Make DOM node attribute changes highlighting less obnoxious
1937         https://bugs.webkit.org/show_bug.cgi?id=148050
1938
1939         Reviewed by Timothy Hatcher.
1940
1941         * UserInterface/Views/DOMTreeOutline.css:
1942         (@keyframes node-state-changed): Change color to a light green.
1943         (.node-state-changed): Add a slight ease-in for the animation function.
1944
1945 2015-08-26  Joseph Pecoraro  <pecoraro@apple.com>
1946
1947         Web Inspector: Add Refresh button to Cookie Content View
1948         https://bugs.webkit.org/show_bug.cgi?id=148468
1949
1950         Reviewed by Timothy Hatcher.
1951
1952         * UserInterface/Views/CookieStorageContentView.js:
1953         (WebInspector.CookieStorageContentView):
1954         (WebInspector.CookieStorageContentView.prototype.get navigationItems):
1955         (WebInspector.CookieStorageContentView.prototype._refreshButtonClicked):
1956
1957 2015-08-25  Brian Burg  <bburg@apple.com>
1958
1959         Web Inspector: message dispatch metrics should use high-resolution timing data
1960         https://bugs.webkit.org/show_bug.cgi?id=135467
1961
1962         Reviewed by Timothy Hatcher.
1963
1964         Use performance.now if it's available, otherwise fallback to Date.now().
1965         Format timestamps with fixed decimal point, and sprinkle some ES6.
1966
1967         * UserInterface/Base/Utilities.js:
1968         (timestamp): Added.
1969         * UserInterface/Protocol/InspectorBackend.js:
1970         (InspectorBackendClass):
1971         (InspectorBackendClass.prototype._sendCommandToBackendWithCallback):
1972         (InspectorBackendClass.prototype._dispatchEvent):
1973         * UserInterface/Protocol/MessageDispatcher.js:
1974         (WebInspector.dispatchNextQueuedMessageFromBackend):
1975         (WebInspector.dispatchMessageFromBackend): Be consistent about using `this`.
1976
1977 2015-08-25  Matt Baker  <mattbaker@apple.com>
1978
1979         Web Inspector: Rendering Frames pie chart should use the needsLayout/updateLayout idiom
1980         https://bugs.webkit.org/show_bug.cgi?id=148412
1981
1982         Reviewed by Timothy Hatcher.
1983
1984         * UserInterface/Views/ChartDetailsSectionRow.js:
1985         (WebInspector.ChartDetailsSectionRow):
1986         (WebInspector.ChartDetailsSectionRow.prototype.set innerLabel):
1987         (WebInspector.ChartDetailsSectionRow.prototype.set innerRadius):
1988         Schedule a layout.
1989         (WebInspector.ChartDetailsSectionRow.prototype.set data): Deleted.
1990         Replaced by addItem, setItemValue, and clearItems.
1991         (WebInspector.ChartDetailsSectionRow.prototype.addItem):
1992         (WebInspector.ChartDetailsSectionRow.prototype.setItemValue):
1993         (WebInspector.ChartDetailsSectionRow.prototype.clearItems):
1994         Add/update data points and schedule a layout.
1995         (WebInspector.ChartDetailsSectionRow.prototype._needsLayout):
1996         (WebInspector.ChartDetailsSectionRow.prototype.updateLayout):
1997         Update legend and draw pie chart.
1998         (WebInspector.ChartDetailsSectionRow.prototype._createLegend): Deleted.
1999         Refactored as _updateLegend.
2000         (WebInspector.ChartDetailsSectionRow.prototype._refresh): Deleted.
2001         Refactored as updateLayout.
2002
2003         * UserInterface/Views/TimelineSidebarPanel.js:
2004         (WebInspector.TimelineSidebarPanel):
2005         Add chart data points once.
2006         (WebInspector.TimelineSidebarPanel._refreshFrameSelectionChart):
2007         Update chart values.
2008
2009 2015-08-24  Brian Burg  <bburg@apple.com>
2010
2011         Web Inspector: add protocol test for existing error handling performed by the backend
2012         https://bugs.webkit.org/show_bug.cgi?id=147097
2013
2014         Reviewed by Joseph Pecoraro.
2015
2016         Add a way to send raw messages to the backend while still awaiting on responses.
2017         This is necessary to test protocol error handling in the inspector backend.
2018
2019         * UserInterface/Test/InspectorProtocol.js:
2020         (InspectorProtocol.sendCommand):
2021         (InspectorProtocol.awaitCommand): Use awaitMessage internally.
2022         (InspectorProtocol.awaitMessage): Added. Use a dummy requestId if none is supplied.
2023         (InspectorProtocol._sendMessage): Added.
2024         (InspectorProtocol.dispatchMessageFromBackend):
2025         Reject with the error object instead of the error message, so error code/data can be checked.
2026         (InspectorProtocol.sendMessage): Deleted, it is now a private method.
2027
2028 2015-08-24  Timothy Hatcher  <timothy@apple.com>
2029
2030         Web Inspector: Change webkitAnimationEnd use, should be animationEnd
2031         https://bugs.webkit.org/show_bug.cgi?id=148385
2032
2033         Reviewed by Joseph Pecoraro.
2034
2035         * UserInterface/Views/DOMTreeElement.js:
2036         (WebInspector.DOMTreeElement.prototype.emphasizeSearchHighlight):
2037         * UserInterface/Views/DashboardContainerView.js:
2038         (WebInspector.DashboardContainerView.prototype._showDashboardView.animationEnded):
2039         (WebInspector.DashboardContainerView.prototype._showDashboardView):
2040         (WebInspector.DashboardContainerView.prototype._hideDashboardView.animationEnded):
2041         (WebInspector.DashboardContainerView.prototype._hideDashboardView):
2042         * UserInterface/Views/DefaultDashboardView.js:
2043         (WebInspector.DefaultDashboardView.prototype._setConsoleItemValue.animationEnded):
2044         (WebInspector.DefaultDashboardView.prototype._setConsoleItemValue):
2045         * UserInterface/Views/TextEditor.js:
2046         (WebInspector.TextEditor.prototype.revealPosition.revealAndHighlightLine):
2047         (WebInspector.TextEditor.prototype.revealPosition):
2048         (WebInspector.TextEditor.prototype._revealSearchResult):
2049
2050 2015-08-24  Nikita Vasilyev  <nvasilyev@apple.com>
2051
2052         REGRESSION (r188581): Web Inspector: Console user command isn't visible when it's expected to be
2053         https://bugs.webkit.org/show_bug.cgi?id=148283
2054
2055         One of the improvements of r188581 "Option-Enter should commit console command
2056         without erasing the prompt" was not to show a console user command if it's the
2057         same as the previous one.
2058
2059         However, there could be a lot of other messages between the last two user
2060         commands - console.log, CSS warnings, etc. In that case we should show a console
2061         user command again by resetting _lastCommitted.
2062
2063         Reviewed by Timothy Hatcher.
2064
2065         * UserInterface/Controllers/JavaScriptLogViewController.js:
2066         (WebInspector.JavaScriptLogViewController):
2067         (WebInspector.JavaScriptLogViewController.prototype.startNewSession):
2068         (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessageView):
2069         Reset _lastCommitted for all messages except for user commands and use command results.
2070
2071 2015-08-24  Matt Baker  <mattbaker@apple.com>
2072
2073         Web Inspector: Rendering Frames filter checkboxes all become checked during recording
2074         https://bugs.webkit.org/show_bug.cgi?id=148375
2075
2076         Reviewed by Timothy Hatcher.
2077
2078         * UserInterface/Views/ChartDetailsSectionRow.js:
2079         (WebInspector.ChartDetailsSectionRow.prototype._createLegend):
2080         Removed incorrect code that forced checked to true.
2081
2082         * UserInterface/Views/TimelineSidebarPanel.js:
2083         (WebInspector.TimelineSidebarPanel._refreshFrameSelectionChart):
2084         Persist legend item checkbox state when updating the chart.
2085
2086 2015-08-23  Matt Baker  <mattbaker@apple.com>
2087
2088         Web Inspector: Filtered style not applied to graph elements during timeline recording
2089         https://bugs.webkit.org/show_bug.cgi?id=148339
2090
2091         Reviewed by Brian Burg.
2092
2093         * UserInterface/Views/NavigationSidebarPanel.js:
2094         (WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged):
2095         Check for hidden state change when applying filters to newly added tree elements.
2096
2097 2015-08-23  Timothy Hatcher  <timothy@apple.com>
2098
2099         Web Inspector: Drop webkit prefixes from animation, keyframes and transform
2100         https://bugs.webkit.org/show_bug.cgi?id=148364
2101
2102         Reviewed by Darin Adler.
2103
2104         * UserInterface/Views/BreakpointTreeElement.css:
2105         (.breakpoint-generic-line-icon .icon > span):
2106         (.data-updated.breakpoint-generic-line-icon .icon > span):
2107         * UserInterface/Views/ColorPicker.css:
2108         (.color-picker > .slider):
2109         * UserInterface/Views/DashboardContainerView.css:
2110         (.toolbar .dashboard):
2111         (.toolbar .dashboard.slide-out-up):
2112         (.toolbar .dashboard.slide-out-down):
2113         (.toolbar .dashboard.slide-in-up):
2114         (.toolbar .dashboard.slide-in-down):
2115         (@keyframes slide-top-edge):
2116         (@keyframes slide-bottom-edge):
2117         (@-webkit-keyframes slide-top-edge): Deleted.
2118         (@-webkit-keyframes slide-bottom-edge): Deleted.
2119         * UserInterface/Views/DebuggerDashboardView.css:
2120         (.dashboard.debugger .navigation-bar .item.button > .glyph):
2121         (@keyframes pulse-pause-button):
2122         (@-webkit-keyframes pulse-pause-button): Deleted.
2123         * UserInterface/Views/DefaultDashboardView.css:
2124         (.toolbar .dashboard.default > .item.pulsing):
2125         (@keyframes console-item-pulse):
2126         (@-webkit-keyframes console-item-pulse): Deleted.
2127         * UserInterface/Views/GoToLineDialog.css:
2128         (.go-to-line-dialog):
2129         * UserInterface/Views/HoverMenu.css:
2130         (.hover-menu):
2131         * UserInterface/Views/IndeterminateProgressSpinner.css:
2132         (@keyframes discrete-spinner):
2133         (.indeterminate-progress-spinner):
2134         (@-webkit-keyframes discrete-spinner): Deleted.
2135         * UserInterface/Views/Main.css:
2136         (.bouncy-highlight):
2137         (@keyframes bouncy-highlight-animation):
2138         (@-webkit-keyframes bouncy-highlight-animation): Deleted.
2139         * UserInterface/Views/ProbeSetDataGrid.css:
2140         (.details-section.probe-set .data-grid tr.revealed.highlighted):
2141         (@keyframes blink-frame-highlight):
2142         (.details-section.probe-set .data-grid > tr.data-updated):
2143         (@keyframes blink-probe-frame):
2144         (@-webkit-keyframes blink-frame-highlight): Deleted.
2145         (@-webkit-keyframes blink-probe-frame): Deleted.
2146         * UserInterface/Views/TextEditor.css:
2147         (.text-editor > .CodeMirror .highlighted):
2148         (@keyframes text-editor-highlight-fadeout):
2149         (.text-editor > .CodeMirror .hovered-expression-highlight):
2150         (@keyframes text-editor-hovered-expression-highlight-fadeout):
2151         (@-webkit-keyframes text-editor-highlight-fadeout): Deleted.
2152         (@-webkit-keyframes text-editor-hovered-expression-highlight-fadeout): Deleted.
2153         * UserInterface/Views/TimelineOverview.css:
2154         (.timeline-overview.frames > .timeline-ruler > .markers > .divider):
2155         (.timeline-overview.frames > .timeline-ruler:not(.both-handles-clamped) > .selection-handle.right):
2156         (.timeline-overview.frames > .timeline-ruler:not(.both-handles-clamped) > .shaded-area.right):
2157         * UserInterface/Views/TimelineRuler.css:
2158         (.timeline-ruler > .header > .divider):
2159         (.timeline-ruler > .markers > .divider):
2160         (.timeline-ruler > .markers > .marker):
2161         (.timeline-ruler > .selection-handle.left):
2162         (.timeline-ruler > .selection-handle.right):
2163
2164 2015-08-21  Saam barati  <sbarati@apple.com>
2165
2166         Web Inspector: Type profiler shows 'Undefined' annotation for functions with no return statements
2167         https://bugs.webkit.org/show_bug.cgi?id=146882
2168
2169         Reviewed by Joseph Pecoraro.
2170
2171         * UserInterface/Controllers/TypeTokenAnnotator.js:
2172         (WebInspector.TypeTokenAnnotator.prototype._insertTypeToken):
2173         * UserInterface/Models/ScriptSyntaxTree.js:
2174         (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):
2175         (WebInspector.ScriptSyntaxTree):
2176
2177 2015-08-21  Joseph Pecoraro  <pecoraro@apple.com>
2178
2179         Web Inspector: WebInspector.domTreeManager.regionLayoutUpdated does not exist
2180         https://bugs.webkit.org/show_bug.cgi?id=148348
2181
2182         Reviewed by Timothy Hatcher.
2183
2184         * UserInterface/Protocol/CSSObserver.js:
2185         (WebInspector.CSSObserver.prototype.regionLayoutUpdated):
2186         Just do the same as the new event name.
2187
2188 2015-08-21  Brian Burg  <bburg@apple.com>
2189
2190         Web Inspector: clean up uses of `new` with zero-argument constructors and factory methods
2191         https://bugs.webkit.org/show_bug.cgi?id=148311
2192
2193         Reviewed by Timothy Hatcher.
2194
2195         * UserInterface/Protocol/InspectorFrontendHostStub.js:
2196         * UserInterface/Views/ClusterContentView.js:
2197         (WebInspector.ClusterContentView):
2198         * UserInterface/Views/ColorPicker.js:
2199         (WebInspector.ColorPicker):
2200         * UserInterface/Views/ContentView.js:
2201         (WebInspector.ContentView.createFromRepresentedObject): This was causing a console assertion
2202         when a breakpoint tree element was selected and the inspector tried to restore the view state
2203         after a reload or back/forward navigation.
2204
2205         * UserInterface/Views/NavigationSidebarPanel.js:
2206         (WebInspector.NavigationSidebarPanel):
2207         * UserInterface/Views/TimelineRecordingContentView.js:
2208         (WebInspector.TimelineRecordingContentView):
2209
2210 2015-08-20  Brian Burg  <bburg@apple.com>
2211
2212         Web Inspector: add a regression test for the fix introduced in r188679
2213         https://bugs.webkit.org/show_bug.cgi?id=148223
2214
2215         Reviewed by Joseph Pecoraro.
2216
2217         Turns out that we were possibly leaking a single DOMTree on reload.
2218         Always clear the main frame's DOMTree as well as those of sub-frames.
2219
2220         * UserInterface/Base/Object.js: Add back single-fire listeners.
2221         (WebInspector.Object.singleFireEventListener.let.wrappedCallback):
2222         (WebInspector.Object.singleFireEventListener):
2223         (WebInspector.Object.retainedObjectsWithPrototype):
2224         (WebInspector.Object.prototype.singleFireEventListener):
2225         (WebInspector.Object.prototype.retainedObjectsWithPrototype):
2226         * UserInterface/Models/Frame.js:
2227         (WebInspector.Frame.prototype.removeAllChildFrames): Clear own tree too.
2228
2229 2015-08-20  Joseph Pecoraro  <pecoraro@apple.com>
2230
2231         Web Inspector: Better Remember open tab types and order if using JSContext inspector
2232         https://bugs.webkit.org/show_bug.cgi?id=148285
2233
2234         Reviewed by Timothy Hatcher.
2235
2236         * UserInterface/Base/Main.js:
2237         (WebInspector.contentLoaded):
2238         (WebInspector.activateExtraDomains):
2239         Save and restore extra domain related tabs at the expected saved index.
2240
2241         (WebInspector._rememberOpenTabs):
2242         Keep unsupported tab types in the setting so when they are supported they open.
2243
2244         * UserInterface/Base/Utilities.js:
2245         Add a helper for inserting a single object into an array.
2246
2247 2015-08-20  Nikita Vasilyev  <nvasilyev@apple.com>
2248
2249         Web Inspector: inline errors/warnings are taller than the line height
2250         https://bugs.webkit.org/show_bug.cgi?id=148232
2251
2252         Reviewed by Timothy Hatcher.
2253
2254         * UserInterface/Views/SourceCodeTextEditor.css:
2255         (.source-code.text-editor > .CodeMirror .issue-widget.inline):
2256         (.source-code.text-editor > .CodeMirror .issue-widget.inline > .text):
2257
2258 2015-08-20  Joseph Pecoraro  <pecoraro@apple.com>
2259
2260         JSContext Inspector: Uncaught Exception opening Search Tab
2261         https://bugs.webkit.org/show_bug.cgi?id=148284
2262
2263         Reviewed by Timothy Hatcher.
2264
2265         * UserInterface/Views/SearchSidebarPanel.js:
2266         (WebInspector.SearchSidebarPanel):
2267         This is copied / pasted code that shouldn't apply to the Search tab.
2268         We want to show results under Resources in the Search tab.
2269
2270 2015-08-20  Nikita Vasilyev  <nvasilyev@apple.com>
2271
2272         Web Inspector: Truncate data URIs
2273         https://bugs.webkit.org/show_bug.cgi?id=148212
2274
2275         Reviewed by Timothy Hatcher.
2276
2277         * UserInterface/Base/URLUtilities.js:
2278         (parseURL):
2279         Exit early to avoid an expensive RegExp match on a potentially very large data URI.
2280
2281         (parseQueryString):
2282         Fix typo.
2283
2284         (WebInspector.displayNameForURL):
2285         (WebInspector.truncateURL):
2286         By default, only show first and last 3 characters of data URIs.
2287
2288         * UserInterface/Models/Resource.js:
2289         (WebInspector.Resource.prototype.get displayURL):
2290         For tooltips, show first and last 32 characters of data URIs.
2291
2292         * UserInterface/Models/SourceCodeLocation.js:
2293         (WebInspector.SourceCodeLocation.prototype._locationString):
2294         * UserInterface/Views/ResourceTreeElement.js:
2295         (WebInspector.ResourceTreeElement.prototype._updateToolTip):
2296
2297 2015-08-20  Devin Rousso  <drousso@apple.com>
2298
2299         Web Inspector: Add flex alignment section to Visual sidebar
2300         https://bugs.webkit.org/show_bug.cgi?id=148243
2301
2302         Reviewed by Timothy Hatcher.
2303
2304         Uses select keyword pickers to contain the list of possible values.  Also supports
2305         the upcoming Grid layout keywords in the advanced keyword list.
2306
2307         * Localizations/en.lproj/localizedStrings.js:
2308         * UserInterface/Views/VisualStyleDetailsPanel.js:
2309         (WebInspector.VisualStyleDetailsPanel):
2310         (WebInspector.VisualStyleDetailsPanel.prototype._populateFlexboxSection):
2311         (WebInspector.VisualStyleDetailsPanel.prototype._populateAlignmentSection):
2312
2313 2015-08-20  Devin Rousso  <drousso@apple.com>
2314
2315         Web Inspector: Labels in the computed panel are shifted when a filter is applieds
2316         https://bugs.webkit.org/show_bug.cgi?id=148250
2317
2318         Reviewed by Timothy Hatcher.
2319
2320         Added to the selectors for filtering to ensure they only apply to the rules panel.
2321
2322         * UserInterface/Views/RulesStyleDetailsPanel.css:
2323         (.sidebar > .panel.details.css-style > .content.filter-in-progress > .rules .label):
2324         (.sidebar > .panel.details.css-style > .content.filter-in-progress > .rules .label:not(.filter-section-non-matching) ~ .label):
2325         (.sidebar > .panel.details.css-style > .content.filter-in-progress > .rules .label.filter-matching-label):
2326         (.sidebar > .panel.details.css-style > .content.filter-in-progress > .rules .label:not(.filter-section-non-matching) + .label.filter-matching-label:not(.filter-section-non-matching)):
2327         (.sidebar > .panel.details.css-style > .content.filter-in-progress > .rules .new-rule):
2328         (.sidebar > .panel.details.css-style > .content.filter-in-progress > .rules .style-declaration-section:not(.filter-section-non-matching) ~ .label:not(.filter-section-non-matching)):
2329         (@media (-webkit-min-device-pixel-ratio: 2)):
2330         (.sidebar > .panel.details.css-style > .content.filter-in-progress .label): Deleted.
2331         (.sidebar > .panel.details.css-style > .content.filter-in-progress .label:not(.filter-section-non-matching) ~ .label): Deleted.
2332         (.sidebar > .panel.details.css-style > .content.filter-in-progress .label.filter-matching-label): Deleted.
2333         (.sidebar > .panel.details.css-style > .content.filter-in-progress .label:not(.filter-section-non-matching) + .label.filter-matching-label:not(.filter-section-non-matching)): Deleted.
2334         (.sidebar > .panel.details.css-style > .content.filter-in-progress .new-rule): Deleted.
2335         (.sidebar > .panel.details.css-style > .content.filter-in-progress .style-declaration-section:not(.filter-section-non-matching) ~ .label:not(.filter-section-non-matching)): Deleted.
2336
2337 2015-08-20  Devin Rousso  <drousso@apple.com>
2338
2339         Web Inspector: Fix "attempted to assign to readonly property" in Visual editor links
2340         https://bugs.webkit.org/show_bug.cgi?id=148264
2341
2342         Reviewed by Timothy Hatcher.
2343
2344         * UserInterface/Views/VisualStylePropertyEditorLink.js:
2345         (WebInspector.VisualStylePropertyEditorLink.prototype.set linked):
2346         No longer attempts to set the "hidden" attribute of the link icons before they exist.
2347
2348 2015-08-20  Devin Rousso  <drousso@apple.com>
2349
2350         Web Inspector: Visual editor adds extra spaces to styles with no properties
2351         https://bugs.webkit.org/show_bug.cgi?id=148242
2352
2353         Reviewed by Timothy Hatcher.
2354
2355         * UserInterface/Models/CSSStyleDeclaration.js:
2356         (WebInspector.CSSStyleDeclaration.prototype.set text):
2357         Now trims the text and, if the resulting string has no length or the style is inline,
2358         replaces the text to be set with the trimmed text.
2359
2360         * UserInterface/Views/VisualStylePropertyCombiner.js:
2361         (WebInspector.VisualStylePropertyCombiner.prototype.modifyPropertyText):
2362         Removed unnecessary trim.
2363
2364 2015-08-20  Devin Rousso  <drousso@apple.com>
2365
2366         Web Inspector: Font size between computed and set value is off in visual styles popups
2367         https://bugs.webkit.org/show_bug.cgi?id=148226
2368
2369         Reviewed by Timothy Hatcher.
2370
2371         * UserInterface/Views/VisualStylePropertyEditor.css:
2372         (.visual-style-property-container > .visual-style-property-value-container > .visual-style-special-property-placeholder):
2373         Increased font-size to match the font-size of the overlaid select element.
2374
2375 2015-08-20  Matt Baker  <mattbaker@apple.com>
2376
2377         Web Inspector: Filtered frames shouldn't be selectable in the Rendering Frames overview graph
2378         https://bugs.webkit.org/show_bug.cgi?id=148253
2379
2380         Reviewed by Timothy Hatcher.
2381
2382         * UserInterface/Views/RenderingFrameTimelineOverviewGraph.js:
2383         Check record's filtered state before setting new frame selection.
2384
2385 2015-08-20  Devin Rousso  <drousso@apple.com>
2386
2387         Web Inspector: visual style number inputs don't style the units correctly
2388         https://bugs.webkit.org/show_bug.cgi?id=148222
2389
2390         Reviewed by Timothy Hatcher.
2391
2392         * UserInterface/Views/VisualStyleNumberInputBox.js:
2393         (WebInspector.VisualStyleNumberInputBox.prototype.set value):
2394         Added extra checks to see if the number input has a value when setting the value on the editor.
2395
2396 2015-08-20  Matt Baker  <mattbaker@apple.com>
2397
2398         Web Inspector: Filtered frames should be styled differently in the Rendering Frames overview graph
2399         https://bugs.webkit.org/show_bug.cgi?id=147421
2400
2401         Reviewed by Timothy Hatcher.
2402
2403         * UserInterface/Views/NavigationSidebarPanel.js:
2404         (WebInspector.NavigationSidebarPanel.prototype.representedObjectWasFiltered):
2405         (WebInspector.NavigationSidebarPanel.prototype._updateFilter):
2406         Inform derived sidebar of tree element filter state changes.
2407
2408         * UserInterface/Views/RenderingFrameTimelineOverviewGraph.js:
2409         (WebInspector.RenderingFrameTimelineOverviewGraph.prototype.recordWasFiltered):
2410         (WebInspector.RenderingFrameTimelineOverviewGraph.prototype.updateLayout):
2411         Update filtered frame style when a record's state changes, and during layout.
2412
2413         * UserInterface/Views/TimelineOverview.js:
2414         * UserInterface/Views/TimelineOverviewGraph.js:
2415         (WebInspector.TimelineOverviewGraph.prototype.recordWasFiltered):
2416         Allow setting a record's filtered state for a given timeline in the overview.
2417
2418         * UserInterface/Views/TimelineRecordFrame.css:
2419         (.timeline-record-frame.filtered > .frame):
2420         New filtered frame style.
2421
2422         * UserInterface/Views/TimelineRecordFrame.js:
2423         (WebInspector.TimelineRecordFrame.prototype.get filtered):
2424         (WebInspector.TimelineRecordFrame.prototype.set filtered):
2425
2426         * UserInterface/Views/TimelineRecordingContentView.js:
2427         (WebInspector.TimelineRecordingContentView.prototype.recordWasFiltered):
2428
2429         * UserInterface/Views/TimelineSidebarPanel.js:
2430         (WebInspector.TimelineSidebarPanel.prototype.representedObjectWasFiltered):
2431         (WebInspector.TimelineSidebarPanel.prototype.matchTreeElementAgainstCustomFilters):
2432         Apply task filters to RenderingFrameTimelineRecords and their immediate children.
2433
2434 2015-08-20  Brian Burg  <bburg@apple.com>
2435
2436         Web Inspector: console assertion when hitting breakpoint after auto-recording ends
2437         https://bugs.webkit.org/show_bug.cgi?id=148225
2438
2439         Reviewed by Timothy Hatcher.
2440
2441         Add checks for the precondition to starting/stopping time updates.
2442
2443         * UserInterface/Views/TimelineRecordingContentView.js:
2444         (WebInspector.TimelineRecordingContentView.prototype._capturingStarted):
2445         (WebInspector.TimelineRecordingContentView.prototype._debuggerPaused):
2446         (WebInspector.TimelineRecordingContentView.prototype._debuggerResumed):
2447
2448 2015-08-19  Brian Burg  <bburg@apple.com>
2449
2450         Web Inspector: add TestHarness option to tee all commands to system console
2451         https://bugs.webkit.org/show_bug.cgi?id=148181
2452
2453         Reviewed by Joseph Pecoraro.
2454
2455         It is currently difficult to trace what's going on when a test times out
2456         on a buildbot instance. The existing option for forcing debug logging can
2457         still drop messages that don't make it from the inspector to the test page.
2458
2459         This patch adds an option which logs all TestHarness commands directly to
2460         stderr in the Inspector instance using InspectorFrontendHost::unbufferedLog.
2461
2462         Clean up how existing harness logging code calls into each other. Extract
2463         the stringifying code that is duplicated everywhere.
2464
2465         * UserInterface/Test.html: Reorganize options and add new option.
2466         * UserInterface/Test/FrontendTestHarness.js:
2467         (FrontendTestHarness.prototype.completeTest):
2468         (FrontendTestHarness.prototype.addResult):
2469         (FrontendTestHarness.prototype.debugLog):
2470         (FrontendTestHarness.prototype.testPageDidLoad):
2471         (FrontendTestHarness.prototype._resendResults):
2472         (FrontendTestHarness):
2473         * UserInterface/Test/ProtocolTestHarness.js:
2474         (ProtocolTestHarness.prototype.completeTest):
2475         (ProtocolTestHarness.prototype.addResult):
2476         (ProtocolTestHarness.prototype.debugLog):
2477         * UserInterface/Test/TestHarness.js:
2478         (TestHarness.prototype.log):
2479         (TestHarness.prototype.assert):
2480         (TestHarness.prototype.expectThat):
2481         (TestHarness.messageAsString):
2482         (TestHarness):
2483         * UserInterface/TestStub.html: Reorganize options and add new option.
2484
2485 2015-08-20  Joseph Pecoraro  <pecoraro@apple.com>
2486
2487         Web Inspector: Remove unused temporary variable
2488         https://bugs.webkit.org/show_bug.cgi?id=148215
2489
2490         Reviewed by Timothy Hatcher.
2491
2492         * UserInterface/Views/VisualStyleDetailsPanel.js:
2493         (WebInspector.VisualStyleDetailsPanel):
2494
2495 2015-08-19  Devin Rousso  <drousso@apple.com>
2496
2497         Web Inspector: Visual styles panel does not work with pseudo-elements
2498         https://bugs.webkit.org/show_bug.cgi?id=148187
2499
2500         Reviewed by Timothy Hatcher.
2501
2502         If the inline style does not exist, such as for pseudo-elements, default to the first matched rule.
2503
2504         * UserInterface/Views/VisualStyleSelectorSection.js:
2505         (WebInspector.VisualStyleSelectorSection.prototype.update):
2506
2507 2015-08-19  Joseph Pecoraro  <pecoraro@apple.com>
2508
2509         Web Inspector: DOMTree leaks on main resource changes
2510         https://bugs.webkit.org/show_bug.cgi?id=148158
2511
2512         Reviewed by Timothy Hatcher.
2513
2514         * UserInterface/Models/DOMTree.js:
2515         (WebInspector.DOMTree.prototype.disconnect):
2516         Add a way to disconnect the DOMTree and allow it to get garbage collected.
2517
2518         (WebInspector.DOMTree.prototype.invalidate.performInvalidate):
2519         (WebInspector.DOMTree.prototype.invalidate):
2520         (WebInspector.DOMTree.prototype._requestRootDOMNode):
2521         (WebInspector.DOMTree.prototype._framePageExecutionContextChanged):
2522         Remove some uses of the delete operator.
2523
2524         * UserInterface/Models/Frame.js:
2525         (WebInspector.Frame.prototype.removeChildFrame):
2526         (WebInspector.Frame.prototype.removeAllChildFrames):
2527         (WebInspector.Frame.prototype._detachFromParentFrame):
2528         When a frame gets removed from its parent, disconnect its DOMTree.
2529
2530 2015-08-19  Devin Rousso  <drousso@apple.com>
2531
2532         Web Inspector: The first style in the Rules panel for pseudo-elements needs padding
2533         https://bugs.webkit.org/show_bug.cgi?id=148207
2534
2535         Reviewed by Timothy Hatcher.
2536
2537         * UserInterface/Views/RulesStyleDetailsPanel.css:
2538         (.sidebar > .panel.details.css-style .rules .label:first-child):
2539         If the first element in the Rules panel is a label, add some top padding.
2540
2541 2015-08-19  Devin Rousso  <drousso@apple.com>
2542
2543         Web Inspector: Committing a valid selector in the styles sidebar replaces the new selector with the old one
2544         https://bugs.webkit.org/show_bug.cgi?id=148206
2545
2546         Reviewed by Timothy Hatcher.
2547
2548         * UserInterface/Views/CSSStyleDeclarationSection.js:
2549         (WebInspector.CSSStyleDeclarationSection.prototype._markSelector):
2550         No longer unnecessarily refreshes the section if the selector is valid.
2551
2552 2015-08-19  Joseph Pecoraro  <pecoraro@apple.com>
2553
2554         Web Inspector: Uncaught Exceptions regarding PseudoElements / TemplateContent
2555         https://bugs.webkit.org/show_bug.cgi?id=148190
2556
2557         Reviewed by Brian Burg.
2558
2559         * UserInterface/Controllers/DOMTreeManager.js:
2560         (WebInspector.DOMTreeManager.prototype._unbind):
2561         Iterate over the values in the map, not the iterator pairs.
2562
2563         * UserInterface/Models/DOMNode.js:
2564         When removing a pseudo element, don't assume this._children
2565         exists, it may be null. So separate the two paths.
2566
2567 2015-08-19  Devin Rousso  <drousso@apple.com>
2568
2569         Web Inspector: long selectors in the visual editor sidebar can overflow
2570         https://bugs.webkit.org/show_bug.cgi?id=148185
2571
2572         Reviewed by Timothy Hatcher.
2573
2574         Selectors in the Visual editor sidebar are now clipped and use ellipses.
2575
2576         * UserInterface/Views/VisualStyleSelectorSection.css:
2577         (.details-section.visual-style-selector-section > .header > .current-selector):
2578         (.details-section.visual-style-selector-section:not(.collapsed) > .content):
2579         (.details-section.visual-style-selector-section > .content > .selectors > .selector-list > .section-divider > .titles):
2580         (.details-section.visual-style-selector-section > .content > .selectors > .selector-list > .section-divider > .titles > .title): Deleted.
2581
2582         * UserInterface/Views/VisualStyleSelectorTreeItem.css:
2583         (.item.visual-style-selector-item):
2584         (.item.visual-style-selector-item > .titles):
2585         (.item.visual-style-selector-item > input[type="checkbox"]):
2586         (.item.visual-style-selector-item > .icon):
2587
2588 2015-08-19  Joseph Pecoraro  <pecoraro@apple.com>
2589
2590         Web Inspector: Include Legacy Inspector JSON for iOS 9
2591         https://bugs.webkit.org/show_bug.cgi?id=148200
2592
2593         Reviewed by Timothy Hatcher.
2594
2595         * UserInterface/Protocol/Legacy/9.0/InspectorBackendCommands.js: Added.
2596         * Versions/Inspector-iOS-9.0.json: Added.
2597
2598 2015-08-19  Joseph Pecoraro  <pecoraro@apple.com>
2599
2600         Web Inspector: Update Copyright in minified / combined output
2601         https://bugs.webkit.org/show_bug.cgi?id=148201
2602
2603         Reviewed by Timothy Hatcher.
2604
2605         * Scripts/copy-user-interface-resources.pl:
2606         Include copyright comments from missing 2014 and 2015 contributors
2607         in the comment in the minified / combined Main.js.
2608
2609 2015-08-19  Joseph Pecoraro  <pecoraro@apple.com>
2610
2611         Web Inspector: Uncaught exception in inspector page while handling event DOMStorage.domStorageItemRemoved
2612         https://bugs.webkit.org/show_bug.cgi?id=148191
2613
2614         Reviewed by Brian Burg.
2615
2616         * UserInterface/Controllers/StorageManager.js:
2617         (WebInspector.StorageManager.prototype.itemsCleared):
2618         (WebInspector.StorageManager.prototype.itemRemoved):
2619         (WebInspector.StorageManager.prototype.itemAdded):
2620         (WebInspector.StorageManager.prototype.itemUpdated):
2621         Check if the DOMStorage for the identifier actually exists.
2622         Due to how the backend emits events, the page may have already
2623         navigated when we get a storage update for the previous page.
2624         In that case, we don't want to create a DOMStorage for the
2625         previous page if it doesn't exist.
2626
2627 2015-08-19  Brian Burg  <bburg@apple.com>
2628
2629         Web Inspector: use unprefixed CSS property 'filter' instead of '-webkit-filter'
2630         https://bugs.webkit.org/show_bug.cgi?id=148186
2631
2632         Reviewed by Dean Jackson.
2633
2634         * UserInterface/Views/BreakpointActionView.css:
2635         (.breakpoint-action-remove-button:active):
2636         * UserInterface/Views/CSSStyleDeclarationSection.css:
2637         (.style-declaration-section:not(.invalid-selector) > .header > .icon.toggle-able:hover):
2638         * UserInterface/Views/CSSStyleDeclarationTextEditor.css:
2639         (.css-style-text-editor > .CodeMirror .CodeMirror-lines .invalid-warning-marker.clickable:hover):
2640         (.css-style-text-editor > .CodeMirror .CodeMirror-lines .cubic-bezier-marker:hover):
2641         (.css-style-text-editor > .CodeMirror .CodeMirror-lines .cubic-bezier-marker:active):
2642         * UserInterface/Views/ChartDetailsSectionRow.css:
2643         (body.window-inactive .details-section > .content > .group > .row.chart > .chart-content > .legend > .legend-item > label > input[type=checkbox]):
2644         * UserInterface/Views/ChartDetailsSectionRow.js:
2645         (WebInspector.ChartDetailsSectionRow.prototype._addCheckboxColorFilter):
2646         * UserInterface/Views/NewTabContentView.css:
2647         (.new-tab.tab.content-view > .tab-item.disabled):
2648         (.new-tab.tab.content-view > .tab-item:not(.disabled):hover > .box):
2649         (.new-tab.tab.content-view > .tab-item:not(.disabled):active > .box):
2650         * UserInterface/Views/TimelineSidebarPanel.css:
2651         (.sidebar > .panel.navigation.timeline > .status-bar > .record-glyph):
2652         (.sidebar > .panel.navigation.timeline > .status-bar > .record-glyph:hover):
2653         (.sidebar > .panel.navigation.timeline > .status-bar > .record-glyph:active):
2654         * UserInterface/Views/VisualStyleKeywordIconList.css:
2655         (.visual-style-property-container.keyword-icon-list > .visual-style-property-value-container > .keyword-icon-list-container > .keyword-icon:not(.selected) > div):
2656         * UserInterface/Views/VisualStyleSelectorSection.css:
2657         (.details-section.visual-style-selector-section > .header > .controls > .visual-style-selector-section-add-rule):
2658
2659 2015-08-19  Joseph Pecoraro  <pecoraro@apple.com>
2660
2661         Web Inspector: Uncaught Exception while handling event DOM.pseudoElementRemoved reloading twitter pages
2662         https://bugs.webkit.org/show_bug.cgi?id=148180
2663
2664         Reviewed by Brian Burg.
2665
2666         * UserInterface/Views/DOMTreeElement.js:
2667         (WebInspector.DOMTreeElement.prototype._visibleChildren):
2668         DOMNode.children can be null before it is filled in.
2669
2670 2015-08-19  Brian Burg  <bburg@apple.com>
2671
2672         Web Inspector: InspectorTest should be a subclass of TestHarness
2673         https://bugs.webkit.org/show_bug.cgi?id=148079
2674
2675         Reviewed by Timothy Hatcher.
2676
2677         Extract the frontend test harness into a subclass. Delete some code that
2678         is now redundant. Sprinkle some ES6 syntax where possible.
2679
2680         Rewrite the code that redirects the Inspector page's console messages to
2681         the test page, since it didn't appear to work any more.
2682
2683         * UserInterface/Test.html: Add debug options here, and a wiki link.
2684         * UserInterface/Test/FrontendTestHarness.js: Added.
2685         (FrontendTestHarness):
2686         (FrontendTestHarness.prototype.completeTest):
2687         (FrontendTestHarness.prototype.addResult):
2688         (FrontendTestHarness.prototype.debugLog):
2689         (FrontendTestHarness.prototype.evaluateInPage):
2690         (FrontendTestHarness.prototype.expectNoError):
2691         (FrontendTestHarness.prototype.testPageDidLoad):
2692         (FrontendTestHarness.prototype.reloadPage):
2693         (FrontendTestHarness.prototype.redirectConsoleToTestOutput.createProxyConsoleHandler):
2694         (FrontendTestHarness.prototype.redirectConsoleToTestOutput):
2695         (FrontendTestHarness.prototype.reportUncaughtException):
2696         (FrontendTestHarness.prototype._resendResults):
2697         * UserInterface/Test/Test.js:
2698         (WebInspector.loaded):
2699         (WebInspector.UIString): Arrow it.
2700         (WebInspector.updateDockedState): Arrow it.
2701         (WebInspector.updateDockingAvailability): Arrow it.
2702         (InspectorTest.EventDispatcher.prototype.dispatchEvent): Deleted.
2703         (InspectorTest.EventDispatcher): Deleted.
2704         (InspectorTest.log): Deleted.
2705         (InspectorTest.assert): Deleted.
2706         (InspectorTest.expectThat): Deleted.
2707         (InspectorTest.debugLog): Deleted.
2708         (InspectorTest.expectNoError): Deleted.
2709         (InspectorTest.completeTest): Deleted.
2710         (InspectorTest.evaluateInPage): Deleted.
2711         (InspectorTest.addResult): Deleted.
2712         (InspectorTest._resendResults): Deleted.
2713         (InspectorTest.testPageDidLoad): Deleted.
2714         (InspectorTest.reloadPage): Deleted.
2715         (InspectorTest.reportUncaughtException): Deleted.
2716         * UserInterface/Test/TestSuite.js: Clean an unnecessary self = this.
2717         (SyncTestSuite.prototype.runTestCases):
2718         (SyncTestSuite):
2719         * UserInterface/TestStub.html: Add matching link to wiki.
2720
2721 2015-08-19  Brian Burg  <bburg@apple.com>
2722
2723         Web Inspector: split TestStub.js into multiple files and modernize it
2724         https://bugs.webkit.org/show_bug.cgi?id=148077
2725
2726         Reviewed by Timothy Hatcher.
2727  
2728         Since we want to share files between the two harnesses, split some of the parts
2729         into different files so not everything has to be included at once.
2730
2731         Rename InjectedTestHarness to just TestHarness. Update some code to use
2732         ES6 features where appropriate. Put test classes into Test/ directory.
2733
2734         * UserInterface/Base/TestStub.js: Removed.
2735         * UserInterface/Test.html:
2736         * UserInterface/Test/InspectorProtocol.js: Added.
2737         (InspectorProtocol.sendCommand):
2738         (InspectorProtocol.awaitCommand):
2739         (InspectorProtocol.awaitEvent.):
2740         (InspectorProtocol.awaitEvent):
2741         (InspectorProtocol.addEventListener):
2742         (InspectorProtocol.sendMessage):
2743         (InspectorProtocol.checkForError):
2744         (InspectorProtocol.dispatchMessageFromBackend):
2745         * UserInterface/Test/ProtocolTestHarness.js: Added.
2746         (ProtocolTestHarness.prototype.completeTest):
2747         (ProtocolTestHarness.prototype.addResult):
2748         (ProtocolTestHarness.prototype.debugLog):
2749         (ProtocolTestHarness.prototype.evaluateInPage):
2750         (ProtocolTestHarness):
2751         * UserInterface/Test/Test.js: Renamed from Source/WebInspectorUI/UserInterface/Base/Test.js.
2752         (WebInspector.loaded):
2753         (WebInspector.contentLoaded):
2754         (WebInspector.UIString):
2755         (WebInspector.updateDockedState):
2756         (WebInspector.updateDockingAvailability):
2757         (InspectorTest.EventDispatcher.prototype.dispatchEvent):
2758         (InspectorTest.EventDispatcher):
2759         (InspectorTest.log):
2760         (InspectorTest.assert):
2761         (InspectorTest.expectThat):
2762         (InspectorTest.debugLog):
2763         (InspectorTest.expectNoError):
2764         (InspectorTest.completeTest):
2765         (InspectorTest.evaluateInPage):
2766         (InspectorTest.addResult):
2767         (InspectorTest._resendResults):
2768         (InspectorTest.testPageDidLoad):
2769         (InspectorTest.reloadPage):
2770         (InspectorTest.reportUncaughtException):
2771         * UserInterface/Test/TestHarness.js: Added.
2772         (TestHarness):
2773         (TestHarness.prototype.completeTest):
2774         (TestHarness.prototype.addResult):
2775         (TestHarness.prototype.debugLog):
2776         (TestHarness.prototype.evaluateInPage):
2777         (TestHarness.prototype.createAsyncSuite):
2778         (TestHarness.prototype.createSyncSuite):
2779         (TestHarness.prototype.get logCount):
2780         (TestHarness.prototype.log):
2781         (TestHarness.prototype.assert):
2782         (TestHarness.prototype.expectThat):
2783         * UserInterface/Test/TestStub.js: Added.
2784         * UserInterface/Test/TestSuite.js: Added.
2785         (TestSuite):
2786         (TestSuite.prototype.runTestCasesAndFinish):
2787         (TestSuite.prototype.runTestCases):
2788         (TestSuite.prototype.get passCount):
2789         (TestSuite.prototype.get skipCount):
2790         (TestSuite.prototype.addTestCase):
2791         (AsyncTestSuite.prototype.runTestCasesAndFinish.finish):
2792         (AsyncTestSuite.prototype.runTestCasesAndFinish):
2793         (AsyncTestSuite.prototype.runTestCases):
2794         (AsyncTestSuite):
2795         (SyncTestSuite.prototype.runTestCasesAndFinish):
2796         (SyncTestSuite.prototype.runTestCases):
2797         (SyncTestSuite):
2798         * UserInterface/TestStub.html:
2799
2800 2015-08-19  Nikita Vasilyev  <nvasilyev@apple.com>
2801
2802         Web Inspector: Pressing Command-Enter should re-evaluate selected console user command
2803         https://bugs.webkit.org/show_bug.cgi?id=147918
2804
2805         Reviewed by Timothy Hatcher.
2806
2807         * UserInterface/Views/LogContentView.js:
2808         (WebInspector.LogContentView.prototype._keyDown):
2809         (WebInspector.LogContentView.prototype._commandEnterWasPressed):
2810         Only re-evaluate one selected user command.
2811
2812 2015-08-19  Nikita Vasilyev  <nvasilyev@apple.com>
2813
2814         REGRESSION (r188581): Web Inspector: Console user command isn't visible after reloading the page
2815         https://bugs.webkit.org/show_bug.cgi?id=148166
2816
2817         Reviewed by Timothy Hatcher.
2818
2819         * UserInterface/Controllers/JavaScriptLogViewController.js:
2820         (WebInspector.JavaScriptLogViewController.prototype.startNewSession):
2821
2822 2015-08-19  Nikita Vasilyev  <nvasilyev@apple.com>
2823
2824         REGRESSION (r188581): Web Inspector: Option-Enter no longer inserts a new line in the console
2825         https://bugs.webkit.org/show_bug.cgi?id=148165
2826
2827         Make Option-Enter insert a new line, as it was before r188581.
2828         Make Command-Enter keep executed command in the prompt.
2829
2830         Reviewed by Timothy Hatcher.
2831
2832         * UserInterface/Views/ConsolePrompt.js:
2833         (WebInspector.ConsolePrompt): Deleted.
2834         (WebInspector.ConsolePrompt.prototype._handleCommandEnterKey):
2835         (WebInspector.ConsolePrompt.prototype._handleOptionEnterKey): Deleted.
2836         (WebInspector.ConsolePrompt.prototype._handleCommandOptionEnterKey): Deleted.
2837
2838 2015-08-18  Joseph Pecoraro  <pecoraro@apple.com>
2839
2840         Web Inspector: Links for rules in <style> are incorrect, do not account for <style> offset in the document
2841         https://bugs.webkit.org/show_bug.cgi?id=148141
2842
2843         Reviewed by Brian Burg.
2844
2845         * UserInterface/Controllers/CSSStyleManager.js:
2846         (WebInspector.CSSStyleManager):
2847         (WebInspector.CSSStyleManager.prototype.get styleSheets):
2848         (WebInspector.CSSStyleManager.prototype.fetchStyleSheetsIfNeeded):
2849         (WebInspector.CSSStyleManager.prototype.styleSheetForIdentifier):
2850         (WebInspector.CSSStyleManager.prototype._mainResourceDidChange):
2851         Update more information about a StyleSheet when fetched.
2852
2853         * UserInterface/Models/CSSRule.js:
2854         (WebInspector.CSSRule.prototype.update):
2855         Eliminate usage of `delete`.
2856
2857         * UserInterface/Models/CSSStyleSheet.js:
2858         (WebInspector.CSSStyleSheet):
2859         (WebInspector.CSSStyleSheet.prototype.get startLineNumber):
2860         (WebInspector.CSSStyleSheet.prototype.get startColumnNumber):
2861         (WebInspector.CSSStyleSheet.prototype.hasInfo):
2862         (WebInspector.CSSStyleSheet.prototype.isInlineStyleTag):
2863         (WebInspector.CSSStyleSheet.prototype.updateInfo):
2864         Include more information about this stylesheet.
2865
2866         (WebInspector.CSSStyleSheet.prototype.offsetSourceCodeLocation):
2867         Include helper API to offset a source code location by the startLine/Column
2868         of this stylesheet itself, if it was an inline style.
2869
2870         (WebInspector.CSSStyleSheet.prototype.isInlineStyleAttributeStyleSheet):
2871         (WebInspector.CSSStyleSheet.prototype.markAsInlineStyleAttributeStyleSheet):
2872         (WebInspector.CSSStyleSheet.isInlineStyle): Deleted.
2873         (WebInspector.CSSStyleSheet.prototype.markAsInlineStyle): Deleted.
2874         Rename for clarity.
2875
2876         * UserInterface/Models/DOMNodeStyles.js:
2877         (WebInspector.DOMNodeStyles.prototype.refresh):
2878         Fetch stylesheet header information eagerly, so we have them early on.
2879
2880         (WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload):
2881         (WebInspector.DOMNodeStyles.prototype._parseRulePayload):
2882         Offset sourceCodeLocations for CSSRules based on the StyleSheet offset.
2883
2884         * UserInterface/Models/SourceCodeLocation.js:
2885         (WebInspector.SourceCodeLocation.prototype.update):
2886         Improve coding style.
2887
2888 2015-08-18  Devin Rousso  <drousso@apple.com>
2889
2890         Web Inspector: Add proper formatting for editing styles in the Visual Panel
2891         https://bugs.webkit.org/show_bug.cgi?id=148147
2892
2893         Reviewed by Timothy Hatcher.
2894
2895         Editing styles in the Visual styles panel now preserves whitespace in the related resource file.
2896
2897         * UserInterface/Views/VisualStylePropertyCombiner.js:
2898         (WebInspector.VisualStylePropertyCombiner):
2899         (WebInspector.VisualStylePropertyCombiner.prototype.modifyPropertyText):
2900
2901         * UserInterface/Views/VisualStylePropertyEditor.js:
2902         (WebInspector.VisualStylePropertyEditor):
2903         (WebInspector.VisualStylePropertyEditor.generateFormattedTextForNewProperty):
2904         (WebInspector.VisualStylePropertyEditor.prototype.modifyPropertyText):
2905
2906 2015-08-18  Devin Rousso  <drousso@apple.com>
2907
2908         Web Inspector: Add support for positioning Visual editors on non-retina displays
2909         https://bugs.webkit.org/show_bug.cgi?id=148160
2910
2911         Reviewed by Timothy Hatcher.
2912
2913         Cleans up the positioning, dimensions, and widths of the
2914         Visual editors on non-retina displays.
2915
2916         * UserInterface/Views/VisualStyleColorPicker.css:
2917         (.visual-style-property-container.input-color-picker > .visual-style-property-value-container > input):
2918
2919         * UserInterface/Views/VisualStyleDetailsPanel.css:
2920         (.sidebar > .panel.details.css-style .visual > .details-section .details-section > .content .group > .row.visual-style-separated-row):
2921         (@media (-webkit-min-device-pixel-ratio: 2)):
2922
2923         * UserInterface/Views/VisualStyleDetailsPanel.js:
2924         (WebInspector.VisualStyleDetailsPanel.prototype._clearModifiedSection):
2925
2926         * UserInterface/Views/VisualStylePropertyEditorLink.css:
2927         (.visual-style-property-editor-link):
2928         (.visual-style-property-editor-link > .visual-style-property-editor-link-border.left):
2929         (.visual-style-property-editor-link.link-all > .visual-style-property-editor-link-border.left):
2930         (.visual-style-property-editor-link.link-all.linked > .visual-style-property-editor-link-border):
2931         (.visual-style-property-editor-link > .visual-style-property-editor-link-icon):
2932         (.visual-style-property-editor-link:not(.link-all) > .visual-style-property-editor-link-icon):
2933         (@media (-webkit-min-device-pixel-ratio: 2)):
2934         (.visual-style-property-editor-link.link-all.linked > .visual-style-property-editor-link-border.left):
2935         (.visual-style-property-editor-link.link-all.linked > .visual-style-property-editor-link-icon:hover + .visual-style-property-editor-link-border.right): Deleted.
2936         (.visual-style-property-editor-link.link-all.linked > .visual-style-property-editor-link-border.right): Deleted.
2937         (.visual-style-property-editor-link.link-all > .visual-style-property-editor-link-icon): Deleted.
2938
2939         * UserInterface/Views/VisualStyleSelectorTreeItem.css:
2940         (.item.visual-style-selector-item > input[type="checkbox"]):
2941         (.item.visual-style-selector-item > .icon):
2942         (.item.visual-style-selector-item.selector-invalid > .titles > .title::before):
2943         (@media (-webkit-min-device-pixel-ratio: 2)):
2944         (.item.visual-style-selector-item > .titles):
2945         (.item.visual-style-selector-item.selector-invalid > .icon): Deleted.
2946
2947         * UserInterface/Views/VisualStyleTimingEditor.css:
2948         (.visual-style-property-container.timing-editor > .visual-style-property-value-container > .bezier-editor):
2949         (@media (-webkit-min-device-pixel-ratio: 2)):
2950
2951
2952
2953 2015-08-18  Devin Rousso  <drousso@apple.com>
2954
2955         Web Inspector: Show the computed value in an overlay for numerical Visual Editors
2956         https://bugs.webkit.org/show_bug.cgi?id=148161
2957
2958         Reviewed by Timothy Hatcher.
2959
2960         Adds an "Unchanged" option to the number-based Visual editors that shows the
2961         computed value if it is not a number (it would therefore be a keyword).
2962
2963         * UserInterface/Views/VisualStyleNumberInputBox.css:
2964         (.visual-style-property-container > .visual-style-property-value-container > .number-input-container):
2965         (.visual-style-property-container > .visual-style-property-value-container > .number-input-container:not(.has-value) > span):
2966
2967         * UserInterface/Views/VisualStyleNumberInputBox.js:
2968         (WebInspector.VisualStyleNumberInputBox):
2969         (WebInspector.VisualStyleNumberInputBox.prototype.set value):
2970         (WebInspector.VisualStyleNumberInputBox.prototype.get units):
2971         (WebInspector.VisualStyleNumberInputBox.prototype.set units):
2972         (WebInspector.VisualStyleNumberInputBox.prototype.set placeholder):
2973         (WebInspector.VisualStyleNumberInputBox.prototype.get synthesizedValue):
2974         (WebInspector.VisualStyleNumberInputBox.prototype.set _unitsElementTextContent):
2975         (WebInspector.VisualStyleNumberInputBox.prototype._markUnitsContainerIfInputHasValue):
2976         (WebInspector.VisualStyleNumberInputBox.prototype._keywordChanged):
2977         (WebInspector.VisualStyleNumberInputBox.prototype._valueNumberInputKeyDown):
2978         (WebInspector.VisualStyleNumberInputBox.prototype._numberInputChanged):
2979
2980 2015-08-18  Devin Rousso  <drousso@apple.com>
2981
2982         Web Inspector: Small Caps variant checkbox should be to the left of the Small Caps label
2983         https://bugs.webkit.org/show_bug.cgi?id=148102
2984
2985         Reviewed by Timothy Hatcher.
2986
2987         * UserInterface/Views/VisualStyleKeywordCheckbox.css:
2988         (.visual-style-property-container.keyword-checkbox.font-variant > .visual-style-property-value-container > input): Deleted.
2989         (.visual-style-property-container.keyword-checkbox.font-variant > .visual-style-property-value-container > input::after):
2990         (.visual-style-property-container.keyword-checkbox.font-variant > .visual-style-property-value-container > input::before): Deleted.
2991
2992 2015-08-18  Devin Rousso  <drousso@apple.com>
2993
2994         Web Inspector: Visual editor links should unlink when switching styles
2995         https://bugs.webkit.org/show_bug.cgi?id=148153
2996
2997         Reviewed by Timothy Hatcher.
2998
2999         Visual editor links are now deactivated when switching rules/nodes.
3000
3001         * UserInterface/Images/VisualStylePropertyUnlinked.svg:
3002         * UserInterface/Views/VisualStyleDetailsPanel.js:
3003         (WebInspector.VisualStyleDetailsPanel.prototype._updateProperties):
3004         (WebInspector.VisualStyleDetailsPanel.prototype._generateMetricSectionRows):
3005
3006         * UserInterface/Views/VisualStylePropertyEditorLink.js:
3007         (WebInspector.VisualStylePropertyEditorLink.prototype.set linked):
3008         (WebInspector.VisualStylePropertyEditorLink.prototype._iconClicked):
3009         (WebInspector.VisualStylePropertyEditorLink):
3010
3011 2015-08-18  Devin Rousso  <drousso@apple.com>
3012
3013         Web Inspector: Consider showing style summary on collapsed visual sidebar sections
3014         https://bugs.webkit.org/show_bug.cgi?id=148104
3015
3016         Reviewed by Timothy Hatcher.
3017
3018         The blue indicator dot on a section now means that that section has at least one set value.
3019         If a section has been modified, it will display a trash can that will clear those modifications.
3020
3021         * UserInterface/Views/VisualStyleDetailsPanel.css:
3022         (.sidebar > .panel.details.css-style .visual > .details-section .details-section.has-set-property > .header > span::after):
3023         (.sidebar > .panel.details.css-style .visual > .details-section .details-section.modified > .header > span::after): Deleted.
3024
3025         * UserInterface/Views/VisualStyleDetailsPanel.js:
3026         (WebInspector.VisualStyleDetailsPanel.prototype._updateProperties):
3027         (WebInspector.VisualStyleDetailsPanel.prototype._sectionModified):
3028         (WebInspector.VisualStyleDetailsPanel.prototype._groupHasSetProperty):
3029
3030 2015-08-18  Devin Rousso  <drousso@apple.com>
3031
3032         Web Inspector: round sub-pixel values we get from computed style in visual sidebar
3033         https://bugs.webkit.org/show_bug.cgi?id=148105
3034
3035         Reviewed by Timothy Hatcher.
3036
3037         * UserInterface/Views/VisualStyleNumberInputBox.js:
3038         (WebInspector.VisualStyleNumberInputBox.prototype.set value):
3039         (WebInspector.VisualStyleNumberInputBox.prototype.set placeholder):
3040         Now rounds the value and placeholder to the nearest 100th.
3041
3042 2015-08-18  Joseph Pecoraro  <pecoraro@apple.com>
3043
3044         Web Inspector: transparent color swatches have lopsided checkered background on non-retina
3045         https://bugs.webkit.org/show_bug.cgi?id=148150
3046
3047         Reviewed by Timothy Hatcher.
3048
3049         * UserInterface/Views/CSSStyleDeclarationTextEditor.css:
3050         (@media (-webkit-max-device-pixel-ratio: 1)):
3051         Make color and bezier widgets slightly smaller, but evenly sized so the
3052         checkered background is not lopsided and the curve is a little less blurry.
3053
3054 2015-08-18  Joseph Pecoraro  <pecoraro@apple.com>
3055
3056         Web Inspector: Modernize CSSStyleManager
3057         https://bugs.webkit.org/show_bug.cgi?id=148143
3058
3059         Reviewed by Brian Burg.
3060
3061         * UserInterface/Controllers/CSSStyleManager.js:
3062           - Eliminate `delete` operator use.
3063           - Move from using Objects as hashmaps to Map.
3064           - Fix typos.
3065
3066 2015-08-18  Brian Burg  <bburg@apple.com>
3067
3068         Web Inspector: load ProtocolTestStub from the WebInspectorUI bundle
3069         https://bugs.webkit.org/show_bug.cgi?id=147955
3070
3071         Reviewed by Timothy Hatcher.
3072
3073         Move ProtocolTestStub.{html,js} into the actual WebInspectorUI project.
3074
3075         * UserInterface/Base/TestStub.js: Renamed from LayoutTests/http/tests/inspector/resources/ProtocolTestStub.js.
3076         * UserInterface/TestStub.html: Renamed from LayoutTests/http/tests/inspector/resources/ProtocolTestStub.html.
3077
3078 2015-08-18  Devin Rousso  <drousso@apple.com>
3079
3080         Web Inspector: Better keyboard shortcut to focus on the console prompt
3081         https://bugs.webkit.org/show_bug.cgi?id=147927
3082
3083         Reviewed by Brian Burg.
3084
3085         * UserInterface/Base/Main.js:
3086         (WebInspector.contentLoaded):
3087         (WebInspector._focusConsolePrompt):
3088         Added a Control-Tilde keyboard shortcut to focus the console prompt.
3089
3090 2015-08-18  Nikita Vasilyev  <nvasilyev@apple.com>
3091
3092         Web Inspector: Option-Enter should commit console command without erasing the prompt
3093         https://bugs.webkit.org/show_bug.cgi?id=148123
3094
3095         Also, don't append a console command if it's the same as the last one.
3096
3097         Reviewed by Timothy Hatcher.
3098
3099         * UserInterface/Controllers/JavaScriptLogViewController.js:
3100         (WebInspector.JavaScriptLogViewController):
3101         * UserInterface/Views/ConsolePrompt.js:
3102         (WebInspector.ConsolePrompt):
3103         (WebInspector.ConsolePrompt.prototype._handleEnterKey.commitTextOrInsertNewLine):
3104         (WebInspector.ConsolePrompt.prototype._handleEnterKey):
3105         (WebInspector.ConsolePrompt.prototype._handleOptionEnterKey):
3106         (WebInspector.ConsolePrompt.prototype._handleCommandOptionEnterKey):
3107
3108 2015-08-17  Commit Queue  <commit-queue@webkit.org>
3109
3110         Unreviewed, rolling out r188539, r188544, r188552, and
3111         r188564.
3112         https://bugs.webkit.org/show_bug.cgi?id=148122
3113
3114         Broke tests and some build styles (Requested by ap on
3115         #webkit).
3116
3117         Reverted changesets:
3118
3119         "Web Inspector: load ProtocolTestStub from the WebInspectorUI
3120         bundle"
3121         https://bugs.webkit.org/show_bug.cgi?id=147955
3122         http://trac.webkit.org/changeset/188539
3123
3124         "Web Inspector: split TestStub.js into multiple files and
3125         modernize it"
3126         https://bugs.webkit.org/show_bug.cgi?id=148077
3127         http://trac.webkit.org/changeset/188544
3128
3129         "Web Inspector: InspectorTest should be a subclass of
3130         TestHarness"
3131         https://bugs.webkit.org/show_bug.cgi?id=148079
3132         http://trac.webkit.org/changeset/188552
3133
3134         "Unreviewed internal build fix attempt after r188539."
3135         http://trac.webkit.org/changeset/188564
3136
3137 2015-08-17  Nikita Vasilyev  <nvasilyev@apple.com>
3138
3139         Web Inspector: Allow typing command when a console message is selected
3140         https://bugs.webkit.org/show_bug.cgi?id=148121
3141
3142         Reviewed by Timothy Hatcher.
3143
3144         * UserInterface/Views/LogContentView.js:
3145         (WebInspector.LogContentView):
3146         (WebInspector.LogContentView.prototype._keyPress):
3147         Command-C should still copy the selected message.
3148
3149 2015-08-17  Nikita Vasilyev  <nvasilyev@apple.com>
3150
3151         Web Inspector: Update slider styles
3152         https://bugs.webkit.org/show_bug.cgi?id=148120
3153
3154         Reviewed by Timothy Hatcher.
3155
3156         * UserInterface/Views/Main.css:
3157         (input[type=range]):
3158         (input[type=range]::-webkit-slider-runnable-track::before):
3159
3160 2015-08-17  Devin Rousso  <drousso@apple.com>
3161
3162         Web Inspector: font-family list is backwards in visual sidebar
3163         https://bugs.webkit.org/show_bug.cgi?id=148101
3164
3165         Reviewed by Timothy Hatcher.
3166
3167         * UserInterface/Views/VisualStyleCommaSeparatedKeywordEditor.js:
3168         (WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._addCommaSeparatedKeyword):
3169         Now appends new children if the current index is not set instead of inserting them.
3170
3171 2015-08-17  Devin Rousso  <drousso@apple.com>
3172
3173         Web Inspector: Style changes to Visual sidebar selector items
3174         https://bugs.webkit.org/show_bug.cgi?id=148114
3175
3176         Reviewed by Timothy Hatcher.
3177
3178         * Localizations/en.lproj/localizedStrings.js:
3179         * UserInterface/Views/GeneralTreeElement.js:
3180         (WebInspector.GeneralTreeElement.prototype._updateTitleElements):
3181         (WebInspector.GeneralTreeElement.prototype._updateTitleTooltip):
3182         Moved the code to update the item tooltip to its own function.
3183
3184         * UserInterface/Views/VisualStyleDetailsPanel.js:
3185         (WebInspector.VisualStyleDetailsPanel.prototype._addMetricsMouseListeners.editorMouseover):
3186         (WebInspector.VisualStyleDetailsPanel.prototype._addMetricsMouseListeners.editorMouseout):
3187         (WebInspector.VisualStyleDetailsPanel.prototype._addMetricsMouseListeners):
3188         (WebInspector.VisualStyleDetailsPanel.prototype._generateMetricSectionRows):
3189         (WebInspector.VisualStyleDetailsPanel.prototype._populateMarginSection):
3190         (WebInspector.VisualStyleDetailsPanel.prototype._populatePaddingSection):
3191         (WebInspector.VisualStyleDetailsPanel.prototype._addMetricsMouseListeners.onEditorMouseover): Deleted.
3192         (WebInspector.VisualStyleDetailsPanel.prototype._addMetricsMouseListeners.onEditorMouseout): Deleted.
3193         Added on-hover node/selector highlighting to margin and padding editor links.
3194
3195         * UserInterface/Views/VisualStyleNumberInputBox.js:
3196         (WebInspector.VisualStyleNumberInputBox):
3197         Replaced "No Units" with "Number" for better clarity.
3198
3199         * UserInterface/Views/VisualStyleSelectorTreeItem.css:
3200         (body:not(.window-inactive, .window-docked-inactive) .item.visual-style-selector-item.selected > input[type="checkbox"]:checked::before):
3201         (.item.visual-style-selector-item.selected > input[type="checkbox"]::before): Deleted.
3202         Removes the white border when the window is inactive and when the checkbox is unchecked.
3203
3204         * UserInterface/Views/VisualStyleSelectorTreeItem.js:
3205         (WebInspector.VisualStyleSelectorTreeItem.prototype._commitSelector):
3206         Now updates the title of the item when the selector changes.
3207
3208 2015-08-17  Devin Rousso  <drousso@apple.com>
3209
3210         Web Inspector: delete key should work on multi-values visual sidebar grid sections
3211         https://bugs.webkit.org/show_bug.cgi?id=148110
3212
3213         Reviewed by Timothy Hatcher.
3214
3215         * UserInterface/Views/VisualStyleCommaSeparatedKeywordEditor.js:
3216         (WebInspector.VisualStyleCommaSeparatedKeywordEditor):
3217         (WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._listElementKeyDown):
3218         If the backspace/delete key is pressed when focus is within the list element, delete
3219         the selected list item if it is not currently being edited (if it has an editor).
3220
3221         * UserInterface/Views/VisualStyleFontFamilyTreeElement.js:
3222         (WebInspector.VisualStyleFontFamilyTreeElement.prototype.get currentlyEditing):
3223
3224 2015-08-17  Devin Rousso  <drousso@apple.com>
3225
3226         Web Inspector: web fonts or unknown fonts show up as Times in visual sidebar
3227         https://bugs.webkit.org/show_bug.cgi?id=148103
3228
3229         Reviewed by Timothy Hatcher.
3230
3231         * UserInterface/Views/VisualStyleFontFamilyTreeElement.js:
3232         (WebInspector.VisualStyleFontFamilyTreeElement.prototype.updateMainTitle):
3233         Fonts now fall back to sans-serif and -apple-system if they do not exist.
3234
3235 2015-08-17  Myles C. Maxfield  <mmaxfield@apple.com>
3236
3237         Implement IntegerHasher
3238         https://bugs.webkit.org/show_bug.cgi?id=147866
3239
3240         Reviewed by Darin Adler and Anders Carlsson.
3241
3242         Update comment.
3243
3244         * UserInterface/Base/Utilities.js:
3245
3246 2015-08-17  Brian Burg  <bburg@apple.com>
3247
3248         Web Inspector: InspectorTest should be a subclass of TestHarness
3249         https://bugs.webkit.org/show_bug.cgi?id=148079
3250
3251         Reviewed by Timothy Hatcher.
3252
3253         Extract the frontend test harness into a subclass. Delete some code that
3254         is now redundant. Sprinkle some ES6 syntax where possible.
3255
3256         Rewrite the code that redirects the Inspector page's console messages to
3257         the test page, since it didn't appear to work any more.
3258
3259         * UserInterface/Test.html:
3260         * UserInterface/Test/FrontendTestHarness.js: Added.
3261         (FrontendTestHarness):
3262         (FrontendTestHarness.prototype.completeTest):
3263         (FrontendTestHarness.prototype.addResult):
3264         (FrontendTestHarness.prototype.debugLog):
3265         (FrontendTestHarness.prototype.evaluateInPage):
3266         (FrontendTestHarness.prototype.expectNoError):
3267         (FrontendTestHarness.prototype.testPageDidLoad):
3268         (FrontendTestHarness.prototype.reloadPage):
3269         (FrontendTestHarness.prototype.redirectConsoleToTestOutput.createProxyConsoleHandler):
3270         (FrontendTestHarness.prototype.redirectConsoleToTestOutput):
3271         (FrontendTestHarness.prototype.reportUncaughtException):
3272         (FrontendTestHarness.prototype._resendResults):
3273         * UserInterface/Test/Test.js:
3274         (InspectorTest.EventDispatcher.prototype.dispatchEvent): Deleted.
3275         (InspectorTest.EventDispatcher): Deleted.
3276         (InspectorTest.log): Deleted.
3277         (InspectorTest.assert): Deleted.
3278         (InspectorTest.expectThat): Deleted.
3279         (InspectorTest.debugLog): Deleted.
3280         (InspectorTest.expectNoError): Deleted.
3281         (InspectorTest.completeTest): Deleted.
3282         (InspectorTest.evaluateInPage): Deleted.
3283         (InspectorTest.addResult): Deleted.
3284         (InspectorTest._resendResults): Deleted.
3285         (InspectorTest.testPageDidLoad): Deleted.
3286         (InspectorTest.reloadPage): Deleted.
3287         (InspectorTest.reportUncaughtException): Deleted.
3288
3289 2015-08-17  Saam barati  <sbarati@apple.com>
3290
3291         Web Inspector: Type profiler return types aren't showing up
3292         https://bugs.webkit.org/show_bug.cgi?id=147348
3293
3294         Reviewed by Brian Burg.
3295
3296         Bug #145995 changed the starting offset of a function to 
3297         be the open parenthesis of the function's parameter list.
3298         This broke the type profiler's text offset based protocol with JSC.
3299         The text offset used in the protocol is now the first letter of the 
3300         function/get/set/method name.  So "f" in "function a() {}", "s" in "set foo(){}", etc.
3301
3302         * UserInterface/Models/ScriptSyntaxTree.js:
3303         (WebInspector.ScriptSyntaxTree.prototype.containsNonEmptyReturnStatement):
3304         (WebInspector.ScriptSyntaxTree.functionReturnDivot):
3305
3306 2015-08-17  Brian Burg  <bburg@apple.com>
3307
3308         Web Inspector: REGRESSION: spurious console.assert inside ResourceContentView._contentAvailable
3309         https://bugs.webkit.org/show_bug.cgi?id=147886
3310
3311         Reviewed by Joseph Pecoraro.
3312
3313         * UserInterface/Views/ResourceContentView.js:
3314         (WebInspector.ResourceContentView.prototype._hasContent): Fix the style class name.
3315
3316 2015-08-17  Brian Burg  <bburg@apple.com>
3317
3318         Web Inspector: split TestStub.js into multiple files and modernize it
3319         https://bugs.webkit.org/show_bug.cgi?id=148077
3320
3321         Reviewed by Timothy Hatcher.
3322  
3323         Since we want to share files between the two harnesses, split some of the parts
3324         into different files so not everything has to be included at once.
3325
3326         Rename InjectedTestHarness to just TestHarness. Update some code to use
3327         ES6 features where appropriate. Put test classes into Test/ directory.
3328
3329         * UserInterface/Base/TestStub.js: Removed.
3330         * UserInterface/Test.html:
3331         * UserInterface/Test/InspectorProtocol.js: Added.
3332         (InspectorProtocol.sendCommand):
3333         (InspectorProtocol.awaitCommand):
3334         (InspectorProtocol.awaitEvent.):
3335         (InspectorProtocol.awaitEvent):
3336         (InspectorProtocol.addEventListener):
3337         (InspectorProtocol.sendMessage):
3338         (InspectorProtocol.checkForError):
3339         (InspectorProtocol.dispatchMessageFromBackend):
3340         * UserInterface/Test/ProtocolTestHarness.js: Added.
3341         (ProtocolTestHarness.prototype.completeTest):
3342         (ProtocolTestHarness.prototype.addResult):
3343         (ProtocolTestHarness.prototype.debugLog):
3344         (ProtocolTestHarness.prototype.evaluateInPage):
3345         (ProtocolTestHarness):
3346         * UserInterface/Test/Test.js: Renamed from Source/WebInspectorUI/UserInterface/Base/Test.js.
3347         (WebInspector.loaded):
3348         (WebInspector.contentLoaded):
3349         (WebInspector.UIString):
3350         (WebInspector.updateDockedState):
3351         (WebInspector.updateDockingAvailability):
3352         (InspectorTest.EventDispatcher.prototype.dispatchEvent):
3353         (InspectorTest.EventDispatcher):
3354         (InspectorTest.log):
3355         (InspectorTest.assert):
3356         (InspectorTest.expectThat):
3357         (InspectorTest.debugLog):
3358         (InspectorTest.expectNoError):
3359         (InspectorTest.completeTest):
3360         (InspectorTest.evaluateInPage):
3361         (InspectorTest.addResult):
3362         (InspectorTest._resendResults):
3363         (Ins