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