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