Web Inspector: Changes are not applied in CSS sidebar when switching to Resources...
[WebKit-https.git] / Source / WebInspectorUI / ChangeLog
1 2017-05-22  Devin Rousso  <drousso@apple.com>
2
3         Web Inspector: Changes are not applied in CSS sidebar when switching to Resources tab without blurring editor
4         https://bugs.webkit.org/show_bug.cgi?id=172388
5
6         Reviewed by Joseph Pecoraro.
7
8         * UserInterface/Views/CSSStyleDeclarationSection.js:
9         (WebInspector.CSSStyleDeclarationSection.prototype.refreshEditor):
10         * UserInterface/Views/RulesStyleDetailsPanel.js:
11         (WebInspector.RulesStyleDetailsPanel.prototype.cssStyleDeclarationSectionEditorFocused):
12         (WebInspector.RulesStyleDetailsPanel.prototype.shown):
13         When showing the StyleDetailsPanel, if there is an active editor, which is now saved each
14         time one becomes focused, force an update of that editor's content.
15
16 2017-05-22  Joseph Pecoraro  <pecoraro@apple.com>
17
18         Web Inspector: New Tab contents not centered vertically
19         https://bugs.webkit.org/show_bug.cgi?id=172486
20
21         Reviewed by Devin Rousso.
22
23         * UserInterface/Views/NewTabContentView.css:
24         (.new-tab.tab.content-view):
25         Use align-items instead of align-content.
26
27 2017-05-22  Devin Rousso  <drousso@apple.com>
28
29         Web Inspector: New CSS Rules should go into a new Stylesheet Resource that can be viewed/edited/saved
30         https://bugs.webkit.org/show_bug.cgi?id=138810
31
32         Reviewed by Joseph Pecoraro.
33
34         * Localizations/en.lproj/localizedStrings.js:
35
36         * UserInterface/Controllers/CSSStyleManager.js:
37         (WebInspector.CSSStyleManager):
38         (WebInspector.CSSStyleManager.prototype.preferredInspectorStyleSheetForFrame):
39         (WebInspector.CSSStyleManager.prototype._updateResourceContent.fetchedStyleSheetContent):
40         Manually dispatch a change event for modifications to CSSStyleSheet objects since they are
41         not covered by the listener for Resource changes.
42
43         * UserInterface/Main.html:
44         Include WebInspector.CSSStyleSheetTreeElement.
45
46         * UserInterface/Models/Collection.js:
47         (WebInspector.Collection.TypeVerifier):
48         * UserInterface/Models/ResourceCollection.js:
49         (WebInspector.ResourceCollection.TypeVerifier.Stylesheet):
50         Add TypeVerifier for CSSStyleSheet.
51
52         * UserInterface/Models/DOMNodeStyles.js:
53         (WebInspector.DOMNodeStyles.prototype._parseRulePayload):
54         Manually create a SourceCodeLocation object for Inspector Style Sheets.
55
56         * UserInterface/Views/CSSStyleSheetTreeElement.js: Added.
57         (WebInspector.CSSStyleSheetTreeElement):
58
59         * UserInterface/Views/ResourceIcons.css:
60         (:matches(.resource-icon.resource-type-stylesheet, .stylessheet-icon) .icon):
61
62         * UserInterface/Views/FrameTreeElement.js:
63         (WebInspector.FrameTreeElement.forwardingConstructor):
64         (WebInspector.FrameTreeElement):
65         (WebInspector.FrameTreeElement.prototype.onattach):
66         (WebInspector.FrameTreeElement.prototype.ondetach):
67         (WebInspector.FrameTreeElement.prototype.onpopulate):
68         (WebInspector.FrameTreeElement.prototype._styleSheetAdded):
69         * UserInterface/Views/ResourceSidebarPanel.js:
70         (WebInspector.ResourceSidebarPanel):
71         (WebInspector.ResourceSidebarPanel.prototype._styleSheetAdded):
72         (WebInspector.ResourceSidebarPanel.prototype._treeSelectionDidChange):
73         Listen for the creation of CSSStyleSheet objects and add them to the sidebar if they are an
74         Inspector Style Sheet.  Regular style sheets are added via their respective resources.
75
76         * UserInterface/Views/NavigationSidebarPanel.js:
77         (WebInspector.NavigationSidebarPanel.prototype._isTreeElementWithoutRepresentedObject):
78         Prevent CSSStyleSheetTreeElement instances from attempting to save state to a cookie.
79
80         * UserInterface/Base/Main.js:
81         (WebInspector.tabContentViewClassForRepresentedObject):
82         (WebInspector.createSourceCodeLocationLink):
83         * UserInterface/Views/ContentView.js:
84         (WebInspector.ContentView.createFromRepresentedObject):
85         (WebInspector.ContentView.isViewable):
86         * UserInterface/Views/CSSStyleDeclarationSection.js:
87         (WebInspector.CSSStyleDeclarationSection.prototype.refresh):
88         * UserInterface/Views/ResourcesTabContentView.js:
89         (WebInspector.ResourcesTabContentView.prototype.canShowRepresentedObject):
90         * UserInterface/Views/ResourceContentView.js:
91         (WebInspector.ResourceContentView):
92         * UserInterface/Views/SourceCodeTextEditor.js:
93         (WebInspector.SourceCodeTextEditor.prototype._prepareEditorForInitialContent):
94         (WebInspector.SourceCodeTextEditor.prototype._looselyMatchesSourceCodeLocation):
95         (WebInspector.SourceCodeTextEditor.prototype._matchesSourceCodeLocation):
96         * UserInterface/Views/TextResourceContentView.js:
97         (WebInspector.TextResourceContentView):
98         (WebInspector.TextResourceContentView.prototype.get supportsSave):
99         (WebInspector.TextResourceContentView.prototype.get saveData):
100         (WebInspector.TextResourceContentView.prototype._contentWillPopulate):
101         (WebInspector.TextResourceContentView.prototype._shouldBeEditable):
102         Support editing and saving an Inspector Style Sheet via its CSSStyleSheet object.
103
104 2017-05-22  Brian Burg  <bburg@apple.com>
105
106         Web Inspector: webkit reload policy should match default behavior
107         https://bugs.webkit.org/show_bug.cgi?id=171385
108         <rdar://problem/31871515>
109
110         Reviewed by Joseph Pecoraro.
111
112         * UserInterface/Base/Main.js:
113         Use PageAgent.reload.invoke to make the reload options more explicit.
114
115         * UserInterface/Test/FrontendTestHarness.js:
116         (FrontendTestHarness.prototype.reloadPage):
117         Convert this method to take an options dictionary rather than positional
118         boolean arguments. Update call sites to pass correct options.
119
120         When running tests, we want to revalidate unexpired resources, as there
121         does not seem to be another reliable way to trigger revalidated cached
122         resources from a Web Inspector layout test. Make this behavior the default.
123
124 2017-05-22  Simon Fraser  <simon.fraser@apple.com>
125
126         Support transform-box to switch sizing box in SVG
127         https://bugs.webkit.org/show_bug.cgi?id=145783
128
129         Reviewed by Dean Jackson.
130
131         Add transform-box to the list of autocompletions.
132
133         * UserInterface/External/CodeMirror/css.js:
134
135 2017-05-22  Brian Burg  <bburg@apple.com>
136
137         Web Inspector: RTL: In Timelines > JavaScript & Events, digits for sample count are not localized
138         https://bugs.webkit.org/show_bug.cgi?id=171819
139
140         Reviewed by Matt Baker.
141
142         * UserInterface/Views/ScriptTimelineDataGridNode.js:
143         (WebInspector.ScriptTimelineDataGridNode.prototype.createCellContent):
144
145 2017-05-22  Nikita Vasilyev  <nvasilyev@apple.com>
146
147         Web Inspector: RTL: Text in autocomplete popover should be aligned left
148         https://bugs.webkit.org/show_bug.cgi?id=171998
149
150         Reviewed by Brian Burg.
151
152         Autocomplete popover is only used for CSS and JavaScript, and
153         these should always be shown as LTR text.
154
155         * UserInterface/Views/CompletionSuggestionsView.css:
156         (.completion-suggestions):
157
158 2017-05-22  Fujii Hironori  <Hironori.Fujii@sony.com>
159
160         [GTK] Web Inspector: Add active call frame indicator image
161         https://bugs.webkit.org/show_bug.cgi?id=161987
162         <rdar://problem/28307419>
163
164         Reviewed by Carlos Garcia Campos.
165
166         Add a free icon for the Web Inspector of GTK port.
167
168         * UserInterface/Images/gtk/ActiveCallFrame.svg: Added.
169
170 2017-05-19  Devin Rousso  <drousso@apple.com>
171
172         Web Inspector: Use initialLayout for Settings tab
173         https://bugs.webkit.org/show_bug.cgi?id=172304
174
175         Reviewed by Matt Baker.
176
177         * UserInterface/Views/GeneralSettingsView.js:
178         (WebInspector.GeneralSettingsView.prototype.initialLayout):
179         Move listener for zoom factor to only update that editor.
180
181         * UserInterface/Views/SettingsTabContentView.js:
182         (WebInspector.SettingsTabContentView):
183         (WebInspector.SettingsTabContentView.prototype.initialLayout): Added.
184         It is not necessary to create the UI for editing settings until the Settings tab is shown.
185         Use initialLayout to ensure UI gets created exactly once, after the tab is selected.
186
187 2017-05-18  Devin Rousso  <drousso@apple.com>
188
189         REGRESSION (r?): Web Inspector: Shift-click on color square in Styles sidebar should not select text
190         https://bugs.webkit.org/show_bug.cgi?id=171902
191
192         Reviewed by Matt Baker.
193
194         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
195         (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleMouseUp):
196         Do not attempt to select text if the element being clicked is a bookmark (such as a swatch).
197
198 2017-05-18  Joseph Pecoraro  <pecoraro@apple.com>
199
200         Web Inspector: Web Socket Document Icon
201         https://bugs.webkit.org/show_bug.cgi?id=170023
202
203         Reviewed by Matt Baker.
204
205         Icons made by Jon Davis.
206
207         * UserInterface/Images/WebSocket.png: Added.
208         * UserInterface/Images/WebSocket@2x.png: Added.
209         * UserInterface/Images/WebSocketLarge.png: Added.
210         * UserInterface/Images/WebSocketLarge@2x.png: Added.
211         New icons for Web Socket resources.
212
213         * UserInterface/Views/ResourceIcons.css:
214         (body:matches(.mac-platform, .windows-platform) .resource-icon.resource-type-websocket .icon):
215         (body:matches(.mac-platform, .windows-platform) .large .resource-icon.resource-type-websocket .icon):
216         Use the icon.
217
218 2017-05-18  Fujii Hironori  <Hironori.Fujii@sony.com>
219
220         Web Inspector: [GTK] Adopt currentColor for mask SVG images
221         https://bugs.webkit.org/show_bug.cgi?id=150603
222
223         Reviewed by Carlos Garcia Campos.
224
225         * UserInterface/Images/gtk/Circle.svg:
226         * UserInterface/Images/gtk/ClearBoth.svg:
227         * UserInterface/Images/gtk/ClearLeft.svg:
228         * UserInterface/Images/gtk/ClearRight.svg:
229         * UserInterface/Images/gtk/Close.svg:
230         * UserInterface/Images/gtk/CloseLarge.svg:
231         * UserInterface/Images/gtk/Console.svg:
232         * UserInterface/Images/gtk/Debugger.svg:
233         * UserInterface/Images/gtk/DockBottom.svg:
234         * UserInterface/Images/gtk/DockRight.svg:
235         * UserInterface/Images/gtk/DownloadArrow.svg:
236         * UserInterface/Images/gtk/Elements.svg:
237         * UserInterface/Images/gtk/Errors.svg:
238         * UserInterface/Images/gtk/Eye.svg:
239         * UserInterface/Images/gtk/FloatLeft.svg:
240         * UserInterface/Images/gtk/FloatRight.svg:
241         * UserInterface/Images/gtk/FontStyleItalic.svg:
242         * UserInterface/Images/gtk/FontStyleNormal.svg:
243         * UserInterface/Images/gtk/Gear.svg:
244         * UserInterface/Images/gtk/Issues.svg:
245         * UserInterface/Images/gtk/Logs.svg:
246         * UserInterface/Images/gtk/Minus.svg:
247         * UserInterface/Images/gtk/NavigationItemClear.svg:
248         * UserInterface/Images/gtk/NavigationItemTrash.svg:
249         * UserInterface/Images/gtk/Network.svg:
250         * UserInterface/Images/gtk/NewTab.svg:
251         * UserInterface/Images/gtk/NewTabPlus.svg:
252         * UserInterface/Images/gtk/Pause.svg:
253         * UserInterface/Images/gtk/Pencil.svg:
254         * UserInterface/Images/gtk/Plus13.svg:
255         * UserInterface/Images/gtk/Plus15.svg:
256         * UserInterface/Images/gtk/ReloadFull.svg:
257         * UserInterface/Images/gtk/ReloadToolbar.svg:
258         * UserInterface/Images/gtk/Resources.svg:
259         * UserInterface/Images/gtk/Search.svg:
260         * UserInterface/Images/gtk/SearchResults.svg:
261         * UserInterface/Images/gtk/SplitToggleUp.svg:
262         * UserInterface/Images/gtk/StepInto.svg:
263         * UserInterface/Images/gtk/StepOut.svg:
264         * UserInterface/Images/gtk/StepOver.svg:
265         * UserInterface/Images/gtk/Stop.svg:
266         * UserInterface/Images/gtk/Storage.svg:
267         * UserInterface/Images/gtk/TextAlignCenter.svg:
268         * UserInterface/Images/gtk/TextAlignJustify.svg:
269         * UserInterface/Images/gtk/TextAlignLeft.svg:
270         * UserInterface/Images/gtk/TextAlignRight.svg:
271         * UserInterface/Images/gtk/TextDecorationLineThrough.svg:
272         * UserInterface/Images/gtk/TextDecorationOverline.svg:
273         * UserInterface/Images/gtk/TextDecorationUnderline.svg:
274         * UserInterface/Images/gtk/TextTransformCapitalize.svg:
275         * UserInterface/Images/gtk/TextTransformLowercase.svg:
276         * UserInterface/Images/gtk/TextTransformUppercase.svg:
277         * UserInterface/Images/gtk/Time.svg:
278         * UserInterface/Images/gtk/Timeline.svg:
279         * UserInterface/Images/gtk/Undock.svg:
280         * UserInterface/Images/gtk/VisualStyleNone.svg:
281         * UserInterface/Images/gtk/VisualStylePropertyLinked.svg:
282         * UserInterface/Images/gtk/VisualStylePropertyUnlinked.svg:
283         * UserInterface/Images/gtk/Weight.svg:
284
285 2017-05-15  Fujii Hironori  <Hironori.Fujii@sony.com>
286
287         [GTK] Web Inspector: Add new GTK+ icons for Search icon of Quick Open dialog
288         https://bugs.webkit.org/show_bug.cgi?id=172110
289
290         Reviewed by Michael Catanzaro.
291
292         Add a free icon for the Web Inspector in GTK+.
293
294         * UserInterface/Images/gtk/Search.svg: Added.
295
296 2017-05-15  Fujii Hironori  <Hironori.Fujii@sony.com>
297
298         [GTK] Web Inspector: Add new GTK+ icons for Worker Scripts / Web Sockets
299         https://bugs.webkit.org/show_bug.cgi?id=164138
300
301         Reviewed by Michael Catanzaro.
302
303         Add more free icons for the Web Inspector in GTK+.
304
305         * UserInterface/Images/gtk/WorkerScript.png: Added.
306         * UserInterface/Images/gtk/WorkerScript@2x.png: Added.
307         * UserInterface/Images/gtk/WorkerScriptLarge.png: Added.
308         * UserInterface/Images/gtk/WorkerScriptLarge@2x.png: Added.
309         * UserInterface/Views/ResourceIcons.css:
310         (.script.worker-icon .icon):
311         (.large .script.worker-icon .icon):
312         (body:matches(.mac-platform, .windows-platform) .script.worker-icon .icon): Deleted.
313         (body:matches(.mac-platform, .windows-platform) .large .script.worker-icon .icon): Deleted.
314
315 2017-05-11  Nikita Vasilyev  <nvasilyev@apple.com>
316
317         Web Inspector: RTL: "Elements > Styles - Rules" rule and media query headers should be left aligned
318         https://bugs.webkit.org/show_bug.cgi?id=171954
319         <rdar://problem/31961976>
320
321         Reviewed by Matt Baker.
322
323         * UserInterface/Views/CSSStyleDeclarationSection.css:
324         (.style-declaration-section > .header):
325         (.style-declaration-section.locked > .header > .locked-icon):
326         (.style-declaration-section > .header > .icon):
327         (.style-declaration-section > .header > textarea):
328         (.style-declaration-section.invalid-selector > .header > .icon):
329         (body[dir=ltr] .style-declaration-section > .header): Deleted.
330         (body[dir=rtl] .style-declaration-section > .header): Deleted.
331         (body[dir=ltr] .style-declaration-section.locked > .header > .locked-icon): Deleted.
332         (body[dir=rtl] .style-declaration-section.locked > .header > .locked-icon): Deleted.
333         (body[dir=ltr] .style-declaration-section > .header > .icon): Deleted.
334         (body[dir=rtl] .style-declaration-section > .header > .icon): Deleted.
335         (body[dir=ltr] .style-declaration-section > .header > textarea): Deleted.
336         (body[dir=rtl] .style-declaration-section > .header > textarea): Deleted.
337         Remove RTL rules.
338
339         * UserInterface/Views/CSSStyleDeclarationSection.js:
340         (WebInspector.CSSStyleDeclarationSection):
341         Set dir="ltr" so selector's textareas work correctly.
342
343         * UserInterface/Views/RulesStyleDetailsPanel.css:
344         (.sidebar > .panel.details.css-style .rules):
345
346 2017-05-11  Matt Baker  <mattbaker@apple.com>
347
348         Web Inspector: Error trying to delete DOM breakpoints from the Debugger tab
349         https://bugs.webkit.org/show_bug.cgi?id=171970
350         <rdar://problem/32129262>
351
352         Reviewed by Brian Burg.
353
354         In the Debugger sidebar, DOM breakpoints can be cleared from a DOM node
355         in two ways: by using the DOM node tree element's context menu, or by
356         pressing the delete key while the element is selected. Each method used
357         a different code path, and the latter had an error which caused it to fail.
358
359         Add a `removeDOMBreakpointsForNode` method to DOMDebuggerManager to make
360         the operation convenient, and call it from both event handlers.
361
362         * UserInterface/Controllers/DOMBreakpointTreeController.js:
363         (WebInspector.DOMBreakpointTreeController.appendBreakpointContextMenuItems):
364         Use convenience method.
365
366         * UserInterface/Controllers/DOMDebuggerManager.js:
367         (WebInspector.DOMDebuggerManager.prototype.removeDOMBreakpointsForNode):
368         Helper function for removing all of a node's breakpoints.
369
370         * UserInterface/Views/DOMNodeTreeElement.js:
371         (WebInspector.DOMNodeTreeElement.prototype.ondelete):
372         Use convenience method.
373
374 2017-05-11  Fujii Hironori  <Hironori.Fujii@sony.com>
375
376         [GTK] Web Inspector: Add new GTK+ icons for resources in large sizes (32px @ 1x/2x)
377         https://bugs.webkit.org/show_bug.cgi?id=155802
378         <rdar://problem/25320686>
379
380         Reviewed by Carlos Garcia Campos.
381
382         Add more free icons for the Web Inspector in GTK+.
383
384         * UserInterface/Images/gtk/ClippingCSSLarge.png: Added.
385         * UserInterface/Images/gtk/ClippingCSSLarge@2x.png: Added.
386         * UserInterface/Images/gtk/ClippingGenericLarge.png: Added.
387         * UserInterface/Images/gtk/ClippingGenericLarge@2x.png: Added.
388         * UserInterface/Images/gtk/ClippingJSLarge.png: Added.
389         * UserInterface/Images/gtk/ClippingJSLarge@2x.png: Added.
390         * UserInterface/Images/gtk/DocumentCSSLarge.png: Added.
391         * UserInterface/Images/gtk/DocumentCSSLarge@2x.png: Added.
392         * UserInterface/Images/gtk/DocumentFontLarge.png: Added.
393         * UserInterface/Images/gtk/DocumentFontLarge@2x.png: Added.
394         * UserInterface/Images/gtk/DocumentGenericLarge.png: Added.
395         * UserInterface/Images/gtk/DocumentGenericLarge@2x.png: Added.
396         * UserInterface/Images/gtk/DocumentImageLarge.png: Added.
397         * UserInterface/Images/gtk/DocumentImageLarge@2x.png: Added.
398         * UserInterface/Images/gtk/DocumentJSLarge.png: Added.
399         * UserInterface/Images/gtk/DocumentJSLarge@2x.png: Added.
400         * UserInterface/Images/gtk/DocumentMarkupLarge.png: Added.
401         * UserInterface/Images/gtk/DocumentMarkupLarge@2x.png: Added.
402
403 2017-05-10  Brian Burg  <bburg@apple.com>
404
405         Web Inspector: RTL: in Timelines > JavaScript & Events, digits for timer and animation frame number are not localized
406         https://bugs.webkit.org/show_bug.cgi?id=171818
407
408         Reviewed by Joseph Pecoraro.
409
410         These numbers need to be formatted with %d, not %s.
411
412         * Localizations/en.lproj/localizedStrings.js:
413         * UserInterface/Models/ScriptTimelineRecord.js:
414         (WebInspector.ScriptTimelineRecord.EventType.displayName):
415
416 2017-05-10  Brian Burg  <bburg@apple.com>
417
418         Web Inspector: remove dead code for switching Toolbar display options
419         https://bugs.webkit.org/show_bug.cgi?id=170738
420
421         Reviewed by Joseph Pecoraro.
422
423         * Localizations/en.lproj/localizedStrings.js:
424         * UserInterface/Base/Main.js:
425         (WebInspector.contentLoaded):
426         * UserInterface/Views/ButtonToolbarItem.css:
427         (.toolbar .item.button > .glyph):
428         (.toolbar .item.button > .label):
429         (.toolbar.icon-and-label-vertical .item.button): Deleted.
430         (.toolbar.icon-and-label-horizontal .item.button): Deleted.
431         (.toolbar.small-size .item.button > .glyph): Deleted.
432         (.toolbar.label-only .item.button > .glyph): Deleted.
433         (.toolbar.label-only .item.activate.button.activated > .label): Deleted.
434         (.toolbar.icon-and-label-horizontal .item.button > .label): Deleted.
435         (.toolbar.icon-only .item.button > .label): Deleted.
436         * UserInterface/Views/ControlToolbarItem.css:
437         (.toolbar .item.control):
438         (.toolbar:matches(.icon-and-label-horizontal, .icon-only) .item.control): Deleted.
439         * UserInterface/Views/DashboardContainerView.css:
440         (.toolbar .dashboard-container):
441         (.toolbar.icon-and-label-vertical:matches(.small-size, .normal-size) .dashboard-container): Deleted.
442         (.toolbar.label-only .dashboard-container,): Deleted.
443         (.toolbar.normal-size:matches(.icon-only, .icon-and-label-vertical, .icon-and-label-horizontal) .dashboard-container): Deleted.
444         (.toolbar.label-only .dashboard-container .advance-arrow): Deleted.
445         (body[dir=ltr] .toolbar.label-only .dashboard-container .advance-arrow): Deleted.
446         (body[dir=rtl] .toolbar.label-only .dashboard-container .advance-arrow): Deleted.
447         * UserInterface/Views/DefaultDashboardView.css:
448         (.toolbar .dashboard.default > .item):
449         (.toolbar.label-only .dashboard.default > .item,): Deleted.
450         (.toolbar.normal-size:matches(.icon-only, .icon-and-label-vertical, .icon-and-label-horizontal) .dashboard.default > .item): Deleted.
451         * UserInterface/Views/ReplayDashboardView.css:
452         (.toolbar .dashboard.replay .item.button > .glyph):
453         (.toolbar.label-only .dashboard.replay .item.button > .glyph): Deleted.
454         * UserInterface/Views/Toolbar.css:
455         (.toolbar .control-section):
456         (.toolbar:matches(.icon-and-label-horizontal.small-size, .icon-only.small-size, .label-only) .control-section): Deleted.
457         * UserInterface/Views/Toolbar.js:
458         (WebInspector.Toolbar):
459         (WebInspector.Toolbar.prototype.layout):
460         (WebInspector.Toolbar.prototype.get displayMode): Deleted.
461         (WebInspector.Toolbar.prototype.set displayMode): Deleted.
462         (WebInspector.Toolbar.prototype.get sizeMode): Deleted.
463         (WebInspector.Toolbar.prototype.set sizeMode): Deleted.
464         (WebInspector.Toolbar.prototype._handleContextMenuEvent): Deleted.
465         (WebInspector.Toolbar.prototype._changeDisplayMode): Deleted.
466         (WebInspector.Toolbar.prototype._toggleSmallIcons): Deleted.
467
468 2017-05-10  Ross Kirsling  <ross.kirsling@sony.com>
469
470         Web Inspector: Copy to clipboard fails via InspectorFrontendHostStub
471         https://bugs.webkit.org/show_bug.cgi?id=171907
472
473         Reviewed by Joseph Pecoraro.
474
475         * UserInterface/Base/InspectorFrontendHostStub.js:
476         (WebInspector.InspectorFrontendHostStub.prototype.copyText):
477         Actually make a text selection before attempting to copy to clipboard.
478
479 2017-05-09  Joseph Pecoraro  <pecoraro@apple.com>
480
481         Web Inspector: Provide resource load error reason text in details sidebar
482         https://bugs.webkit.org/show_bug.cgi?id=171901
483         <rdar://problem/29850995>
484
485         Reviewed by Brian Burg.
486
487         * Localizations/en.lproj/localizedStrings.js:
488         * UserInterface/Controllers/FrameResourceManager.js:
489         (WebInspector.FrameResourceManager.prototype.resourceRequestDidFailLoading):
490         * UserInterface/Models/Resource.js:
491         (WebInspector.Resource):
492         (WebInspector.Resource.prototype.get failureReasonText):
493         (WebInspector.Resource.prototype.markAsFailed):
494         * UserInterface/Protocol/NetworkObserver.js:
495         (WebInspector.NetworkObserver.prototype.loadingFailed):
496         Include the error text we got from the backend. In most cases this should
497         be a localized error description.
498
499         * UserInterface/Views/ResourceDetailsSidebarPanel.js:
500         (WebInspector.ResourceDetailsSidebarPanel.prototype.set resource):
501         (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshErrorReason):
502         (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshRequestAndResponse):
503         Include an Error field alongside the status code section when there was an error.
504
505 2017-05-09  Fujii Hironori  <Hironori.Fujii@sony.com>
506
507         [GTK][Win] Web Inspector: Cann't open "Quick Open" dialog by pressing Ctrl+Shift+O
508         https://bugs.webkit.org/show_bug.cgi?id=171798
509
510         Reviewed by Michael Catanzaro.
511
512         PC can't input the shortcut keys Command+Shift+O and Command+P.
513
514         * UserInterface/Base/Main.js:
515         (WebInspector.contentLoaded): Use CommandOrControl instead of Command.
516
517 2017-05-09  Brian Burg  <bburg@apple.com>
518
519         Web Inspector: Assertion failed: Cannot select item with unexpected parent bar. (at NavigationBar.js:132)
520         https://bugs.webkit.org/show_bug.cgi?id=171885
521
522         Reviewed by Matt Baker.
523
524         This new assertion revealed a real misuse of the NavigationBar API.
525
526         * UserInterface/Views/NavigationBar.js:
527         (WebInspector.NavigationBar.prototype.set selectedNavigationItem):
528         Improve this to be an assertion so it can be paused at using the debugger.
529
530         * UserInterface/Views/TimelineTabContentView.js:
531         (WebInspector.TimelineTabContentView.prototype._changeViewMode):
532         We need to set a NavigationItem as the selected item, not its identifier.
533         Look up the corresponding item for the identifier that we received (the view mode).
534
535 2017-05-08  Brian Burg  <bburg@apple.com>
536
537         Web Inspector: RTL: box model labels have bad alignment
538         https://bugs.webkit.org/show_bug.cgi?id=171817
539
540         Reviewed by Joseph Pecoraro.
541
542         * UserInterface/Views/BoxModelDetailsSectionRow.css:
543         (.details-section .row.box-model .label):
544         (body[dir=ltr] .details-section .row.box-model .label):
545         (body[dir=rtl] .details-section .row.box-model .label):
546         We can't just use a mirrored leading margin because all the
547         text here is center-aligned. Just hardcode a reasonable value.
548
549 2017-05-08  Joseph Pecoraro  <pecoraro@apple.com>
550
551         Web Inspector: Request/Response toggles not working
552         https://bugs.webkit.org/show_bug.cgi?id=171833
553         <rdar://problem/31341637>
554
555         Reviewed by Brian Burg.
556
557         * UserInterface/Views/HierarchicalPathNavigationItem.js:
558         (WebInspector.HierarchicalPathNavigationItem.set components.let.componentsEqual):
559         (WebInspector.HierarchicalPathNavigationItem.prototype.set components):
560         If the new components being set were shallowly equal, then they wouldn't
561         actually be updated even if ultimately they are different. In this case
562         the Path Components with values "request" / "response" would not update
563         between different resources because the path components had equivalent
564         simple values. Provide a different discriminator (comparisonData) which
565         can be an object so these path components compare as necessarily different.
566
567         * UserInterface/Views/HeapSnapshotClusterContentView.js:
568         (WebInspector.HeapSnapshotClusterContentView.createPathComponent):
569         (WebInspector.HeapSnapshotClusterContentView):
570         * UserInterface/Views/ResourceClusterContentView.js:
571         (WebInspector.ResourceClusterContentView.createPathComponent):
572         (WebInspector.ResourceClusterContentView):
573         (WebInspector.ResourceClusterContentView.prototype._resourceTypeDidChange):
574         * UserInterface/Views/SVGImageResourceClusterContentView.js:
575         (WebInspector.SVGImageResourceClusterContentView):
576         * UserInterface/Views/ScriptClusterTimelineView.js:
577         (WebInspector.ScriptClusterTimelineView.createPathComponent):
578         (WebInspector.ScriptClusterTimelineView):
579         Provide comparisonData for path components cases that would need it.
580
581 2017-05-08  Chris Dumez  <cdumez@apple.com>
582
583         Drop non-standard Element.scrollByLines() / scrollByPages()
584         https://bugs.webkit.org/show_bug.cgi?id=171820
585
586         Reviewed by Simon Fraser.
587
588         Drop non-standard Element.scrollByLines() / scrollByPages() from
589         WebInspector code.
590
591         * UserInterface/Models/NativeFunctionParameters.js:
592
593 2017-05-08  Matt Baker  <mattbaker@apple.com>
594
595         Web Inspector: Make it easy to dynamically show/hide a SettingsView
596         https://bugs.webkit.org/show_bug.cgi?id=171765
597         <rdar://problem/32031280>
598
599         Reviewed by Brian Burg.
600
601         This patch adds SettingsTabContentView.prototype.setSettingsViewVisible,
602         for dynamically showing/hiding a child view (and its NavigationBar item).
603         The following new behavior is relevant when more that one child SettingsView
604         exist in the Settings tab:
605          - Hiding the selected view will cause a new view to become selected.
606            The previous visible view is selected, if it exists. Otherwise the
607            next visible view is used.
608          - Showing a view when no views are selected cause the view to be selected.
609
610         As the Settings tab currently has only one child view, the behavior above
611         was tested by adding a handful of vanilla SettingsView objects to the tab
612         and toggling their visibility.
613
614         * UserInterface/Views/NavigationBar.js:
615         Simplify overloaded parameter `navigationItemOrIdentifierOrIndex`, which
616         is used in a few places and is always an instance of NavigationItem.
617
618         (WebInspector.NavigationBar):
619         (WebInspector.NavigationBar.prototype.removeNavigationItem):
620         (WebInspector.NavigationBar.prototype.get selectedNavigationItem):
621         (WebInspector.NavigationBar.prototype.set selectedNavigationItem):
622         (WebInspector.NavigationBar.prototype.findNavigationItem):
623         Lookup a navigation item by its identifier.
624         (WebInspector.NavigationBar.prototype._findNavigationItem): Deleted.
625         Replaced overloaded private method with new public method.
626
627         * UserInterface/Views/NavigationItem.js:
628         Cleanup.
629         (WebInspector.NavigationItem):
630         (WebInspector.NavigationItem.prototype.get identifier):
631         (WebInspector.NavigationItem.prototype.get element):
632         (WebInspector.NavigationItem.prototype.get minimumWidth):
633         (WebInspector.NavigationItem.prototype.get parentNavigationBar):
634
635         * UserInterface/Views/SettingsTabContentView.css:
636         Use `visibility: hidden` instead of `display: none` when hiding the
637         NavigationBar, so that the selected view's top position stays the same.
638
639         (.content-view.settings):
640         (.content-view.settings .navigation-bar.invisible):
641
642         * UserInterface/Views/SettingsTabContentView.js:
643         (WebInspector.SettingsTabContentView):
644         Switch to an array of SettingsViews instead of a map. Fast lookup isn't
645         a concern due to the small number of items, and having indices simplifies
646         traversing the previous/next items in `setSettingsViewVisible`.
647
648         (WebInspector.SettingsTabContentView.prototype.set selectedSettingsView):
649         Rename `page` to `settingsView`.
650         (WebInspector.SettingsTabContentView.prototype.addSettingsView):
651         (WebInspector.SettingsTabContentView.prototype.setSettingsViewVisible):
652         Shows/hides the specified view. Hiding the selected SettingsView will
653         cause another visible view to become selected, if one exists.
654
655         (WebInspector.SettingsTabContentView.prototype._updateNavigationBarVisibility):
656         Helper for updating navigation bar visibility after making a change
657         to the navigation items.
658
659         (WebInspector.SettingsTabContentView.prototype._navigationItemSelected):
660
661 2017-05-08  Myles C. Maxfield  <mmaxfield@apple.com>
662
663         Unprefix unicode-bidi CSS values
664         https://bugs.webkit.org/show_bug.cgi?id=171761
665
666         Reviewed by Simon Fraser.
667
668         * UserInterface/Models/CSSKeywordCompletions.js:
669
670 2017-05-08  Fujii Hironori  <Hironori.Fujii@sony.com>
671
672         [GTK] Web Inspector: Add new GTK+ icon for timeline recording stopwatch
673         https://bugs.webkit.org/show_bug.cgi?id=154088
674
675         Reviewed by Carlos Garcia Campos.
676
677         Add a free icon and remove some unused ones for the Web Inspector
678         in GTK+.
679
680         * UserInterface/Images/gtk/Stopwatch.png: Removed.
681         * UserInterface/Images/gtk/Stopwatch.svg: Added.
682         * UserInterface/Images/gtk/Stopwatch@2x.png: Removed.
683         * UserInterface/Views/TimelineIcons.css:
684         (body:not(.mac-platform, .windows-platform) .stopwatch-icon .icon): Deleted.
685
686 2017-05-05  Nikita Vasilyev  <nvasilyev@apple.com>
687
688         REGRESSION (r212998): Web Inspector: bad spacing of go-to arrow for HTTP POST request data
689         https://bugs.webkit.org/show_bug.cgi?id=171674
690
691         Reviewed by Matt Baker.
692
693         * UserInterface/Views/DetailsSection.css:
694         (body[dir=ltr] .details-section > .content > .group > .row.simple > .value .go-to-arrow):
695         (body[dir=rtl] .details-section > .content > .group > .row.simple > .value .go-to-arrow):
696         Swap margin-left and margin-right. This regressed when RTL support was added.
697
698 2017-05-03  Devin Rousso  <webkit@devinrousso.com>
699
700         REGRESSION (r215630): Web Inspector: Option-Click on URL in Styles sidebar does not work
701         https://bugs.webkit.org/show_bug.cgi?id=171569
702
703         Reviewed by Joseph Pecoraro.
704
705         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
706         (WebInspector.SourceCodeTextEditor.prototype.tokenTrackingControllerHighlightedRangeWasClicked):
707         Add missing `frame` parameter to `WebInspector.openURL`.
708
709 2017-05-03  Nikita Vasilyev  <nvasilyev@apple.com>
710
711         Uncaught Exception: Can't make a ContentView for an unknown representedObject of type: IndexedDatabase
712         https://bugs.webkit.org/show_bug.cgi?id=167473
713         <rdar://problem/30249715>
714
715         Reviewed by Matt Baker.
716
717         When an indexed database is selected in the Storage navigation sidebar, show its host, security origin, and version.
718
719         Previously, selecting an indexed database didn't change the content view. It could lead to a misleading state
720         when an indexed database is selected in the sidebar, but the content view showed previously selected item such as
721         Cookies or Local Storage.
722
723         * UserInterface/Main.html:
724         * UserInterface/Views/ContentView.css:
725         (.content-view .details-section):
726         (.content-view .details-section > .content):
727         (.content-view .details-section > .content > .group > .row.simple > .label):
728         (.content-view .details-section:last-child):
729         * UserInterface/Views/ContentView.js:
730         (WebInspector.ContentView.createFromRepresentedObject):
731         (WebInspector.ContentView.isViewable):
732         * UserInterface/Views/IndexedDatabaseContentView.css: Added.
733         (.indexed-database.content-view):
734         (.indexed-database.content-view .indexed-database-details):
735         (.indexed-database.content-view .details-section > .header):
736         * UserInterface/Views/IndexedDatabaseContentView.js: Added.
737         (WebInspector.IndexedDatabaseContentView):
738         * UserInterface/Views/IndexedDatabaseDetailsSidebarPanel.js:
739         (WebInspector.IndexedDatabaseDetailsSidebarPanel.prototype.inspect):
740         Don't show the details sidebar for IndexedDB top level item since it has the same content as the content view.
741
742         * UserInterface/Views/StorageSidebarPanel.js:
743         (WebInspector.StorageSidebarPanel._treeSelectionDidChange):
744         * UserInterface/Views/StorageTabContentView.js:
745         (WebInspector.StorageTabContentView.prototype.canShowRepresentedObject):
746         (WebInspector.StorageTabContentView):
747
748 2017-05-03  Joseph Pecoraro  <pecoraro@apple.com>
749
750         Web Inspector: 404 Image Load does not appear as a failure in Web Inspector
751         https://bugs.webkit.org/show_bug.cgi?id=171587
752         <rdar://problem/13222846>
753
754         Reviewed by Matt Baker.
755
756         * UserInterface/Models/Resource.js:
757         (WebInspector.Resource.prototype.createObjectURL):
758         This may return null if the data is not a Blob. This can happen if we
759         loaded non-base64Encoded text content for an Image. Such as a 404 response.
760
761         (WebInspector.Resource.prototype.hadLoadingError):
762         Consistent way to check for any kind of loading error.
763
764         (WebInspector.Resource.prototype.getImageSize):
765         Handle failure to create an object URL.
766
767         * UserInterface/Views/FontResourceContentView.js:
768         (WebInspector.FontResourceContentView.prototype.contentAvailable):
769         * UserInterface/Views/ImageResourceContentView.js:
770         (WebInspector.ImageResourceContentView.prototype.contentAvailable):
771         Handle failure to create an object URL.
772 :
773         * UserInterface/Views/ResourceContentView.js:
774         (WebInspector.ResourceContentView):
775         (WebInspector.ResourceContentView.prototype.showGenericErrorMessage):
776         (WebInspector.ResourceContentView.prototype._protocolError): Deleted.
777         Provide a way for subclasses to show a generic resource loading error.
778
779         * UserInterface/Views/ResourceTimelineDataGridNode.js:
780         (WebInspector.ResourceTimelineDataGridNode.prototype.createCellContent):
781         * UserInterface/Views/ResourceTreeElement.js:
782         (WebInspector.ResourceTreeElement.prototype._updateStatus):
783         Use the consistent helper for denoting loading errors.
784
785 2017-05-02  Fujii Hironori  <Hironori.Fujii@sony.com>
786
787         [GTK] Web Inspector: Remove GTK+ icon FontVariantSmallCaps.svg
788         https://bugs.webkit.org/show_bug.cgi?id=171542
789
790         Reviewed by Carlos Garcia Campos.
791
792         This image is not used and Apple's one was removed in Bug 148720.
793
794         * UserInterface/Images/gtk/FontVariantSmallCaps.svg: Removed.
795
796 2017-05-02  Fujii Hironori  <Hironori.Fujii@sony.com>
797
798         [GTK] Web Inspector: Remove GTK+ icons AnimationPlayStatePaused.svg and AnimationPlayStateRunning.svg
799         https://bugs.webkit.org/show_bug.cgi?id=171540
800
801         Reviewed by Carlos Garcia Campos.
802
803         These images aren't used since r204152 (Bug 160566). Instead,
804         Plus13.svg and Minus.svg are used.
805
806         * UserInterface/Images/gtk/BreakpointActionAdd.svg: Removed.
807         * UserInterface/Images/gtk/BreakpointActionRemove.svg: Removed.
808
809 2017-04-30  Chris Dumez  <cdumez@apple.com>
810
811         Drop support for legacy ClientRect / ClientRectList
812         https://bugs.webkit.org/show_bug.cgi?id=171418
813
814         Reviewed by Sam Weinig.
815
816         Drop ClientRectList-related code.
817
818         * UserInterface/Models/NativeFunctionParameters.js:
819
820 2017-04-27  Fujii Hironori  <Hironori.Fujii@sony.com>
821
822         [GTK] Web Inspector: Add new GTK+ icons for different Script Timeline Views (Events and Call Trees)
823         https://bugs.webkit.org/show_bug.cgi?id=155077
824
825         Reviewed by Joseph Pecoraro.
826
827         * UserInterface/Images/gtk/CallTrees.svg: Added.
828         * UserInterface/Images/gtk/Events.svg: Added.
829         * UserInterface/Views/PathComponentIcons.css:
830         (body:not(.mac-platform, .windows-platform) .heap-snapshot-record .icon,):
831         (body:not(.mac-platform, .windows-platform) .events-icon .icon,): Deleted.
832
833 2017-04-27  Nikita Vasilyev  <nvasilyev@apple.com>
834
835         Web Inspector: Remove unused ToggleControlToolbarItem.js
836         https://bugs.webkit.org/show_bug.cgi?id=171401
837
838         Reviewed by Joseph Pecoraro.
839
840         * UserInterface/Main.html:
841         * UserInterface/Views/ToggleControlToolbarItem.js: Removed.
842
843 2017-04-27  Brian Burg  <bburg@apple.com>
844
845         Web Inspector: RTL: inherit system layout direction by default
846         https://bugs.webkit.org/show_bug.cgi?id=171402
847         <rdar://problem/30753626>
848
849         Reviewed by Joseph Pecoraro.
850
851         Web Inspector's layout direction should follow the system layout direction
852         by default now that most RTL bugs seem to be fixed. We are ready for more
853         feedback.
854
855         * UserInterface/Base/Main.js:
856         * UserInterface/Base/Setting.js:
857         Rename the existing "layout-direction" setting so that the new default
858         value is set properly even for people who have overridden the layout
859         direction while the setting was exposed to everyone.
860
861         * UserInterface/Views/GeneralSettingsView.js:
862         (WebInspector.GeneralSettingsView.prototype.initialLayout):
863         (WebInspector.GeneralSettingsView.prototype.layout):
864         (WebInspector.GeneralSettingsView):
865         Make the layout direction override setting only visible when DebugUI
866         is turned on. This remains only for engineers to quickly check layout bugs.
867
868         * UserInterface/Views/SettingsView.js:
869         (WebInspector.SettingsView.prototype.addGroupWithCustomSetting):
870         (WebInspector.SettingsView.prototype.addCustomSetting): Deleted.
871         Refactor the convenience method to return both the group and the
872         custom setting. This allows us to toggle .hidden on the entire
873         row for the Layout Direction setting (label and editor).
874
875         * Localizations/en.lproj/localizedStrings.js:
876         Unlocalize the setting strings since they are only shown in engineering builds now.
877
878 2017-04-27  Brian Burg  <bburg@apple.com>
879
880         Web Inspector: RTL: fix alignment of "truncated call stack" message
881         https://bugs.webkit.org/show_bug.cgi?id=170477
882
883         Reviewed by Devin Rousso.
884
885         * UserInterface/Views/ThreadTreeElement.css:
886         (.tree-outline > .item.thread + ol > .item.truncated-call-frames):
887         (body[dir=ltr] .tree-outline > .item.thread + ol > .item.truncated-call-frames):
888         (body[dir=rtl] .tree-outline > .item.thread + ol > .item.truncated-call-frames):
889         (.tree-outline > .item.thread + ol > .item.truncated-call-frames .icon):
890         (body[dir=ltr] .tree-outline > .item.thread + ol > .item.truncated-call-frames .icon):
891         (body[dir=rtl] .tree-outline > .item.thread + ol > .item.truncated-call-frames .icon):
892
893 2017-04-27  Brian Burg  <bburg@apple.com>
894
895         Web Inspector: RTL: layout issues in Open Resource Dialog
896         https://bugs.webkit.org/show_bug.cgi?id=170551
897
898         Reviewed by Matt Baker.
899
900         We need to flip the cancel and search icons, and flip padding
901         in the tree outline that contains search results.
902
903         I am still not happy with the title/subtitle ordering
904         (i.e., the domain vs the resource name), but this issue will
905         be solved primarily in the navigation sidebar first and then
906         adjusted for Open Resource Dialog if those changes are not
907         sufficient.
908
909         * UserInterface/Views/OpenResourceDialog.css:
910         (.open-resource-dialog > .field):
911         (body[dir=ltr] .open-resource-dialog > .field):
912         (body[dir=rtl] .open-resource-dialog > .field):
913         (.open-resource-dialog > .field::before):
914         (body[dir=ltr] .open-resource-dialog > .field::before):
915         (body[dir=rtl] .open-resource-dialog > .field::before):
916         (.open-resource-dialog > .field > input):
917         (body[dir=ltr] .open-resource-dialog > .field > input):
918         (body[dir=rtl] .open-resource-dialog > .field > input):
919         (.open-resource-dialog > .field > img):
920         (body[dir=ltr] .open-resource-dialog > .field > img):
921         (body[dir=rtl] .open-resource-dialog > .field > img):
922         (.open-resource-dialog > .tree-outline .item):
923         (body[dir=ltr] .open-resource-dialog > .tree-outline .item):
924         (body[dir=rtl] .open-resource-dialog > .tree-outline .item):
925
926 2017-04-27  Brian Burg  <bburg@apple.com>
927
928         Web Inspector: fix tooltip wording for Reload button
929         https://bugs.webkit.org/show_bug.cgi?id=171073
930         <rdar://problem/31378524>
931
932         Reviewed by Joseph Pecoraro.
933
934         * Localizations/en.lproj/localizedStrings.js:
935         * UserInterface/Base/Main.js:
936         (WebInspector.contentLoaded):
937
938 2017-04-27  Fujii Hironori  <Hironori.Fujii@sony.com>
939
940         [GTK] Web Inspector: Add new GTK+ icons for instrument icons
941         https://bugs.webkit.org/show_bug.cgi?id=153892
942         <rdar://problem/24510460>
943
944         Reviewed by Joseph Pecoraro.
945
946         Add more free icons from art-libre symbolic and removed some
947         unused ones for the Web Inspector in GTK+.
948
949         * UserInterface/Images/gtk/Colors.png: Removed.
950         * UserInterface/Images/gtk/Colors@2x.png: Removed.
951         * UserInterface/Images/gtk/ColorsLarge.png: Removed.
952         * UserInterface/Images/gtk/ColorsLarge@2x.png: Removed.
953         * UserInterface/Images/gtk/Frames.png: Removed.
954         * UserInterface/Images/gtk/Frames@2x.png: Removed.
955         * UserInterface/Images/gtk/HeapAllocationsInstrument.svg: Added.
956         * UserInterface/Images/gtk/LayoutInstrument.svg: Added.
957         * UserInterface/Images/gtk/MemoryInstrument.svg: Added.
958         * UserInterface/Images/gtk/Network.png: Removed.
959         * UserInterface/Images/gtk/Network@2x.png: Removed.
960         * UserInterface/Images/gtk/NetworkInstrument.svg: Added.
961         * UserInterface/Images/gtk/NetworkLarge.png: Removed.
962         * UserInterface/Images/gtk/NetworkLarge@2x.png: Removed.
963         * UserInterface/Images/gtk/RenderingFramesInstrument.svg: Added.
964         * UserInterface/Images/gtk/Script.png: Removed.
965         * UserInterface/Images/gtk/Script@2x.png: Removed.
966         * UserInterface/Images/gtk/ScriptLarge.png: Removed.
967         * UserInterface/Images/gtk/ScriptLarge@2x.png: Removed.
968         * UserInterface/Images/gtk/ScriptsInstrument.svg: Added.
969         * UserInterface/Views/TimelineIcons.css:
970         (body:not(.mac-platform, .windows-platform) .network-icon .icon): Deleted.
971         (body:not(.mac-platform, .windows-platform) .network-icon.large .icon): Deleted.
972         (body:not(.mac-platform, .windows-platform) .layout-icon .icon): Deleted.
973         (body:not(.mac-platform, .windows-platform) .layout-icon.large .icon): Deleted.
974         (body:not(.mac-platform, .windows-platform) .script-icon .icon): Deleted.
975         (body:not(.mac-platform, .windows-platform) .script-icon.large .icon): Deleted.
976         (body:not(.mac-platform, .windows-platform) .rendering-frame-icon .icon): Deleted.
977         (body:not(.mac-platform, .windows-platform) .memory-icon .icon): Deleted.
978         (body:not(.mac-platform, .windows-platform) .heap-allocations-icon .icon): Deleted.
979
980 2017-04-27  Fujii Hironori  <Hironori.Fujii@sony.com>
981
982         [GTK] Web Inspector: gtk/NavigationItemCurleyBraces.svg is licensed under NonCommercial CC
983         https://bugs.webkit.org/show_bug.cgi?id=170902
984
985         Reviewed by Michael Catanzaro.
986
987         * UserInterface/Images/gtk/NavigationItemCurleyBraces.svg:
988         Replaced with new one created by me.
989
990 2017-04-27  Fujii Hironori  <Hironori.Fujii@sony.com>
991
992         [GTK] Web Inspector: some SVG images are specified 'currentColor' incorrectly
993         https://bugs.webkit.org/show_bug.cgi?id=170977
994
995         Reviewed by Michael Catanzaro.
996
997         The keyword 'currentColor' is specifed manually in Bug 150602.
998         But, some SVG images are specified incorrectly.
999
1000         * UserInterface/Images/gtk/NavigationItemTypes.svg: Do not stroke
1001         with currentColor, but fill.
1002         * UserInterface/Images/gtk/UpDownArrows.svg: Ditto.
1003
1004 2017-04-27  Carlos Garcia Campos  <cgarcia@igalia.com>
1005
1006         [GTK] Remote inspector should support inspecting targets with previous version of backend commands
1007         https://bugs.webkit.org/show_bug.cgi?id=171267
1008
1009         Reviewed by Michael Catanzaro.
1010
1011         Allow to use data URLs for script-src.
1012
1013         * UserInterface/Main.html:
1014
1015 2017-04-25  Nikita Vasilyev  <nvasilyev@apple.com>
1016
1017         REGRESSION (r209882): Web Inspector: Command-G does not work in the console
1018         https://bugs.webkit.org/show_bug.cgi?id=170555
1019         <rdar://problem/31481247>
1020
1021         Reviewed by Brian Burg.
1022
1023         Command-G didn't work in the console when the console content view was in focus. It only
1024         worked when the search input field was focused.
1025
1026         * UserInterface/Views/LogContentView.js:
1027         (WebInspector.LogContentView.prototype.findBannerRevealPreviousResult):
1028         (WebInspector.LogContentView.prototype.highlightPreviousSearchMatch): Added.
1029         (WebInspector.LogContentView.prototype.findBannerRevealNextResult):
1030         (WebInspector.LogContentView.prototype.highlightNextSearchMatch): Added.
1031         Re-introduce highlightPreviousSearchMatch and highlightNextSearchMatch methods that were
1032         removed in r209882.
1033
1034 2017-04-25  Joseph Pecoraro  <pecoraro@apple.com>
1035
1036         Web Inspector: Network Tab - Sorting by Priority Column hides all rows in the datagrid (uncaught exception)
1037         https://bugs.webkit.org/show_bug.cgi?id=171312
1038         <rdar://problem/31828554>
1039
1040         Reviewed by Brian Burg.
1041
1042         * UserInterface/Models/Resource.js:
1043         (WebInspector.Resource.comparePriority):
1044         Provide a helper for compariting NetworkPriority enum values.
1045
1046         * UserInterface/Views/NetworkGridContentView.js:
1047         (WebInspector.NetworkGridContentView):
1048         (WebInspector.NetworkGridContentView.prototype.dataGridSortComparator):
1049         * UserInterface/Views/NetworkTimelineView.js:
1050         (WebInspector.NetworkTimelineView.prototype.dataGridSortComparator):
1051         Custom sort handler for priority.
1052
1053 2017-04-25  Nikita Vasilyev  <nvasilyev@apple.com>
1054
1055         REGRESSION (r214863): Web Inspector: Uncaught Exception when losing focus from a selector field
1056         https://bugs.webkit.org/show_bug.cgi?id=171254
1057         <rdar://problem/31813959>
1058
1059         Reviewed by Joseph Pecoraro.
1060
1061         The event.relatedTarget of a blur event contains the element where focus moved to.
1062         In some cases this can be null, such as if the user leaves the application window.
1063         For example Command+Tab to switch to another application.
1064
1065         * UserInterface/Views/CSSStyleDeclarationSection.js:
1066         (WebInspector.CSSStyleDeclarationSection.prototype._handleSelectorPaste):
1067
1068 2017-04-25  Nikita Vasilyev  <nvasilyev@apple.com>
1069
1070         Web Inspector: Open the new bug page in the new tab
1071         https://bugs.webkit.org/show_bug.cgi?id=171253
1072
1073         Reviewed by Joseph Pecoraro.
1074
1075         * UserInterface/Debug/UncaughtExceptionReporter.js:
1076         (createErrorSheet):
1077
1078 2017-04-25  Joseph Pecoraro  <pecoraro@apple.com>
1079
1080         Web Inspector: "Space" localized string is not loaded in combined and minified builds
1081         https://bugs.webkit.org/show_bug.cgi?id=171283
1082         <rdar://problem/30871371>
1083
1084         Reviewed by Brian Burg.
1085
1086         In combined and minified builds, the document.write() to load the
1087         localized strings script doesn't happen before the KeyboardShortcut
1088         global code in Main.js evaluates, so there is no UIString because
1089         window.localizedStrings hasn't populated yet. Since this is the only
1090         instance, populate the display UIString lazily and provide warnings
1091         in minified builds if this happens.
1092
1093         * UserInterface/Base/LoadLocalizedStrings.js:
1094         (WebInspector.UIString):
1095         Provide a warning if a UIString was attempted before the strings have loaded.
1096
1097         * UserInterface/Base/Main.js:
1098         (WebInspector.loaded):
1099         For this rare instance, populate the display name of the string when we are
1100         sure strings have loaded.
1101
1102         * UserInterface/Models/KeyboardShortcut.js:
1103         Revert the UIString here, but note that it will be populated later.
1104
1105         * UserInterface/Models/Resource.js:
1106         (WebInspector.Resource.prototype.setCachedResponseBodySize):
1107         * UserInterface/Views/DOMTreeElement.js:
1108         (WebInspector.DOMTreeElement.prototype._statusImageContextmenu):
1109         Address console.asserts not ending in semicolon warnings produced during
1110         optimized builds. Without semicolons they are not stripped.
1111
1112 2017-04-25  Fujii Hironori  <Hironori.Fujii@sony.com>
1113
1114         Web Inspector: TypeError:​ sourceCodeLocation.populateLiveDisplayLocationTooltip is not a function
1115         https://bugs.webkit.org/show_bug.cgi?id=171259
1116
1117         Reviewed by Joseph Pecoraro.
1118
1119         The first argument of WebInspector.createSourceCodeLocationLink
1120         should be SourceCodeLocation type.
1121
1122         * UserInterface/Views/TimelineDataGridNode.js:
1123         (WebInspector.TimelineDataGridNode.prototype.createCellContent):
1124         Pass 'callFrame.sourceCodeLocation' instead of 'value' to the
1125         first argument.
1126
1127 2017-04-24  Matt Baker  <mattbaker@apple.com>
1128
1129         Web Inspector: DOM/XHR breakpoint sections should be collapsed by default
1130         https://bugs.webkit.org/show_bug.cgi?id=170931
1131
1132         Reviewed by Brian Burg.
1133
1134         Set the default collapsed parameter for DOM / XHR Breakpoints sections,
1135         and auto-expand the DOM Breakpoints when a breakpoint is added.
1136
1137         * UserInterface/Views/DebuggerSidebarPanel.js:
1138         (WebInspector.DebuggerSidebarPanel):
1139         (WebInspector.DebuggerSidebarPanel.prototype._domBreakpointAddedOrRemoved):
1140
1141 2017-04-21  Devin Rousso  <webkit@devinrousso.com>
1142
1143         Web Inspector: Add titles to Network grid items for easier reading when text overflows
1144         https://bugs.webkit.org/show_bug.cgi?id=170792
1145
1146         Reviewed by Brian Burg.
1147
1148         * UserInterface/Views/NetworkGridContentView.js:
1149         (WebInspector.NetworkGridContentView):
1150         * UserInterface/Views/ResourceTimelineDataGridNode.js:
1151         (WebInspector.ResourceTimelineDataGridNode.prototype.createCellContent):
1152         (WebInspector.ResourceTimelineDataGridNode.prototype._cachedCellContent):
1153         Do not add a title if the text is an em-dash, as that title will not convey any information.
1154
1155 2017-04-21  Devin Rousso  <dcrousso+webkit@gmail.com>
1156
1157         Web Inspector: Don't show the Search tab if it's open and matches the representedObject
1158         https://bugs.webkit.org/show_bug.cgi?id=168709
1159
1160         Reviewed by Brian Burg.
1161
1162         * UserInterface/Base/Main.js:
1163         (WebInspector.handlePossibleLinkClick):
1164         (WebInspector.openURL):
1165         (WebInspector.showSourceCode):
1166         (WebInspector.showOriginalUnformattedSourceCodeLocation):
1167         (WebInspector.showOriginalOrFormattedSourceCodeLocation):
1168         (WebInspector.showOriginalOrFormattedSourceCodeTextRange):
1169         (WebInspector._frameWasAdded):
1170         (WebInspector.createSourceCodeLocationLink):
1171         (WebInspector.linkifyLocation):
1172         (WebInspector.linkifyElement):
1173         Add `options` parameter to provide greater customization.  Also fix some style issues.
1174
1175         * UserInterface/Views/NetworkGridContentView.js:
1176         (WebInspector.NetworkGridContentView.prototype.hasRepresentedObject): Deleted.
1177         * UserInterface/Views/NetworkSidebarPanel.js:
1178         (WebInspector.NetworkSidebarPanel.prototype.hasRepresentedObject): Deleted.
1179         * UserInterface/Views/NetworkTabContentView.js:
1180         (WebInspector.NetworkTabContentView.prototype.canShowRepresentedObject):
1181         * UserInterface/Views/SearchTabContentView.js:
1182         (WebInspector.SearchTabContentView.prototype.canShowRepresentedObject):
1183         Ensure that the Search tab can only display resources that it has entries for in its view.
1184         Also rework the way in which this is determined.
1185
1186         * UserInterface/Controllers/BreakpointPopoverController.js:
1187         (WebInspector.BreakpointPopoverController.prototype.appendContextMenuItems):
1188         * UserInterface/Protocol/InspectorFrontendAPI.js:
1189         (InspectorFrontendAPI.showMainResourceForFrame):
1190         * UserInterface/Views/CSSStyleDeclarationSection.js:
1191         (WebInspector.CSSStyleDeclarationSection.prototype.refresh):
1192         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
1193         (WebInspector.CSSStyleDeclarationTextEditor.tokenTrackingControllerHighlightedRangeWasClicked.showRangeInSourceCode):
1194         (WebInspector.CSSStyleDeclarationTextEditor.tokenTrackingControllerHighlightedRangeWasClicked):
1195         * UserInterface/Views/ComputedStyleDetailsPanel.js:
1196         (WebInspector.ComputedStyleDetailsPanel.prototype.cssStyleDeclarationTextEditorShowProperty):
1197         * UserInterface/Views/ConsoleMessageView.js:
1198         (WebInspector.ConsoleMessageView.prototype._linkifyLocation):
1199         * UserInterface/Views/DOMDetailsSidebarPanel.js:
1200         (WebInspector.DOMDetailsSidebarPanel.prototype._mouseWasClicked):
1201         * UserInterface/Views/DOMTreeContentView.js:
1202         (WebInspector.DOMTreeContentView.prototype._mouseWasClicked.followLink):
1203         * UserInterface/Views/DOMTreeElement.js:
1204         (WebInspector.DOMTreeElement.prototype._showCustomElementDefinition):
1205         * UserInterface/Views/DebuggerDashboardView.js:
1206         (WebInspector.DebuggerDashboardView.prototype._rebuildLocation):
1207         * UserInterface/Views/DebuggerSidebarPanel.js:
1208         (WebInspector.DebuggerSidebarPanel.prototype._treeSelectionDidChange):
1209         (WebInspector.DebuggerSidebarPanel.prototype._updatePauseReasonGotoArrow):
1210         * UserInterface/Views/ErrorObjectView.js:
1211         (WebInspector.ErrorObjectView.makeSourceLinkWithPrefix):
1212         * UserInterface/Views/EventListenerSectionGroup.js:
1213         (WebInspector.EventListenerSectionGroup.prototype._functionTextOrLink):
1214         * UserInterface/Views/HeapSnapshotInstanceDataGridNode.js:
1215         (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._populatePreview):
1216         (WebInspector.HeapSnapshotInstanceDataGridNode.prototype._mouseoverHandler.appendPathRow):
1217         * UserInterface/Views/ObjectTreeBaseTreeElement.js:
1218         (WebInspector.ObjectTreeBaseTreeElement.prototype._appendMenusItemsForObject):
1219         (WebInspector.ObjectTreeBaseTreeElement):
1220         * UserInterface/Views/ProbeSetDetailsSection.js:
1221         (WebInspector.ProbeSetDetailsSection.prototype._updateLinkElement):
1222         * UserInterface/Views/ProfileDataGridNode.js:
1223         (WebInspector.ProfileDataGridNode.prototype._displayContent):
1224         * UserInterface/Views/ResourceDetailsSidebarPanel.js:
1225         (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshRelatedResourcesSection):
1226         (WebInspector.ResourceDetailsSidebarPanel.prototype._goToRequestDataClicked):
1227         * UserInterface/Views/ResourceSidebarPanel.js:
1228         (WebInspector.ResourceSidebarPanel.prototype._treeSelectionDidChange):
1229         * UserInterface/Views/ResourceTimelineDataGridNode.js:
1230         (WebInspector.ResourceTimelineDataGridNode.prototype._dataGridNodeGoToArrowClicked):
1231         * UserInterface/Views/RulesStyleDetailsPanel.js:
1232         (WebInspector.RulesStyleDetailsPanel.prototype.refresh.insertMediaOrInheritanceLabel):
1233         * UserInterface/Views/SearchSidebarPanel.js:
1234         (WebInspector.SearchSidebarPanel.prototype._treeElementDoubleClick):
1235         * UserInterface/Views/SourceCodeTextEditor.js:
1236         (WebInspector.SourceCodeTextEditor.prototype.tokenTrackingControllerHighlightedRangeWasClicked):
1237         * UserInterface/Views/SourceCodeTimelineTimelineDataGridNode.js:
1238         (WebInspector.SourceCodeTimelineTimelineDataGridNode.prototype._createNameCellContent):
1239         * UserInterface/Views/TimelineDataGrid.js:
1240         (WebInspector.TimelineDataGrid.prototype._popoverCallStackTreeSelectionDidChange):
1241         * UserInterface/Views/TimelineDataGridNode.js:
1242         (WebInspector.TimelineDataGridNode.prototype.createCellContent):
1243         * UserInterface/Views/VisualStyleSelectorTreeItem.js:
1244         (WebInspector.VisualStyleSelectorTreeItem.prototype.populateContextMenu):
1245         Ensure that the Search tab is never shown from links generated by these functions.
1246         Also do the same for the Network tab in some cases.
1247
1248         * UserInterface/Views/NetworkTimelineView.js:
1249         (WebInspector.NetworkTimelineView.prototype.canShowContentViewForTreeElement): Deleted.
1250         (WebInspector.NetworkTimelineView.prototype.showContentViewForTreeElement): Deleted.
1251         Drive-by cleanup: remove dead code.
1252
1253 2017-04-20  Matt Baker  <mattbaker@apple.com>
1254
1255         Web Inspector: Add regular expression support to XHR breakpoints
1256         https://bugs.webkit.org/show_bug.cgi?id=170099
1257         <rdar://problem/31558082>
1258
1259         Reviewed by Joseph Pecoraro.
1260
1261         * Localizations/en.lproj/localizedStrings.js:
1262         New strings for the Add XHR Breakpoint popover.
1263
1264         * UserInterface/Controllers/DOMDebuggerManager.js:
1265         (WebInspector.DOMDebuggerManager):
1266         (WebInspector.DOMDebuggerManager.prototype.addXHRBreakpoint):
1267         Update for new XHRBreakpoint constructor.
1268         (WebInspector.DOMDebuggerManager.prototype._updateXHRBreakpoint):
1269         Set `isRegex` flag.
1270
1271         * UserInterface/Main.html:
1272         New files for CodeMirror mode and breakpoint popover.
1273
1274         * UserInterface/Models/XHRBreakpoint.js:
1275         Breakpoint can be of type Text or RegularExpression.
1276         (WebInspector.XHRBreakpoint):
1277         (WebInspector.XHRBreakpoint.prototype.get type):
1278         (WebInspector.XHRBreakpoint.prototype.get serializableInfo):
1279
1280         * UserInterface/Views/CodeMirrorRegexMode.css: Added.
1281         (.cm-s-default .cm-regex-character-set):
1282         (.cm-s-default .cm-regex-character-set-negate):
1283         (.cm-s-default :matches(.cm-regex-escape, .cm-regex-escape-2, .cm-regex-escape-3)):
1284         (.cm-s-default :matches(.cm-regex-group, .cm-regex-lookahead)):
1285         (.cm-s-default .cm-regex-quantifier):
1286         (.cm-s-default :matches(.cm-regex-literal, .cm-regex-special, .cm-regex-backreference)):
1287         Colors for regular expression syntax highlighting. The regex mode emits
1288         more class names than we have separate colors for, allowing for further
1289         customization in the future.
1290
1291         * UserInterface/Views/CodeMirrorRegexMode.js: Added.
1292         (characterSetTokenizer):
1293         (consumeEscapeSequence):
1294         (tokenBase):
1295         New CodeMirror mode for highlighting "text/x-regex" content.
1296
1297         * UserInterface/Views/DebuggerSidebarPanel.js:
1298         Use new popover type for creating XHR breakpoints.
1299         (WebInspector.DebuggerSidebarPanel.prototype._addXHRBreakpointButtonClicked):
1300         (WebInspector.DebuggerSidebarPanel.prototype.willDismissPopover):
1301         (WebInspector.DebuggerSidebarPanel):
1302
1303         * UserInterface/Views/XHRBreakpointPopover.css: Added.
1304         (.popover .xhr-breakpoint-content):
1305         (.popover .xhr-breakpoint-content > .editor-wrapper):
1306         (.popover .xhr-breakpoint-content > .editor-wrapper > .editor):
1307         (body[dir=ltr] .popover .xhr-breakpoint-content > .editor-wrapper > .editor):
1308         (body[dir=rtl] .popover .xhr-breakpoint-content > .editor-wrapper > .editor):
1309         (.popover .xhr-breakpoint-content > .editor-wrapper > .editor > .CodeMirror):
1310         (.popover .xhr-breakpoint-content > .editor-wrapper > .editor > .CodeMirror-scroll):
1311         Styles for new popover.
1312
1313         * UserInterface/Views/XHRBreakpointPopover.js: Added.
1314         New popover class. Includes a picker for selecting breakpoint type
1315         (Text or RegularExpression), and has an improved popover caption. Input
1316         field style and placeholder text changes based on the breakpoint type.
1317
1318         (WebInspector.XHRBreakpointPopover):
1319         (WebInspector.XHRBreakpointPopover.prototype.get result):
1320         (WebInspector.XHRBreakpointPopover.prototype.get type):
1321         (WebInspector.XHRBreakpointPopover.prototype.get value):
1322         (WebInspector.XHRBreakpointPopover.prototype.show.addOption):
1323         (WebInspector.XHRBreakpointPopover.prototype.show):
1324         (WebInspector.XHRBreakpointPopover.prototype._createEditor):
1325         (WebInspector.XHRBreakpointPopover.prototype._updateEditor):
1326         (WebInspector.XHRBreakpointPopover.prototype._presentOverTargetElement):
1327
1328         * UserInterface/Views/XHRBreakpointTreeElement.js:
1329         (WebInspector.XHRBreakpointTreeElement):
1330         Differentiate breakpoint type by enclosing subtitle in either double quotes
1331         or regex-literal delimiters, depending on the type of breakpoint.
1332
1333 2017-04-19  Nikita Vasilyev  <nvasilyev@apple.com>
1334
1335         REGRESSION (r209882): Web Inspector: Console's filter bar has text search field, but the next/previous buttons don't do anything
1336         https://bugs.webkit.org/show_bug.cgi?id=170556
1337         <rdar://problem/31481755>
1338
1339         Reviewed by Matt Baker.
1340
1341         * UserInterface/Views/LogContentView.js:
1342         (WebInspector.LogContentView.prototype.performSearch):
1343         Update numberOfResults setter, which sets "disabled" attribute to false when numberOfResults > 0.
1344
1345 2017-04-18  Matt Baker  <mattbaker@apple.com>
1346
1347         Web Inspector: XHR breakpoints shouldn't be cleared from the sidebar on reload
1348         https://bugs.webkit.org/show_bug.cgi?id=170930
1349
1350         Reviewed by Joseph Pecoraro.
1351
1352         XHR breakpoints aren't associated with the main resource, and shouldn't
1353         be cleared from the manager or sidebar UI When the main resource changes.
1354
1355         * UserInterface/Controllers/DOMDebuggerManager.js:
1356         (WebInspector.DOMDebuggerManager.prototype._mainResourceDidChange):
1357         * UserInterface/Controllers/XHRBreakpointTreeController.js:
1358         (WebInspector.XHRBreakpointTreeController):
1359         (WebInspector.XHRBreakpointTreeController.prototype._mainResourceDidChange): Deleted.
1360
1361 2017-04-17  Joseph Pecoraro  <pecoraro@apple.com>
1362
1363         Web Inspector: Network columns don't get saved when Web Inspector is closed
1364         https://bugs.webkit.org/show_bug.cgi?id=170373
1365         <rdar://problem/31386336>
1366
1367         Reviewed by Matt Baker.
1368
1369         * UserInterface/Views/DataGrid.js:
1370         (WebInspector.DataGrid.prototype.setColumnVisible):
1371         (WebInspector.DataGrid.prototype._contextMenuInHeader):
1372         The context menu was often passing `undefined` as the visible value
1373         which would cause the setting to not be saved appropriately. Ensure
1374         we always get an explicit boolean.
1375
1376 2017-04-17  Nikita Vasilyev  <nvasilyev@apple.com>
1377
1378         Web Inspector: Use `text-align: start` for DataGrid headers
1379         https://bugs.webkit.org/show_bug.cgi?id=170871
1380
1381         Reviewed by Matt Baker.
1382
1383         `text-align: start` didn't work for th elements.
1384         It was fixed in <webkit.org/b/141417>.
1385
1386         * UserInterface/Views/DataGrid.css:
1387         (.data-grid th):
1388         (body[dir=ltr] .data-grid th): Deleted.
1389         (body[dir=rtl] .data-grid th): Deleted.
1390
1391 2017-04-17  Joseph Pecoraro  <pecoraro@apple.com>
1392
1393         Web Inspector: Doesn't show size of compressed content correctly
1394         https://bugs.webkit.org/show_bug.cgi?id=155112
1395         <rdar://problem/25006728>
1396
1397         Reviewed by Alex Christensen and Timothy Hatcher.
1398
1399         * UserInterface/Controllers/FrameResourceManager.js:
1400         (WebInspector.FrameResourceManager.prototype.resourceRequestWasServedFromMemoryCache):
1401         Set an exact size.
1402
1403         * UserInterface/Models/Resource.js:
1404         (WebInspector.Resource):
1405         (WebInspector.Resource.prototype.get requestHeadersTransferSize):
1406         (WebInspector.Resource.prototype.get requestBodyTransferSize):
1407         (WebInspector.Resource.prototype.get responseHeadersTransferSize):
1408         (WebInspector.Resource.prototype.get responseBodyTransferSize):
1409         (WebInspector.Resource.prototype.get cachedResponseBodySize):
1410         (WebInspector.Resource.prototype.get size):
1411         (WebInspector.Resource.prototype.get networkEncodedSize):
1412         (WebInspector.Resource.prototype.get networkDecodedSize):
1413         (WebInspector.Resource.prototype.get networkTotalTransferSize):
1414         (WebInspector.Resource.prototype.get estimatedNetworkEncodedSize):
1415         (WebInspector.Resource.prototype.get estimatedTotalTransferSize):
1416         (WebInspector.Resource.prototype.get compressed):
1417         (WebInspector.Resource.prototype.updateForResponse):
1418         (WebInspector.Resource.prototype.updateWithMetrics):
1419         (WebInspector.Resource.prototype.setCachedResponseBodySize):
1420         (WebInspector.Resource.prototype.increaseSize):
1421         (WebInspector.Resource.prototype.increaseTransferSize):
1422         (WebInspector.Resource.prototype.get encodedSize): Deleted.
1423         (WebInspector.Resource.prototype.get transferSize): Deleted.
1424         Be more explicit with size getters.
1425
1426         (WebInspector.Resource.prototype.updateWithMetrics):
1427         If we receive the size metrics, update the specific metric values.
1428
1429         * UserInterface/Views/ResourceDetailsSidebarPanel.js:
1430         (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshCompressed):
1431         (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshDecodedSize):
1432         (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshTransferSize):
1433         * UserInterface/Views/ResourceTimelineDataGridNode.js:
1434         (WebInspector.ResourceTimelineDataGridNode.prototype.get data):
1435         Show exact values if we have them, otherwise fall back to the calculated
1436         values during loading.
1437
1438 2017-04-17  Jon Davis  <jond@apple.com>
1439
1440         Web Inspector: new icon for Disable Caches button in Network Tab
1441         https://bugs.webkit.org/show_bug.cgi?id=170196
1442
1443         Reviewed by Joseph Pecoraro.
1444
1445         * UserInterface/Images/IgnoreCaches.svg: Added.
1446         Added new art for the Disable Caches button. 
1447
1448         * UserInterface/Images/gtk/IgnoreCaches.svg: Added.
1449         Used GTK's StepOver.svg for fallback art for GTK.
1450         
1451         * UserInterface/Images/NavigationItemClear.svg:
1452         Improved artwork for Clear Console button icon to match the weight and 
1453         style of the Disable Caches button icon.
1454         
1455         * UserInterface/Views/NetworkGridContentView.js:
1456         (WebInspector.NetworkGridContentView):
1457         
1458 2017-04-17  Matt Baker  <mattbaker@apple.com>
1459
1460         Web Inspector: Enabled state of "All Requests" XHR breakpoint not restored correctly
1461         https://bugs.webkit.org/show_bug.cgi?id=170916
1462
1463         Reviewed by Joseph Pecoraro.
1464
1465         * UserInterface/Controllers/DOMDebuggerManager.js:
1466         (WebInspector.DOMDebuggerManager):
1467         Set breakpoint with backend agent, if enabled.
1468
1469 2017-04-17  Matt Baker  <mattbaker@apple.com>
1470
1471         Web Inspector: Show pause reason for "All Requests" XHR breakpoint
1472         https://bugs.webkit.org/show_bug.cgi?id=170895
1473
1474         Reviewed by Joseph Pecoraro.
1475
1476         * Localizations/en.lproj/localizedStrings.js:
1477         Add generic pause reason text: "Requesting: <url>".
1478
1479         * UserInterface/Controllers/DOMDebuggerManager.js:
1480         (WebInspector.DOMDebuggerManager.prototype.xhrBreakpointForURL):
1481         Relocated helper method from the sidebar.
1482
1483         * UserInterface/Views/DebuggerSidebarPanel.js:
1484         (WebInspector.DebuggerSidebarPanel.prototype._updatePauseReasonSection):
1485         Add an XHR breakpoint tree element when pause data contains a breakpoint
1486         URL, otherwise just add a generic text row.
1487
1488 2017-04-17  Matt Baker  <mattbaker@apple.com>
1489
1490         Web Inspector: XHR breakpoints restored from settings do not appear in the sidebar
1491         https://bugs.webkit.org/show_bug.cgi?id=170890
1492
1493         Reviewed by Joseph Pecoraro.
1494
1495         Need to check for existing breakpoints when XHRBreakpointTreeController
1496         is constructed, instead of just listening for added breakpoints.
1497
1498         * UserInterface/Controllers/XHRBreakpointTreeController.js:
1499         (WebInspector.XHRBreakpointTreeController):
1500         (WebInspector.XHRBreakpointTreeController.prototype._xhrBreakpointAdded):
1501         (WebInspector.XHRBreakpointTreeController.prototype._addTreeElement):
1502
1503 2017-04-14  Nikita Vasilyev  <nvasilyev@apple.com>
1504
1505         Web Inspector: WebSockets: messages with non-latin letters are displayed incorrectly
1506         https://bugs.webkit.org/show_bug.cgi?id=170760
1507
1508         Reviewed by Joseph Pecoraro.
1509
1510         Add payloadLength property, which is used to display size. When payloadLength is unavailable,
1511         it is calculated from payloadData by Web Inspector frontend.
1512
1513         This fixes <webkit.org/b/170609> Web Inspector: WebSockets: Transferred size is incorrect.
1514
1515         * UserInterface/Controllers/FrameResourceManager.js:
1516         (WebInspector.FrameResourceManager.prototype._webSocketFrameReceivedOrSent):
1517         * UserInterface/Models/WebSocketResource.js:
1518         (WebInspector.WebSocketResource.prototype.addFrame):
1519
1520 2017-04-13  Devin Rousso  <webkit@devinrousso.com>
1521
1522         Web Inspector: Implement autocompletion for CSS variables
1523         https://bugs.webkit.org/show_bug.cgi?id=154441
1524
1525         Reviewed by Joseph Pecoraro.
1526
1527         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
1528         (WebInspector.CSSStyleDeclarationTextEditor.prototype.completionControllerCompletionsNeeded):
1529         Add CSS variables to the list of matching completions based on those defined in the current
1530         node's computed style.
1531
1532 2017-04-13  Ross Kirsling  <ross.kirsling@sony.com>
1533
1534         Web Inspector: No context menu available via ENABLE_INSPECTOR_SERVER
1535         https://bugs.webkit.org/show_bug.cgi?id=170705
1536
1537         Reviewed by Joseph Pecoraro.
1538
1539         Reintroduce old SoftContextMenu class (removed in r157278) and apply various fixes:
1540         - Remove legacy globals and prototype extensions.
1541         - Align JS/CSS style with current front-end code.
1542         - Update UI and fix UX to replicate the macOS native context menu.
1543
1544         * Scripts/copy-user-interface-resources.pl:
1545         Add copyright line for Sony Interactive Entertainment.
1546         
1547         * UserInterface/Base/InspectorFrontendHostStub.js:
1548         (WebInspector.InspectorFrontendHostStub.prototype.showContextMenu):
1549         Use SoftContextMenu.
1550         
1551         * UserInterface/Main.html:
1552         Include SoftContextMenu.
1553
1554         * UserInterface/Views/SoftContextMenu.css: Added.
1555         (.soft-context-menu-glass-pane):
1556         (.soft-context-menu):
1557         (.soft-context-menu > .item):
1558         (.soft-context-menu > .item.disabled):
1559         (.soft-context-menu > .item.highlighted):
1560         (.soft-context-menu > .item > .checkmark):
1561         (.soft-context-menu > .item > .label):
1562         (.soft-context-menu > .item > .submenu-arrow):
1563         (.soft-context-menu > .separator):
1564         (.soft-context-menu > .separator > .line):
1565
1566         * UserInterface/Views/SoftContextMenu.js: Added.
1567         (WebInspector.SoftContextMenu):
1568         (WebInspector.SoftContextMenu.prototype.show):
1569         (WebInspector.SoftContextMenu.prototype._consumeEvent):
1570         (WebInspector.SoftContextMenu.prototype._parentGlassPaneElement):
1571         (WebInspector.SoftContextMenu.prototype._createMenuItem):
1572         (WebInspector.SoftContextMenu.prototype._createSeparator):
1573         (WebInspector.SoftContextMenu.prototype._repositionMenuOnScreen):
1574         (WebInspector.SoftContextMenu.prototype._showSubMenu):
1575         (WebInspector.SoftContextMenu.prototype._hideSubMenu):
1576         (WebInspector.SoftContextMenu.prototype._menuItemContextMenu):
1577         (WebInspector.SoftContextMenu.prototype._menuItemMouseDown):
1578         (WebInspector.SoftContextMenu.prototype._menuItemMouseUp):
1579         (WebInspector.SoftContextMenu.prototype._menuItemMouseOver):
1580         (WebInspector.SoftContextMenu.prototype._menuItemMouseOut):
1581         (WebInspector.SoftContextMenu.prototype._menuKeyDown):
1582         (WebInspector.SoftContextMenu.prototype._glassPaneMouseDown):
1583         (WebInspector.SoftContextMenu.prototype._focus):
1584         (WebInspector.SoftContextMenu.prototype._triggerAction):
1585         (WebInspector.SoftContextMenu.prototype._highlightMenuItem):
1586         (WebInspector.SoftContextMenu.prototype._highlightPrevious):
1587         (WebInspector.SoftContextMenu.prototype._highlightNext):
1588         (WebInspector.SoftContextMenu.prototype._discardMenu):
1589         (WebInspector.SoftContextMenu.prototype._discardSubMenus):
1590
1591 2017-04-13  Brian Burg  <bburg@apple.com>
1592
1593         Web Inspector: RTL: goto arrow is floated to the wrong side
1594         https://bugs.webkit.org/show_bug.cgi?id=170816
1595
1596         Reviewed by Matt Baker.
1597
1598         Float it to the other side if necessary.
1599
1600         * UserInterface/Views/Main.css:
1601         (.go-to-link):
1602         (body[dir=ltr] .go-to-link:not(.dont-float)):
1603         (body[dir=rtl] .go-to-link:not(.dont-float)):
1604
1605 2017-04-12  Dan Bernstein  <mitz@apple.com>
1606
1607         [Mac] Future-proof .xcconfig files
1608         https://bugs.webkit.org/show_bug.cgi?id=170802
1609
1610         Reviewed by Tim Horton.
1611
1612         * Configurations/Base.xcconfig:
1613         * Configurations/DebugRelease.xcconfig:
1614         * Configurations/Version.xcconfig:
1615
1616 2017-04-11  Matt Baker  <mattbaker@apple.com>
1617
1618         Web Inspector: checkboxes in Settings screen use inappropriate layout
1619         https://bugs.webkit.org/show_bug.cgi?id=166993
1620         <rdar://problem/30002272>
1621
1622         Reviewed by Devin Rousso.
1623
1624         * Localizations/en.lproj/localizedStrings.js:
1625         New checkbox setting strings.
1626
1627         * UserInterface/Main.html:
1628         New settings view classes.
1629
1630         * UserInterface/Views/GeneralSettingsView.js: Added.
1631         (WebInspector.GeneralSettingsView):
1632         (WebInspector.GeneralSettingsView.prototype.initialLayout):
1633         Move settings UI creation from SettingsTabContentView.
1634
1635         * UserInterface/Views/SettingEditor.js: Added.
1636         Basic setting editor UI for the following input types: checkbox,
1637         number, and select. In the future it may be useful to include
1638         additional types, such as radio buttons.
1639
1640         (WebInspector.SettingEditor):
1641         (WebInspector.SettingEditor.createForSetting):
1642         (WebInspector.SettingEditor.prototype.get element):
1643         (WebInspector.SettingEditor.prototype.get type):
1644         (WebInspector.SettingEditor.prototype.get label):
1645         (WebInspector.SettingEditor.prototype.get value):
1646         (WebInspector.SettingEditor.prototype.set value):
1647         (WebInspector.SettingEditor.prototype._createEditorElement):
1648
1649         * UserInterface/Views/SettingsGroup.js: Added.
1650         A container holding editors for one or more WebInspector.Settings.
1651         Every editor belongs to a group. SettingsView provides convenience
1652         methods for adding settings and groups, so create instances directly
1653         shouldn't normally be necessary.
1654
1655         (WebInspector.SettingsGroup):
1656         (WebInspector.SettingsGroup.prototype.get element):
1657         (WebInspector.SettingsGroup.prototype.addSetting):
1658         (WebInspector.SettingsGroup.prototype.addCustomSetting):
1659
1660         * UserInterface/Views/SettingsTabContentView.css:
1661         Refactored styles to more closely match Xcode settings UI.
1662         Eliminated redundant use of "setting" from CSS class names.
1663
1664         (.content-view.settings):
1665         (.content-view.settings .navigation-bar .item.radio.button.text-only):
1666         (.content-view.settings .navigation-bar .item.radio.button.text-only.selected):
1667         (.content-view.settings > .settings-view > .separator):
1668         (.content-view.settings > .settings-view > .container):
1669         (.content-view.settings > .settings-view > .container > .title):
1670         (body[dir=ltr] .content-view.settings > .settings-view > .container > .title):
1671         (body[dir=rtl] .content-view.settings > .settings-view > .container > .title):
1672         (.content-view.settings > .settings-view > .container > .editor-group):
1673         (.content-view.settings > .settings-view > .container > .editor-group > .editor input):
1674         (.content-view.settings > .settings-view > .container > .editor-group > .editor input[type="checkbox"]):
1675         (body[dir=ltr] .content-view.settings > .settings-view > .container > .editor-group > .editor input[type="checkbox"]):
1676         (body[dir=rtl] .content-view.settings > .settings-view > .container > .editor-group > .editor input[type="checkbox"]):
1677         (.content-view.settings > .settings-view > .container > .editor-group > .editor select):
1678         (.content-view.settings > .settings-view > .container > .editor-group > .editor input[type="number"]):
1679         (body[dir=ltr] .content-view.settings > .settings-view > .container > .editor-group > .editor input[type="number"]):
1680         (body[dir=rtl] .content-view.settings > .settings-view > .container > .editor-group > .editor input[type="number"]):
1681         (.content-view.settings > .header): Deleted.
1682         (.content-view.settings > .separator): Deleted.
1683         (.content-view.settings > .setting-container): Deleted.
1684         (.content-view.settings > .setting-container.combined): Deleted.
1685         (.content-view.settings > .setting-container > .setting-name): Deleted.
1686         (body[dir=ltr] .content-view.settings > .setting-container > .setting-name): Deleted.
1687         (body[dir=rtl] .content-view.settings > .setting-container > .setting-name): Deleted.
1688         (.content-view.settings > .setting-container > .setting-value-controller): Deleted.
1689         (.content-view.settings > .setting-container > .setting-value-controller input): Deleted.
1690         (.content-view.settings > .setting-container > .setting-value-controller input[type="checkbox"]): Deleted.
1691         (body[dir=ltr] .content-view.settings > .setting-container > .setting-value-controller input[type="checkbox"]): Deleted.
1692         (body[dir=rtl] .content-view.settings > .setting-container > .setting-value-controller input[type="checkbox"]): Deleted.
1693         (.content-view.settings > .setting-container > .setting-value-controller select): Deleted.
1694         (.content-view.settings > .setting-container > .setting-value-controller input[type="number"]): Deleted.
1695         (body[dir=ltr] .content-view.settings > .setting-container > .setting-value-controller input[type="number"]): Deleted.
1696         (body[dir=rtl] .content-view.settings > .setting-container > .setting-value-controller input[type="number"]): Deleted.
1697
1698         * UserInterface/Views/SettingsTabContentView.js:
1699         To better organize the growing number of settings, multiple settings views
1700         are now supported, with a navigation bar for switching between them. For
1701         now there is a single "General" setting view, and and the navigation bar
1702         is hidden. Adding a second view will cause the bar to be shown.
1703
1704         (WebInspector.SettingsTabContentView):
1705         (WebInspector.SettingsTabContentView.prototype.get type):
1706         (WebInspector.SettingsTabContentView.prototype.get selectedSettingsView):
1707         (WebInspector.SettingsTabContentView.prototype.set selectedSettingsView):
1708         (WebInspector.SettingsTabContentView.prototype.addSettingsView):
1709         (WebInspector.SettingsTabContentView.prototype._navigationItemSelected):
1710         (WebInspector.SettingsTabContentView.prototype.layout): Deleted.
1711         No longer needed.
1712
1713         * UserInterface/Views/SettingsView.js: Added.
1714         Base class for displaying editing UI for a collection of related
1715         WebInspector.Setting objects.
1716
1717         (WebInspector.SettingsView):
1718         (WebInspector.SettingsView.prototype.get identifier):
1719         (WebInspector.SettingsView.prototype.get displayName):
1720         A string suitable for display in a NavigationBar showing a list of
1721         SettingsViews (e.g. "General", "Text Editing", "Fonts & Colors", etc).
1722
1723         (WebInspector.SettingsView.prototype.addSetting):
1724         Add UI for a setting, consisting of a title, an editor appropriate for
1725         the setting's value type, and optional label and formatting options.
1726         For example:
1727
1728             addSetting("Setting 1:", new WebInspector.Setting(…, true), "Item one")
1729             addSetting("Setting 2:", new WebInspector.Setting(…, 1), "units")
1730
1731         will create a checkbox and number input field:
1732
1733             Setting 1: [x] Item one
1734             Setting 2: [  1] units
1735
1736         (WebInspector.SettingsView.prototype.addCustomSetting):
1737         Add UI for a specific editor type, with optional formatting options.
1738         A setting can be updated in response to changes in the editor's value.
1739
1740         (WebInspector.SettingsView.prototype.addGroup):
1741         Add a group, for listing multiple settings under one title. For example:
1742
1743            group = addGroup("Title:")
1744            group.addSetting(new WebInspector.Setting(…, true), "Item one")
1745            group.addSetting(new WebInspector.Setting(…, false), "Item two")
1746
1747         will create two checkboxes under the same title:
1748
1749            Title: [x] Item one
1750                   [ ] Item two
1751
1752         (WebInspector.SettingsView.prototype.addSeparator):
1753         Add vertical space between two settings or groups.
1754
1755 2017-04-10  Nikita Vasilyev  <nvasilyev@apple.com>
1756
1757         Web Inspector: WebSockets: Don't clip data in the data grid
1758         https://bugs.webkit.org/show_bug.cgi?id=170559
1759
1760         Reviewed by Timothy Hatcher.
1761
1762         Long lines without spaces should be broken down into several lines instead of being ellipsized.
1763
1764         * UserInterface/Views/WebSocketContentView.css:
1765         (.web-socket.content-view > .data-grid td.data-column,):
1766
1767 2017-04-10  Nikita Vasilyev  <nvasilyev@apple.com>
1768
1769         Web Inspector: Placeholder text is clipped in the 'Enter Class Name' field at the bottom of Rules style sidebar in some localizations
1770         https://bugs.webkit.org/show_bug.cgi?id=167641
1771         <rdar://problem/26541953>
1772
1773         Reviewed by Joseph Pecoraro.
1774
1775         Make the "Enter Class Name" text field span the entire width of the Styles sidebar.
1776
1777         * UserInterface/Views/CSSStyleDetailsSidebarPanel.css:
1778         (.sidebar > .panel.details.css-style > .content ~ .class-list-container > .new-class):
1779         (.sidebar > .panel.details.css-style > .content ~ .class-list-container > .new-class > .class-name-input):
1780         (.sidebar > .panel.details.css-style > .content ~ .class-list-container > .new-class > input[type="checkbox"]): Deleted.
1781         (.sidebar > .panel.details.css-style > .content ~ .class-list-container > .new-class > .add-class-icon): Deleted.
1782         (.sidebar > .panel.details.css-style > .content ~ .class-list-container > .new-class.active > .add-class-icon,): Deleted.
1783         * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
1784         (WebInspector.CSSStyleDetailsSidebarPanel.prototype.initialLayout):
1785         Remove the checkbox, which didn't do anything, and the plus icon. Make the "Enter Class Name" text field visible by default.
1786
1787 2017-04-10  Jon Lee  <jonlee@apple.com>
1788
1789         Update localizable strings to "full screen" from "fullscreen"
1790         https://bugs.webkit.org/show_bug.cgi?id=170675
1791         rdar://problem/28207034
1792
1793         Reviewed by Antoine Quint.
1794
1795         * UserInterface/Models/ScriptTimelineRecord.js:
1796         (WebInspector.ScriptTimelineRecord.EventType.displayName): For localizable strings, it should consistently be
1797         "full screen" instead of "fullscreen".
1798
1799 2017-04-09  Devin Rousso  <webkit@devinrousso.com>
1800
1801         Web Inspector: tabbing in Styles sidebar is broken when additional ":" and ";" are in the property value
1802         https://bugs.webkit.org/show_bug.cgi?id=170184
1803
1804         Reviewed by Matt Baker.
1805
1806         New tests:
1807         - inspector/unit-tests/text-utilities.html
1808
1809         * UserInterface/Base/TextUtilities.js: Added.
1810         (WebInspector.rangeForNextCSSNameOrValue):
1811         Consolidate logic for finding the next range to highlight in a CSS string given a starting index.
1812
1813         * UserInterface/Main.html:
1814         * UserInterface/Test.html:
1815         Include TextUtilities.
1816
1817         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
1818         (WebInspector.CSSStyleDeclarationTextEditor.prototype._highlightNextNameOrValue):
1819         (WebInspector.CSSStyleDeclarationTextEditor.prototype._rangeForNextNameOrValue):
1820         (WebInspector.CSSStyleDeclarationTextEditor.prototype._handleMouseUp):
1821         Utilize TextUtilities for range-finding logic.
1822
1823 2017-04-08  Simon Fraser  <simon.fraser@apple.com>
1824
1825         Unprefix CSS cursor values grab and grabbing
1826         https://bugs.webkit.org/show_bug.cgi?id=170543
1827
1828         Reviewed by Jon Lee.
1829
1830         Sort the cursor autosuggestions to match the order in the spec, and add the unprefixed
1831         grab and grabbing values.
1832
1833         * UserInterface/Models/CSSKeywordCompletions.js:
1834
1835 2017-04-07  Matt Baker  <mattbaker@apple.com>
1836
1837         Web Inspector: DOM/XHR breakpoint tree elements shouldn't persist their represented objects
1838         https://bugs.webkit.org/show_bug.cgi?id=170611
1839         <rdar://problem/31506161>
1840
1841         Reviewed by Joseph Pecoraro.
1842
1843         Prevent tree elements for DOM and XHR breakpoints from persisting their
1844         represented objects.
1845
1846         * UserInterface/Views/ContentView.js:
1847         (WebInspector.ContentView.createFromRepresentedObject):
1848         * UserInterface/Views/NavigationSidebarPanel.js:
1849         (WebInspector.NavigationSidebarPanel.prototype._isTreeElementWithoutRepresentedObject):
1850
1851 2017-04-06  Joseph Pecoraro  <pecoraro@apple.com>
1852
1853         Web Inspector: Source Map Resources should show up in the Debugger Sources list
1854         https://bugs.webkit.org/show_bug.cgi?id=170581
1855         <rdar://problem/31269140>
1856
1857         Reviewed by Matt Baker.
1858
1859         * UserInterface/Views/DebuggerSidebarPanel.js:
1860         (WebInspector.DebuggerSidebarPanel):
1861         Include SourceMapResources in the DebuggerSidebar's Sources tree outline.
1862
1863 2017-04-06  Joseph Pecoraro  <pecoraro@apple.com>
1864
1865         Web Inspector: Show all headers in the Request Headers section of the Resource details sidebar
1866         https://bugs.webkit.org/show_bug.cgi?id=16531
1867         <rdar://problem/5712895>
1868
1869         Reviewed by Timothy Hatcher.
1870
1871         * UserInterface/Models/Resource.js:
1872         (WebInspector.Resource.prototype.updateWithMetrics):
1873         Update request headers if provided in metrics.
1874
1875 2017-04-06  Matt Baker  <mattbaker@apple.com>
1876
1877         Web Inspector: Reorder Debugger tab sidebar panels: Scope Chain, Resource, Probes
1878         https://bugs.webkit.org/show_bug.cgi?id=170418
1879         <rdar://problem/31410771>
1880
1881         Reviewed by Timothy Hatcher.
1882
1883         Maintain the sidebar panel order defined by TabContentView when adding
1884         and removing panels.
1885
1886         * UserInterface/Views/ContentBrowserTabContentView.js:
1887         (WebInspector.ContentBrowserTabContentView.prototype.showDetailsSidebarPanels):
1888         Insert sidebar panel based on the panel order defined by TabContentView.
1889
1890         * UserInterface/Views/DebuggerTabContentView.js:
1891         (WebInspector.DebuggerTabContentView):
1892
1893         * UserInterface/Views/Sidebar.js:
1894         (WebInspector.Sidebar.prototype.addSidebarPanel):
1895         Implemented as an insert at the end.
1896         (WebInspector.Sidebar.prototype.insertSidebarPanel):
1897         Allow inserting into the sidebar panel collection.
1898         (WebInspector.Sidebar.prototype.removeSidebarPanel):
1899         Remove unused return value.
1900
1901 2017-04-05  Matt Baker  <mattbaker@apple.com>
1902
1903         Web Inspector: Probe values not showing in sidebar
1904         https://bugs.webkit.org/show_bug.cgi?id=170143
1905
1906         Reviewed by Joseph Pecoraro.
1907
1908         Force the DataGrid to refresh its layout after adding a probe sample.
1909
1910         * UserInterface/Views/ProbeSetDataGrid.css:
1911         (.details-section.probe-set .data-grid tr.data-updated):
1912         (.details-section.probe-set .data-grid > tr.data-updated): Deleted.
1913         Drive-by fix: selector didn't match any rows.
1914
1915         * UserInterface/Views/ProbeSetDataGrid.js:
1916         (WebInspector.ProbeSetDataGrid.prototype._updateNodeForFrame):
1917
1918 2017-04-05  Matt Baker  <mattbaker@apple.com>
1919
1920         Web Inspector: XHR breakpoints should be global
1921         https://bugs.webkit.org/show_bug.cgi?id=170033
1922
1923         Reviewed by Joseph Pecoraro.
1924
1925         * Localizations/en.lproj/localizedStrings.js:
1926         Shorten XHR breakpoint tree element "URL contains:" title to "URL".
1927
1928         * UserInterface/Controllers/DOMDebuggerManager.js:
1929         Change storage of XHR breakpoints from a map to a simple array.
1930         (WebInspector.DOMDebuggerManager):
1931         (WebInspector.DOMDebuggerManager.prototype.get xhrBreakpoints):
1932         (WebInspector.DOMDebuggerManager.prototype.addXHRBreakpoint):
1933         Dispatch the "breakpoint added" event immediately after adding the
1934         breakpoint, rather than waiting for it to resolve.
1935
1936         (WebInspector.DOMDebuggerManager.prototype.removeXHRBreakpoint):
1937         (WebInspector.DOMDebuggerManager.prototype._speculativelyResolveBreakpoints):
1938         (WebInspector.DOMDebuggerManager.prototype._resolveXHRBreakpoint):
1939         (WebInspector.DOMDebuggerManager.prototype._saveXHRBreakpoints):
1940         (WebInspector.DOMDebuggerManager.prototype._mainResourceDidChange):
1941
1942         * UserInterface/Models/XHRBreakpoint.js:
1943         An XHR breakpoint should not be associated with a particular document.
1944         (WebInspector.XHRBreakpoint):
1945         (WebInspector.XHRBreakpoint.prototype.get serializableInfo):
1946         (WebInspector.XHRBreakpoint.prototype.saveIdentityToCookie):
1947         (WebInspector.XHRBreakpoint.prototype.get documentURL): Deleted.
1948
1949         * UserInterface/Views/DebuggerSidebarPanel.css:
1950         Use default emdash-separated title/subtitle style instead of the
1951         custom "URL contains:" labeling.
1952
1953         (.sidebar > .panel.navigation.debugger .details-section.xhr-breakpoints .item.breakpoint .subtitle):
1954         (.sidebar > .panel.navigation.debugger .details-section.xhr-breakpoints .item.breakpoint .subtitle:before): Deleted.
1955         (body[dir=ltr] .sidebar > .panel.navigation.debugger .details-section.xhr-breakpoints .item.breakpoint .subtitle): Deleted.
1956         (body[dir=rtl] .sidebar > .panel.navigation.debugger .details-section.xhr-breakpoints .item.breakpoint .subtitle): Deleted.
1957
1958         * UserInterface/Views/DebuggerSidebarPanel.js:
1959         (WebInspector.DebuggerSidebarPanel.prototype.willDismissPopover):
1960         (WebInspector.DebuggerSidebarPanel):
1961
1962         * UserInterface/Views/XHRBreakpointTreeElement.js:
1963         (WebInspector.XHRBreakpointTreeElement):
1964
1965 2017-04-04  Brian Burg  <bburg@apple.com>
1966
1967         Web Inspector: RTL: layout issues in Type Profiler popovers
1968         https://bugs.webkit.org/show_bug.cgi?id=170467
1969
1970         Reviewed by Timothy Hatcher.
1971
1972         Flip some margins and padding. Remove the -1px leading margin for
1973         the prototype disclosure button, as it is unnecessary and looks
1974         (more) wrong when in RTL.
1975
1976         * UserInterface/Views/TypeTreeElement.css:
1977         (.item.type-tree-element > .disclosure-button):
1978         (.item.type-tree-element.prototype):
1979         (body[dir=ltr] .item.type-tree-element.prototype):
1980         (body[dir=rtl] .item.type-tree-element.prototype):
1981         * UserInterface/Views/TypeTreeView.css:
1982         (.tree-outline.type):
1983         (body[dir=ltr] .tree-outline.type):
1984         (body[dir=rtl] .tree-outline.type):
1985         (.tree-outline.type li .empty-message):
1986         (body[dir=ltr] .tree-outline.type li .empty-message):
1987         (body[dir=rtl] .tree-outline.type li .empty-message):
1988
1989 2017-04-04  Joseph Pecoraro  <pecoraro@apple.com>
1990
1991         Web Inspector: Include more Network information in Resource Details Sidebar
1992         https://bugs.webkit.org/show_bug.cgi?id=170470
1993
1994         Reviewed by Brian Burg.
1995
1996         * Localizations/en.lproj/localizedStrings.js:
1997         Updated localized strings.
1998
1999         * UserInterface/Models/Resource.js:
2000         (WebInspector.Resource.displayNameForProtocol):
2001         (WebInspector.Resource.displayNameForPriority):
2002         Aggregate all display name helpers here.
2003
2004         * UserInterface/Views/DetailsSectionSimpleRow.js:
2005         (WebInspector.DetailsSectionSimpleRow.prototype.get tooltip):
2006         (WebInspector.DetailsSectionSimpleRow.prototype.set tooltip):
2007         Allow setting a tooltip on the value.
2008
2009         * UserInterface/Views/NetworkGridContentView.css:
2010         (.cache-type):
2011         Cache type shows up in multiple places. Simplify the CSS to apply anywhere.
2012
2013         * UserInterface/Views/NetworkGridContentView.js:
2014         (WebInspector.NetworkGridContentView):
2015         * UserInterface/Views/NetworkTimelineView.js:
2016         (WebInspector.NetworkTimelineView):
2017         Updated column names.
2018
2019         * UserInterface/Views/ResourceDetailsSidebarPanel.js:
2020         (WebInspector.ResourceDetailsSidebarPanel):
2021         (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshRequestAndResponse):
2022         (WebInspector.ResourceDetailsSidebarPanel.prototype._cachedRowValue):
2023         Include more detail information in the sidebar.
2024
2025         * UserInterface/Views/ResourceTimelineDataGridNode.js:
2026         (WebInspector.ResourceTimelineDataGridNode.prototype.createCellContent):
2027         (WebInspector.ResourceTimelineDataGridNode.prototype._displayNameForPriority): Deleted.
2028         Use shared code for display names.
2029
2030 2017-04-04  Brian Burg  <bburg@apple.com>
2031
2032         Web Inspector: RTL: fix alignment of close button shown while docked
2033         https://bugs.webkit.org/show_bug.cgi?id=170472
2034
2035         Reviewed by Matt Baker.
2036
2037         * UserInterface/Views/Toolbar.css:
2038         (.toolbar .control-section):
2039         (body[dir=ltr] .toolbar .control-section):
2040         (body[dir=rtl] .toolbar .control-section):
2041
2042 2017-04-04  Brian Burg  <bburg@apple.com>
2043
2044         Web Inspector: RTL: layout issues in debugger dashboard, arrows are on wrong side
2045         https://bugs.webkit.org/show_bug.cgi?id=170425
2046
2047         Reviewed by Devin Rousso.
2048
2049         We need to move the up/down dashboard arrows to the trailing side for RTL.
2050         Clean up some messy spacing rules so that the source location does not
2051         overlap the arrows or get too close to the function icon.
2052
2053         * UserInterface/Views/DashboardContainerView.css:
2054         (.toolbar .dashboard):
2055         (body[dir=ltr] .toolbar .dashboard):
2056         (body[dir=rtl] .toolbar .dashboard):
2057         (.dashboard-container .advance-arrow):
2058         (body[dir=ltr] .dashboard-container .advance-arrow):
2059         (body[dir=rtl] .dashboard-container .advance-arrow):
2060         (.toolbar.label-only .dashboard-container .advance-arrow):
2061         (body[dir=ltr] .toolbar.label-only .dashboard-container .advance-arrow):
2062         (body[dir=rtl] .toolbar.label-only .dashboard-container .advance-arrow):
2063         * UserInterface/Views/DebuggerDashboardView.css:
2064         (.toolbar .dashboard.debugger):
2065         (body[dir=ltr] .toolbar .dashboard.debugger):
2066         (body[dir=rtl] .toolbar .dashboard.debugger):
2067         (.dashboard.debugger .navigation-bar):
2068         (body[dir=ltr] .dashboard.debugger .navigation-bar):
2069         (body[dir=rtl] .dashboard.debugger .navigation-bar):
2070         (.dashboard.debugger > .location):
2071         (.dashboard.debugger > .location > :first-child):
2072         (body[dir=ltr] .dashboard.debugger > .location > :last-child):
2073         (body[dir=rtl] .dashboard.debugger > .location > :last-child):
2074         (.dashboard.debugger > .location .function-icon):
2075         (body[dir=ltr] .dashboard.debugger > .location .function-icon):
2076         (body[dir=rtl] .dashboard.debugger > .location .function-icon):
2077         (.dashboard.debugger > .location .go-to-link):
2078
2079 2017-04-03  Brian Burg  <bburg@apple.com>
2080
2081         Web Inspector: RTL: results in Search navigation sidebar have misplaced highlights
2082         https://bugs.webkit.org/show_bug.cgi?id=170292
2083
2084         Reviewed by Timothy Hatcher.
2085
2086         * UserInterface/Models/SourceCodeSearchMatchObject.js:
2087         (WebInspector.SourceCodeSearchMatchObject.prototype.get className):
2088         * UserInterface/Views/SearchIcons.css:
2089         (.source-code-match .icon):
2090         (.source-code-match-icon .icon): Deleted.
2091         Remove -icon suffix from the class name since the class is attached to a result
2092         and is not specific to the icon displayed within the result <li>.
2093
2094         * UserInterface/Views/SearchResultTreeElement.js:
2095         (WebInspector.SearchResultTreeElement.truncateAndHighlightTitle):
2096         Flip the leading and trailing context in RTL so that the highlight is not overflowed
2097         to the left when too much context is included on the right side. Less context must be
2098         used in RTL because we must not overflow to the right, as it may hide the result. And,
2099         we don't know the exact starting character either as it may be overflowed to the right
2100         as the user resizes the expanded sidebar larger or smaller. So show less context to
2101         be conservative about never overflowing the highlighted result string.
2102
2103         * UserInterface/Views/SearchSidebarPanel.css:
2104         (.sidebar > .panel.navigation.search .item.source-code-match .title):
2105         When in RTL, show source code matches as LTR with text-align to right.
2106
2107 2017-04-03  Devin Rousso  <webkit@devinrousso.com>
2108
2109         Web Inspector: clicking on the body of a CSS rule after editing the selector causes the section to disappear
2110         https://bugs.webkit.org/show_bug.cgi?id=169803
2111
2112         Reviewed by Timothy Hatcher.
2113
2114         * UserInterface/Views/CSSStyleDeclarationSection.js:
2115         (WebInspector.CSSStyleDeclarationSection.prototype._handleKeyDown):
2116         (WebInspector.CSSStyleDeclarationSection.prototype._handleBlur):
2117         Keep the section marked as `_editorActive` if the action taken would still place focus
2118         within the section (selector or properties).  Doing so will prevent it from being removed.
2119
2120 2017-04-03  Brian Burg  <bburg@apple.com>
2121
2122         Web Inspector: RTL: hierarchical path component labels should guess directionality based on content
2123         https://bugs.webkit.org/show_bug.cgi?id=170298
2124
2125         Reviewed by Timothy Hatcher.
2126
2127         * UserInterface/Views/HierarchicalPathComponent.js:
2128         (WebInspector.HierarchicalPathComponent):
2129         Use dir="auto" since this will properly set 'unicode-bidi:isolate' for form elements too.
2130         This is applied to the title label and to the <select> for the path component.
2131
2132 2017-04-03  Matt Baker  <mattbaker@apple.com>
2133
2134         Web Inspector: Show additional pause reason details for DOM "subtree modified" breakpoint
2135         https://bugs.webkit.org/show_bug.cgi?id=169479
2136
2137         Reviewed by Timothy Hatcher.
2138
2139         * Localizations/en.lproj/localizedStrings.js:
2140         New Pause Reason UI strings.
2141
2142         * UserInterface/Views/DebuggerSidebarPanel.js:
2143         (WebInspector.DebuggerSidebarPanel.prototype._updatePauseReasonSection):
2144         Include a link for the target node when breaking for subtree modifications.
2145         This is either the parent of a node being inserted, or a node that is
2146         being removed.
2147
2148 2017-04-03  Devin Rousso  <webkit@devinrousso.com>
2149
2150         Web Inspector: showing the Find banner doesn't immediately focus it
2151         https://bugs.webkit.org/show_bug.cgi?id=169804
2152
2153         Reviewed by Matt Baker.
2154
2155         * UserInterface/Base/Main.js:
2156         (WebInspector._focusChanged):
2157         Slightly change the logic from <https://webkit.org/b/168119> (r213689) to not prevent a new
2158         selection if the focus change target is an element from WebInspector.startEditing.
2159
2160 2017-04-03  Nikita Vasilyev  <nvasilyev@apple.com>
2161
2162         Web Inspector: WebSockets: Don't store binary frames in memory since they are never shown
2163         https://bugs.webkit.org/show_bug.cgi?id=169649
2164         <rdar://problem/31053069>
2165
2166         Reviewed by Brian Burg.
2167
2168         * UserInterface/Models/WebSocketResource.js:
2169         (WebInspector.WebSocketResource.prototype.addFrame):
2170
2171 2017-04-03  Devin Rousso  <webkit@devinrousso.com>
2172
2173         Web Inspector: Preference for Auto Showing Scope Chain sidebar on pause
2174         https://bugs.webkit.org/show_bug.cgi?id=149487
2175
2176         Reviewed by Timothy Hatcher.
2177
2178         * Localizations/en.lproj/localizedStrings.js:
2179
2180         * UserInterface/Base/Setting.js:
2181         * UserInterface/Views/SettingsTabContentView.js:
2182         (WebInspector.SettingsTabContentView.prototype.layout):
2183         Add WebInspector.Setting for showing Scope Chain on pause.
2184
2185         * UserInterface/Base/Main.js:
2186         (WebInspector.showDebuggerTab):
2187         (WebInspector._debuggerDidPause):
2188         * UserInterface/Views/SourceCodeTextEditor.js:
2189         (WebInspector.SourceCodeTextEditor.prototype.textEditorGutterContextMenu):
2190         Modify parameters to use a dictionary of options instead of just a single value.  In doing
2191         so, add support for a value that will show the Scope Chain sidebar.
2192
2193         * UserInterface/Views/SettingsTabContentView.css:
2194         (.content-view.settings):
2195         (.content-view.settings > .header):
2196         Drive-by: add padding to bottom of Settings tab so that additional scroll space is mirrored.
2197
2198 2017-04-03  Brian Burg  <bburg@apple.com>
2199
2200         Web Inspector: RTL: layout issues in call frame tree elements and async call stacks
2201         https://bugs.webkit.org/show_bug.cgi?id=170419
2202
2203         Reviewed by Matt Baker.
2204
2205         * UserInterface/Views/CallFrameTreeElement.css:
2206         (.tree-outline .item.call-frame .status):
2207         (body[dir=ltr] .tree-outline .item.call-frame .status):
2208         (body[dir=rtl] .tree-outline .item.call-frame .status):
2209         Flip the current call frame indicator and make sure it sticks to the leading edge.
2210
2211         (.tree-outline .item.call-frame.async-boundary):
2212         (body[dir=ltr] .tree-outline:not(.single-thread) > .children > .item.call-frame.async-boundary):
2213         (body[dir=rtl] .tree-outline:not(.single-thread) > .children > .item.call-frame.async-boundary):
2214         (.tree-outline .item.call-frame.async-boundary .icon):
2215         (body[dir=ltr] .tree-outline .item.call-frame.async-boundary .icon):
2216         (body[dir=rtl] .tree-outline .item.call-frame.async-boundary .icon):
2217         Flip the icon's padding.
2218
2219         (.tree-outline .item.call-frame.async-boundary::after):
2220         (body[dir=ltr] .tree-outline .item.call-frame.async-boundary::after):
2221         (body[dir=rtl] .tree-outline .item.call-frame.async-boundary::after):
2222         (.tree-outline .item.call-frame.async-boundary::before):
2223         (body[dir=ltr] .tree-outline .item.call-frame.async-boundary::before):
2224         (body[dir=rtl] .tree-outline .item.call-frame.async-boundary::before):
2225         (.tree-outline:not(.single-thread) > .children > .item.call-frame.async-boundary): Deleted.
2226         Fix the leading and trailing horizontal rules so they have correct spacing.
2227
2228         * UserInterface/Views/CallFrameView.css:
2229         (.call-frame .icon): Remove redundant property.
2230
2231         * UserInterface/Views/DebuggerSidebarPanel.css:
2232         (.sidebar > .panel.navigation.debugger .tree-outline.single-thread):
2233         (body[dir=ltr] .sidebar > .panel.navigation.debugger .tree-outline.single-thread):
2234         (body[dir=rtl] .sidebar > .panel.navigation.debugger .tree-outline.single-thread):
2235         Fix the leading unindent for call tree frame elements.
2236
2237 2017-04-03  Matt Baker  <mattbaker@apple.com>
2238
2239         Web Inspector: Elements tab: show indicators for hidden DOM breakpoints
2240         https://bugs.webkit.org/show_bug.cgi?id=168761
2241
2242         Reviewed by Timothy Hatcher.
2243
2244         * Localizations/en.lproj/localizedStrings.js:
2245         New DOM breakpoint content menu item.
2246
2247         * UserInterface/Views/DOMTreeContentView.css:
2248         (.content-view.dom-tree .tree-outline.dom li .status-image.breakpoint.subtree):
2249         (.content-view.dom-tree .tree-outline.dom li.expanded .status-image.breakpoint.subtree):
2250         New styles for collapsed breakpoint marker.
2251
2252         * UserInterface/Views/DOMTreeElement.js:
2253         (WebInspector.DOMTreeElement):
2254         (WebInspector.DOMTreeElement.prototype.set breakpointStatus):
2255         If the status change indicates the only breakpoint was added or removed,
2256         update subtree breakpoint counts on the element's parent chain.
2257
2258         (WebInspector.DOMTreeElement.prototype.revealAndHighlight):
2259         Reveal the tree element, and add a highlighted line animation
2260         identical to the one used used by TextEditor.
2261
2262         (WebInspector.DOMTreeElement.prototype.subtreeBreakpointCountDidChange):
2263         (WebInspector.DOMTreeElement.prototype.updateSelectionArea):
2264         Selection area should be updated when animating the element highlight.
2265         (WebInspector.DOMTreeElement.prototype.onreveal):
2266         Animate highlight if needed.
2267         (WebInspector.DOMTreeElement.prototype._updateBreakpointStatus):
2268         (WebInspector.DOMTreeElement.prototype._statusImageClicked):
2269         Do nothing when clicking the collapsed breakpoint marker.
2270         (WebInspector.DOMTreeElement.prototype._statusImageContextmenu):
2271         Add "Reveal Breakpoint" menu item. Reveals the first descendant
2272         with at least one breakpoint.
2273
2274         (WebInspector.DOMTreeElement.prototype._highlightAnimationEnd):
2275
2276         * UserInterface/Views/DOMTreeOutline.css:
2277         (@keyframes dom-tree-outline-highlight-fadeout):
2278         (.highlight .selection-area):
2279         Styles for highlight fade animation.
2280
2281         * UserInterface/Views/TreeElement.js:
2282         (WebInspector.TreeElement.prototype.selfOrDescendant):
2283         * UserInterface/Views/TreeOutline.js:
2284         (WebInspector.TreeOutline.prototype.selfOrDescendant):
2285         Find a node matching a predicate.
2286
2287 2017-04-03  Matt Baker  <mattbaker@apple.com>
2288
2289         Web Inspector: DetailsSection should hide header "options" when collapsed
2290         https://bugs.webkit.org/show_bug.cgi?id=170029
2291
2292         Reviewed by Timothy Hatcher.
2293
2294         * UserInterface/Views/DOMNodeDetailsSidebarPanel.css:
2295         (.sidebar > .panel.dom-node-details .details-section.dom-node-event-listeners > .header > .filter):
2296         (.sidebar > .panel.dom-node-details .details-section.dom-node-event-listeners.collapsed > .header > .filter): Deleted.
2297         DetailsSection is responsible for hiding options when collapsed.
2298
2299         * UserInterface/Views/DebuggerSidebarPanel.css:
2300         (.sidebar > .panel.navigation.debugger .details-section.paused-reason.collapsed > .header > .options):
2301
2302         * UserInterface/Views/DetailsSection.css:
2303         (body[dir=ltr] .details-section > .header > .options,):
2304         (body[dir=ltr] .details-section > .header::before,):
2305         (.details-section.collapsed  > .header > .options):
2306         (body[dir=ltr] .details-section > .header > :matches(label, .node-link, .go-to-arrow),): Deleted.
2307         (.details-section.collapsed  > .header > label): Deleted.
2308         Removed unnecessary rules. The "options" class covers these cases.
2309
2310         * UserInterface/Views/DetailsSection.js:
2311         (WebInspector.DetailsSection.prototype.get titleElement):
2312         (WebInspector.DetailsSection.prototype.set titleElement):
2313         Added title element customization so that the hack used by ProbeSetDetailsSection
2314         to get a link into the title can be removed. Yuck!
2315
2316         * UserInterface/Views/ProbeSetDetailsSection.js:
2317         (WebInspector.ProbeSetDetailsSection):
2318         (WebInspector.ProbeSetDetailsSection.prototype._updateLinkElement):
2319         Use the new DetailsSection title element setter.
2320
2321         * UserInterface/Views/VisualStyleDetailsPanel.css:
2322         (.sidebar > .panel.details.css-style .visual > .details-section .details-section > .header > .options):
2323         (.sidebar > .panel.details.css-style .visual > .details-section .details-section > .header > .visual-style-section-clear): Deleted.
2324         (.sidebar > .panel.details.css-style .visual > .details-section .details-section.collapsed > .header > .visual-style-section-clear,): Deleted.
2325         Remove the "visual-style-section-clear" class, as it's no longer needed.
2326
2327         * UserInterface/Views/VisualStyleDetailsPanel.js:
2328         (WebInspector.VisualStyleDetailsPanel.prototype._generateSection.createOptionsElement):
2329         (WebInspector.VisualStyleDetailsPanel.prototype._generateSection):
2330
2331 2017-04-03  Joseph Pecoraro  <pecoraro@apple.com>
2332
2333         Web Inspector: "Space" is not localizable in Timelines record button tooltips
2334         https://bugs.webkit.org/show_bug.cgi?id=170420
2335         <rdar://problem/30871371>
2336
2337         Reviewed by Timothy Hatcher.
2338
2339         * UserInterface/Base/LoadLocalizedStrings.js:
2340         (WebInspector.unlocalizedString):
2341         (WebInspector.UIString):
2342         * UserInterface/Base/Main.js:
2343         Move UIString / unlocalizedString to LoadLocalizedString.js.
2344         They may be needed before Main.js has introduced it.
2345
2346         * UserInterface/Test/Test.js:
2347         Provide a default implementaiton of unlocalizedString.
2348
2349         * Localizations/en.lproj/localizedStrings.js:
2350         * UserInterface/Models/KeyboardShortcut.js:
2351         Most keys use a symbol to represent the key. "Space" was the one
2352         exception, so use a localized string.
2353
2354 2017-04-03  Joseph Pecoraro  <pecoraro@apple.com>
2355
2356         Web Inspector: Tooltip for close tab button should match Safari
2357         https://bugs.webkit.org/show_bug.cgi?id=170417
2358         <rdar://problem/31378423>
2359
2360         Reviewed by Matt Baker.
2361
2362         * Localizations/en.lproj/localizedStrings.js:
2363         * UserInterface/Views/GeneralTabBarItem.js:
2364         (WebInspector.GeneralTabBarItem):
2365         Updated tooltip to match Safari's most descriptive tooltip.
2366
2367 2017-04-03  Devin Rousso  <webkit@devinrousso.com>
2368
2369         REGRESSION (r214354): Web Inspector: WebSocket connection icon obscures close content view icon
2370         https://bugs.webkit.org/show_bug.cgi?id=170104
2371
2372         Reviewed by Joseph Pecoraro.
2373
2374         * UserInterface/Views/ResourceTreeElement.css:
2375         (.item.resource.resource-type-websocket .status > .ready-state):
2376         (.item.resource.resource-type-websocket:not(.selected) .status .ready-state.open):
2377         (.tree-outline:not(:focus, .force-focus) .item.resource.resource-type-websocket.selected .status .ready-state.open):
2378         (body:matches(.window-inactive, .window-docked-inactive) .item.resource.resource-type-websocket.selected .status .ready-state.open):
2379         (.item.resource.resource-type-websocket:not(.selected) .status .ready-state.connecting):
2380         (.tree-outline:not(:focus, .force-focus) .item.resource.resource-type-websocket.selected .status .ready-state.connecting):
2381         (body:matches(.window-inactive, .window-docked-inactive) .item.resource.resource-type-websocket.selected .status .ready-state.connecting):
2382         (.item.resource.resource-type-websocket .status > div): Deleted.
2383         (.item.resource.resource-type-websocket:not(.selected) .status .open): Deleted.
2384         (.tree-outline:not(:focus, .force-focus) .item.resource.resource-type-websocket.selected .status .open): Deleted.
2385         (body:matches(.window-inactive, .window-docked-inactive) .item.resource.resource-type-websocket.selected .status .open): Deleted.
2386         (.item.resource.resource-type-websocket:not(.selected) .status .connecting): Deleted.
2387         (.tree-outline:not(:focus, .force-focus) .item.resource.resource-type-websocket.selected .status .connecting): Deleted.
2388         (body:matches(.window-inactive, .window-docked-inactive) .item.resource.resource-type-websocket.selected .status .connecting): Deleted.
2389
2390         * UserInterface/Views/WebSocketResourceTreeElement.js:
2391         (WebInspector.WebSocketResourceTreeElement.prototype._updateConnectionStatus):
2392         Apply an additional CSS class to the connection indicator element so that the styles can be
2393         applied more specifically to just that element.
2394
2395 2017-04-01  Jon Lee  <jonlee@apple.com>
2396
2397         Add missing text styles
2398         https://bugs.webkit.org/show_bug.cgi?id=170295
2399         rdar://problem/30219503
2400
2401         Reviewed by Dean Jackson.
2402
2403         * UserInterface/Models/CSSKeywordCompletions.js: Update keyword completions
2404
2405 2017-04-01  Dan Bernstein  <mitz@apple.com>
2406
2407         Localizable strings files are out of date
2408         https://bugs.webkit.org/show_bug.cgi?id=170383
2409
2410         Reviewed by Tim Horton.
2411
2412         Ran update-webkit-localizable-strings.
2413
2414         * Localizations/en.lproj/localizedStrings.js:
2415
2416 2017-03-30  Matt Baker  <mattbaker@apple.com>
2417
2418         Web Inspector: Styles sidebar warning icon appears inside property value text
2419         https://bugs.webkit.org/show_bug.cgi?id=170281
2420
2421         Reviewed by Timothy Hatcher.
2422
2423         Style rule warning icon should always come before the property name,
2424         regardless of which property part (name/value) the error is for. This
2425         information is conveyed by the red strikethrough, which is applied to
2426         the property name, value, or both.
2427
2428         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
2429
2430 2017-03-29  Nikita Vasilyev  <nvasilyev@apple.com>
2431
2432         Web Inspector: WebSockets: Messages log should remain being scrolled to the bottom when a new message is added
2433         https://bugs.webkit.org/show_bug.cgi?id=170090
2434
2435         Reviewed by Matt Baker.
2436
2437         Adding many Web Socket messages quickly can create a performance bottleneck. Batch addition of DataGrid nodes
2438         using requestAnimationFrame, and scroll to the bottom of the DataGrid at most once per a batch update.
2439
2440         * UserInterface/Views/WebSocketContentView.js:
2441         (WebInspector.WebSocketContentView):
2442         (WebInspector.WebSocketContentView.prototype.shown):
2443         (WebInspector.WebSocketContentView.prototype.hidden):
2444         (WebInspector.WebSocketContentView.prototype._updateFramesSoon):
2445         Batch WebSocketContentView DOM modifications using requestAnimationFrame.
2446
2447         (WebInspector.WebSocketContentView.prototype._updateFrames):
2448         (WebInspector.WebSocketContentView.prototype._addFrame):
2449         (WebInspector.WebSocketContentView.prototype.addFrame): Deleted.
2450         Make addFrame method private since it isn't used anywhere outside of this class.
2451
2452         (WebInspector.WebSocketContentView.prototype._updateState): Deleted.
2453         Make _updateState a part of _updateFramesSoon.
2454
2455 2017-03-29  Sam Brodkin  <isam@apple.com>
2456
2457         Web Inspector: Network tab content view is blank after reload
2458         https://bugs.webkit.org/show_bug.cgi?id=168029
2459
2460         Reviewed by Brian Burg.
2461
2462         * UserInterface/Views/NetworkSidebarPanel.js:
2463         (WebInspector.NetworkSidebarPanel.prototype._networkTimelineReset):
2464         showDefaultContentView() which shows networkGridView in the contentView was not being called
2465         when the NetworkSidebarPanel was not visible. Removing the if statement always shows the
2466         networkGridView which fixes the bug. This wouldn't be easy to regression test.
2467
2468 2017-03-28  Brian Burg  <bburg@apple.com>
2469
2470         Web Inspector: RTL: keyboard shortcuts with directionality need to be flipped (forward/back, etc)
2471         https://bugs.webkit.org/show_bug.cgi?id=165761
2472
2473         Reviewed by Matt Baker.
2474
2475         Original patch by Devin Rousso.
2476
2477         * UserInterface/Views/ContentBrowser.js:
2478         (WebInspector.ContentBrowser):
2479         * UserInterface/Views/TabBrowser.js:
2480         (WebInspector.TabBrowser):
2481         Flip the functionality of keyboard shortcuts when in RTL so that the action of
2482         pressing the left or right arrows/curly braces matches what happens when the
2483         corresponding left or right buttons are clicked.
2484
2485         * UserInterface/Views/DataGrid.js:
2486         (WebInspector.DataGrid.prototype._keyDown):
2487         * UserInterface/Views/LogContentView.js:
2488         (WebInspector.LogContentView.prototype._keyDown):
2489         * UserInterface/Views/TreeOutline.js:
2490         (WebInspector.TreeOutline.prototype._treeKeyDown):
2491         Flip the Left and Right keyboard shortcuts to expand/collapse the selected item when in RTL.
2492
2493 2017-03-28  Brian Burg  <bburg@apple.com>
2494
2495         Web Inspector: Add "Disable Caches" option that only applies to the inspected page while Web Inspector is open
2496         https://bugs.webkit.org/show_bug.cgi?id=169865
2497         <rdar://problem/31250573>
2498
2499         Reviewed by Joseph Pecoraro.
2500
2501         Hook up a button in the Network tab to WebCore::Page's resourceCachingDisabled flag.
2502         If it is active, resource loads are subject to a cache policy that never uses a cached response.
2503
2504         * Localizations/en.lproj/localizedStrings.js:
2505         Add localized strings.
2506
2507         * UserInterface/Base/Main.js:
2508         (WebInspector.loaded):
2509         Add a setting for whether to disable resource caching and inform the backend
2510         of our preference. If someone changes the setting, tell the backend again.
2511
2512         * UserInterface/Views/NetworkGridContentView.js:
2513         (WebInspector.NetworkGridContentView):
2514         (WebInspector.NetworkGridContentView.prototype.get navigationItems):
2515         (WebInspector.NetworkGridContentView.prototype._resourceCachingDisabledSettingChanged):
2516         (WebInspector.NetworkGridContentView.prototype._toggleDisableResourceCache):
2517         Add a new activatable navigation item that toggles disableResourceCaching for the inspected page.
2518
2519         * UserInterface/Protocol/Legacy/10.0/InspectorBackendCommands.js:
2520         * UserInterface/Protocol/Legacy/10.3/InspectorBackendCommands.js:
2521         * UserInterface/Protocol/Legacy/7.0/InspectorBackendCommands.js:
2522         * UserInterface/Protocol/Legacy/8.0/InspectorBackendCommands.js:
2523         * UserInterface/Protocol/Legacy/9.0/InspectorBackendCommands.js:
2524         * UserInterface/Protocol/Legacy/9.3/InspectorBackendCommands.js:
2525         * Versions/Inspector-iOS-10.0.json:
2526         * Versions/Inspector-iOS-10.3.json:
2527         * Versions/Inspector-iOS-7.0.json:
2528         * Versions/Inspector-iOS-8.0.json:
2529         * Versions/Inspector-iOS-9.0.json:
2530         * Versions/Inspector-iOS-9.3.json:
2531         Update legacy backend commands to remove the old/broken Network.setCacheDisabled command.
2532
2533 2017-03-28  Joseph Pecoraro  <pecoraro@apple.com>
2534
2535         Web Inspector: Inspecting a Main Resource that is JS/JSON does not format / syntax highlight it properly
2536         https://bugs.webkit.org/show_bug.cgi?id=166862
2537         <rdar://problem/29835977>
2538
2539         Reviewed by Brian Burg.
2540
2541         * UserInterface/Models/Resource.js:
2542         (WebInspector.Resource.prototype.get syntheticMIMEType):
2543         Don't override the mime type for Document resources. They should always
2544         have a mime type and we should use whatever it is.
2545
2546 2017-03-28  Joseph Pecoraro  <pecoraro@apple.com>
2547
2548         Web Inspector: Unable to Format JSON Request Data
2549         https://bugs.webkit.org/show_bug.cgi?id=170189
2550
2551         Reviewed by Matt Baker.
2552
2553         * UserInterface/Views/TextEditor.js:
2554         (WebInspector.TextEditor.prototype._startWorkerPrettyPrint):
2555         When we are viewing request data we are looking at a TextResourceContentView
2556         which has a TextEditor without a delegate. In these cases we can just assume
2557         a JavaScript Program. In the majority of cases this will typically be JSON
2558         data, and either Program or Module will highlight and format as expected.
2559
2560 2017-03-27  Devin Rousso  <webkit@devinrousso.com>
2561
2562         Web Inspector: Option-clicking the close tab button should close all other tabs
2563         https://bugs.webkit.org/show_bug.cgi?id=169046
2564
2565         Reviewed by Matt Baker.
2566
2567         * UserInterface/Views/TabBar.js:
2568         (WebInspector.TabBar.prototype._handleClick):
2569
2570 2017-03-27  Devin Rousso  <webkit@devinrousso.com>
2571
2572         Web Inspector: The inspector sidebar has weird sub-column sizing issues
2573         https://bugs.webkit.org/show_bug.cgi?id=161966
2574
2575         Reviewed by Joseph Pecoraro.
2576
2577         * UserInterface/Views/Sidebar.js:
2578         (WebInspector.Sidebar.prototype.resizerDragEnded):
2579         (WebInspector.Sidebar.prototype._recalculateWidth):
2580         Ensure that the selected sidebar panel is notified of the size change (sizeDidChange) when
2581         the resizer drag ends.
2582
2583         * UserInterface/Views/DetailsSectionDataGridRow.js:
2584         (WebInspector.DetailsSectionDataGridRow.prototype.sizeDidChange):
2585         * UserInterface/Views/ProbeSetDetailsSection.js:
2586         (WebInspector.ProbeSetDetailsSection.prototype.sizeDidChange):
2587         Add/update the sizeDidChange protected function.
2588
2589         * UserInterface/Views/ComputedStyleDetailsPanel.js:
2590         (WebInspector.ComputedStyleDetailsPanel.prototype.initialLayout):
2591         (WebInspector.ComputedStyleDetailsPanel.prototype.sizeDidChange):
2592         * UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
2593         (WebInspector.DOMNodeDetailsSidebarPanel.prototype.sizeDidChange):
2594         * UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
2595         (WebInspector.LayerTreeDetailsSidebarPanel.prototype.sizeDidChange):
2596         * UserInterface/Views/ResourceDetailsSidebarPanel.js:
2597         (WebInspector.ResourceDetailsSidebarPanel.prototype.sizeDidChange):
2598         * UserInterface/Views/ProbeDetailsSidebarPanel.js:
2599         (WebInspector.ProbeDetailsSidebarPanel.prototype.sizeDidChange):
2600         Update the contained DataGrid elements whenever the sidebar size changes so that the resizer
2601         elements are positioned correctly.
2602
2603         * UserInterface/Views/View.js:
2604         (WebInspector.View.prototype.updateLayoutIfNeeded):
2605         * UserInterface/Views/TimelineOverview.js:
2606         (WebInspector.TimelineOverview.prototype.updateLayoutIfNeeded):
2607         * UserInterface/Views/TimelineRuler.js:
2608         (WebInspector.TimelineRuler.prototype.updateLayoutIfNeeded):
2609         Ensure the layoutReason is also propagated.
2610
2611 2017-03-27  Joseph Pecoraro  <pecoraro@apple.com>
2612
2613         Web Inspector: Resource Details Sidebar displays previous image metrics when viewing resource where content load failed
2614         https://bugs.webkit.org/show_bug.cgi?id=170065
2615         <rdar://problem/27081591>
2616
2617         Reviewed by Matt Baker.
2618
2619         * UserInterface/Models/Resource.js:
2620         (WebInspector.Resource.prototype.getImageSize.imageDidLoad):
2621         (WebInspector.Resource.prototype.getImageSize.requestContentFailure):
2622         (WebInspector.Resource.prototype.getImageSize):
2623         If the requestContent failed, return a null image size.
2624
2625         * UserInterface/Views/ResourceDetailsSidebarPanel.js:
2626         (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshImageSizeSection.hideImageSection):
2627         (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshImageSizeSection):
2628         If the callback is called with a null size, hide the image size section.
2629
2630 2017-03-24  Brian Burg  <bburg@apple.com>
2631
2632         Web Inspector: RTL: number scripts are used inconsistently throughout the UI
2633         https://bugs.webkit.org/show_bug.cgi?id=168290
2634
2635         Reviewed by Joseph Pecoraro.
2636
2637         Original patch by Devin Rousso.
2638
2639         * Localizations/en.lproj/localizedStrings.js: Add new string for FPS bars.
2640         * UserInterface/Base/Utilities.js:
2641         (value.d):
2642         (value):
2643         Localize %d formatted values by default. If that's not desired, then you need to stringify
2644         the number outside of String.format and Number.abbreviate and pass it as %s instead.
2645         Also add a global variable for zwsp (zero-width space) and use it in DataGridNode.
2646
2647         * UserInterface/Views/ConsoleMessageView.js:
2648         (WebInspector.ConsoleMessageView.prototype._renderRepeatCount): Abbreviate the repeat count,
2649         and cause it to be localized.
2650
2651         * UserInterface/Views/DataGridNode.js:
2652         (WebInspector.DataGridNode.prototype.createCellContent):
2653         If we don't know anything about a cell's data other than that it's a number,
2654         run the number through toLocaleString().
2655
2656         * UserInterface/Views/HeapSnapshotInstanceDataGridNode.js:
2657         Don't localize @%d tags for snapshot objects since this is not done elsewhere in the UI.
2658
2659         * UserInterface/Views/IndexedDatabaseDetailsSidebarPanel.js: Localize integer version number.
2660         (WebInspector.IndexedDatabaseDetailsSidebarPanel.prototype.layout):
2661
2662         * UserInterface/Views/MemoryTimelineView.js:
2663         (WebInspector.MemoryTimelineView.prototype._updateMaxComparisonLegend): Use Number.percentageString().
2664
2665         * UserInterface/Views/RenderingFrameTimelineOverviewGraph.js:
2666         (WebInspector.RenderingFrameTimelineOverviewGraph.prototype._updateDividers.createDividerAtPosition):
2667         (WebInspector.RenderingFrameTimelineOverviewGraph.prototype._updateDividers):
2668         Localize "%d fps" markers.
2669
2670         * UserInterface/Views/TimelineOverview.js:
2671         (WebInspector.TimelineOverview.prototype._viewModeDidChange):
2672         Localize frame label numbers.
2673
2674 2017-03-24  Nikita Vasilyev  <nvasilyev@apple.com>
2675
2676         Web Inspector: Adding a WebSocket message may change the currently selected resource
2677         https://bugs.webkit.org/show_bug.cgi?id=170036
2678         <rdar://problem/31231463>
2679
2680         Reviewed by Joseph Pecoraro.
2681
2682         Calling increaseSize on a resource may cause a WebInspector.TimelineDataGrid#TimelineDataGrid#_refreshDirtyDataGridNodes call.
2683         Make sure _refreshDirtyDataGridNodes preserves selection of a treeElement.
2684
2685         * UserInterface/Views/TimelineDataGrid.js:
2686         (WebInspector.TimelineDataGrid.prototype._refreshDirtyDataGridNodes):
2687         Re-attaching treeElement causes it to lose selection. Select it again after re-attaching.
2688
2689 2017-03-24  Devin Rousso  <webkit@devinrousso.com>
2690
2691         Web Inspector: add context menu item to log content of WebSocket frame
2692         https://bugs.webkit.org/show_bug.cgi?id=169945
2693
2694         Reviewed by Joseph Pecoraro.
2695
2696         * Localizations/en.lproj/localizedStrings.js:
2697
2698         * UserInterface/Views/WebSocketContentView.js:
2699         (WebInspector.WebSocketContentView):
2700         (WebInspector.WebSocketContentView.prototype.addFrame):
2701         (WebInspector.WebSocketContentView.prototype._addRow):
2702         Rework the way CSS classes are applied so the isOutgoing and isText flags can also be passed
2703         to the WebSocketDataGridNode.  This is necessary because a non-text frame shouldn't be able
2704         to be logged to the console.
2705
2706         * UserInterface/Views/WebSocketDataGridNode.js:
2707         (WebInspector.WebSocketDataGridNode.prototype.appendContextMenuItems):
2708
2709 2017-03-24  Devin Rousso  <webkit@devinrousso.com>
2710
2711         Web Inspector: allow users to click links in inline/user-agent styles
2712         https://bugs.webkit.org/show_bug.cgi?id=170054
2713
2714         Reviewed by Joseph Pecoraro.
2715
2716         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
2717         (WebInspector.CSSStyleDeclarationTextEditor.prototype.set style):
2718         (WebInspector.CSSStyleDeclarationTextEditor.prototype._updateJumpToSymbolTrackingMode):
2719         (WebInspector.CSSStyleDeclarationTextEditor.prototype.tokenTrackingControllerHighlightedRangeWasClicked):
2720         (WebInspector.CSSStyleDeclarationTextEditor.prototype.tokenTrackingControllerNewHighlightCandidate):
2721         Always enable the token tracking controller, but only act on hovered/clicked token if it is
2722         a link or the owner style declaration has a source code location (for jumping to the Resource).
2723
2724 2017-03-24  Devin Rousso  <webkit@devinrousso.com>
2725
2726         Web Inspector: Indicate whether a WebSocket connection is open or close
2727         https://bugs.webkit.org/show_bug.cgi?id=168948
2728
2729         Reviewed by Joseph Pecoraro.
2730
2731         * Localizations/en.lproj/localizedStrings.js:
2732         * UserInterface/Main.html:
2733         Added WebSocketResourceTreeElement.js and SpanningDataGridNode.js.
2734
2735         * UserInterface/Views/WebSocketContentView.js:
2736         (WebInspector.WebSocketContentView):
2737         (WebInspector.WebSocketContentView.prototype.shown):
2738         (WebInspector.WebSocketContentView.prototype.hidden):
2739         (WebInspector.WebSocketContentView.prototype._updateState):
2740         Listen to changes in the readyState and add a SpanningDataGridNode when the current state
2741         becomes Closed.
2742
2743         * UserInterface/Views/WebSocketResourceTreeElement.js: Added.
2744         (WebInspector.WebSocketResourceTreeElement.prototype.onattach):
2745         (WebInspector.WebSocketResourceTreeElement.prototype.ondetach):
2746         (WebInspector.WebSocketResourceTreeElement.prototype._updateConnectionStatus):
2747         Listen to changes in the readyState and add/remove the status element depending on the
2748         current state:
2749          - Closed: show no status indicator
2750          - Connecting: show a small circle with a yellow color
2751          - Open: show a small circle with a green color
2752
2753         * UserInterface/Views/ResourceTreeElement.css:
2754         (.item.resource.resource-type-websocket .status > div):
2755         (.item.resource.resource-type-websocket:not(.selected) .status .open):
2756         (.tree-outline:not(:focus, .force-focus) .item.resource.resource-type-websocket.selected .status .open):
2757         (body:matches(.window-inactive, .window-docked-inactive) .item.resource.resource-type-websocket.selected .status .open):
2758         (.item.resource.resource-type-websocket:not(.selected) .status .connecting):
2759         (.tree-outline:not(:focus, .force-focus) .item.resource.resource-type-websocket.selected .status .connecting):
2760         (body:matches(.window-inactive, .window-docked-inactive) .item.resource.resource-type-websocket.selected .status .connecting):
2761
2762         * UserInterface/Views/FrameTreeElement.js:
2763         (WebInspector.FrameTreeElement):
2764         Use WebSocketResourceTreeElement as the constructor for WebSocket resources.
2765
2766         * UserInterface/Views/SpanningDataGridNode.js: Added.
2767         (WebInspector.SpanningDataGridNode.prototype.createCells):
2768         Creates a single cell that spans all the columns (via CSS colspan) of the parent DataGrid.
2769
2770         * UserInterface/Views/DataGrid.css:
2771         (.data-grid td.spanning):
2772         Center content of spanning nodes and prevent user interaction.
2773
2774         * UserInterface/Views/DataGridNode.js:
2775         (WebInspector.DataGridNode.prototype.createCell):
2776         Add additional checks so that a DataGridNode can be created with a column identifier that is
2777         not in the DataGrid.  This is used by SpanningGridDataNode, as it shouldn't match one single
2778         column in the DataGrid since it spans them all.
2779
2780         * UserInterface/Views/GeneralTreeElement.js:
2781         (WebInspector.GeneralTreeElement.prototype.ondetach):
2782         * UserInterface/Views/BreakpointTreeElement.js:
2783         (WebInspector.BreakpointTreeElement.prototype.ondetach):
2784         * UserInterface/Views/DOMBreakpointTreeElement.js:
2785         (WebInspector.DOMBreakpointTreeElement.prototype.ondetach):
2786         * UserInterface/Views/XHRBreakpointTreeElement.js:
2787         (WebInspector.XHRBreakpointTreeElement.prototype.ondetach):
2788         Add ondetach function (with super calls) for future use.
2789
2790 2017-03-23  Joseph Pecoraro  <pecoraro@apple.com>
2791
2792         Web Inspector: Cache type is not styled correctly in Timelines tab
2793         https://bugs.webkit.org/show_bug.cgi?id=170032
2794
2795         Reviewed by Matt Baker.
2796
2797         * UserInterface/Views/NetworkGridContentView.css:
2798         (.content-view:matches(.network, .network-grid) > .data-grid .cache-type):
2799         (.content-view:matches(.network, .network-grid) > .data-grid:matches(:focus, .force-focus) tr.selected .cache-type):
2800         (.content-view.network-grid > .data-grid .cache-type): Deleted.
2801         (.content-view.network-grid > .data-grid:matches(:focus, .force-focus) tr.selected .cache-type): Deleted.
2802         The different network grids have different class names. Handle both.
2803
2804 2017-03-23  Nikita Vasilyev  <nvasilyev@apple.com>
2805
2806         Web Inspector: Editing local storage keys/values starts with truncated strings
2807         https://bugs.webkit.org/show_bug.cgi?id=169896
2808
2809         Reviewed by Brian Burg.
2810
2811         * UserInterface/Views/DataGrid.css:
2812         (.data-grid td.editing > div):
2813         * UserInterface/Views/DataGrid.js:
2814         (WebInspector.DataGrid.prototype._editingCancelled):
2815         div.cell-content is removed because the <td> itself is contenteditable (using -webkit-user-modify:read-write-plaintext-only),
2816         not the inner div.cell-content. Re-create div.cell-content after commiting (by pressing Enter) or canceling (by pressing Esc)
2817         since it may get removed while editing.
2818
2819 2017-03-22  Matt Baker  <mattbaker@apple.com>
2820
2821         Web Inspector: Clicking DOM breakpoint marker should enable/disable breakpoints
2822         https://bugs.webkit.org/show_bug.cgi?id=169856
2823         <rdar://problem/31133090>
2824
2825         Reviewed by Joseph Pecoraro.
2826
2827         Clicking DOM breakpoint marker should enable/disable breakpoints,
2828         matching the behavior of the marker's context menu:
2829
2830         - If one or more breakpoints are disabled, click enables all
2831         - If all breakpoints are enabled, click disables all
2832
2833         * UserInterface/Views/DOMTreeElement.js:
2834         (WebInspector.DOMTreeElement.prototype._updateBreakpointStatus):
2835         (WebInspector.DOMTreeElement.prototype._statusImageClicked):
2836
2837 2017-03-20  Devin Rousso  <webkit@devinrousso.com>
2838
2839         Web Inspector: RTL: minor layout issues in Breakpoint Editor popover
2840         https://bugs.webkit.org/show_bug.cgi?id=169765
2841
2842         Reviewed by Brian Burg.
2843
2844         * UserInterface/Controllers/BreakpointPopoverController.js:
2845         (WebInspector.BreakpointPopoverController.prototype._createPopoverContent):
2846         Fix typo.
2847
2848         * UserInterface/Views/BreakpointActionView.css:
2849         (body[dir=ltr] .breakpoint-action-button-container):
2850         (body[dir=rtl] .breakpoint-action-button-container):
2851         (:matches(.breakpoint-action-append-button, .breakpoint-action-remove-button)):
2852         (body[dir=ltr] :matches(.breakpoint-action-append-button, .breakpoint-action-remove-button)):
2853         (body[dir=rtl] :matches(.breakpoint-action-append-button, .breakpoint-action-remove-button)):
2854         (.breakpoint-action-block-body > .description):
2855         (body[dir=ltr] .breakpoint-action-block-body > .description):
2856         (body[dir=rtl] .breakpoint-action-block-body > .description):
2857         (.breakpoint-action-block-body > input):
2858         (.breakpoint-action-button-container): Deleted.
2859         (.breakpoint-action-append-button, .breakpoint-action-remove-button): Deleted.
2860
2861         * UserInterface/Views/BreakpointActionView.js:
2862         (WebInspector.BreakpointActionView.prototype._updateBody):
2863         Manually apply `dir="ltr"` to the description element to force proper rendering.
2864
2865         * UserInterface/Views/BreakpointPopoverController.css:
2866         (.popover .edit-breakpoint-popover-content):
2867         (.popover .edit-breakpoint-popover-content > table > tr > th):
2868         (#edit-breakpoint-popover-ignore):
2869         (body[dir=ltr] :matches(#edit-breakpoint-popover-ignore, #edit-breakpoint-popover-auto-continue)):
2870         (body[dir=rtl] :matches(#edit-breakpoint-popover-ignore, #edit-breakpoint-popover-auto-continue)):
2871         (#edit-breakpoint-popoover-auto-continue): Deleted.
2872
2873 2017-03-20  Nikita Vasilyev  <nvasilyev@apple.com>
2874
2875         Web Inspector: Icon next to "An error occurred..." message changes size when Inspector window is resized
2876         https://bugs.webkit.org/show_bug.cgi?id=169901
2877
2878         Reviewed by Brian Burg.
2879
2880         * UserInterface/Views/Main.css:
2881         (.message-text-view.error::before):
2882
2883 2017-03-20  Nikita Vasilyev  <nvasilyev@apple.com>
2884
2885         Web Inspector: Clicking on Clear Network Items icon throws an exception if timing popover is visible
2886         https://bugs.webkit.org/show_bug.cgi?id=169852
2887         <rdar://problem/31132652>
2888
2889         Reviewed by Joseph Pecoraro.
2890
2891         * UserInterface/Views/ResourceTimelineDataGridNode.js:
2892         (WebInspector.ResourceTimelineDataGridNode.prototype._mouseoverRecordBar):
2893         (WebInspector.ResourceTimelineDataGridNode):
2894
2895 2017-03-20  Nikita Vasilyev  <nvasilyev@apple.com>
2896
2897         REGRESSION (r187873): Web Inspector: When resizing, prevent DataGrid columns from collapsing entirely
2898         https://bugs.webkit.org/show_bug.cgi?id=169899
2899
2900         Reviewed by Joseph Pecoraro.
2901
2902         * UserInterface/Views/DataGrid.js:
2903         (WebInspector.DataGrid.prototype.resizerDragging):
2904         leftMinimum and rightMaximum variables were always NaN because this.ColumnResizePadding is undefined.
2905
2906 2017-03-20  Matt Baker  <mattbaker@apple.com>
2907
2908         Web Inspector: Pseudo-class markers overlap DOM breakpoints and disclosure triangle
2909         https://bugs.webkit.org/show_bug.cgi?id=169850
2910         <rdar://problem/31132335>
2911
2912         Reviewed by Joseph Pecoraro.
2913
2914         DOMTreeContentView should always have at least 7px of gutter space to
2915         accomodate pseudo-class markers. When DOM breakpoints are visible the
2916         gutter size is increased so breakpoints and markers do not overlap.
2917
2918         * UserInterface/Views/DOMTreeContentView.css:
2919         (.content-view.dom-tree .tree-outline.dom):
2920         (.content-view.dom-tree.show-gutter .tree-outline.dom):
2921         (body[dir=ltr] .content-view.dom-tree .tree-outline.dom):
2922         (body[dir=rtl] .content-view.dom-tree .tree-outline.dom):
2923         (body[dir=ltr] .content-view.dom-tree.show-gutter .tree-outline.dom): Deleted.
2924         (body[dir=rtl] .content-view.dom-tree.show-gutter .tree-outline.dom): Deleted.
2925
2926         * UserInterface/Views/DOMTreeOutline.css:
2927         (.content-view.dom-tree.show-gutter .tree-outline.dom):
2928         Change pseudo-class marker indent when showing DOM breakpoint gutter.
2929         (body[dir=ltr] .tree-outline.dom li.pseudo-class-enabled > .selection-area::before):
2930         Drive-by fix: copy paste error.
2931
2932 2017-03-19  Matt Baker  <mattbaker@apple.com>
2933
2934         Web Inspector: REGRESSION (r212910): Active call frame status icon has incorrect left margin
2935         https://bugs.webkit.org/show_bug.cgi?id=169862
2936
2937         Reviewed by Brian Burg.
2938
2939         * UserInterface/Views/CallFrameTreeElement.css:
2940         (.tree-outline .item.call-frame .status):
2941         (body[dir=ltr] .tree-outline .item.call-frame .status):
2942         (body[dir=rtl] .tree-outline .item.call-frame .status):
2943
2944 2017-03-18  Devin Rousso  <webkit@devinrousso.com>
2945
2946         Web Inspector: Empty attribute added to a DOM tree outline element should not add whitespace within the tag
2947         https://bugs.webkit.org/show_bug.cgi?id=139623
2948
2949         Reviewed by Brian Burg.
2950
2951         * UserInterface/Views/DOMTreeElement.js:
2952         (WebInspector.DOMTreeElement.prototype._attributeEditingCommitted):
2953         If the `newText` after editing has no content, remove the element for that attribute.
2954
2955 2017-03-18  Devin Rousso  <webkit@devinrousso.com>
2956
2957         Web Inspector: add keyboard shortcut to clear timeline records
2958         https://bugs.webkit.org/show_bug.cgi?id=132485
2959
2960         Reviewed by Brian Burg.
2961
2962         * Localizations/en.lproj/localizedStrings.js:
2963         * UserInterface/Views/TimelineRecordingContentView.js:
2964         (WebInspector.TimelineRecordingContentView):
2965         (WebInspector.TimelineRecordingContentView.prototype.handleClearShortcut):
2966
2967 2017-03-17  Devin Rousso  <webkit@devinrousso.com>
2968
2969         Web Inspector: wrong filename when saving resource from ResourceImageContentView
2970         https://bugs.webkit.org/show_bug.cgi?id=54454
2971
2972         Reviewed by Joseph Pecoraro.
2973
2974         * UserInterface/Views/ResourceContentView.js:
2975         (WebInspector.ResourceContentView.prototype.get supportsSave):
2976         (WebInspector.ResourceContentView.prototype.get saveData):
2977         * UserInterface/Views/TextResourceContentView.js:
2978         (WebInspector.TextResourceContentView.prototype.get supportsSave): Deleted.
2979         Add save data getter to the parent class, so that both Images and Fonts can be saved.
2980
2981         * UserInterface/Views/Resource.js:
2982         (WebInspector.Resource.prototype.canRequestContent):
2983         Drive-by: remove unused function.
2984
2985 2017-03-16  Devin Rousso  <webkit@devinrousso.com>
2986
2987         Web Inspector: memory category timelines would look better with ruler tick-aligned guides
2988         https://bugs.webkit.org/show_bug.cgi?id=158100
2989
2990         Reviewed by Joseph Pecoraro.
2991
2992         * UserInterface/Views/MemoryTimelineView.css:
2993         (.timeline-view.memory > .content > .details):
2994         (.timeline-view.memory > .content > .details > .timeline-ruler):
2995         (body[dir=ltr] .timeline-view.memory > .content > .details > .timeline-ruler):
2996         (body[dir=rtl] .timeline-view.memory > .content > .details > .timeline-ruler):
2997         Make the TimelineRuler absolutely positioned so it can use the full height of the view,
2998         providing enough space for the markers to be visible.
2999
3000 2017-03-16  Devin Rousso  <webkit@devinrousso.com>
3001
3002         Web Inspector: Console Evaluation links in the Console should not show normally
3003         https://bugs.webkit.org/show_bug.cgi?id=157483
3004
3005         Reviewed by Matt Baker.
3006
3007         * UserInterface/Models/CallFrame.js:
3008         (WebInspector.CallFrame):
3009         (WebInspector.CallFrame.prototype.get isConsoleEvaluation):
3010         (WebInspector.CallFrame.fromDebuggerPayload):
3011         (WebInspector.CallFrame.fromPayload):
3012         Move console evaluation check to the constructor for consistency.
3013
3014         * UserInterface/Views/ConsoleMessageView.js:
3015         (WebInspector.ConsoleMessageView.prototype._appendLocationLink):
3016         * UserInterface/Views/StackTraceView.js:
3017         (WebInspector.StackTraceView):
3018         Only add CallFrameView elements if the corresponding CallFame is not a console evaluation.
3019
3020 2017-03-16  Matt Baker  <mattbaker@apple.com>
3021
3022         Web Inspector: REGRESSION (r213691): Saving DOM breakpoints broken after refactoring
3023         https://bugs.webkit.org/show_bug.cgi?id=169779
3024
3025         Reviewed by Joseph Pecoraro.
3026
3027         Use correct method: _saveBreakpoints -> _saveDOMBreakpoints.
3028
3029         * UserInterface/Controllers/DOMDebuggerManager.js:
3030         (WebInspector.DOMDebuggerManager.prototype.addDOMBreakpoint):
3031         Remove check before saving to be consistent with similar code in
3032         DebuggerManager and DOMDebuggerManager.
3033
3034 2017-03-16  Devin Rousso  <webkit@devinrousso.com>
3035
3036         Web Inspector: add "Save Selected" context menu item to Console
3037         https://bugs.webkit.org/show_bug.cgi?id=151837
3038
3039         Reviewed by Joseph Pecoraro.
3040
3041         * Localizations/en.lproj/localizedStrings.js:
3042         * UserInterface/Base/Main.js:
3043         (WebInspector.saveDataToFile):
3044         Allow data to be saved without a provided URL.  It will default to localized "Untitled".
3045
3046         * UserInterface/Views/LogContentView.js:
3047         (WebInspector.LogContentView.prototype._handleContextMenuEvent):
3048
3049 2017-03-16  Devin Rousso  <webkit@devinrousso.com>
3050
3051         Web Inspector: RTL: selected frame indicator is not positioned correctly
3052         https://bugs.webkit.org/show_bug.cgi?id=169763
3053
3054         Reviewed by Matt Baker.
3055
3056         * UserInterface/Views/RenderingFrameTimelineOverviewGraph.js:
3057         (WebInspector.RenderingFrameTimelineOverviewGraph.prototype._updateFrameMarker):
3058         (WebInspector.RenderingFrameTimelineOverviewGraph.prototype._mouseClicked):
3059         Treat the current mouse position (event.pageX) as a negative value when in RTL, meaning that
3060         the delta movement from the starting position is flipped.
3061
3062         * UserInterface/Views/TimelineRuler.css:
3063         (body[dir=ltr] .timeline-ruler > .header > .divider,):
3064         (body[dir=rtl] .timeline-ruler > .header > .divider,):
3065         (.timeline-ruler > .header > .divider):
3066         (.timeline-ruler > .header > .divider > .label):
3067         (body[dir=ltr] .timeline-ruler > .header > .divider > .label):
3068         (body[dir=rtl] .timeline-ruler > .header > .divider > .label):
3069         (.timeline-ruler > .markers > .divider):
3070         (.timeline-ruler > .markers > .marker):
3071         (body[dir=ltr] .timeline-ruler > .markers > .marker):
3072         (body[dir=rtl] .timeline-ruler > .markers > .marker):
3073         (.timeline-ruler > .markers > .marker::before):
3074         (body[dir=ltr] .timeline-ruler > .markers > .marker::before):
3075         (body[dir=rtl] .timeline-ruler > .markers > .marker::before):
3076         (body[dir=ltr] .timeline-ruler > .markers > .marker.current-time):
3077         (body[dir=rtl] .timeline-ruler > .markers > .marker.current-time):
3078         (.timeline-ruler > .markers > .marker.current-time::before):
3079         (.timeline-ruler > .markers > .marker.current-time): Deleted.
3080
3081         (.timeline-ruler > .selection-handle):
3082         (body[dir=ltr] .timeline-ruler > .selection-handle.left):
3083         (body[dir=rtl] .timeline-ruler > .selection-handle.left):
3084         (body[dir=ltr] .timeline-ruler > .selection-handle.right):
3085         (body[dir=rtl] .timeline-ruler > .selection-handle.right):
3086         Drive-by: add CSS variable for clarity.
3087
3088 2017-03-16  Devin Rousso  <webkit@devinrousso.com>
3089
3090         Web Inspector: RTL: filter mode icon in Debugger sidebar is misaligned
3091         https://bugs.webkit.org/show_bug.cgi?id=169766
3092
3093         Reviewed by Matt Baker.
3094
3095         * UserInterface/Views/FilterBar.css:
3096         (.filter-bar > .navigation-bar > .item):
3097         (body[dir=ltr] .filter-bar > .navigation-bar > .item):
3098         (body[dir=rtl] .filter-bar > .navigation-bar > .item):
3099
3100 2017-03-16  Matt Baker  <mattbaker@apple.com>
3101
3102         Web Inspector: Refactoring: remove DebuggerTreeElement class
3103         https://bugs.webkit.org/show_bug.cgi?id=169697
3104
3105         Reviewed by Devin Rousso.
3106
3107         Remove unnecessary class DebuggerTreeElement from TreeElement class hierarchy.
3108         The `sourceCodeLocation` property on IssueMessage and Breakpoint (the debugger
3109         objects) can be tested for generically using TreeElement.prototype.representedObject.
3110
3111         * UserInterface/Main.html:
3112         Remove file.
3113
3114         * UserInterface/Views/BreakpointTreeElement.js:
3115         * UserInterface/Views/IssueTreeElement.js:
3116         Change base class to GeneralTreeElement.
3117
3118         * UserInterface/Views/DebuggerSidebarPanel.js:
3119         (WebInspector.DebuggerSidebarPanel.prototype._addBreakpoint):
3120         (WebInspector.DebuggerSidebarPanel.prototype._compareTreeElements):
3121         (WebInspector.DebuggerSidebarPanel.prototype._addIssue):
3122         (WebInspector.DebuggerSidebarPanel.prototype._compareDebuggerTreeElements): Deleted.
3123         Renamed to just "_compareTreeElements".
3124
3125         * UserInterface/Views/DebuggerTreeElement.js: Removed.
3126
3127 2017-03-16  Devin Rousso  <webkit@devinrousso.com>
3128
3129         Web Inspector: RTL: goto arrow for source locations is pointing wrong way in Timeline data grids
3130         https://bugs.webkit.org/show_bug.cgi?id=169764
3131
3132         Reviewed by Matt Baker.
3133
3134         * UserInterface/Views/DataGrid.css:
3135         (body[dir=rtl] .data-grid td .go-to-arrow):
3136
3137 2017-03-16  Brian Burg  <bburg@apple.com>
3138
3139         Web Inspector: RTL: add FindBanner support for RTL layout
3140         https://bugs.webkit.org/show_bug.cgi?id=168723
3141
3142         Reviewed by Timothy Hatcher.
3143
3144         Due to the large number of CSS tricks used by this widget, adding RTL
3145         support involves changing a large number of rules. The important parts:
3146
3147         - Use '.segmented.{previous,next}-result' instead of '.segmented.
3148         {left,right}', this makes the style rules way less confusing for RTL.
3149
3150         - Flip icons so icons look like "< >" but actions are reversed.
3151
3152         - Get rid of the weird expanding button divider. This is impossible
3153         to mirror with the existing adjacent sibling combinator, and it does
3154         not match the system appearance. Just replace the mini-divider with a
3155         full divider and remove related dynamic rules that trigger on :active.
3156
3157         - Always keep the button divider between next/previous on the rightmost
3158         button, to avoid subtle differences between LTR and RTL.
3159
3160         - Fix some mistakes where we weren't using --border-color and also
3161         didn't adjust the handcoded border color for the inactive window case.
3162
3163         * UserInterface/Views/FindBanner.css:
3164         (.find-banner):
3165         (body[dir=ltr] .find-banner > :first-child,):
3166         (body[dir=ltr] .find-banner > :last-child,):
3167         (.find-banner > input[type="search"]):
3168         (body[dir=ltr] .find-banner > input[type="search"]):
3169         (body[dir=rtl] .find-banner > input[type="search"]):
3170         (.find-banner > button:active:not(:disabled)):
3171         (.find-banner > button.segmented):
3172         (.find-banner > button.segmented.previous-result):
3173         (body[dir=ltr] .find-banner > button.segmented.previous-result):
3174         (body[dir=rtl] .find-banner > button.segmented.previous-result):
3175         (body[dir=ltr] .find-banner > button.segmented.previous-result > .glyph):
3176         (body[dir=rtl] .find-banner > button.segmented.previous-result > .glyph):
3177         (body[dir=ltr] .find-banner > button.segmented.previous-result:active:not(:disabled) > .glyph):
3178         (body[dir=rtl] .find-banner > button.segmented.previous-result:active:not(:disabled) > .glyph):
3179         (.find-banner > button.segmented.next-result):
3180         (body[dir=ltr] .find-banner > button.segmented.next-result):
3181         (body[dir=rtl] .find-banner > button.segmented.next-result):
3182         (body[dir=ltr] .find-banner > button.segmented.next-result > .glyph):
3183         (body[dir=rtl] .find-banner > button.segmented.next-result > .glyph):
3184         (body[dir=ltr] .find-banner > button.segmented.next-result:active:not(:disabled) > .glyph):
3185         (body[dir=rtl] .find-banner > button.segmented.next-result:active:not(:disabled) > .glyph):
3186         (.find-banner.console-find-banner > input[type="search"]):
3187         (body[dir=ltr] .find-banner.console-find-banner > input[type="search"]):
3188         (body[dir=rtl] .find-banner.console-find-banner > input[type="search"]):
3189         (body[dir=ltr] .find-banner.console-find-banner > input[type="search"]::-webkit-textfield-decoration-container):
3190         (body[dir=rtl] .find-banner.console-find-banner > input[type="search"]::-webkit-textfield-decoration-container):
3191         (.find-banner > :first-child): Deleted.
3192         (.find-banner > :last-child): Deleted.
3193         (.find-banner > button.segmented.left): Deleted.
3194         (.find-banner > button:not(:active).segmented.right:before): Deleted.
3195         (.find-banner > button.segmented.left:active + button.segmented.right,): Deleted.
3196         (.find-banner > button.segmented.left:active + button.segmented.right:before): Deleted.
3197         (.find-banner > button.segmented.left > .glyph): Deleted.
3198         (.find-banner > button.segmented.left:active:not(:disabled) > .glyph): Deleted.
3199         (.find-banner > button.segmented.right): Deleted.
3200         (.find-banner > button.segmented.right > .glyph): Deleted.
3201         (.find-banner > button.segmented.right:active:not(:disabled) > .glyph): Deleted.
3202         (.find-banner.console-find-banner > input[type="search"]::-webkit-textfield-decoration-container): Deleted.
3203
3204         * UserInterface/Views/FindBanner.js:
3205         (WebInspector.FindBanner):
3206         Change left and right to logical names for the buttons, and inline
3207         some style classes with single uses.
3208
3209 2017-03-15  Devin Rousso  <webkit@devinrousso.com>
3210
3211         Web Inspector: Selecting text in the console does not do what I expect
3212         https://bugs.webkit.org/show_bug.cgi?id=169570
3213
3214         Reviewed by Matt Baker.
3215
3216         * UserInterface/Views/ConsoleMessageView.css:
3217         (.console-message-text > span > :matches(.console-message-enclosed, .console-message-preview, .console-message-preview-divider)):
3218         (.console-message .console-message-location):
3219         (.console-message-location.call-frame):
3220         Prevent text selection on anything other than the message text.  The other information that
3221         is not selectable can still be copied by selecting the message itself and copying.
3222
3223 2017-03-15  Nikita Vasilyev  <nvasilyev@apple.com>
3224
3225         Web Inspector: WebSockets: Update Arrow Up icon to fit in with the rest of our iconography
3226         https://bugs.webkit.org/show_bug.cgi?id=169696
3227         <rdar://problem/31073748>
3228
3229         Reviewed by Matt Baker.
3230
3231         * UserInterface/Images/ArrowUp.svg:
3232         * UserInterface/Images/gtk/ArrowUp.svg:
3233
3234 2017-03-15  Devin Rousso  <webkit@devinrousso.com>
3235
3236         Web Inspector: Add icons for SVG Image cluster path components
3237         https://bugs.webkit.org/show_bug.cgi?id=169687
3238
3239         Reviewed by Joseph Pecoraro.
3240
3241         * UserInterface/Images/Image.svg: Added.
3242         * UserInterface/Images/Source.svg: Added.
3243         * UserInterface/Images/gtk/Image.svg: Added.
3244         * UserInterface/Images/gtk/Source.svg: Added.
3245
3246         * UserInterface/Views/PathComponentIcons.css:
3247         (.image-icon .icon):
3248         (.source-icon .icon):
3249
3250         * UserInterface/Views/SVGImageResourceClusterContentView.js:
3251         (WebInspector.SVGImageResourceClusterContentView):
3252
3253 2017-03-15  Devin Rousso  <webkit@devinrousso.com>
3254
3255         Web Inspector: RTL: flip Memory timelines
3256         https://bugs.webkit.org/show_bug.cgi?id=169694
3257
3258         Reviewed by Brian Burg.
3259
3260         * UserInterface/Views/MemoryCategoryView.css:
3261         (body[dir=rtl] .memory-category-view > .graph):
3262
3263 2017-03-15  Joseph Pecoraro  <pecoraro@apple.com>
3264
3265         JSContext Inspector: NetworkAgent may be unavailable
3266         https://bugs.webkit.org/show_bug.cgi?id=169691
3267
3268         Reviewed by Brian Burg.
3269
3270         * UserInterface/Views/ResourceDetailsSidebarPanel.js:
3271         (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshRequestAndResponse):
3272         Check that NetworkAgent even exists. An augmented JSContext may have Resources
3273         without having a NetworkAgent.
3274
3275 2017-03-15  Nikita Vasilyev  <nvasilyev@apple.com>
3276
3277         REGRESSION (r213622): Web Inspector: DataGrid headers should NOT be centered
3278         https://bugs.webkit.org/show_bug.cgi?id=169645
3279         <rdar://problem/31051520>
3280
3281         Reviewed by Matt Baker.
3282
3283         * UserInterface/Views/DataGrid.css:
3284         (.data-grid th):
3285         (body[dir=ltr] .data-grid th):
3286         (body[dir=rtl] .data-grid th):
3287
3288 2017-03-15  Devin Rousso  <webkit@devinrousso.com>
3289
3290         Web Inspector: SVG image content view should toggle between image and source
3291         https://bugs.webkit.org/show_bug.cgi?id=16079
3292
3293         Reviewed by Joseph Pecoraro.
3294
3295         * Localizations/en.lproj/localizedStrings.js:
3296         * UserInterface/Main.html:
3297
3298         * UserInterface/Views/ResourceClusterContentView.js:
3299         (WebInspector.ResourceClusterContentView.prototype.get responseContentView):
3300         Show the SVG cluster content view if the MIME type matches an SVG file.
3301
3302         * UserInterface/Views/SVGImageResourceClusterContentView.js: Added.
3303         (WebInspector.SVGImageResourceClusterContentView):
3304         (WebInspector.SVGImageResourceClusterContentView.prototype.get resource):
3305         (WebInspector.SVGImageResourceClusterContentView.prototype.get selectionPathComponents):
3306         (WebInspector.SVGImageResourceClusterContentView.prototype.shown):
3307         (WebInspector.SVGImageResourceClusterContentView.prototype.closed):
3308         (WebInspector.SVGImageResourceClusterContentView.prototype.saveToCookie):
3309         (WebInspector.SVGImageResourceClusterContentView.prototype.restoreFromCookie):
3310         (WebInspector.SVGImageResourceClusterContentView.prototype._pathComponentForContentView):
3311         (WebInspector.SVGImageResourceClusterContentView.prototype._identifierForContentView):
3312         (WebInspector.SVGImageResourceClusterContentView.prototype._showContentViewForIdentifier):
3313         (WebInspector.SVGImageResourceClusterContentView.prototype._pathComponentSelected):
3314
3315 2017-03-15  Devin Rousso  <webkit@devinrousso.com>
3316
3317         Web Inspector: RTL: add support for Timeline ruler selections/movement
3318         https://bugs.webkit.org/show_bug.cgi?id=169588
3319
3320         Reviewed by Matt Baker.
3321
3322         * UserInterface/Views/TimelineOverview.css:
3323         (body[dir=ltr] .timeline-overview.frames > .timeline-ruler:not(.both-handles-clamped) > .selection-handle.right):
3324         (body[dir=rtl] .timeline-overview.frames > .timeline-ruler:not(.both-handles-clamped) > .selection-handle.left):
3325         (body[dir=ltr] .timeline-overview.frames > .timeline-ruler:not(.both-handles-clamped) > .shaded-area.right):
3326         (body[dir=rtl] .timeline-overview.frames > .timeline-ruler:not(.both-handles-clamped) > .shaded-area.left):
3327         (.timeline-overview.frames > .timeline-ruler:not(.both-handles-clamped) > .selection-handle.right): Deleted.
3328         (.timeline-overview.frames > .timeline-ruler:not(.both-handles-clamped) > .shaded-area.right): Deleted.
3329         Fixes alignment of selection handles when in Frames view.
3330
3331         * UserInterface/Views/TimelineOverview.js:
3332         (WebInspector.TimelineOverview.prototype._handleScrollEvent):
3333         Support horizontal scrolling in timelines by treating the current scroll value as negative
3334      &nb