Web Inspector: REGRESSION: Elements: the forced pseudo-class indicator isn't visible...
[WebKit-https.git] / Source / WebInspectorUI / ChangeLog
1 2019-06-26  Devin Rousso  <drousso@apple.com>
2
3         Web Inspector: REGRESSION: Elements: the forced pseudo-class indicator isn't visible when hovering
4         https://bugs.webkit.org/show_bug.cgi?id=199166
5
6         Reviewed by Matt Baker.
7
8         Make the pseudo-class indicator into its own element instead of being a `::before`.
9
10         * UserInterface/Views/DOMTreeElement.js:
11         (WI.DOMTreeElement):
12         (WI.DOMTreeElement.prototype.updateSelectionArea):
13         (WI.DOMTreeElement.prototype.updateTitle):
14         (WI.DOMTreeElement.prototype._updatePseudoClassIndicator): Added.
15         (WI.DOMTreeElement.prototype.get pseudoClassesEnabled): Deleted.
16         (WI.DOMTreeElement.prototype._nodePseudoClassesDidChange): Deleted.
17
18         * UserInterface/Views/DOMTreeOutline.css:
19         (.tree-outline.dom):
20         (.tree-outline.dom li .pseudo-class-indicator): Added.
21         (body[dir=ltr] .tree-outline.dom li .pseudo-class-indicator): Added.
22         (body[dir=rtl] .tree-outline.dom li .pseudo-class-indicator): Added.
23         (.tree-outline.dom:focus li.selected .pseudo-class-indicator): Added.
24         (.tree-outline.dom li.pseudo-class-enabled > .selection-area::before): Deleted.
25         (body[dir=ltr] .tree-outline.dom li.pseudo-class-enabled > .selection-area::before): Deleted.
26         (body[dir=rtl] .tree-outline.dom li.pseudo-class-enabled > .selection-area::before): Deleted.
27         (.tree-outline.dom:focus li.selected.pseudo-class-enabled > .selection-area::before): Deleted.
28
29         * UserInterface/Views/FormattedValue.css:
30         (.formatted-node > .tree-outline.dom):
31         Adjust the indent of any `DOMTreeOutline` so there's more room for the pseudo-class
32         indicator, such as in the Console.
33
34 2019-06-25  Matt Baker  <mattbaker@apple.com>
35
36         Web Inspector: Elements: show shadow DOM by default
37         https://bugs.webkit.org/show_bug.cgi?id=199128
38
39         Reviewed by Devin Rousso.
40
41         * UserInterface/Base/Setting.js:
42
43         * UserInterface/Test/Test.js:
44         (WI.loaded):
45         Overriding the default value isn't necessary since the default is now true.
46
47 2019-06-25  Nikita Vasilyev  <nvasilyev@apple.com>
48
49         REGRESSION(r246621): Web Inspector: Styles: property may get removed when editing after deleting value
50         https://bugs.webkit.org/show_bug.cgi?id=199143
51         <rdar://problem/52042815>
52
53         Reviewed by Matt Baker.
54
55         r246621 affected when WI.CSSStyleDeclaration.Event.PropertiesChanged event is fired, which caused
56         SpreadsheetCSSStyleDeclarationEditor to possibly enter a state when `focused` property is
57         incorrectly set to false.
58
59         * UserInterface/Views/SpreadsheetCSSStyleDeclarationEditor.js:
60         (WI.SpreadsheetCSSStyleDeclarationEditor.prototype.spreadsheetStylePropertyRemoved): Removed.
61         (WI.SpreadsheetCSSStyleDeclarationEditor.prototype.spreadsheetStylePropertyWillRemove): Added.
62         Renamed from "removed" to "willRemove" since we need to call it before the property DOM element
63         is detached from the document.
64
65         * UserInterface/Views/SpreadsheetStyleProperty.js:
66         (WI.SpreadsheetStyleProperty.prototype.remove):
67         Don't set focused to false when the removed property wasn't focused.
68         This code need to exist because removing focused element from the DOM doesn't trigger blur event.
69
70 2019-06-25  Joseph Pecoraro  <pecoraro@apple.com>
71
72         Web Inspector: Implement console.timeLog
73         https://bugs.webkit.org/show_bug.cgi?id=199184
74
75         Reviewed by Devin Rousso.
76
77         * UserInterface/Views/ConsoleMessageView.js:
78         (WI.ConsoleMessageView.prototype._appendMessageTextAndArguments):
79         Time messages (like timeLog) do not include their messageText
80         in their parameters list. So to behave more like normal logs
81         build a parameter list that includes it at the front.
82
83 2019-06-23  Matt Baker  <mattbaker@apple.com>
84
85         Web Inspector: REGRESSION (r246684): Dark Mode: dashboard buttons should have no background
86         https://bugs.webkit.org/show_bug.cgi?id=199136
87         <rdar://problem/52035798>
88
89         Reviewed by Joseph Pecoraro.
90
91         * UserInterface/Views/DefaultDashboardView.css:
92         (@media (prefers-color-scheme: dark)):
93         (.toolbar .dashboard .item.button,):
94
95 2019-06-23  Nikita Vasilyev  <nvasilyev@apple.com>
96
97         Web Inspector: Styles: show green highlight for newly added properties only when name and value are present
98         https://bugs.webkit.org/show_bug.cgi?id=199131
99
100         Reviewed by Matt Baker.
101
102         * UserInterface/Views/SpreadsheetStyleProperty.js:
103         (WI.SpreadsheetStyleProperty.prototype.updateStatus):
104
105 2019-06-22  Nikita Vasilyev  <nvasilyev@apple.com>
106
107         REGRESSION(r241980): Web Inspector: Styles: Pressing Tab/Enter on last property no longer focuses on selector on next rule
108         https://bugs.webkit.org/show_bug.cgi?id=199125
109         <rdar://problem/52011182>
110
111         Reviewed by Matt Baker.
112
113         Since SpreadsheetSelectorField's focus handler was removed in r241980, focusing on the selector element
114         doesn't start editing it.
115
116         * UserInterface/Views/SpreadsheetCSSStyleDeclarationSection.js:
117         (WI.SpreadsheetCSSStyleDeclarationSection.prototype.startEditingRuleSelector):
118
119 2019-06-22  Nikita Vasilyev  <nvasilyev@apple.com>
120
121         Web Inspector: Styles: unbalanced quotes and parenthesis aren't displayed as property closed after editing values
122         https://bugs.webkit.org/show_bug.cgi?id=199090
123         <rdar://problem/51965431>
124
125         Reviewed by Matt Baker.
126
127         * UserInterface/Views/SpreadsheetStyleProperty.js:
128         (WI.SpreadsheetStyleProperty.prototype.spreadsheetTextFieldDidBlur):
129         Unbalanced quotes and parenthesis are fixed inside of CSSProperty's rawValue setter.
130         Render the value from the model, not the view.
131
132 2019-06-21  Matt Baker  <mattbaker@apple.com>
133
134         Web Inspector: remove unused DataGrid style .force-focus
135         https://bugs.webkit.org/show_bug.cgi?id=199112
136         <rdar://problem/51993412>
137
138         Reviewed by Timothy Hatcher.
139
140         * UserInterface/Views/HeapAllocationsTimelineView.css:
141         (.timeline-view.heap-allocations > .data-grid:not(:focus) tr.selected.invalid):
142         (.timeline-view.heap-allocations > .data-grid:not(:focus, .force-focus) tr.selected.invalid): Deleted.
143
144         * UserInterface/Views/ResourceTreeElement.css:
145         (.item.resource.resource-type-websocket:not(.selected) .status .ready-state.open,):
146         (.item.resource.resource-type-websocket:not(.selected) .status .ready-state.connecting,):
147         Missed in https://bugs.webkit.org/show_bug.cgi?id=190480.
148
149 2019-06-21  Matt Baker  <mattbaker@apple.com>
150
151         Web Inspector: remove .legacy-mac/.latest-mac CSS classes, standardize on .latest-mac UI
152         https://bugs.webkit.org/show_bug.cgi?id=199109
153         <rdar://problem/51991129>
154
155         Reviewed by Timothy Hatcher.
156
157         Drop legacy macOS version support from Web Inspector UI.
158
159         * UserInterface/Base/Main.js:
160
161         * UserInterface/Views/DefaultDashboardView.css:
162         (@media (prefers-color-scheme: dark)):
163         (body.latest-mac .toolbar .dashboard .item.button): Deleted.
164
165         * UserInterface/Views/Toolbar.css:
166         (.toolbar):
167         (.toolbar .item.button,):
168         (.toolbar .search-bar > input[type="search"]):
169         (.toolbar .search-bar > input[type="search"]:focus):
170         (@media (-webkit-min-device-pixel-ratio: 2)):
171         (.toolbar .item.button:active):
172         (body.window-inactive .toolbar .item.button,):
173         (@media (prefers-color-scheme: dark)):
174         (.toolbar .search-bar > input[type="search"]::placeholder):
175         (body.window-inactive .toolbar .search-bar > input[type="search"]::placeholder):
176         (body.window-inactive .toolbar .search-bar > input[type="search"]::-webkit-search-results-button):
177         (.toolbar .dashboard-container):
178         (body .toolbar): Deleted.
179         (body.legacy-mac .toolbar .item.button,): Deleted.
180         (body.legacy-mac .toolbar .search-bar > input[type="search"]): Deleted.
181         (body.legacy-mac .toolbar .search-bar > input[type="search"]:focus): Deleted.
182         (body.legacy-mac .toolbar .item.button:active): Deleted.
183         (body.window-inactive.legacy-mac .toolbar .item.button,): Deleted.
184         (body.latest-mac .toolbar .item.button,): Deleted.
185         (body.latest-mac .toolbar .search-bar > input[type="search"]): Deleted.
186         (body.latest-mac .toolbar .search-bar > input[type="search"]:focus): Deleted.
187         (body.latest-mac .toolbar .item.button:active): Deleted.
188         (body.latest-mac.window-inactive .toolbar .item.button,): Deleted.
189         (body.latest-mac .toolbar .search-bar > input[type="search"]::placeholder): Deleted.
190         (body.latest-mac.window-inactive .toolbar .search-bar > input[type="search"]::placeholder): Deleted.
191         (body.latest-mac.window-inactive .toolbar .search-bar > input[type="search"]::-webkit-search-results-button): Deleted.
192         (body.latest-mac .toolbar .dashboard-container): Deleted.
193
194 2019-06-20  Matt Baker  <mattbaker@apple.com>
195
196         Web Inspector: rename shadowRootPushed parameter to match protocol
197         https://bugs.webkit.org/show_bug.cgi?id=199098
198
199         Reviewed by Devin Rousso.
200
201         * UserInterface/Protocol/DOMObserver.js:
202         (WI.DOMObserver.prototype.shadowRootPushed):
203
204 2019-06-20  Devin Rousso  <drousso@apple.com>
205
206         Web Inspector: Error "null is not an object (evaluating 'syntaxTree.containersOfPosition')" when setting a breakpoint
207         https://bugs.webkit.org/show_bug.cgi?id=199082
208
209         Reviewed by Matt Baker.
210
211         * UserInterface/Views/SourceCodeTextEditor.js:
212         (WI.SourceCodeTextEditor.prototype.textEditorExecutionHighlightRange):
213         The script syntax tree may be fetched even if the resource hasn't finished parsing (or had
214         a syntax error), so it's possible for it to be `null`.
215
216 2019-06-20  Devin Rousso  <drousso@apple.com>
217
218         Web Inspector: Dark Mode: inactive tab bar item should get darker on hover
219         https://bugs.webkit.org/show_bug.cgi?id=199022
220
221         Reviewed by Darin Adler.
222
223         * UserInterface/Views/TabBar.css:
224         (.tab-bar:not(.animating) > .item:not(.selected, .disabled):hover):
225         (@media not (prefers-color-scheme: dark) .tab-bar:not(.animating) > .item:not(.selected, .disabled):hover > .icon):
226         (@media (prefers-color-scheme: dark) .tab-bar):
227         (@media (prefers-color-scheme: dark) .tab-bar > .item):
228         (@media (prefers-color-scheme: dark) .tab-bar > .item:not(.disabled).selected):
229         (@media (prefers-color-scheme: dark) .tab-bar:not(.animating) > .item:not(.selected):hover):
230         (@media (prefers-color-scheme: dark) body.window-inactive .tab-bar):
231         (@media (prefers-color-scheme: dark) body.window-inactive .tab-bar > .item):
232         (@media (prefers-color-scheme: dark) body.window-inactive .tab-bar > .item.selected):
233
234         * UserInterface/Views/Toolbar.css:
235         (@media (prefers-color-scheme: dark) body .toolbar):
236
237 2019-06-20  Devin Rousso  <drousso@apple.com>
238
239         Web Inspector: Debugger: setting a breakpoint on a non-JavaScript line should immediately show as unresolved
240         https://bugs.webkit.org/show_bug.cgi?id=199033
241
242         Reviewed by Matt Baker.
243
244         Remove the `shouldSpeculativelyResolve` parameter, as it was resolving breakpoints even in
245         the case that there were no resolved locations for the given breakpoint.
246
247         In the case that there are resolved locations, the breakpoint would've already been resolved
248         by the time that `shouldSpeculativelyResolve` would've taken effect, so it's unnecessary.
249
250         This parameter was only used when setting a breakpoint from a `SourceCodeTextEditor` gutter.
251
252         * UserInterface/Controllers/DebuggerManager.js:
253         (WI.DebuggerManager.prototype.addBreakpoint):
254         (WI.DebuggerManager.prototype._setBreakpoint):
255         (WI.DebuggerManager.prototype._setBreakpoint.didSetBreakpoint):
256
257         * UserInterface/Views/SourceCodeTextEditor.js:
258         (WI.SourceCodeTextEditor.prototype.textEditorBreakpointAdded):
259
260 2019-06-20  Devin Rousso  <drousso@apple.com>
261
262         Web Inspector: Edit -> Tag doesn't do anything for html, head, and body elements
263         https://bugs.webkit.org/show_bug.cgi?id=199052
264         <rdar://problem/51923906>
265
266         Reviewed by Matt Baker.
267
268         * UserInterface/Views/DOMTreeElement.js:
269         (WI.DOMTreeElement.prototype.populateDOMNodeContextMenu):
270          - Don't show an "Edit > Tag" for <html>, <head>, and <body> nodes
271          - Disable any "Edit" submenu item if it's target is already being edited
272          - Prevent "Add" submenu items from being shown for text nodes
273
274 2019-06-19  Devin Rousso  <drousso@apple.com>
275
276         Web Inspector: REGRESSION: Debugger: current call frame indicator isn't vertically centered
277         https://bugs.webkit.org/show_bug.cgi?id=199015
278
279         Reviewed by Matt Baker.
280
281         * UserInterface/Views/CallFrameTreeElement.css:
282         (.tree-outline .item.call-frame .status):
283
284 2019-06-19  Nikita Vasilyev  <nvasilyev@apple.com>
285
286         REGRESSION(r240946): Web Inspector: Styles: Pasting multiple properties has issues
287         https://bugs.webkit.org/show_bug.cgi?id=198505
288         <rdar://problem/51374780>
289
290         Reviewed by Matt Baker.
291
292         Since r240946, setting WI.CSSStyleDeclaration.prototype.text updates the text immediately.
293         When WI.CSSStyleDeclaration.prototype.update gets called after setting text, it exits early
294         without firing WI.CSSStyleDeclaration.Event.PropertiesChanged.
295
296         * UserInterface/Models/CSSStyleDeclaration.js:
297         (WI.CSSStyleDeclaration):
298         (WI.CSSStyleDeclaration.prototype.set text):
299
300 2019-06-19  Matt Baker  <mattbaker@apple.com>
301
302         Web Inspector: Remove unused _pendingFilter from NetworkTableContentView
303         https://bugs.webkit.org/show_bug.cgi?id=199026
304
305         Reviewed by Devin Rousso.
306
307         This flag is no longer set as of https://trac.webkit.org/changeset/225895.
308
309         * UserInterface/Views/NetworkTableContentView.js:
310         (WI.NetworkTableContentView):
311         (WI.NetworkTableContentView.prototype._processPendingEntries):
312
313 2019-06-19  Devin Rousso  <drousso@apple.com>
314
315         Web Inspector: Uncaught Exception: TypeError: undefined is not an object (evaluating 'sourceCodePosition.lineNumber')
316         https://bugs.webkit.org/show_bug.cgi?id=199019
317
318         Reviewed by Matt Baker.
319
320         * UserInterface/Base/Main.js:
321         (WI.linkifyLocation):
322
323 2019-06-19  Zhifei Fang  <zhifei_fang@apple.com>
324
325         Correct the error object link color in dark mode.
326         https://bugs.webkit.org/show_bug.cgi?id=198033
327
328         Reviewed by Devin Rousso.
329
330         * UserInterface/Views/ErrorObjectView.css:
331         (@media (prefers-dark-interface)):
332         (.error-object-link-container):
333
334 2019-06-18  Devin Rousso  <drousso@apple.com>
335
336         Web Inspector: Network: detail view shouldn't stay open when the related entry is removed
337         https://bugs.webkit.org/show_bug.cgi?id=198951
338
339         Reviewed by Joseph Pecoraro.
340
341         * UserInterface/Views/NetworkTableContentView.js:
342         (WI.NetworkTableContentView.prototype._mainResourceDidChange):
343         Hide the detail view if the main resource changes and we aren't preserving the log.
344
345         * UserInterface/Views/Table.js:
346         (WI.Table.prototype.reloadVisibleColumnCells):
347         Only attempt to populate cells for rows that the `_dataSource` actually has. Without this,
348         the `_delegate` may be asked to populate a cell for a row it doesn't have, which would error.
349
350 2019-06-18  Devin Rousso  <drousso@apple.com>
351
352         Web Inspector: parseQueryParameters fails to successfully parse query parameter values that contain "="
353         https://bugs.webkit.org/show_bug.cgi?id=198971
354         <rdar://problem/51852782>
355
356         Reviewed by Joseph Pecoraro.
357
358         * UserInterface/Base/URLUtilities.js:
359         (parseQueryString):
360
361 2019-06-18  Devin Rousso  <drousso@apple.com>
362
363         Web Inspector: REGRESSION: Heap: subsequent snapshots taken manually don't appear in the list
364         https://bugs.webkit.org/show_bug.cgi?id=198941
365
366         Reviewed by Joseph Pecoraro.
367
368         Since heap snapshot records can be added at any time, including when not actively recording,
369         when the "Entire Recording" range is selected, make sure to set the `filterEndTime` to be an
370         effectively infinite number so that records added later aren't filtered out.
371
372         This isn't done for other timeline views as they may have graphs that don't expect to render
373         from time 0 till infinity, not to mention being unable to add records when not recording.
374
375         * UserInterface/Views/TimelineRecordingContentView.js:
376         (WI.TimelineRecordingContentView.prototype._updateTimelineViewTimes):
377
378 2019-06-18  Devin Rousso  <drousso@apple.com>
379
380         Web Inspector: REGRESSION: Canvas: cannot select saved recordings
381         https://bugs.webkit.org/show_bug.cgi?id=198953
382
383         Reviewed by Joseph Pecoraro.
384
385         * UserInterface/Views/TreeElement.js:
386         (WI.TreeElement.treeElementToggled):
387         Don't early return if the `TreeElement` isn't `selectable` as the owner `TreeOutline` may
388         want to dispatch an event that it was clicked.
389
390 2019-06-18  Devin Rousso  <drousso@apple.com>
391
392         Web Inspector: Canvas: the initial state should be selected when processing a new/imported recording if the navigation sidebar is collapsed
393         https://bugs.webkit.org/show_bug.cgi?id=198952
394
395         Reviewed by Joseph Pecoraro.
396
397         Prevent any content from being generated until `initialLayout` is called, as otherwise it's
398         possible for the `CanvasNavigationSidebar` to update the current action index before the
399         preview element has been created, which would throw an error.
400
401         * UserInterface/Views/RecordingContentView.js:
402         (WI.RecordingContentView.prototype.updateActionIndex):
403         (WI.RecordingContentView.prototype.initialLayout):
404         (WI.RecordingContentView.prototype._updateSliderValue):
405         (WI.RecordingContentView.prototype._handleRecordingProcessedAction):
406         Drive-by: update the slider max each time the selected action index is changed.
407
408 2019-06-18  Devin Rousso  <drousso@apple.com>
409
410         Web Inspector: Canvas: imported recordings aren't selectable from the overview if there are no canvases in the page
411         https://bugs.webkit.org/show_bug.cgi?id=198955
412
413         Reviewed by Joseph Pecoraro.
414
415         * UserInterface/Views/CanvasOverviewContentView.js:
416         (WI.CanvasOverviewContentView.prototype._addSavedRecording):
417         Hide the content placeholder when a recording is imported. It won't be shown again because
418         the `subviews` list will never be empty, as there's no way to remove an imported recording.
419
420         * UserInterface/Views/CollectionContentView.js:
421         (WI.CollectionContentView.prototype.addContentViewForItem):
422         (WI.CollectionContentView.prototype.removeContentViewForItem):
423         (WI.CollectionContentView.prototype.showContentPlaceholder): Added.
424         (WI.CollectionContentView.prototype.hideContentPlaceholder): Added.
425         (WI.CollectionContentView.prototype.initialLayout):
426         (WI.CollectionContentView.prototype._selectItem):
427         (WI.CollectionContentView.prototype._showContentPlaceholder): Deleted.
428         (WI.CollectionContentView.prototype._hideContentPlaceholder): Deleted.
429         Make `showContentPlaceholder`/`hideContentPlaceholder` protected for any subclasses to call.
430
431 2019-06-17  Matt Baker  <mattbaker@apple.com>
432
433         Web Inspector: Elements: remove ellipses from "Break on" context menu item title
434         https://bugs.webkit.org/show_bug.cgi?id=198944
435
436         Reviewed by Devin Rousso.
437
438         Update context menu title to comply with Apple HI guidelines.
439
440         * Localizations/en.lproj/localizedStrings.js:
441         * UserInterface/Views/ContextMenuUtilities.js:
442
443 2019-06-17  Devin Rousso  <drousso@apple.com>
444
445         Web Inspector: Debugger: adding a DOM/Event/URL breakpoint should enable breakpoints
446         https://bugs.webkit.org/show_bug.cgi?id=198932
447
448         Reviewed by Matt Baker.
449
450         Match the behavior of JavaScript breakpoints, which enable breakpoints globally when a new
451         breakpoint is set or an existing breakpoint is enabled.
452
453         This avoids the situation where setting a DOM breakpoint or a specific event listener
454         breakpoint appears to not "work" because breakpoints are globally disabled. There is no
455         "breakpoints disabled" banner in the Elements tab, so the user could be completely unaware
456         of this, and therefore be confused as to why these breakpoints aren't being hit.
457
458         * UserInterface/Controllers/DOMManager.js:
459         (WI.DOMManager.prototype._updateEventBreakpoint):
460
461         * UserInterface/Controllers/DOMDebuggerManager.js:
462         (WI.DOMDebuggerManager.prototype._updateDOMBreakpoint):
463         (WI.DOMDebuggerManager.prototype._updateEventBreakpoint):
464         (WI.DOMDebuggerManager.prototype._updateURLBreakpoint):
465
466 2019-06-17  Devin Rousso  <drousso@apple.com>
467
468         Web Inspector: Sources: remove extra space above Breakpoints section when breakpoints are disabled
469         https://bugs.webkit.org/show_bug.cgi?id=198933
470
471         Reviewed by Matt Baker.
472
473         * UserInterface/Views/DebuggerSidebarPanel.css:
474         (.sidebar > .panel.navigation.debugger .warning-banner):
475         * UserInterface/Views/SourcesNavigationSidebarPanel.css:
476         (.sidebar > .panel.navigation.sources > .content > .warning-banner):
477
478 2019-06-17  Devin Rousso  <drousso@apple.com>
479
480         Web Inspector: Settings: split the General panel into sub panels so it's less crowded
481         https://bugs.webkit.org/show_bug.cgi?id=198803
482
483         Reviewed by Timothy Hatcher.
484
485         * UserInterface/Views/SettingsTabContentView.js:
486         (WI.SettingsTabContentView.prototype.initialLayout):
487         (WI.SettingsTabContentView.prototype._createGeneralSettingsView):
488         Many of the settings in General only affect a specific part of Web Inspector, and therefore
489         aren't really "general".
490
491         (WI.SettingsTabContentView.prototype._createElementsSettingsView): Added.
492          - Element Selection
493          - CSS Changes
494
495         (WI.SettingsTabContentView.prototype._createSourcesSettingsView): Added.
496          - Debugger
497          - Source Maps
498
499         (WI.SettingsTabContentView.prototype._createConsoleSettingsView): Added.
500          - Traces (renamed from "Console")
501          - WebRTC Logging
502          - Media Logging
503          - MSE Logging
504
505         * Localizations/en.lproj/localizedStrings.js:
506
507 2019-06-17  Devin Rousso  <drousso@apple.com>
508
509         Web Inspector: Sources: the Inspector Style Sheet is missing when grouped by path
510         https://bugs.webkit.org/show_bug.cgi?id=198860
511
512         Reviewed by Timothy Hatcher.
513
514         * UserInterface/Controllers/CSSManager.js:
515         (WI.CSSManager.prototype.get styleSheets):
516         (WI.CSSManager.prototype.inspectorStyleSheetsForFrame):
517         (WI.CSSManager.prototype.preferredInspectorStyleSheetForFrame):
518         (WI.CSSManager.prototype._inspectorStyleSheetsForFrame): Deleted.
519         Expose a way to fetch all inspector stylesheets for a given frame.
520         Make sure to associate inspector stylesheets with their frame.
521
522         * UserInterface/Views/SourcesNavigationSidebarPanel.js:
523         (WI.SourcesNavigationSidebarPanel.prototype._compareTreeElements):
524         (WI.SourcesNavigationSidebarPanel.prototype._addResourcesRecursivelyForFrame):
525         (WI.SourcesNavigationSidebarPanel.prototype._handleCSSStyleSheetAdded):
526         Add paths for inspector stylesheet creation/fetching when grouping by path.
527         Sort inspector stylesheets as the first item of an origin/frame when grouping by path.
528
529 2019-06-17  Jamal Nasser  <jamaln@mail.com>
530
531         Web Inspector: Go To Line dialog is white when in Dark Mode
532         https://bugs.webkit.org/show_bug.cgi?id=198596
533
534         Reviewed by Timothy Hatcher.
535
536         * UserInterface/Views/GoToLineDialog.css:
537         (@media (prefers-color-scheme: dark)):
538         (.go-to-line-dialog):
539         (.go-to-line-dialog > div > input):
540         (.go-to-line-dialog > div > input::placeholder):
541         (.go-to-line-dialog > div::before):
542
543 2019-06-17  Devin Rousso  <drousso@apple.com>
544
545         Web Inspector: Sources: searching doesn't use the case sensitive or regex global settings
546         https://bugs.webkit.org/show_bug.cgi?id=198897
547
548         Reviewed by Joseph Pecoraro.
549
550         * UserInterface/Views/SourceCodeTextEditor.js:
551         (WI.SourceCodeTextEditor.prototype.customPerformSearch):
552
553 2019-06-13  Devin Rousso  <drousso@apple.com>
554
555         Web Inspector: REGRESSION(r246178): extra spaces added in at-rules when formatting CSS
556         https://bugs.webkit.org/show_bug.cgi?id=198806
557
558         Reviewed by Joseph Pecoraro.
559
560         * UserInterface/Workers/Formatter/CSSFormatter.js:
561         (CSSFormatter.prototype._format):
562         Add more specific tests for at-rules, and add/remove whitespace depending on the type of
563         at-rule (e.g. `@supports` vs `@media`), as well as where the scanner is in the parameters of
564         the at at-rule (e.g. `@supports |` vs `@media (|`).
565
566         * UserInterface/Workers/Formatter/FormatterContentBuilder.js:
567         (FormatterContentBuilder):
568         (FormatterContentBuilder.prototype.get lastToken): Added.
569         (FormatterContentBuilder.prototype.get currentLine):
570         (FormatterContentBuilder.prototype.removeLastNewline):
571         (FormatterContentBuilder.prototype.removeLastWhitespace):
572         (FormatterContentBuilder.prototype._popFormattedContent):
573         (FormatterContentBuilder.prototype._append):
574         Update `lastTokenWasNewline` and `lastTokenWasWhitespace` when removing newlines/whitespace.
575         Memoize the `currentLine` so it's less expensive to re-fetch.
576
577 2019-06-13  Devin Rousso  <drousso@apple.com>
578
579         Web Inspector: Settings: indent type and size settings aren't respected everywhere
580         https://bugs.webkit.org/show_bug.cgi?id=198804
581
582         Reviewed by Timothy Hatcher.
583
584         * UserInterface/Views/CodeMirrorEditor.js:
585         (WI.CodeMirrorEditor.create):
586         When creating a `CodeMirror` instance, default to using the global `Setting`s as the options.
587         If an override is specified in `options`, it will take precedence and the `CodeMirror` will
588         ignore any changes to the `Setting` as well.
589
590         * UserInterface/Views/TextEditor.js:
591         (WI.TextEditor):
592         (WI.TextEditor.prototype.close): Deleted.
593
594         * UserInterface/Views/AuditTestCaseContentView.js:
595         (WI.AuditTestCaseContentView.prototype.layout):
596         * UserInterface/Views/BreakpointActionView.js:
597         (WI.BreakpointActionView.prototype._updateBody):
598         * UserInterface/Views/ConsolePrompt.js:
599         (WI.ConsolePrompt):
600         * UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
601         (WI.ScopeChainDetailsSidebarPanel.prototype._addWatchExpressionButtonClicked):
602         Remove overrides that aren't necessary for `CodeMirror` to fit in the container element:
603          - `showWhitespaceCharacters`
604          - `indentWithTabs`
605          - `indentUnit`
606
607         * UserInterface/Views/SourceCodeTextEditor.js:
608         (WI.SourceCodeTextEditor.prototype.close):
609         * UserInterface/Views/ShaderProgramContentView.js:
610         (WI.ShaderProgramContentView.prototype.closed): Deleted.
611         * UserInterface/Views/TextContentView.js:
612         (WI.TextContentView.prototype.closed): Deleted.
613         * UserInterface/Views/TextResourceContentView.js:
614         (WI.TextResourceContentView.prototype.closed):
615         Delete the logic for removing event listeners from global `Setting`, as it didn't work
616         anyways, since none of the event listeners were added using a `thisObject`.
617
618 2019-06-13  Devin Rousso  <drousso@apple.com>
619
620         Web Inspector: Settings: sticky header disappears when over scrolling
621         https://bugs.webkit.org/show_bug.cgi?id=198833
622
623         Reviewed by Joseph Pecoraro.
624
625         * UserInterface/Views/SettingsTabContentView.css:
626         (.content-view.settings .navigation-bar):
627         (.content-view.settings > .settings-view): Added.
628         (.content-view.settings): Deleted.
629
630 2019-06-10  Devin Rousso  <drousso@apple.com>
631
632         Web Inspector: Timelines: imported recordings do not have JavaScript call trees
633         https://bugs.webkit.org/show_bug.cgi?id=197490
634         <rdar://problem/50589158>
635
636         Reviewed by Joseph Pecoraro.
637
638         * UserInterface/Models/TimelineRecording.js:
639         (WI.TimelineRecording.prototype.initializeCallingContextTrees):
640         Make sure to actually save the provided stack traces and samples in the export data.
641
642         * UserInterface/Models/ScriptTimelineRecord.js:
643         (WI.ScriptTimelineRecord.fromJSON):
644         (WI.ScriptTimelineRecord.prototype.toJSON):
645         Drive-by: include `extraDetails`, which contains useful information like "default prevented".
646
647 2019-06-10  Nikita Vasilyev  <nvasilyev@apple.com>
648
649         REGRESSION(r244268): Web Inspector: Styles: navigating from Computed to Styles doesn't work
650         https://bugs.webkit.org/show_bug.cgi?id=198508
651         <rdar://problem/51375503>
652
653         Reviewed by Matt Baker.
654
655         It didn't work because the detached sidebar panel tried to access its parent view (this.parentSidebar).
656
657         * UserInterface/Views/ComputedStyleDetailsSidebarPanel.js:
658         (WI.ComputedStyleDetailsSidebarPanel.prototype.computedStyleDetailsPanelShowProperty): Added.
659         (WI.ComputedStyleDetailsSidebarPanel):
660         * UserInterface/Views/GeneralStyleDetailsSidebarPanel.js:
661         (WI.GeneralStyleDetailsSidebarPanel.prototype.computedStyleDetailsPanelShowProperty): Deleted.
662         Move computedStyleDetailsPanelShowProperty to ComputedStyleDetailsSidebarPanel since it's the only
663         panel where it's needed.
664
665 2019-06-10  Alexey Shvayka  <shvaikalesh@gmail.com>
666
667         Web Inspector: "Copy Path to Property" doesn't work with multiline keys
668         https://bugs.webkit.org/show_bug.cgi?id=198691
669
670         Reviewed by Matt Baker.
671
672         Correctly escape line terminators to prevent doubleQuotedString from returning malformed strings.
673
674         * UserInterface/Base/Utilities.js: Use JSON.stringify.
675
676 2019-06-10  Devin Rousso  <drousso@apple.com>
677
678         Web Inspector: REGRESSION(r246025): prototypes in object previews are visible even when setting `showOnlyJSON`
679         https://bugs.webkit.org/show_bug.cgi?id=198721
680
681         Reviewed by Joseph Pecoraro.
682
683         * UserInterface/Views/ObjectTreeView.css:
684         (.object-tree.properties-only.json-only .object-tree-property.prototype-property): Added.
685         (.object-tree.properties-only.json-only .object-tree-property .prototype-property): Deleted.
686
687 2019-06-07  Nikita Vasilyev  <nvasilyev@apple.com>
688
689         Web Inspector: longhand CSS properties overridden by shorthands miss strikethrough
690         https://bugs.webkit.org/show_bug.cgi?id=198629
691         <rdar://problem/51504160>
692
693         Reviewed by Devin Rousso.
694
695         Longhand CSS properties (e.g. "font-size") overriden by shorthands (e.g. "font") now have strikethroughs.
696
697         * UserInterface/Models/CSSProperty.js:
698         (WI.CSSProperty.prototype.set overridingProperty):
699         (WI.CSSProperty):
700
701         * UserInterface/Models/DOMNodeStyles.js:
702         (WI.DOMNodeStyles.prototype._updateStyleCascade):
703         Call _associateRelatedProperties before _markOverriddenProperties because
704         _associateRelatedProperties sets relatedShorthandProperty property, which
705         is now used by _markOverriddenProperties.
706
707         (WI.DOMNodeStyles.prototype._markOverriddenProperties.isOverriddenBy):
708         (WI.DOMNodeStyles.prototype._markOverriddenProperties):
709
710 2019-06-06  Devin Rousso  <drousso@apple.com>
711
712         Web Inspector: Timelines: remove always disabled details sidebar navigation item
713         https://bugs.webkit.org/show_bug.cgi?id=198393
714
715         Reviewed by Timothy Hatcher.
716
717         * UserInterface/Views/TimelineTabContentView.js:
718         (WI.TimelineTabContentView):
719
720 2019-06-06  Devin Rousso  <drousso@apple.com>
721
722         Web Inspector: REGRESSION(r245833): Timelines: CPU: JavaScript label is missing and JavaScript section of pie chart is black
723         https://bugs.webkit.org/show_bug.cgi?id=198627
724
725         Reviewed by Joseph Pecoraro.
726
727         * UserInterface/Views/CPUTimelineView.js:
728         (WI.CPUTimelineView.displayNameForSampleType):
729         * UserInterface/Views/CPUTimelineView.css:
730         (.timeline-view.cpu > .content > .overview .legend > .row > .swatch.sample-type-javascript):
731         (.timeline-view.cpu .circle-chart > svg > path.segment.sample-type-javascript): Added.
732         (.timeline-view.cpu .circle-chart > svg > path.segment.sample-type-script): Deleted.
733         * UserInterface/Views/CPUUsageCombinedView.css:
734         (.cpu-usage-combined-view > .graph > .range-chart .sample-type-javascript): Added.
735         (.cpu-usage-combined-view > .graph > .range-chart .sample-type-script): Deleted.
736         Use the enum string added in r245833 (`sample-type-javascript`) instead of what was there
737         before (`sample-type-script`).
738
739         * UserInterface/Views/Variables.css:
740         (:root):
741         Rename `--cpu-script-*` to `--cpu-javascript-*`.
742
743 2019-06-06  Devin Rousso  <drousso@apple.com>
744
745         Web Inspector: Formatter: pretty-print CSS using a Worker
746         https://bugs.webkit.org/show_bug.cgi?id=197829
747         <rdar://problem/36891532>
748
749         Reviewed by Timothy Hatcher.
750
751         * UserInterface/Proxies/FormatterWorkerProxy.js:
752         (WI.FormatterWorkerProxy.prototype.formatCSS): Added.
753         * UserInterface/Workers/Formatter/FormatterWorker.js:
754         (FormatterWorker.prototype.formatCSS): Added.
755         * UserInterface/Workers/Formatter/CSSFormatter.js: Added.
756         (CSSFormatter):
757         (CSSFormatter.prototype.get success):
758         (CSSFormatter.prototype.get formattedText):
759         (CSSFormatter.prototype.get sourceMapData):
760         (CSSFormatter.prototype._format):
761
762         * UserInterface/Workers/Formatter/FormatterContentBuilder.js:
763         (FormatterContentBuilder.prototype.get currentLine): Added.
764
765         * UserInterface/Views/TextEditor.js:
766         (WI.TextEditor.prototype._canUseFormatterWorker):
767         (WI.TextEditor.prototype._startWorkerPrettyPrint):
768
769         * .eslintrc:
770
771 2019-06-06  Devin Rousso  <drousso@apple.com>
772
773         Web Inspector: Elements: print/rulers/compositing/paint navigation items shouldn't be visible if the inspected target doesn't have a PageAgent
774         https://bugs.webkit.org/show_bug.cgi?id=198410
775
776         Reviewed by Timothy Hatcher.
777
778         * UserInterface/Views/DOMTreeContentView.js:
779         (WI.DOMTreeContentView):
780         (WI.DOMTreeContentView.prototype.get navigationItems):
781         (WI.DOMTreeContentView.prototype._showRulersChanged):
782
783 == Rolled over to ChangeLog-2019-06-05 ==