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