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