1 2015-04-22 Timothy Hatcher <timothy@apple.com>
3 Web Inspector: Remove time and weight from the dashboard
4 https://bugs.webkit.org/show_bug.cgi?id=144063
6 These two items were the odd ones out since they are only available
7 when recording a timeline. We will need the toolbar space soon, so make
8 this lets us make the dashboard skinnier.
10 This also removes the exception catching in DashboardContainerView. It doesn't really
11 help us and it makes debugging an exception harder.
13 Reviewed by Joseph Pecoraro.
15 * UserInterface/Views/DashboardContainerView.css:
16 (.toolbar .dashboard-container):
17 * UserInterface/Views/DashboardContainerView.js:
18 (WebInspector.DashboardContainerView.prototype._dashboardViewForRepresentedObject):
19 * UserInterface/Views/DefaultDashboardView.css:
20 (body.web .toolbar.collapsed .dashboard.default > .item.resourcesCount):
21 (body.javascript .toolbar .dashboard.default > .item.resourcesCount):
22 * UserInterface/Views/DefaultDashboardView.js:
23 (WebInspector.DefaultDashboardView):
24 (WebInspector.DefaultDashboardView.prototype._updateDisplay):
26 2015-04-22 Timothy Hatcher <timothy@apple.com>
28 Web Inspector: Remove sidebar panel shortcut and image
29 https://bugs.webkit.org/show_bug.cgi?id=144061
31 Sidebar panels no longer need a keyboard shortcut or a toolbar image.
33 Reviewed by Joseph Pecoraro.
35 * UserInterface/Views/ApplicationCacheDetailsSidebarPanel.js:
36 (WebInspector.ApplicationCacheDetailsSidebarPanel):
37 * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
38 (WebInspector.CSSStyleDetailsSidebarPanel):
39 * UserInterface/Views/DOMDetailsSidebarPanel.js:
40 (WebInspector.DOMDetailsSidebarPanel):
41 * UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
42 (WebInspector.DOMNodeDetailsSidebarPanel):
43 * UserInterface/Views/DebuggerSidebarPanel.js:
44 * UserInterface/Views/DetailsSidebarPanel.js:
45 (WebInspector.DetailsSidebarPanel):
46 * UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
47 (WebInspector.LayerTreeDetailsSidebarPanel):
48 * UserInterface/Views/NavigationSidebarPanel.js:
49 (WebInspector.NavigationSidebarPanel):
50 (WebInspector.NavigationSidebarPanel.prototype.restoreStateFromCookie):
51 (WebInspector.NavigationSidebarPanel.prototype.showEmptyContentPlaceholder):
52 (WebInspector.NavigationSidebarPanel.prototype.applyFiltersToTreeElement):
53 (WebInspector.NavigationSidebarPanel.prototype.show):
54 (WebInspector.NavigationSidebarPanel.prototype._updateContentOverflowShadowVisibility):
55 * UserInterface/Views/ProbeDetailsSidebarPanel.js:
56 (WebInspector.ProbeDetailsSidebarPanel):
57 * UserInterface/Views/RenderingFrameDetailsSidebarPanel.js:
58 * UserInterface/Views/ResourceDetailsSidebarPanel.js:
59 (WebInspector.ResourceDetailsSidebarPanel):
60 * UserInterface/Views/ResourceSidebarPanel.js:
61 (WebInspector.ResourceSidebarPanel):
62 * UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
63 (WebInspector.ScopeChainDetailsSidebarPanel):
64 * UserInterface/Views/SidebarPanel.js:
65 (WebInspector.SidebarPanel):
66 (WebInspector.SidebarPanel.prototype.added):
67 (WebInspector.SidebarPanel.prototype.removed):
68 (WebInspector.SidebarPanel.prototype.visibilityDidChange):
69 * UserInterface/Views/TimelineSidebarPanel.js:
70 (WebInspector.TimelineSidebarPanel):
71 (WebInspector.TimelineSidebarPanel.prototype.showTimelineViewForTimeline):
73 2015-04-22 Timothy Hatcher <timothy@apple.com>
75 Web Inspector: Remove allowedNavigationSidebarPanels, it isn't needed
76 https://bugs.webkit.org/show_bug.cgi?id=144056
78 Reviewed by Joseph Pecoraro.
80 * UserInterface/Views/ApplicationCacheFrameContentView.js:
81 * UserInterface/Views/ContentView.js:
82 * UserInterface/Views/CookieStorageContentView.js:
83 * UserInterface/Views/DOMStorageContentView.js:
84 * UserInterface/Views/DOMTreeContentView.js:
85 * UserInterface/Views/DatabaseContentView.js:
86 * UserInterface/Views/DatabaseTableContentView.js:
87 * UserInterface/Views/FontResourceContentView.js:
88 * UserInterface/Views/FrameDOMTreeContentView.js:
89 * UserInterface/Views/LogContentView.js:
90 * UserInterface/Views/ResourceClusterContentView.js:
91 * UserInterface/Views/TimelineRecordingContentView.js:
93 2015-04-22 Timothy Hatcher <timothy@apple.com>
95 Web Inspector: Support passing extra arguments to ContentViews during construction
96 https://bugs.webkit.org/show_bug.cgi?id=144055
98 This allows us to pass the TimelineSidebarPanel to Timeline views since in the future
99 there could be multiple timeline sidebars, one per tab. So the global instance will
102 This also removes the exception catching in ContentViewContainer. It doesn't really
103 help us and it makes debugging an exception harder.
105 Reviewed by Joseph Pecoraro.
107 * UserInterface/Views/ContentBrowser.js:
108 (WebInspector.ContentBrowser.prototype.showContentViewForRepresentedObject):
109 (WebInspector.ContentBrowser.prototype.contentViewForRepresentedObject):
110 * UserInterface/Views/ContentView.js:
111 (WebInspector.ContentView):
112 * UserInterface/Views/ContentViewContainer.js:
113 (WebInspector.ContentViewContainer.prototype.contentViewForRepresentedObject):
114 (WebInspector.ContentViewContainer.prototype.showContentViewForRepresentedObject):
115 * UserInterface/Views/LayoutTimelineView.js:
116 (WebInspector.LayoutTimelineView.prototype._dataGridFiltersDidChange):
117 (WebInspector.LayoutTimelineView.prototype._treeElementSelected):
118 (WebInspector.LayoutTimelineView.prototype._closeStatusButtonClicked):
119 * UserInterface/Views/NetworkTimelineView.js:
120 (WebInspector.NetworkTimelineView.prototype._dataGridFiltersDidChange):
121 (WebInspector.NetworkTimelineView.prototype._treeElementSelected):
122 (WebInspector.NetworkTimelineView.prototype._closeStatusButtonClicked):
123 * UserInterface/Views/OverviewTimelineView.js:
124 (WebInspector.OverviewTimelineView.prototype._treeElementSelected):
125 (WebInspector.OverviewTimelineView.prototype._closeStatusButtonClicked):
126 * UserInterface/Views/RenderingFrameTimelineView.js:
127 (WebInspector.RenderingFrameTimelineView):
128 * UserInterface/Views/ScriptTimelineView.js:
129 (WebInspector.ScriptTimelineView):
130 (WebInspector.ScriptTimelineView.prototype._dataGridFiltersDidChange):
131 (WebInspector.ScriptTimelineView.prototype._treeElementSelected):
132 (WebInspector.ScriptTimelineView.prototype._closeStatusButtonClicked):
133 * UserInterface/Views/TimelineRecordingContentView.js:
134 (WebInspector.TimelineRecordingContentView):
135 (WebInspector.TimelineRecordingContentView.prototype._currentContentViewDidChange):
136 (WebInspector.TimelineRecordingContentView.prototype._contentViewSelectionPathComponentDidChange):
137 (WebInspector.TimelineRecordingContentView.prototype._updateTimes):
138 (WebInspector.TimelineRecordingContentView.prototype._timeRangeSelectionChanged):
139 * UserInterface/Views/TimelineSidebarPanel.js:
140 * UserInterface/Views/TimelineView.js:
141 (WebInspector.TimelineView):
142 (WebInspector.TimelineView.prototype.get timelineSidebarPanel):
144 2015-04-18 Timothy Hatcher <timothy@apple.com>
146 Web Inspector: Disable global keyboard shortcuts for background tabs
147 https://bugs.webkit.org/show_bug.cgi?id=143918
149 Reviewed by Joseph Pecoraro.
151 * UserInterface/Views/ContentBrowser.js:
152 (WebInspector.ContentBrowser):
153 (WebInspector.ContentBrowser.prototype.shown): Added.
154 (WebInspector.ContentBrowser.prototype.hidden): Added.
155 Disable shortcuts on the browser and find banner.
157 * UserInterface/Views/ContentBrowserTabContentView.js:
158 (WebInspector.ContentBrowserTabContentView.prototype.shown): Added.
159 (WebInspector.ContentBrowserTabContentView.prototype.hidden): Added.
160 Tell the content browser we were shown or hidden.
162 * UserInterface/Views/FindBanner.js:
163 (WebInspector.FindBanner):
164 (WebInspector.FindBanner.prototype.show):
165 (WebInspector.FindBanner.prototype.enableKeyboardShortcuts): Added.
166 (WebInspector.FindBanner.prototype.disableKeyboardShortcuts): Added.
167 Support disabling or enabling the keyboard shortcuts.
169 2015-04-17 Timothy Hatcher <timothy@apple.com>
171 Web Inspector: Add TabBrowser and TabContentView
172 https://bugs.webkit.org/show_bug.cgi?id=143886
174 Reviewed by Joseph Pecoraro.
176 * UserInterface/Images/Debugger.svg: Added.
177 * UserInterface/Images/Elements.svg: Added.
178 * UserInterface/Images/Gear.svg: Added.
179 * UserInterface/Images/NewTabPlus.svg: Added.
180 * UserInterface/Images/Resources.svg:
181 * UserInterface/Images/Timeline.svg: Added.
182 * UserInterface/Images/ToggleLeftSidebar.svg: Added.
183 * UserInterface/Images/ToggleRightSidebar.svg: Added.
185 * UserInterface/Views/ContentBrowserTabContentView.css: Added.
186 (.content-browser.tab.content-view > .content-browser):
188 * UserInterface/Views/ContentBrowserTabContentView.js: Added.
189 (WebInspector.ContentBrowserTabContentView):
190 (WebInspector.ContentBrowserTabContentView.prototype.get contentBrowser):
191 (WebInspector.ContentBrowserTabContentView.prototype.shown):
192 (WebInspector.ContentBrowserTabContentView.prototype.hidden):
193 (WebInspector.ContentBrowserTabContentView.prototype.closed):
194 (WebInspector.ContentBrowserTabContentView.prototype.updateLayout):
195 (WebInspector.ContentBrowserTabContentView.prototype.get managesDetailsSidebarPanels):
196 (WebInspector.ContentBrowserTabContentView.prototype.showDetailsSidebarPanels):
197 (WebInspector.ContentBrowserTabContentView.prototype.contentBrowserTreeElementForRepresentedObject):
198 (WebInspector.ContentBrowserTabContentView.prototype._navigationSidebarCollapsedStateDidChange):
199 (WebInspector.ContentBrowserTabContentView.prototype._detailsSidebarCollapsedStateDidChange):
200 (WebInspector.ContentBrowserTabContentView.prototype._detailsSidebarPanelSelected):
201 (WebInspector.ContentBrowserTabContentView.prototype._contentBrowserRepresentedObjectsDidChange):
202 (WebInspector.ContentBrowserTabContentView.prototype._contentBrowserCurrentContentViewDidChange):
203 (WebInspector.ContentBrowserTabContentView.prototype._revealAndSelectRepresentedObjectInNavigationSidebar):
205 * UserInterface/Views/DebuggerTabContentView.js: Added.
206 (WebInspector.DebuggerTabContentView):
208 * UserInterface/Views/ElementsTabContentView.js: Added.
209 (WebInspector.ElementsTabContentView):
210 (WebInspector.ElementsTabContentView.prototype._mainFrameDidChange):
212 * UserInterface/Views/ResourcesTabContentView.js: Added.
213 (WebInspector.ResourcesTabContentView):
215 * UserInterface/Views/SettingsTabContentView.js: Added.
216 (WebInspector.SettingsTabContentView):
218 * UserInterface/Views/TabBrowser.css: Added.
220 (.tab-browser > .tab-bar):
221 (.tab-browser > .content-view-container):
222 (.tab-browser > .tab-bar + .content-view-container):
224 * UserInterface/Views/TabBrowser.js: Added.
225 (WebInspector.TabBrowser):
226 (WebInspector.TabBrowser.prototype.get tabBar):
227 (WebInspector.TabBrowser.prototype.get navigationSidebar):
228 (WebInspector.TabBrowser.prototype.get detailsSidebar):
229 (WebInspector.TabBrowser.prototype.get selectedTabContentView):
230 (WebInspector.TabBrowser.prototype.updateLayout):
231 (WebInspector.TabBrowser.prototype.bestTabContentViewForRepresentedObject):
232 (WebInspector.TabBrowser.prototype.addTabForContentView):
233 (WebInspector.TabBrowser.prototype.showTabForContentView):
234 (WebInspector.TabBrowser.prototype.closeTabForContentView):
235 (WebInspector.TabBrowser.prototype._tabBarItemSelected):
236 (WebInspector.TabBrowser.prototype._sidebarPanelSelected):
237 (WebInspector.TabBrowser.prototype._sidebarCollapsedStateDidChange):
238 (WebInspector.TabBrowser.prototype._showNavigationSidebarPanelForTabContentView):
239 (WebInspector.TabBrowser.prototype._showDetailsSidebarPanelsForTabContentView):
241 * UserInterface/Views/TabContentView.js: Added.
242 (WebInspector.TabContentView):
243 (WebInspector.TabContentView.prototype.get parentTabBrowser):
244 (WebInspector.TabContentView.prototype.set parentTabBrowser):
245 (WebInspector.TabContentView.prototype.get tabBarItem):
246 (WebInspector.TabContentView.prototype.get managesDetailsSidebarPanels):
247 (WebInspector.TabContentView.prototype.showDetailsSidebarPanels):
248 (WebInspector.TabContentView.prototype.canShowRepresentedObject):
249 (WebInspector.TabContentView.prototype.get navigationSidebarPanel):
250 (WebInspector.TabContentView.prototype.get navigationSidebarCollapsedSetting):
251 (WebInspector.TabContentView.prototype.get detailsSidebarPanels):
252 (WebInspector.TabContentView.prototype.get detailsSidebarCollapsedSetting):
253 (WebInspector.TabContentView.prototype.get detailsSidebarSelectedPanelSetting):
255 * UserInterface/Views/TimelineTabContentView.js: Added.
256 (WebInspector.TimelineTabContentView):
258 2015-04-06 Timothy Hatcher <timothy@apple.com>
260 Web Inspector: Add a WebInspector.TabBar class
261 https://bugs.webkit.org/show_bug.cgi?id=143442
263 Reviewed by Joseph Pecoraro.
265 * UserInterface/Main.html:
268 * UserInterface/Protocol/InspectorFrontendHostStub.js:
270 (WebInspector.InspectorFrontendHostStub.prototype.showContextMenu):
271 Added some stubs needed to work standalone.
273 * UserInterface/Views/TabBar.css: Added.
275 (body.window-inactive .tab-bar):
276 (.tab-bar > .top-border):
277 (body.window-inactive .tab-bar > .top-border):
279 (.tab-bar > :nth-child(n + 2 of .item)):
280 (.tab-bar > .item.pinned):
281 (.tab-bar > .item.selected):
282 (.tab-bar > .item.new-tab-button:hover):
283 (.tab-bar:not(.animating) > .item:not(.selected):hover + .item):
284 (body.window-inactive .tab-bar > .item):
285 (body.window-inactive .tab-bar > .item.selected):
286 (.tab-bar > .item > .close):
287 (body:not(.window-inactive) .tab-bar:not(.single-tab) > .item:hover > .close):
288 (.tab-bar.single-tab > .item > .close):
289 (.tab-bar > .item > .close:hover):
290 (.tab-bar > .item > .close:active):
291 (.tab-bar > .item > .flex-space):
292 (.tab-bar > .item > .flex-space:last-child):
293 (.tab-bar > .item > .icon):
294 (.tab-bar > .item.selected > .icon):
295 (.tab-bar > .item.new-tab-button:hover > .icon):
296 (.tab-bar > .item > .title):
297 (.tab-bar > .item > .title > .content):
298 (.tab-bar:not(.animating) > .item:not(.selected):hover > .title):
299 (.tab-bar > .item.selected > .title):
300 (.tab-bar.collapsed > .item):
301 (.tab-bar.collapsed > .item > .flex-space):
302 (.tab-bar.collapsed > .item > .close):
303 (.tab-bar.hide-titles > .item > .title):
304 (.tab-bar.hide-titles > .item.selected:hover > .icon):
305 (.tab-bar.hide-titles > .item.selected:hover > .close):
306 (.tab-bar.static-layout):
307 (.tab-bar.static-layout > .item):
308 (.tab-bar.animating.closing-tab > .item):
309 (.tab-bar.animating:matches(.expanding-tabs, .inserting-tab) > .item):
310 (.tab-bar.animating.inserting-tab > .item.being-inserted):
311 (.tab-bar.animating.closing-tab > .item.selected):
312 (body.window-inactive .tab-bar.animating.closing-tab > .item.selected):
313 (.tab-bar.dragging-tab > .item.selected):
315 * UserInterface/Views/TabBar.js: Added.
316 (WebInspector.TabBar):
317 (WebInspector.TabBar.prototype.get newTabItem):
318 (WebInspector.TabBar.prototype.set newTabItem):
319 (WebInspector.TabBar.prototype.addTabBarItem):
320 (WebInspector.TabBar.prototype.insertTabBarItem.animateTabs):
321 (WebInspector.TabBar.prototype.insertTabBarItem.removeStyles):
322 (WebInspector.TabBar.prototype.insertTabBarItem):
323 (WebInspector.TabBar.prototype.insertTabBarItem.set else):
324 (WebInspector.TabBar.prototype.insertTabBarItem.set this):
325 (WebInspector.TabBar.animateTabs.get if):
326 (WebInspector.TabBar.animateTabs):
327 (WebInspector.TabBar.removeStyles):
328 (WebInspector.TabBar.prototype.insertTabBarItem):
329 (WebInspector.TabBar.prototype.updateLayoutSoon.update):
330 (WebInspector.TabBar.prototype.updateLayoutSoon):
331 (WebInspector.TabBar.prototype.updateLayout):
332 (WebInspector.TabBar.prototype.get selectedTabBarItem):
333 (WebInspector.TabBar.prototype.set selectedTabBarItem):
334 (WebInspector.TabBar.prototype.get tabBarItems):
335 (WebInspector.TabBar.prototype.get element):
336 (WebInspector.TabBar.prototype._findTabBarItem):
337 (WebInspector.TabBar.prototype._hasMoreThanOneNormalTab):
338 (WebInspector.TabBar.prototype._recordTabBarItemSizesAndPositions):
339 (WebInspector.TabBar.prototype._clearTabBarItemSizesAndPositions):
340 (WebInspector.TabBar.prototype._finishExpandingTabsAfterClose.):
341 (WebInspector.TabBar.prototype._finishExpandingTabsAfterClose):
342 (WebInspector.TabBar.prototype._handleMouseDown):
343 (WebInspector.TabBar.prototype._handleMouseMoved):
344 (WebInspector.TabBar.prototype._handleMouseUp):
345 (WebInspector.TabBar.prototype._handleMouseLeave):
346 (WebInspector.TabBar.prototype._handleNewTabMouseEnter):
348 * UserInterface/Views/TabBarItem.js: Added.
349 (WebInspector.TabBarItem):
350 (WebInspector.TabBarItem.prototype.get identifier):
351 (WebInspector.TabBarItem.prototype.get element):
352 (WebInspector.TabBarItem.prototype.get parentTabBar):
353 (WebInspector.TabBarItem.prototype.set parentTabBar):
354 (WebInspector.TabBarItem.prototype.get selected):
355 (WebInspector.TabBarItem.prototype.set selected):
356 (WebInspector.TabBarItem.prototype.get pinned):
357 (WebInspector.TabBarItem.prototype.get image):
358 (WebInspector.TabBarItem.prototype.set image):
359 (WebInspector.TabBarItem.prototype.get title):
360 (WebInspector.TabBarItem.prototype.set title):
361 (WebInspector.TabBarItem.prototype.updateLayout):
363 2015-04-25 Timothy Hatcher <timothy@apple.com>
365 Web Inspector: Make closing ContentViews more leak proof
366 https://bugs.webkit.org/show_bug.cgi?id=144200
368 Remove all listeners on the target objects in close that match the this object.
369 This makes things more foolproof when something changes or a new listener is
370 added to the same object. TimelineRecordingContentView also had a leak where
371 TimelineManager and DebuggerManager listeners were not being removed.
373 Reviewed by Joseph Pecoraro.
375 * UserInterface/Views/ApplicationCacheFrameContentView.js:
376 (WebInspector.ApplicationCacheFrameContentView.prototype.closed):
377 * UserInterface/Views/ClusterContentView.js:
378 (WebInspector.ClusterContentView.prototype.closed):
379 * UserInterface/Views/ContentFlowDOMTreeContentView.js:
380 (WebInspector.ContentFlowDOMTreeContentView.prototype.closed):
381 * UserInterface/Views/FrameDOMTreeContentView.js:
382 (WebInspector.FrameDOMTreeContentView.prototype.closed):
383 * UserInterface/Views/ResourceContentView.js:
384 (WebInspector.ResourceContentView.prototype.closed):
385 * UserInterface/Views/TextResourceContentView.js:
386 (WebInspector.TextResourceContentView.prototype.closed):
387 * UserInterface/Views/TimelineRecordingContentView.js:
388 (WebInspector.TimelineRecordingContentView.prototype.closed):
390 2015-04-25 Timothy Hatcher <timothy@apple.com>
392 Web Inspector: Make closing ContentViews more leak proof
393 https://bugs.webkit.org/show_bug.cgi?id=144200
395 Remove all listeners on the target objects in close that match the this object.
396 This makes things more foolproof when something changes or a new listener is
397 added to the same object. TimelineRecordingContentView also had a leak where
398 TimelineManager and DebuggerManager listeners were not being removed.
400 Reviewed by Darin Adler.
402 * UserInterface/Views/ApplicationCacheFrameContentView.js:
403 (WebInspector.ApplicationCacheFrameContentView.prototype.closed):
404 * UserInterface/Views/ClusterContentView.js:
405 (WebInspector.ClusterContentView.prototype.closed):
406 * UserInterface/Views/ContentFlowDOMTreeContentView.js:
407 (WebInspector.ContentFlowDOMTreeContentView.prototype.closed):
408 * UserInterface/Views/FrameDOMTreeContentView.js:
409 (WebInspector.FrameDOMTreeContentView.prototype.closed):
410 * UserInterface/Views/ResourceContentView.js:
411 (WebInspector.ResourceContentView.prototype.closed):
412 * UserInterface/Views/TextResourceContentView.js:
413 (WebInspector.TextResourceContentView.prototype.closed):
414 * UserInterface/Views/TimelineRecordingContentView.js:
415 (WebInspector.TimelineRecordingContentView.prototype.closed):
417 2015-04-25 Tobias Reiss <tobi+webkit@basecode.de>
419 Web Inspector: assertion failure when editing inline styles
420 https://bugs.webkit.org/show_bug.cgi?id=143939
422 Reviewed by Timothy Hatcher.
424 Prevent "_updateResourceContent" from being called on inline style changes.
425 Introduce a flag that marks a CSSStyleSheet as a representation of an
426 "ElementCSSInlineStyle" (DOM Level 2 spec) and return early.
428 * UserInterface/Controllers/CSSStyleManager.js:
429 (WebInspector.CSSStyleManager.prototype.styleSheetChanged):
430 * UserInterface/Models/CSSStyleSheet.js:
431 (WebInspector.CSSStyleSheet):
432 (WebInspector.CSSStyleSheet.isInlineStyle):
433 (WebInspector.CSSStyleSheet.prototype.markAsInlineStyle):
434 * UserInterface/Models/DOMNodeStyles.js:
435 (WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload):
437 2015-04-24 Timothy Hatcher <timothy@apple.com>
439 REGRESSION: Web Inspector: Start Timeline Recording in Develop menu broken
440 https://bugs.webkit.org/show_bug.cgi?id=144150
442 Reviewed by Brian Burg.
444 * UserInterface/Protocol/InspectorFrontendAPI.js:
445 (InspectorFrontendAPI.setTimelineProfilingEnabled): Change !== to === when
446 checking enabled to isCapturing().
448 2015-04-23 Brian J. Burg <burg@cs.washington.edu>
450 Web Inspector: run a customizable bootstrap function after the UI has fully loaded
451 https://bugs.webkit.org/show_bug.cgi?id=144124
453 Reviewed by Joseph Pecoraro.
455 It can be really annoying to click through the Inspector UI dozens of times to debug one
456 interaction or iterate on a specific widget.
458 This patch adds a blank "bootstrap" function that can be used to hard-wire commands to
459 automate repetitive UI state setup. The function is run immediately after the inspector loads.
460 Setup commands can be shared as bug report reproduction steps.
462 * UserInterface/Base/Bootstrap.js: Added.
463 (WebInspector.runBootstrapOperations): Added.
464 * UserInterface/Base/Main.js:
465 (WebInspector.contentLoaded): Bootstrap after setting up everything and restoring view state from cookie.
466 * UserInterface/Main.html:
468 2015-04-23 Joseph Pecoraro <pecoraro@apple.com>
470 Web Inspector: Adopt Object.assign and improve its display in Console
471 https://bugs.webkit.org/show_bug.cgi?id=144135
473 Reviewed by Darin Adler.
475 * UserInterface/Models/NativeFunctionParameters.js:
477 2015-04-23 Timothy Hatcher <timothy@apple.com>
479 Web Inspector: DebuggerSidebarPanel's _callStackContentTreeOutline should suppress filtering
480 https://bugs.webkit.org/show_bug.cgi?id=144114
482 Reviewed by Joseph Pecoraro.
484 * UserInterface/Views/DebuggerSidebarPanel.js:
485 (WebInspector.DebuggerSidebarPanel):
487 2015-04-23 Timothy Hatcher <timothy@apple.com>
489 Web Inspector: Fix layering issues with ApplicationCacheFrameTreeElement
490 https://bugs.webkit.org/show_bug.cgi?id=144113
492 Reviewed by Joseph Pecoraro.
494 * UserInterface/Views/ApplicationCacheFrameTreeElement.js:
495 (WebInspector.ApplicationCacheFrameTreeElement.prototype.updateTitles):
496 (WebInspector.ApplicationCacheFrameTreeElement):
498 2015-04-22 Matt Baker <mattbaker@apple.com>
500 Web Inspector: clicking Timelines tree view nodes should not change the current content view
501 https://bugs.webkit.org/show_bug.cgi?id=132202
503 Reviewed by Brian Burg.
505 TimelineSidebarPanel now prevents timeline views from switching to another content view while the content
506 browser is showing the TimelineRecordingContentView. Code responsible for creating and updating the tree
507 element close button, which was duplicated in multiple derived TimelineView classes, has been moved to the
508 TimelineView base class.
510 * UserInterface/Views/LayoutTimelineView.js:
511 Updated name of location column, which was broken in a recent patch.
512 (WebInspector.LayoutTimelineView.prototype.treeElementDeselected):
513 (WebInspector.LayoutTimelineView.prototype.treeElementSelected):
514 Added overrides of new base class methods to handle view-specific highlight logic.
515 (WebInspector.LayoutTimelineView.prototype._treeElementDeselected): Deleted.
516 (WebInspector.LayoutTimelineView.prototype._treeElementSelected): Deleted.
517 (WebInspector.LayoutTimelineView.prototype._updateTreeElementWithCloseButton): Deleted.
518 (WebInspector.LayoutTimelineView.prototype._closeStatusButtonClicked): Deleted.
519 Removed tree element close button logic.
521 * UserInterface/Views/NetworkTimelineView.js:
522 (WebInspector.NetworkTimelineView.prototype.showContentViewForTreeElement):
523 (WebInspector.NetworkTimelineView.prototype.treeElementSelected):
524 Added overrides of new base class methods.
525 (WebInspector.NetworkTimelineView.prototype._treeElementDeselected): Deleted.
526 (WebInspector.NetworkTimelineView.prototype._treeElementSelected): Deleted.
527 Removed tree element close button logic.
529 * UserInterface/Views/RenderingFrameTimelineView.js:
530 (WebInspector.RenderingFrameTimelineView.prototype.showContentViewForTreeElement):
531 (WebInspector.RenderingFrameTimelineView.prototype.treeElementSelected):
532 Added overrides of new base class methods.
534 * UserInterface/Views/ResourceTimelineDataGridNode.js:
535 (WebInspector.ResourceTimelineDataGridNode.prototype.get data):
536 (WebInspector.ResourceTimelineDataGridNode.prototype.createCellContent):
537 Removed unused Name column and added "go to" button to the Domain column to show the selected resource.
539 * UserInterface/Views/ScriptTimelineView.js:
540 (WebInspector.ScriptTimelineView):
541 (WebInspector.ScriptTimelineView.prototype.showContentViewForTreeElement):
542 (WebInspector.ScriptTimelineView.prototype.treeElementSelected):
543 Added overrides of new base class methods.
544 (WebInspector.ScriptTimelineView.prototype._dataGridNodeSelected):
545 (WebInspector.ScriptTimelineView.prototype._treeElementDeselected): Deleted.
546 (WebInspector.ScriptTimelineView.prototype._treeElementSelected): Deleted.
547 (WebInspector.ScriptTimelineView.prototype._updateTreeElementWithCloseButton): Deleted.
548 (WebInspector.ScriptTimelineView.prototype._closeStatusButtonClicked): Deleted.
549 Removed tree element close button logic.
551 * UserInterface/Views/TimelineSidebarPanel.js:
552 (WebInspector.TimelineSidebarPanel.showTimelineViewForTimeline.this._timelineTreeElementMap.get select):
553 Prevent navigating to a different content view when showing the TimelineRecordingContentView.
555 * UserInterface/Views/TimelineView.js:
556 (WebInspector.TimelineView):
557 (WebInspector.TimelineView.prototype.showContentViewForTreeElement):
558 (WebInspector.TimelineView.prototype.treeElementDeselected):
559 (WebInspector.TimelineView.prototype.treeElementSelected):
560 Tree element selection handlers are now protected methods, which derived classes may override as needed.
561 (WebInspector.TimelineView.prototype.needsLayout):
562 (WebInspector.TimelineView.prototype._closeStatusButtonClicked):
563 (WebInspector.TimelineView.prototype._updateTreeElementWithCloseButton):
564 Encapsulated logic related to close button creation and behavior.
566 2015-04-22 Timothy Hatcher <timothy@apple.com>
568 Web Inspector: Remove an unused index argument from Sidebar.removeSidebarPanel
569 https://bugs.webkit.org/show_bug.cgi?id=144054
571 Reviewed by Darin Adler.
573 * UserInterface/Views/Sidebar.js:
575 2015-04-22 Timothy Hatcher <timothy@apple.com>
577 Web Inspector: Fix an exception preventing switching timelines
578 https://bugs.webkit.org/show_bug.cgi?id=144053
580 Reviewed by Darin Adler.
582 * UserInterface/Views/TreeOutline.js:
583 (WebInspector.TreeElement.prototype.select): Store treeOutline in a local so
584 we have a reference to it when we go to reset processingSelectionChange.
585 The calls to onselect was removing the tree element from the outline, causing
586 "delete this.treeOutline.processingSelectionChange" to throw an exception.
587 This patch changes the delete to a set to false for good measure too.
589 2015-04-21 Joseph Pecoraro <pecoraro@apple.com>
591 Web Inspector: Use String.prototype.startsWith in more places
592 https://bugs.webkit.org/show_bug.cgi?id=144025
594 Reviewed by Timothy Hatcher.
596 * UserInterface/Models/Gradient.js:
597 * UserInterface/Views/DebuggerSidebarPanel.js:
598 (WebInspector.DebuggerSidebarPanel.prototype._scriptAdded):
599 * UserInterface/Views/ResourceSidebarPanel.js:
600 (WebInspector.ResourceSidebarPanel.prototype._scriptWasAdded):
602 2015-04-21 Nikita Vasilyev <nvasilyev@apple.com>
604 Web Inspector: Make formatted nodes more consistent with formatted objects
605 https://bugs.webkit.org/show_bug.cgi?id=142159
607 Reviewed by Timothy Hatcher.
609 * UserInterface/Views/DOMTreeOutline.css:
610 (.dom-tree-outline ol):
611 Keep indentation exactly two spaces of Menlo.
613 (.dom-tree-outline li):
614 (.dom-tree-outline li.parent):
615 (.dom-tree-outline li .html-tag.close):
616 (.dom-tree-outline li.parent::before):
617 (.dom-tree-outline:focus li.parent.selected::before):
618 (.dom-tree-outline li.parent.expanded::before):
619 (.dom-tree-outline:focus li.parent.expanded.selected::before):
620 * UserInterface/Views/FormattedValue.css:
621 (.formatted-node > .dom-tree-outline ol):
622 Keep indentation exactly two spaces of Menlo.
624 * UserInterface/Views/ObjectTreePropertyTreeElement.css:
625 (.object-tree-property > .disclosure-button):
626 Disclosure triangle is 13 by 13 pixels. Having it in the middle of 16 by 16
627 pixels block makes it look bloory on non-retina screen, because:
628 (16 - 13) / 2 = 1.5px. Replacing 16 with 15 fixes the problem.
630 * UserInterface/Views/ObjectTreeView.css:
631 (.object-tree:not(.lossless-preview) > :matches(.title, .object-preview)):
633 2015-04-20 Joseph Pecoraro <pecoraro@apple.com>
635 Web Inspector: Unify PrettyPrinting Tool and UserInterface resources
636 https://bugs.webkit.org/show_bug.cgi?id=143969
638 Reviewed by Timothy Hatcher.
640 Have the PrettyPrinting tool just use the CodeMirror and WebInspector
641 resources from the relative UserInterface directory. This avoids
642 having duplicate resources in the tree which offered few advantages.
644 * Scripts/update-pretty-printer.rb: Removed.
645 * Tools/PrettyPrinting/CodeMirrorFormatters.js: Removed.
646 * Tools/PrettyPrinting/Formatter.js: Removed.
647 * Tools/PrettyPrinting/FormatterContentBuilder.js: Removed.
648 * Tools/PrettyPrinting/codemirror.css: Removed.
649 * Tools/PrettyPrinting/codemirror.js: Removed.
650 * Tools/PrettyPrinting/css.js: Removed.
651 * Tools/PrettyPrinting/index.html:
652 * Tools/PrettyPrinting/javascript.js: Removed.
654 * UserInterface/Views/CodeMirrorFormatters.js:
657 2015-04-20 Joseph Pecoraro <pecoraro@apple.com>
659 Web Inspector: Improve Support for WeakSet in Console
660 https://bugs.webkit.org/show_bug.cgi?id=143951
662 Reviewed by Darin Adler.
664 * UserInterface/Models/NativeFunctionParameters.js:
665 WeakSet has the same APIs and parameters as Set for the functions it implements.
667 * UserInterface/Protocol/RemoteObject.js:
668 (WebInspector.RemoteObject.prototype.isCollectionType):
669 (WebInspector.RemoteObject.prototype.isWeakCollection):
670 (WebInspector.RemoteObject.prototype.getCollectionEntries):
671 (WebInspector.RemoteObject.prototype._weakCollectionObjectGroup):
672 WeakSet is a weak collection.
674 * UserInterface/Models/ObjectPreview.js:
675 (WebInspector.ObjectPreview.prototype.hasSize):
676 * UserInterface/Views/ConsoleMessageView.js:
677 (WebInspector.ConsoleMessageView.prototype._formatParameter):
678 * UserInterface/Views/FormattedValue.css:
679 (.formatted-object, .formatted-node, .formatted-error, .formatted-map, .formatted-set, .formatted-weakmap, .formatted-weakset):
680 (:matches(.formatted-array, .formatted-map, .formatted-set, .formatted-weakmap, .formatted-weakset) > .size):
681 (.formatted-object, .formatted-node, .formatted-error, .formatted-map, .formatted-set, .formatted-weakmap): Deleted.
682 (:matches(.formatted-array, .formatted-map, .formatted-set, .formatted-weakmap) > .size): Deleted.
683 * UserInterface/Views/FormattedValue.js:
684 (WebInspector.FormattedValue.createElementForTypesAndValue):
685 Treat a WeakSet like a set in more places.
687 2015-04-18 Nikita Vasilyev <nvasilyev@apple.com>
689 Web Inspector: Pass multiple arguments to classList.add and classList.remove
690 https://bugs.webkit.org/show_bug.cgi?id=143914
692 classList.add and classList.remove can accept multiple arguments, use that.
694 Reviewed by Timothy Hatcher.
696 * UserInterface/Base/Main.js:
697 (WebInspector.updateDockedState):
698 * UserInterface/Views/DOMTreeDataGrid.js:
699 (WebInspector.DOMTreeDataGrid):
700 * UserInterface/Views/DOMTreeOutline.js:
701 (WebInspector.DOMTreeOutline):
702 * UserInterface/Views/DataGrid.js:
703 (WebInspector.DataGridNode.prototype.set hasChildren):
704 * UserInterface/Views/DatabaseContentView.js:
705 (WebInspector.DatabaseContentView):
706 * UserInterface/Views/DetailsSection.js:
707 (WebInspector.DetailsSection):
708 * UserInterface/Views/DetailsSectionPropertiesRow.js:
709 (WebInspector.DetailsSectionPropertiesRow):
710 * UserInterface/Views/GeneralTreeElement.js:
711 (WebInspector.GeneralTreeElement.prototype.set classNames):
712 * UserInterface/Views/NavigationItem.js:
713 (WebInspector.NavigationItem):
714 * UserInterface/Views/ResourceContentView.js:
715 (WebInspector.ResourceContentView):
716 * UserInterface/Views/ResourceTimelineDataGridNode.js:
717 (WebInspector.ResourceTimelineDataGridNode.prototype.createCellContent):
718 * UserInterface/Views/Sidebar.js:
719 (WebInspector.Sidebar):
720 * UserInterface/Views/SidebarPanel.js:
721 (WebInspector.SidebarPanel):
722 * UserInterface/Views/SourceCodeTextEditor.js:
723 * UserInterface/Views/TextEditor.js:
724 (WebInspector.TextEditor):
725 * UserInterface/Views/TimelineRuler.js:
727 2015-04-18 Nikita Vasilyev <nvasilyev@apple.com>
729 Web Inspector: Make prototype pill’s background semi-transparent
730 https://bugs.webkit.org/show_bug.cgi?id=143928
732 Reviewed by Timothy Hatcher.
734 * UserInterface/Views/ObjectTreePropertyTreeElement.css:
735 (.object-tree-property.prototype-property):
737 (.object-tree-property.prototype-property:hover, .object-tree-property.prototype-property:focus):
738 Slightly highlight the prototype pill when hovering over.
740 2015-04-17 Jono Wells <jonowells@apple.com>
742 Web Inspector: All sans-serif font family rules should be set the same way.
743 https://bugs.webkit.org/show_bug.cgi?id=143909
745 Reviewed by Timothy Hatcher.
747 Update styles so that all uses of sans-serif font use -webkit-system-font consistently.
749 * UserInterface/Views/DefaultDashboardView.css:
750 (body.mac-platform.legacy .toolbar .dashboard.default > .item):
751 * UserInterface/Views/ObjectTreePropertyTreeElement.css:
752 (.object-tree-property .prototype-name):
753 * UserInterface/Views/ObjectTreeView.css:
754 (.object-tree-outline li .empty-message):
755 * UserInterface/Views/RenderingFrameTimelineOverviewGraph.css:
756 (.timeline-overview-graph.rendering-frame > .divider > .label):
758 2015-04-17 Timothy Hatcher <timothy@apple.com>
760 Web Inspector: Have better inactive window color for pixel borders
761 https://bugs.webkit.org/show_bug.cgi?id=143888
763 Reviewed by Joseph Pecoraro.
765 * UserInterface/Views/FindBanner.css:
766 (body.window-inactive .find-banner):
767 * UserInterface/Views/Main.css:
768 (body.window-inactive.docked.bottom):
769 (body.window-inactive.docked.right):
770 (body.window-inactive #split-content-browser):
771 * UserInterface/Views/NavigationBar.css:
772 (body.window-inactive .navigation-bar):
773 * UserInterface/Views/QuickConsole.css:
774 (body.window-inactive .quick-console):
775 (.quick-console.showing-log):
776 * UserInterface/Views/Sidebar.css:
777 (body.window-inactive .sidebar.left):
778 (body.window-inactive .sidebar.right):
780 2015-04-17 Joseph Pecoraro <pecoraro@apple.com>
782 Web Inspector: Unexpected background at top of console when rubber-banding with selection
783 https://bugs.webkit.org/show_bug.cgi?id=140710
785 Reviewed by Timothy Hatcher.
787 * UserInterface/Views/LogContentView.css:
789 Remove the focus ring on the console's log view, only visible when rubber-banding.
791 2015-04-16 Jono Wells <jonowells@apple.com>
793 Web Inspector: Breakpoint icons should not get pushed off of debugger sidebar due to long resource names
794 https://bugs.webkit.org/show_bug.cgi?id=142714
796 Reviewed by Timothy Hatcher.
798 Modify the styles for content and group containers inside the debugger sidebar panel's detail sections
799 such that the rules "display: table" and "display: table-row-group" no longer apply. This will make
800 the file names which use the rule "text-overflow: ellipsis" truncate as expected.
802 * UserInterface/Views/DebuggerSidebarPanel.css:
803 (.sidebar > .panel.navigation.debugger .details-section > .content):
804 (.sidebar > .panel.navigation.debugger .details-section.collapsed > .content):
805 (.sidebar > .panel.navigation.debugger .details-section > .content > .group):
806 (.sidebar > .panel.navigation.debugger .details-section.scripts):
807 (.sidebar > .panel.navigation.debugger .details-section.scripts .header):
808 (.sidebar > .panel.navigation.debugger .details-section.scripts.collapsed > .content):
810 2015-04-16 Joseph Pecoraro <pecoraro@apple.com>
812 Web Inspector: Should include "Log Value" context menu item in Preview and Collapsed ObjectTree
813 https://bugs.webkit.org/show_bug.cgi?id=143845
815 Reviewed by Timothy Hatcher.
817 Give previews the same "Log Value" context menu so that if you just log
818 a bunch of objects to the console you can quickly turn that entire object
819 into a $n reference in the console to interact with.
821 * UserInterface/Views/ObjectPreviewView.js:
822 (WebInspector.ObjectPreviewView.prototype.setOriginatingObjectInfo):
823 (WebInspector.ObjectPreviewView.prototype._contextMenuHandler):
824 Provide API to refer to a RemoteObject and optional PropertyPath
825 that can be used to give the preview a "Log Value" context menu.
827 * UserInterface/Views/ConsoleMessageView.js:
828 (WebInspector.ConsoleMessageView.prototype._appendFormattedArguments):
829 Include the RemoteObject without a path for a preview context menu.
831 * UserInterface/Views/ObjectTreeView.js:
832 (WebInspector.ObjectTreeView):
833 Include the RemoteObject with a path if we knew it for a preview context menu.
835 * UserInterface/Views/ObjectTreeBaseTreeElement.js:
836 (WebInspector.ObjectTreeBaseTreeElement.prototype.createGetterElement):
837 The context menu can never be empty, since we always added at least one item above.
840 2015-04-16 Joseph Pecoraro <pecoraro@apple.com>
842 Web Inspector: "Log Value" of a value inside of an array, does not log the innermost value
843 https://bugs.webkit.org/show_bug.cgi?id=143793
845 Reviewed by Brian Burg.
847 Context menu handlers were being handled in the capturing event phase, so
848 the outer most handler, instead of the inner most handler, was getting
849 first access. Change this so the events happen in the bubbling phase.
851 DOM Nodes may appear inside of Object Trees, for instance when shown
852 in a collection like an array or set. In an effort to standardize on
853 "inner most" behavior, change the DOMTreeOutline context handler
854 to also be in bubbling.
856 In the rare instances where a node object is in the console but
857 not displayed in an outline (console.dir(node)), then include a
858 Copy as HTML context menu like you would expect in a DOM tree.
860 * UserInterface/Views/DOMTreeOutline.js:
861 (WebInspector.DOMTreeOutline):
862 * UserInterface/Views/GeneralTreeElement.js:
863 (WebInspector.GeneralTreeElement.prototype.onattach):
864 (WebInspector.GeneralTreeElement.prototype.ondetach):
865 * UserInterface/Views/ObjectTreeBaseTreeElement.js:
866 (WebInspector.ObjectTreeBaseTreeElement.prototype._appendMenusItemsForObject):
867 (WebInspector.ObjectTreeBaseTreeElement):
869 2015-04-16 Joseph Pecoraro <pecoraro@apple.com>
871 Web Inspector: Allow toggling the edibility of a DOMTreeOutline
872 https://bugs.webkit.org/show_bug.cgi?id=143814
874 Reviewed by Brian Burg.
876 By default a DOMTreeOutline will not be editable, but it will
877 provide a setter to enable editability for DOMTreeContentViews.
879 * UserInterface/Views/DOMTreeContentView.js:
880 (WebInspector.DOMTreeContentView):
881 Content Views always have editable DOM trees.
883 * UserInterface/Views/DOMTreeElement.js:
884 (WebInspector.DOMTreeElement.prototype.get editable):
885 (WebInspector.DOMTreeElement.prototype.onattach):
886 (WebInspector.DOMTreeElement.prototype.ondelete):
887 (WebInspector.DOMTreeElement.prototype.onenter):
888 (WebInspector.DOMTreeElement.prototype.ondblclick):
889 (WebInspector.DOMTreeElement.prototype._populateTagContextMenu):
890 (WebInspector.DOMTreeElement.prototype._populateTextContextMenu):
891 (WebInspector.DOMTreeElement.prototype._populateNodeContextMenu):
892 (WebInspector.DOMTreeElement.prototype._startEditing):
893 Do not provide editability options for shadow DOM or non-editable DOM tree.
895 * UserInterface/Views/DOMTreeOutline.js:
896 (WebInspector.DOMTreeOutline):
897 (WebInspector.DOMTreeOutline.prototype.get editable):
898 (WebInspector.DOMTreeOutline.prototype.set editable):
901 * UserInterface/Views/FormattedValue.css:
902 (.formatted-node > .dom-tree-outline li):
903 Nodes inside object trees were showing text selection when you right
904 clicked them. Normal selection is not possible. So force no selection.
906 2015-04-16 Joseph Pecoraro <pecoraro@apple.com>
908 Web Inspector: Give DOM Nodes a Context Menu to Log Element to the console
909 https://bugs.webkit.org/show_bug.cgi?id=143813
911 Reviewed by Brian Burg.
913 Always give DOM Nodes a "Log Element" context menu to log it to the console.
914 This will give a $n reference, and is a convenient alternative to $0 or
915 the now removed $1-$9.
917 * Localizations/en.lproj/localizedStrings.js:
918 New "Log Element" and "Selected Element" strings.
920 * UserInterface/Views/DOMTreeOutline.js:
921 (WebInspector.DOMTreeOutline):
922 (WebInspector.DOMTreeOutline.prototype._contextMenuEventFired):
923 (WebInspector.DOMTreeOutline.prototype._updateModifiedNodes):
924 (WebInspector.DOMTreeOutline.prototype._populateContextMenu.revealElement):
925 (WebInspector.DOMTreeOutline.prototype._populateContextMenu.logElement):
926 (WebInspector.DOMTreeOutline.prototype._populateContextMenu):
927 Always include the "Log Element" context menu/
929 * UserInterface/Views/FormattedValue.js:
930 (WebInspector.FormattedValue.createElementForNode):
931 This uses all the defaults.
933 * UserInterface/Views/DOMTreeContentView.js:
934 (WebInspector.DOMTreeContentView):
935 This enables all the extra behavior.
937 2015-04-16 Joseph Pecoraro <pecoraro@apple.com>
939 Web Inspector: Remove unnecessary intermediate object from DOMTreeOutline
940 https://bugs.webkit.org/show_bug.cgi?id=143811
942 Reviewed by Brian Burg.
944 * UserInterface/Views/DOMTreeOutline.js:
945 (WebInspector.DOMTreeOutline):
946 (WebInspector.DOMTreeOutline.prototype._selectedNodeChanged):
947 (WebInspector.DOMTreeOutline.prototype.addEventListener): Deleted.
948 (WebInspector.DOMTreeOutline.prototype.removeEventListener): Deleted.
949 This object used to be used to handle event dispatching, but
950 TreeOutlines themselves are now WebInspector.Objects so we
951 can remove the intermediary.
953 2015-04-15 Joseph Pecoraro <pecoraro@apple.com>
955 Web Inspector: InspectorTest frontend console methods redirected to the frontend are wrong
956 https://bugs.webkit.org/show_bug.cgi?id=143801
958 Reviewed by Brian Burg.
960 * UserInterface/Base/Test.js:
961 (InspectorTest.evaluateInPage):
962 Properly if check for the existence of an agent.
965 Properly hook up console redirect handlers so they
966 will output the right type and arguments strings.
968 2015-04-15 Joseph Pecoraro <pecoraro@apple.com>
970 Web Inspector: Handle all possible Console message Source types in IssueMessage
971 https://bugs.webkit.org/show_bug.cgi?id=143803
973 Reviewed by Brian Burg.
975 * UserInterface/Models/IssueMessage.js:
976 (WebInspector.IssueMessage):
977 Update the switch to handle all possible console message sources.
978 "wml" was legacy and no longer supported.
980 2015-04-14 Joseph Pecoraro <pecoraro@apple.com>
982 Web Inspector: Uncaught exception in JSContext inspector when opening
983 https://bugs.webkit.org/show_bug.cgi?id=143741
985 Reviewed by Timothy Hatcher.
987 * UserInterface/Controllers/TimelineManager.js:
988 (WebInspector.TimelineManager.shouldShowViewForTimeline):
989 (WebInspector.TimelineManager.prototype._loadNewRecording):
990 Before using TimelineAgent, check for its existence first. It may
991 not exist in JSContext inspection.
993 2015-04-14 Nikita Vasilyev <nvasilyev@apple.com>
995 Web Inspector: Align array's indices and set's bullet points under the property icon
996 https://bugs.webkit.org/show_bug.cgi?id=143698
998 Reviewed by Timothy Hatcher.
1000 * UserInterface/Views/ObjectTreeMapEntryTreeElement.css:
1001 (.object-tree-array-index.object-tree-map-entry > .titles > .title > .index-name):
1002 * UserInterface/Views/ObjectTreeArrayIndexTreeElement.css:
1003 (.object-tree-array-index .index-name):
1004 Right align array's and set's indices.
1006 (.object-tree-map-entry):
1007 Overwrite left property from .object-tree-array-index.
1009 (.object-tree-property + ol .object-tree-map-entry):
1010 Overwrite left property from .object-tree-property + ol .object-tree-array-index.
1012 2015-04-13 Joseph Pecoraro <pecoraro@apple.com>
1014 Web Inspector: Expanding window.navigator.mimeTypes in ObjectTree shows no native properties
1015 https://bugs.webkit.org/show_bug.cgi?id=143690
1017 Reviewed by Timothy Hatcher.
1019 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
1020 (WebInspector.ObjectTreePropertyTreeElement):
1021 Fix a typo that resulted in hiding properties of native objects
1022 in the Properties section of an Object Tree.
1024 2015-04-13 Joseph Pecoraro <pecoraro@apple.com>
1026 Web Inspector: Remove unnecessary 3 second delay when archiving page
1027 https://bugs.webkit.org/show_bug.cgi?id=143688
1029 Reviewed by Timothy Hatcher.
1031 * UserInterface/Base/Main.js:
1032 (WebInspector.archiveMainFrame):
1033 The delay is unnecessary and was probably just debugging code.
1035 2015-04-11 Matt Baker <mattbaker@apple.com>
1037 Web Inspector: Hide Frames Timeline if the backend doesn't support it
1038 https://bugs.webkit.org/show_bug.cgi?id=142800
1040 Reviewed by Timothy Hatcher.
1042 Fallback to showing the layout timeline if the backend doesn't support the rendering frames timeline.
1044 * UserInterface/Controllers/TimelineManager.js:
1045 (WebInspector.TimelineManager.shouldShowViewForTimeline):
1046 (WebInspector.TimelineManager.prototype._loadNewRecording):
1047 Added iOS 8 compatibility check for RenderingFrame timeline record type.
1049 * UserInterface/Views/LayoutTimelineDataGridNode.js:
1050 (WebInspector.LayoutTimelineDataGridNode.prototype.get data):
1051 Restored fields used by Layout timeline view.
1053 * UserInterface/Views/LayoutTimelineView.js:
1054 Updated to be compatible with both RenderingFrame and Layout timeline views.
1056 2015-04-11 Jono Wells <jonowells@apple.com>
1058 Web Inspector: Debugger sidebar should show errors underneath scripts
1059 https://bugs.webkit.org/show_bug.cgi?id=143464
1061 Reviewed by Timothy Hatcher.
1063 Add a new tree element called IssueTreeElement. This shows warnings and errors in the debugger sidebar. These
1064 can be clicked to jump to the line of source code for which the error was thrown. BreakpointTreeElement and
1065 IssueTreeElement now inherit from DebuggerTreeElement to support any needed commonalities among the interfaces
1066 of elements in the debugger sidebar panel.
1068 * Localizations/en.lproj/localizedStrings.js: Updated.
1069 * UserInterface/Main.html: Add new files.
1071 * UserInterface/Models/IssueMessage.js:
1072 (WebInspector.IssueMessage):
1073 (WebInspector.IssueMessage.prototype.get source):
1074 (WebInspector.IssueMessage.prototype.get lineNumber):
1075 (WebInspector.IssueMessage.prototype.get columnNumber):
1076 (WebInspector.IssueMessage.prototype.get displayLineNumber):
1077 (WebInspector.IssueMessage.prototype.get displayColumnNumber):
1078 (WebInspector.IssueMessage.prototype.get sourceCodeLocation):
1079 (WebInspector.IssueMessage.prototype.saveIdentityToCookie):
1080 (WebInspector.IssueMessage.prototype._sourceCodeLocationDisplayLocationChanged):
1081 Convert to use a backing SourceCodeLocation. Expand API.
1083 * UserInterface/Views/BreakpointTreeElement.js: Inherits now from DebuggerTreeElement.
1085 * UserInterface/Views/DebuggerSidebarPanel.js:
1086 (WebInspector.DebuggerSidebarPanel.showResourcesWithBreakpointsOnlyFilterFunction):
1087 (WebInspector.DebuggerSidebarPanel.showResourcesWithIssuesOnlyFilterFunction):
1088 (WebInspector.DebuggerSidebarPanel):
1089 (WebInspector.DebuggerSidebarPanel.prototype._addBreakpoint):
1090 (WebInspector.DebuggerSidebarPanel.prototype._breakpointRemoved):
1091 (WebInspector.DebuggerSidebarPanel.prototype._handleDebuggerObjectDisplayLocationDidChange):
1092 (WebInspector.DebuggerSidebarPanel.prototype._removeDebuggerTreeElement):
1093 (WebInspector.DebuggerSidebarPanel.prototype._treeElementSelected):
1094 (WebInspector.DebuggerSidebarPanel.prototype._compareDebuggerTreeElements):
1095 (WebInspector.DebuggerSidebarPanel.prototype._addDebuggerObject):
1096 (WebInspector.DebuggerSidebarPanel.prototype._addIssue):
1097 (WebInspector.DebuggerSidebarPanel.prototype._handleIssueAdded):
1098 (WebInspector.DebuggerSidebarPanel.prototype._handleIssuesCleared):
1099 (WebInspector.DebuggerSidebarPanel.prototype._breakpointDisplayLocationDidChange): Deleted.
1100 (WebInspector.DebuggerSidebarPanel.prototype._removeBreakpointTreeElement): Deleted.
1101 (WebInspector.DebuggerSidebarPanel.prototype._compareBreakpointTreeElements): Deleted.
1102 Add IssueTreeElements to the sidebar whenever a warning or error corresponding to a line of code is found.
1103 Add a filter function and button to filter down to just these. Ensure issue and breakpoint elements can be
1106 * UserInterface/Views/DebuggerTreeElement.js: Added.
1107 (WebInspector.DebuggerTreeElement):
1108 (WebInspector.DebuggerTreeElement.prototype.get debuggerObject):
1110 * UserInterface/Views/IssueTreeElement.css: Added.
1112 (.issue.error .icon):
1113 (.navigation-sidebar-panel-content-tree-outline .item.small.issue .icon):
1115 * UserInterface/Views/IssueTreeElement.js: Added.
1116 (WebInspector.IssueTreeElement):
1117 (WebInspector.IssueTreeElement.prototype.get issueMessage):
1118 (WebInspector.IssueTreeElement.prototype._updateTitles):
1120 2015-04-11 Matt Baker <mattbaker@apple.com>
1122 Web Inspector: create content view and details sidebar for Frames timeline
1123 https://bugs.webkit.org/show_bug.cgi?id=143533
1125 Reviewed by Timothy Hatcher.
1127 Added new Rendering Frames timeline content view and details sidebar, and added minor visual tweeks to the
1128 timeline graph such as ensuring 60 FPS budget line is always visible, and large combined frames are split
1129 up once they reach a maximum pixel width.
1131 * Localizations/en.lproj/localizedStrings.js:
1134 * UserInterface/Base/Main.js:
1135 (WebInspector.contentLoaded):
1136 Support for new details sidebar panel.
1138 * UserInterface/Controllers/TimelineManager.js:
1139 (WebInspector.TimelineManager.shouldShowViewForTimeline):
1140 (WebInspector.TimelineManager.prototype._processRecord):
1141 (WebInspector.TimelineManager.prototype._loadNewRecording):
1142 Layout timeline is no longer added to timeline graphs, skip Rendering Frame records that have no child events.
1144 * UserInterface/Images/NavigationItemDoughnutChart.svg: Added.
1145 * UserInterface/Images/TimelineRecordRenderingFrame.svg: Added.
1148 * UserInterface/Main.html:
1149 * UserInterface/Test.html:
1152 * UserInterface/Models/RenderingFrameTimelineRecord.js: Renamed from Source/WebInspectorUI/UserInterface/Models/RunLoopTimelineRecord.js.
1153 (WebInspector.RenderingFrameTimelineRecord):
1154 (WebInspector.RenderingFrameTimelineRecord.resetFrameNumber):
1155 (WebInspector.RenderingFrameTimelineRecord.prototype.get frameNumber):
1156 (WebInspector.RenderingFrameTimelineRecord.prototype.get children):
1157 (WebInspector.RenderingFrameTimelineRecord.prototype.get durationRemainder):
1158 (WebInspector.RenderingFrameTimelineRecord.prototype.durationForRecords.get var):
1159 Added frame numbering and improved the accuracy of sub-frame duratation calculation.
1160 Refactoring: RunLoop prefix changed to RenderingFrame.
1162 * UserInterface/Models/Timeline.js:
1163 (WebInspector.Timeline):
1164 (WebInspector.Timeline.create):
1165 (WebInspector.Timeline.prototype.get recording):
1166 (WebInspector.Timeline.prototype.get displayName):
1167 (WebInspector.Timeline.prototype.get iconClassName):
1168 Added up-pointer to parent recording.
1170 * UserInterface/Models/TimelineRecord.js:
1171 Refactoring: RunLoop prefix changed to RenderingFrame.
1173 * UserInterface/Models/TimelineRecording.js:
1174 (WebInspector.TimelineRecording.prototype.reset):
1175 Support for new timeline type.
1177 * UserInterface/Views/ChartDetailsSectionLegendRow.js: Added.
1178 (WebInspector.ChartDetailsSectionLegendRow):
1179 New details section row type for chart legend items.
1181 * UserInterface/Views/ChartDetailsSectionRow.css: Added.
1182 (.details-section .row.chart):
1183 (.details-section .row.chart canvas):
1184 (.details-section .row.chart.empty canvas):
1185 (.details-section > .content > .group > .row.legend-item > .label > .color-swatch):
1186 * UserInterface/Views/ChartDetailsSectionRow.js: Added.
1187 (WebInspector.ChartDetailsSectionRow):
1188 (WebInspector.ChartDetailsSectionRow.prototype.get legendGroup):
1189 (WebInspector.ChartDetailsSectionRow.prototype.set innerLabel):
1190 (WebInspector.ChartDetailsSectionRow.prototype.addChartValue):
1191 (WebInspector.ChartDetailsSectionRow.prototype.clearChart):
1192 (WebInspector.ChartDetailsSectionRow.prototype._refresh.drawSlice):
1193 (WebInspector.ChartDetailsSectionRow.prototype._refresh):
1194 New details section row type for pie/doughnut charts.
1196 * UserInterface/Views/ContentView.js:
1197 (WebInspector.ContentView):
1198 Support for new timeline view type.
1200 * UserInterface/Views/LayoutTimelineDataGridNode.js:
1201 (WebInspector.LayoutTimelineDataGridNode.prototype.get data):
1202 (WebInspector.LayoutTimelineDataGridNode.prototype.createCellContent):
1203 Updated for use in rendering frame timeline view.
1205 * UserInterface/Views/LayoutTimelineView.js:
1206 (WebInspector.LayoutTimelineView.prototype._layoutTimelineRecordAdded):
1207 Removed references to old RunLoop objects.
1209 * UserInterface/Views/RenderingFrameDetailsSidebarPanel.js: Added.
1210 (WebInspector.RenderingFrameDetailsSidebarPanel.formatChartValue):
1211 (WebInspector.RenderingFrameDetailsSidebarPanel):
1212 (WebInspector.RenderingFrameDetailsSidebarPanel.prototype.inspect):
1213 (WebInspector.RenderingFrameDetailsSidebarPanel.prototype.updateRangeSelection):
1214 (WebInspector.RenderingFrameDetailsSidebarPanel.prototype.get renderingFrameTimeline):
1215 (WebInspector.RenderingFrameDetailsSidebarPanel.prototype.set renderingFrameTimeline):
1216 (WebInspector.RenderingFrameDetailsSidebarPanel.prototype.refresh.durationForRecordType):
1217 (WebInspector.RenderingFrameDetailsSidebarPanel.prototype.refresh):
1218 (WebInspector.RenderingFrameDetailsSidebarPanel.prototype._resetAll):
1219 (WebInspector.RenderingFrameDetailsSidebarPanel.prototype._recordAdded):
1220 (WebInspector.RenderingFrameDetailsSidebarPanel.prototype._timelineReset):
1221 (WebInspector.RenderingFrameDetailsSidebarPanel.prototype._getSelectedRecords):
1222 New sidebar panel for showing time breakdown for current frame selection.
1224 * UserInterface/Views/RenderingFrameTimelineDataGridNode.js: Added.
1225 (WebInspector.RenderingFrameTimelineDataGridNode):
1226 (WebInspector.RenderingFrameTimelineDataGridNode.prototype.get record):
1227 (WebInspector.RenderingFrameTimelineDataGridNode.prototype.get records):
1228 (WebInspector.RenderingFrameTimelineDataGridNode.prototype.get data):
1229 (WebInspector.RenderingFrameTimelineDataGridNode.prototype.createCellContent):
1230 New data grid row type.
1232 * UserInterface/Views/RenderingFrameTimelineOverviewGraph.css: Renamed from Source/WebInspectorUI/UserInterface/Views/RunLoopTimelineOverviewGraph.css.
1233 (.timeline-overview-graph.rendering-frame > .divider):
1234 (.timeline-overview-graph.rendering-frame > .divider > .label):
1235 * UserInterface/Views/RenderingFrameTimelineOverviewGraph.js: Renamed from Source/WebInspectorUI/UserInterface/Views/RunLoopTimelineOverviewGraph.js.
1236 (WebInspector.RenderingFrameTimelineOverviewGraph):
1237 (WebInspector.RenderingFrameTimelineOverviewGraph.prototype.get graphHeightSeconds):
1238 (WebInspector.RenderingFrameTimelineOverviewGraph.prototype.updateLayout.createFrame):
1239 (WebInspector.RenderingFrameTimelineOverviewGraph.prototype._updateDividers.createDividerAtPosition.get if):
1240 * UserInterface/Views/RenderingFrameTimelineView.css: Renamed from Source/WebInspectorUI/UserInterface/Views/RunLoopTimelineOverviewGraph.css.
1241 (.timeline-view.rendering-frame > .data-grid):
1242 (.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .navigation-sidebar-panel-content-tree-outline.rendering-frame .item .subtitle):
1244 Refactoring: RunLoop prefix changed to RenderingFrame.
1246 * UserInterface/Views/RenderingFrameTimelineView.js: Added.
1247 (WebInspector.RenderingFrameTimelineView):
1248 (WebInspector.RenderingFrameTimelineView.prototype.get navigationSidebarTreeOutlineLabel):
1249 (WebInspector.RenderingFrameTimelineView.prototype.shown):
1250 (WebInspector.RenderingFrameTimelineView.prototype.hidden):
1251 (WebInspector.RenderingFrameTimelineView.prototype.updateLayout):
1252 (WebInspector.RenderingFrameTimelineView.prototype.get selectionPathComponents):
1253 (WebInspector.RenderingFrameTimelineView.prototype.filterDidChange):
1254 (WebInspector.RenderingFrameTimelineView.prototype.matchTreeElementAgainstCustomFilters):
1255 (WebInspector.RenderingFrameTimelineView.prototype.reset):
1256 (WebInspector.RenderingFrameTimelineView.prototype.treeElementPathComponentSelected):
1257 (WebInspector.RenderingFrameTimelineView.prototype.dataGridNodeForTreeElement):
1258 (WebInspector.RenderingFrameTimelineView.prototype._processPendingRecords):
1259 (WebInspector.RenderingFrameTimelineView.prototype._renderingFrameTimelineRecordAdded):
1260 (WebInspector.RenderingFrameTimelineView.prototype._dataGridNodeSelected):
1261 New content view type.
1263 * UserInterface/Views/TimelineIcons.css:
1264 (.rendering-frame-icon .icon):
1265 (.rendering-frame-icon.large .icon):
1266 (.rendering-frame-record .icon):
1267 (.runloop-record .icon):
1268 (.runloop-icon .icon): Deleted.
1269 (.runloop-icon.large .icon): Deleted.
1270 Refactoring: runloop prefix changed to rendering-frame.
1272 * UserInterface/Views/TimelineOverview.js:
1273 (WebInspector.TimelineOverview.prototype._timelineRemoved):
1274 Support for timelines without associated views.
1276 * UserInterface/Views/TimelineOverviewGraph.js:
1277 (WebInspector.TimelineOverviewGraph):
1278 Refactoring: RunLoop prefix changed to RenderingFrame.
1280 * UserInterface/Views/TimelineRecordFrame.css:
1281 (.timeline-record-frame):
1282 (.timeline-record-frame > .frame):
1283 * UserInterface/Views/TimelineRecordFrame.js:
1284 (WebInspector.TimelineRecordFrame.createCombinedFrames):
1285 Visual tweeks, splitting up large combined frames.
1287 * UserInterface/Views/TimelineRecordTreeElement.js:
1288 (WebInspector.TimelineRecordTreeElement):
1289 Refactoring: runloop prefix changed to rendering-frame.
1291 * UserInterface/Views/TimelineRecordingContentView.js:
1292 (WebInspector.TimelineRecordingContentView.prototype._timelineRemoved):
1293 (WebInspector.TimelineRecordingContentView.prototype._timelineCountChanged):
1294 (WebInspector.TimelineRecordingContentView.prototype._timeRangeSelectionChanged):
1295 Added support for new details sidebar and timelines without associated views.
1297 * UserInterface/Views/TimelineSidebarPanel.js:
1298 (WebInspector.TimelineSidebarPanel._timelineAdded.set this):
1299 Support for timelines without associated views.
1300 Refactoring: runloop prefix changed to rendering-frame.
1302 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
1303 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:
1306 2015-04-11 Nikita Vasilyev <nvasilyev@apple.com>
1308 Web Inspector: Use semi-transparent map item dividers
1309 https://bugs.webkit.org/show_bug.cgi?id=143630
1311 Reviewed by Timothy Hatcher.
1313 * UserInterface/Views/ObjectTreeMapEntryTreeElement.css:
1314 (.object-tree-map-entry.key:not(:first-child)):
1315 (.object-tree-map-entry.key): Deleted.
1316 (.object-tree-map-entry.key:first-of-type): Deleted.
1317 Use one selector instead of two.
1319 2015-04-11 Nikita Vasilyev <nvasilyev@apple.com>
1321 Web Inspector: Objects are vertically misaligned by 1px
1322 https://bugs.webkit.org/show_bug.cgi?id=143629
1324 Reviewed by Timothy Hatcher.
1326 * UserInterface/Views/FormattedValue.css:
1327 (.formatted-object, .formatted-node, .formatted-error, .formatted-map, .formatted-set, .formatted-weakmap):
1329 2015-04-10 Joseph Pecoraro <pecoraro@apple.com>
1331 Web Inspector: Fix Console Message Toggle
1333 Unreviewed. Correct a post-review comment fix that went too far.
1335 * UserInterface/Views/ConsoleMessageView.js:
1336 (WebInspector.ConsoleMessageView.prototype.set expandable):
1337 The handler needed to be bound to the object.
1339 2015-04-10 Joseph Pecoraro <pecoraro@apple.com>
1341 Web Inspector: Fix Console Filter Search, Uncaught Exception
1343 Rubber-stamped by Timothy Hatcher.
1345 * UserInterface/Views/LogContentView.js:
1346 (WebInspector.LogContentView.prototype._performSearch):
1347 This regressed with recent refactoring. Fix up the property and class names.
1349 2015-04-10 Joseph Pecoraro <pecoraro@apple.com>
1351 Web Inspector: Improve Console Message Formatting
1352 https://bugs.webkit.org/show_bug.cgi?id=143623
1354 Reviewed by Timothy Hatcher.
1356 * Localizations/en.lproj/localizedStrings.js:
1357 * UserInterface/Main.html:
1360 * UserInterface/Views/ConsoleMessageView.css: Added.
1361 (.console-message.expandable .console-top-level-message::before):
1362 (.console-message.expandable.expanded .console-top-level-message::before):
1363 (.console-message.expandable.expanded :matches(.console-message-preview, .console-message-preview-divider)):
1364 (.console-message-preview-divider):
1365 (.console-message-enclosed):
1366 (.console-message .console-message-stack-trace-container):
1367 (.console-message.expandable.expanded .console-message-stack-trace-container):
1368 (.console-message .console-message-stack-trace-container > li):
1369 (.console-message .console-message-extra-parameters-container > li::before):
1370 New styles for the new ConsoleMessageView children.
1371 Handle console message expansion, a list of extra parameters
1372 and a potential list of stack frames.
1374 (.console-message, .console-user-command):
1375 (.console-message .repeat-count):
1376 (.console-message-text):
1377 (.console-message-text > span):
1378 (.console-error-level):
1379 (.console-error-level .console-message-text):
1380 (.console-debug-level .console-message-text):
1381 (.console-warning-level):
1382 (.console-warning-level .console-message-text):
1383 (.console-user-command .console-message):
1384 (.console-error-level::before):
1385 (.console-warning-level::before):
1386 (.console-user-command::before):
1387 (.console-debug-level::before):
1388 (:matches(.console-warning-level, .console-error-level, .console-log-level).console-message):
1389 (:matches(.console-warning-level, .console-error-level, .console-log-level)::before):
1390 (.console-user-command > .console-message-text):
1391 (.console-message-url):
1392 (.console-saved-variable):
1393 (.console-user-command-result):
1394 (.console-user-command-result.console-log-level::before):
1395 Moved from LogContentView.css to here where it is more appropriate
1396 since ConsoleMessageView added them.
1398 * UserInterface/Views/ConsoleMessageView.js:
1399 (WebInspector.ConsoleMessageView):
1400 (WebInspector.ConsoleMessageView.prototype.get expandable):
1401 (WebInspector.ConsoleMessageView.set expandable.this._boundExpandClickHandler):
1402 (WebInspector.ConsoleMessageView.prototype.set expandable):
1403 (WebInspector.ConsoleMessageView.prototype.expand):
1404 (WebInspector.ConsoleMessageView.prototype.collapse):
1405 (WebInspector.ConsoleMessageView.prototype.toggle):
1406 Provide high level constructs for making a ConsoleMessageView
1407 expandable, and APIs to expand/collapse.
1409 (WebInspector.ConsoleMessageView.prototype._appendExtraParameters):
1410 Add and style the new list of extra parameters.
1412 (WebInspector.ConsoleMessageView.prototype._appendStackTrace):
1413 Add and style the new list stack frames.
1415 (WebInspector.ConsoleMessageView.prototype._appendFormattedArguments):
1416 (WebInspector.ConsoleMessageView.prototype._shouldConsiderObjectLossless):
1417 Handling the top level message text line for all the different cases.
1419 * UserInterface/Views/DOMTreeElement.js:
1420 (WebInspector.DOMTreeElement.prototype._startEditingTarget):
1421 (WebInspector.DOMTreeElement.prototype._populateTagContextMenu):
1422 * UserInterface/Views/DOMTreeOutline.css:
1423 (.dom-tree-outline .add-attribute): Deleted.
1424 CSS class .add-attribute was not used. Remove all references.
1426 (.webkit-html-fragment.shadow):
1427 Moved from LogContentView.css to a more appropriate place.
1429 * UserInterface/Views/FormattedValue.js:
1430 (WebInspector.FormattedValue.createObjectPreviewOrFormattedValueForRemoteObject):
1431 Helper to create a preview or a formatted value for a given object.
1433 * UserInterface/Views/LogContentView.js:
1434 (WebInspector.LogContentView):
1435 (WebInspector.LogContentView.prototype._updateMessagesSelection):
1436 (WebInspector.LogContentView.prototype._leftArrowWasPressed):
1437 (WebInspector.LogContentView.prototype._rightArrowWasPressed):
1438 (WebInspector.LogContentView.prototype._rightArrowWasPressed.else.outlineTitle.treeElement.onexpand): Deleted.
1439 (WebInspector.LogContentView.prototype._propertiesSectionDidUpdateContent): Deleted.
1440 Lots of this code no longer makes sense. Delete some and put FIXMEs
1441 where it makes sense to re-add back useful features.
1443 * UserInterface/Views/ObjectPreviewView.css:
1444 (.object-preview > .size):
1445 * UserInterface/Views/ObjectTreeArrayIndexTreeElement.css:
1446 (.object-tree-array-index .index-value .object-tree): Deleted.
1447 * UserInterface/Views/ObjectTreeView.css:
1449 Tweak styles. Opacity instead of a specific gray to better work
1450 with other colors. Always make objects be inline-block.
1452 * UserInterface/Views/LogContentView.css:
1453 (.console-error-level + .console-item):
1454 (.console-warning-level + .console-item):
1455 (.console-item::before):
1456 (.console-user-command-result): Deleted.
1457 (.console-user-command-result.console-log-level::before): Deleted.
1458 (.console-message, .console-user-command): Deleted.
1459 (.console-message .repeat-count): Deleted.
1460 (.console-message-text): Deleted.
1461 (.console-message-text > span): Deleted.
1462 (.console-error-level): Deleted.
1463 (.console-error-level .section .header .title): Deleted.
1464 (.console-debug-level .console-message-text): Deleted.
1465 (.console-debug-level::before): Deleted.
1466 (.console-error-level::before): Deleted.
1467 (.console-warning-level): Deleted.
1468 (.console-warning-level .console-message-text): Deleted.
1469 (.console-warning-level::before): Deleted.
1470 (.console-user-command .console-message): Deleted.
1471 (.console-user-command::before): Deleted.
1472 (:matches(.console-warning-level, .console-error-level, .console-log-level).console-message): Deleted.
1473 (:matches(.console-warning-level, .console-error-level, .console-log-level)::before): Deleted.
1474 (.console-user-command > .console-message-text): Deleted.
1475 (.console-saved-variable): Deleted.
1476 (.console-message-url): Deleted.
1477 (.console-group-messages .section): Deleted.
1478 (.console-group-messages .section .header): Deleted.
1479 (.console-group-messages .section .header::before): Deleted.
1480 (.console-group-messages .section .header .title): Deleted.
1481 (.console-group-messages .section .properties li .info): Deleted.
1482 (.console-group-messages .outline-disclosure): Deleted.
1483 (.console-group-messages .outline-disclosure > ol): Deleted.
1484 (.console-group-messages .outline-disclosure li .selection): Deleted.
1485 (.console-group-messages .add-attribute): Deleted.
1486 (.error-message): Deleted.
1487 (.auto-complete-text, .editing .auto-complete-text): Deleted.
1488 (.outline-disclosure li.hovered:not(.selected) .selection): Deleted.
1489 (.outline-disclosure li.highlighted .highlight): Deleted.
1490 (.outline-disclosure li.selected.highlighted .highlight): Deleted.
1491 (.outline-disclosure li .selection): Deleted.
1492 (.outline-disclosure li.selected .selection): Deleted.
1493 (.outline-disclosure li.elements-drag-over .selection): Deleted.
1494 (.outline-disclosure ol:focus li.selected .selection): Deleted.
1495 (.outline-disclosure ol.search-match-not-found li.selected .selection): Deleted.
1496 (.outline-disclosure > ol): Deleted.
1497 (.outline-disclosure, .outline-disclosure ol): Deleted.
1498 (.outline-disclosure li): Deleted.
1499 (.outline-disclosure .expanded li): Deleted.
1500 (.outline-disclosure > li.parent): Deleted.
1501 (.outline-disclosure li .webkit-html-tag.close): Deleted.
1502 (.outline-disclosure > li.parent::before): Deleted.
1503 (.outline-disclosure li.parent.expanded::before): Deleted.
1504 (.outline-disclosure ol.children): Deleted.
1505 (.outline-disclosure ol.children.expanded): Deleted.
1506 (.webkit-html-fragment.shadow): Deleted.
1507 Delete now unused styles and move other styles to more appropriate places.
1509 2015-04-09 Joseph Pecoraro <pecoraro@apple.com>
1511 Web Inspector: Uncaught exception using console.table with filter argument
1512 https://bugs.webkit.org/show_bug.cgi?id=143579
1514 Reviewed by Timothy Hatcher.
1516 * UserInterface/Views/ConsoleMessageView.js:
1517 (WebInspector.ConsoleMessageView.prototype._userProvidedColumnNames):
1518 Reordering in the refactoring would have already converted this argument
1519 to a RemoteObject. Assert that here instead of trying to convert.
1521 2015-04-09 Joseph Pecoraro <pecoraro@apple.com>
1523 Web Inspector: ObjectTree Property Path tooltip has a few issues
1524 https://bugs.webkit.org/show_bug.cgi?id=143587
1526 Reviewed by Timothy Hatcher.
1528 * UserInterface/Models/PropertyPath.js:
1529 (WebInspector.PropertyPath.prototype.appendSymbolProperty):
1530 (WebInspector.PropertyPath.prototype.appendPropertyDescriptor):
1531 Handle Symbol properties. They are treated as an impossible path
1532 because we cannot guarentee a reference to the Symbol right now.
1534 * UserInterface/Views/ConsoleMessageView.js:
1535 (WebInspector.ConsoleMessageView.prototype._rootPropertyPathForObject):
1536 The savedResultIndex is on message.
1538 * UserInterface/Views/ObjectTreeMapEntryTreeElement.js:
1539 (WebInspector.ObjectTreeMapEntryTreeElement):
1540 (WebInspector.ObjectTreeMapKeyTreeElement):
1541 (WebInspector.ObjectTreeMapValueTreeElement):
1542 In order for "key" to be available setup the mainTitle after
1543 the call to the base's constructor.
1545 2015-04-08 Joseph Pecoraro <pecoraro@apple.com>
1547 Web Inspector: Simplify Legacy Tips support
1548 https://bugs.webkit.org/show_bug.cgi?id=143551
1550 Reviewed by Timothy Hatcher.
1552 * UserInterface/Models/ConsoleMessage.js:
1553 * UserInterface/Protocol/ConsoleObserver.js:
1554 (WebInspector.ConsoleObserver.prototype.messageAdded):
1555 * UserInterface/Views/ConsoleMessageView.js:
1556 (WebInspector.ConsoleMessageView):
1557 (WebInspector.ConsoleMessageView.prototype._levelString):
1558 * UserInterface/Views/LogContentView.js:
1559 (WebInspector.LogContentView.prototype._filterMessageElements):
1561 2015-04-08 Joseph Pecoraro <pecoraro@apple.com>
1563 Unreviewed Test Fix after r182579. Add missing include.
1565 * UserInterface/Test.html:
1566 Missing file was causing inspector/page/main-frame-resource.html to fail.
1568 2015-04-08 Joseph Pecoraro <pecoraro@apple.com>
1570 Web Inspector: Split ConsoleMessageImpl into the View and the Model
1571 https://bugs.webkit.org/show_bug.cgi?id=142599
1573 Reviewed by Timothy Hatcher.
1575 * UserInterface/Models/ConsoleMessage.js: Added.
1576 (WebInspector.ConsoleMessage):
1577 (WebInspector.ConsoleMessage.prototype.get source):
1578 (WebInspector.ConsoleMessage.prototype.get level):
1579 (WebInspector.ConsoleMessage.prototype.get messageText):
1580 (WebInspector.ConsoleMessage.prototype.get type):
1581 (WebInspector.ConsoleMessage.prototype.get url):
1582 (WebInspector.ConsoleMessage.prototype.get line):
1583 (WebInspector.ConsoleMessage.prototype.get column):
1584 (WebInspector.ConsoleMessage.prototype.get repeatCount):
1585 (WebInspector.ConsoleMessage.prototype.get parameters):
1586 (WebInspector.ConsoleMessage.prototype.get stackTrace):
1587 (WebInspector.ConsoleMessage.prototype.get request):
1588 New readonly model object for console messages.
1590 * UserInterface/Main.html:
1591 * UserInterface/Test.html:
1592 * UserInterface/Base/Test.js:
1593 (WebInspector.loaded):
1594 Load the new files in the main / test page.
1596 * UserInterface/Views/LegacyConsoleMessage.js: Removed.
1597 * UserInterface/Views/LegacyConsoleMessageImpl.js: Removed.
1598 Remove Legacy versions.
1600 * UserInterface/Controllers/JavaScriptRuntimeCompletionProvider.js:
1601 * UserInterface/Controllers/JavaScriptLogViewController.js:
1602 (WebInspector.JavaScriptLogViewController):
1603 (WebInspector.JavaScriptLogViewController.prototype.startNewSession):
1604 (WebInspector.JavaScriptLogViewController.prototype.appendImmediateExecutionWithResult.saveResultCallback):
1605 (WebInspector.JavaScriptLogViewController.prototype.appendImmediateExecutionWithResult):
1606 (WebInspector.JavaScriptLogViewController.prototype.appendConsoleMessage):
1607 (WebInspector.JavaScriptLogViewController.prototype.updatePreviousMessageRepeatCount):
1608 (WebInspector.JavaScriptLogViewController.prototype.consolePromptTextCommitted.printResult):
1609 (WebInspector.JavaScriptLogViewController.prototype.consolePromptTextCommitted):
1610 (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessageView):
1611 (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessage): Deleted.
1612 Update LogViewController to create ConsoleMessageViews from ConsoleMessages when applicable.
1613 Also clarify when we have a view versus model object.
1615 * UserInterface/Protocol/ConsoleObserver.js:
1616 (WebInspector.ConsoleObserver.prototype.messageAdded):
1617 * UserInterface/Controllers/LogManager.js:
1618 (WebInspector.LogManager.prototype.messageWasAdded):
1619 (WebInspector.LogManager.prototype.messagesCleared):
1620 (WebInspector.LogManager.prototype._mainResourceDidChange):
1621 Create model objects and issue events for the model objects.
1623 * UserInterface/Models/DefaultDashboard.js:
1624 (WebInspector.DefaultDashboard.prototype._consoleMessageAdded):
1625 (WebInspector.DefaultDashboard.prototype._incrementConsoleMessageType):
1626 Update now that the event gives us a model object.
1628 * UserInterface/Views/ConsoleMessageView.js: Added.
1629 (WebInspector.ConsoleMessageView):
1630 (WebInspector.ConsoleMessageView.prototype.get element):
1631 (WebInspector.ConsoleMessageView.prototype.get message):
1632 (WebInspector.ConsoleMessageView.prototype.get repeatCount):
1633 (WebInspector.ConsoleMessageView.prototype.set repeatCount):
1634 (WebInspector.ConsoleMessageView.prototype.toClipboardString):
1635 (WebInspector.ConsoleMessageView.prototype._appendMessageTextAndArguments):
1636 (WebInspector.ConsoleMessageView.prototype._appendSavedResultIndex):
1637 (WebInspector.ConsoleMessageView.prototype._appendLocationLink):
1638 (WebInspector.ConsoleMessageView.prototype._appendParameters):
1639 (WebInspector.ConsoleMessageView.prototype._appendStackTrace):
1640 (WebInspector.ConsoleMessageView.prototype._appendFormattedArguments):
1641 (WebInspector.ConsoleMessageView.prototype._formatParameter):
1642 (WebInspector.ConsoleMessageView.prototype._formatParameterAsValue):
1643 (WebInspector.ConsoleMessageView.prototype._formatParameterAsString):
1644 (WebInspector.ConsoleMessageView.prototype._formatParameterAsNode):
1645 (WebInspector.ConsoleMessageView.prototype._formatParameterAsObject):
1646 (WebInspector.ConsoleMessageView.prototype._formatParameterAsArray):
1647 (WebInspector.ConsoleMessageView.prototype._rootPropertyPathForObject):
1648 (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString.parameterFormatter):
1649 (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString.stringFormatter):
1650 (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString.floatFormatter):
1651 (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString.integerFormatter):
1652 (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString.styleFormatter):
1653 (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString.isWhitelistedProperty):
1654 (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString.append):
1655 (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString):
1656 (WebInspector.ConsoleMessageView.prototype._shouldShowStackTrace):
1657 (WebInspector.ConsoleMessageView.prototype._shouldHideURL):
1658 (WebInspector.ConsoleMessageView.prototype._firstNonNativeCallFrame):
1659 (WebInspector.ConsoleMessageView.prototype._linkifyLocation):
1660 (WebInspector.ConsoleMessageView.prototype._linkifyCallFrame):
1661 (WebInspector.ConsoleMessageView.prototype._userProvidedColumnNames):
1662 (WebInspector.ConsoleMessageView.prototype._formatParameterAsTable):
1663 (WebInspector.ConsoleMessageView.prototype._levelString):
1664 (WebInspector.ConsoleMessageView.prototype._enforcesClipboardPrefixString):
1665 (WebInspector.ConsoleMessageView.prototype._clipboardPrefixString):
1666 New View class for a ConsoleMessage. This is a near direct port of the old code
1667 to a view class that has a root element.
1669 * UserInterface/Models/ConsoleCommandResultMessage.js: Renamed from Source/WebInspectorUI/UserInterface/Views/ConsoleCommandResult.js.
1670 (WebInspector.ConsoleCommandResultMessage):
1671 (WebInspector.ConsoleCommandResultMessage.clearMaximumSavedResultIndex):
1672 (WebInspector.ConsoleCommandResultMessage.prototype.get savedResultIndex):
1673 Rename, as this is a ConsoleMessage subclass with a specific type for console evaluation results.
1675 * UserInterface/Views/ConsoleCommandView.js: Renamed from Source/WebInspectorUI/UserInterface/Views/ConsoleCommand.js.
1676 (WebInspector.ConsoleCommandView):
1677 (WebInspector.ConsoleCommandView.prototype.get element):
1678 (WebInspector.ConsoleCommandView.prototype.get commandText):
1679 (WebInspector.ConsoleCommandView.prototype.get message):
1680 (WebInspector.ConsoleCommandView.prototype.toClipboardString):
1681 * UserInterface/Views/ConsoleGroup.js:
1682 (WebInspector.ConsoleGroup):
1683 (WebInspector.ConsoleGroup.prototype.get parentGroup):
1684 (WebInspector.ConsoleGroup.prototype.render):
1685 (WebInspector.ConsoleGroup.prototype.addMessageView):
1686 (WebInspector.ConsoleGroup.prototype.append):
1687 (WebInspector.ConsoleGroup.prototype._titleMouseDown):
1688 (WebInspector.ConsoleGroup.prototype.addMessage): Deleted.
1689 (WebInspector.ConsoleGroup.prototype._titleClicked): Deleted.
1690 * UserInterface/Views/ConsoleSession.js:
1691 (WebInspector.ConsoleSession):
1692 (WebInspector.ConsoleSession.prototype.addMessageView):
1693 (WebInspector.ConsoleSession.prototype.append):
1694 (WebInspector.ConsoleSession.prototype.addMessage): Deleted.
1695 (WebInspector.ConsoleSession.prototype.hasMessages): Deleted.
1696 Convert to classes, and clarify these deal with View objects.
1698 * UserInterface/Views/LogContentView.css:
1699 (.console-message .repeat-count):
1700 (.console-message .bubble): Deleted.
1701 Better class name for the repeat count element.
1703 * UserInterface/Views/LogContentView.js:
1704 (WebInspector.LogContentView.prototype.didAppendConsoleMessageView):
1705 (WebInspector.LogContentView.prototype._formatMessagesAsData):
1706 (WebInspector.LogContentView.prototype._messageAdded):
1707 (WebInspector.LogContentView.prototype._updateMessagesSelection):
1708 (WebInspector.LogContentView.prototype._selectAllMessages):
1709 (WebInspector.LogContentView.prototype._allMessageElements):
1710 (WebInspector.LogContentView.prototype._unfilteredMessageElements):
1711 (WebInspector.LogContentView.prototype._visibleMessageElements):
1712 (WebInspector.LogContentView.prototype._scopeBarSelectionDidChange):
1713 (WebInspector.LogContentView.prototype._filterMessageElements):
1714 (WebInspector.LogContentView.prototype._upArrowWasPressed):
1715 (WebInspector.LogContentView.prototype._downArrowWasPressed):
1716 (WebInspector.LogContentView.prototype._previousMessage):
1717 (WebInspector.LogContentView.prototype._nextMessage):
1718 (WebInspector.LogContentView.prototype._performSearch):
1719 (WebInspector.LogContentView.prototype._highlightRanges):
1720 (WebInspector.LogContentView.prototype._reappendProvisionalMessages):
1721 (WebInspector.LogContentView.prototype.didAppendConsoleMessage): Deleted.
1722 (WebInspector.LogContentView.prototype._allMessages): Deleted.
1723 (WebInspector.LogContentView.prototype._unfilteredMessages): Deleted.
1724 (WebInspector.LogContentView.prototype._visibleMessages): Deleted.
1725 (WebInspector.LogContentView.prototype._filterMessages): Deleted.
1726 Rename lots of things to make it clear when we are dealing with
1727 elements, model objects, or view objects. This class is still heavily
1728 dealing with elements, and needs to be cleaned up later.
1730 2015-04-08 Joseph Pecoraro <pecoraro@apple.com>
1732 Fix uncaught exception seen in Inspector.
1734 Reviewed by Timothy Hatcher.
1736 * UserInterface/Views/TreeOutline.js:
1737 (WebInspector.TreeOutline.prototype.removeChild):
1738 Add a null check. Everywhere else null checks this member variable
1739 which may not exist yet, this case was missing the check.
1741 2015-04-08 Tobias Reiss <tobi+webkit@basecode.de>
1743 Web Inspector: Regression: Showing of color swatches no longer works in Details Sidebar
1744 https://bugs.webkit.org/show_bug.cgi?id=143539
1746 Reviewed by Timothy Hatcher.
1748 Fix a regression where due to an ESLint error the whole line instead of just
1749 the variable declaration was removed.
1751 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
1752 (WebInspector.CSSStyleDeclarationTextEditor.prototype._createColorSwatches.update):
1753 (WebInspector.CSSStyleDeclarationTextEditor.prototype._createColorSwatches):
1755 2015-04-07 Joseph Pecoraro <pecoraro@apple.com>
1757 Web Inspector: ES6: Show Symbol properties on Objects
1758 https://bugs.webkit.org/show_bug.cgi?id=141279
1760 Reviewed by Timothy Hatcher.
1762 * Localizations/en.lproj/localizedStrings.js:
1763 * UserInterface/Models/PropertyDescriptor.js:
1764 (WebInspector.PropertyDescriptor.get symbol):
1766 * UserInterface/Protocol/RemoteObject.js:
1767 (WebInspector.RemoteObject.wrappedCallback):
1768 Update new PropertyDescriptor call site.
1770 * UserInterface/Views/ObjectTreeBaseTreeElement.js:
1771 (WebInspector.ObjectTreeBaseTreeElement._logSymbolProperty):
1772 Provide a context menu for rows with Symbol properties to log
1773 the Symbol property, and therefore get a reference to it.
1775 * UserInterface/Views/ObjectTreeView.js:
1776 (WebInspector.ObjectTreeView.comparePropertyDescriptors):
1777 Better handle symbol properties in sorting.
1779 * UserInterface/Views/TypePropertiesSection.js:
1780 (WebInspector.TypePropertiesSection.PropertyComparator):
1781 Return better value when values are equal.
1783 2015-04-07 Timothy Hatcher <timothy@apple.com>
1785 Web Inspector: HierarchicalPathNavigationItem's additionalClassNames should be _additionalClassNames
1786 https://bugs.webkit.org/show_bug.cgi?id=143487
1788 Reviewed by Joseph Pecoraro.
1790 * UserInterface/Views/HierarchicalPathNavigationItem.js:
1791 (WebInspector.HierarchicalPathNavigationItem.prototype.get _additionalClassNames):
1793 2015-04-05 Joseph Pecoraro <pecoraro@apple.com>
1795 Web Inspector: Add String/Array "includes" parameter display string
1796 https://bugs.webkit.org/show_bug.cgi?id=143434
1798 Reviewed by Darin Adler.
1800 * UserInterface/Models/NativeFunctionParameters.js:
1802 2015-04-05 Joseph Pecoraro <pecoraro@apple.com>
1804 Web Inspector: Regression: Map instances don't expand
1805 https://bugs.webkit.org/show_bug.cgi?id=143428
1807 Reviewed by Brian Burg.
1809 Fix uses of "this" in super() calls. Also fix a style name
1810 that no longer exists and was intended to be inlined.
1812 * UserInterface/Views/IndexedDatabaseObjectStoreTreeElement.js:
1813 (WebInspector.IndexedDatabaseObjectStoreTreeElement):
1814 * UserInterface/Views/IndexedDatabaseTreeElement.js:
1815 (WebInspector.IndexedDatabaseTreeElement):
1816 * UserInterface/Views/ObjectTreeMapEntryTreeElement.js:
1817 (WebInspector.ObjectTreeMapEntryTreeElement):
1819 2015-04-05 Nikita Vasilyev <nvasilyev@apple.com>
1821 Web Inspector: ObjectTree array index hints are clipped when shown in popover
1822 https://bugs.webkit.org/show_bug.cgi?id=143309
1824 Reviewed by Brian Burg.
1826 * UserInterface/Views/ObjectTreeArrayIndexTreeElement.css:
1827 (.object-tree-array-index .index-name):
1828 Add left margin that equals the width of the expand/collapse icon.
1830 2015-03-31 Nikita Vasilyev <nvasilyev@apple.com>
1832 Web Inspector: console.error(object) has double disclosure triangles
1833 https://bugs.webkit.org/show_bug.cgi?id=142069
1835 Use inline-block instead of "float: left" or "position: absolute" to
1836 make layout more predictable and easier to understand.
1838 Reviewed by Timothy Hatcher.
1840 * UserInterface/Views/LogContentView.css:
1841 (.outline-disclosure, .outline-disclosure ol):
1842 (.outline-disclosure > li.parent):
1843 (.outline-disclosure > li.parent::before):
1844 (.outline-disclosure li.parent): Deleted.
1845 (.outline-disclosure li.parent::before): Deleted.
1846 * UserInterface/Views/ObjectTreePropertyTreeElement.css:
1847 (.object-tree-property > .titles):
1848 (.object-tree-property > .disclosure-button):
1849 (.object-tree-property > .icon):
1850 * UserInterface/Views/ObjectTreeView.css:
1851 (.object-tree > :matches(.title, .object-preview)::before):
1852 (.object-tree:not(.lossless-preview) > :matches(.title, .object-preview)):
1854 2015-03-31 Jono Wells <jonowells@apple.com>
1856 Web Inspector: REGRESSION: Filtering no longer works
1857 https://bugs.webkit.org/show_bug.cgi?id=143099
1859 Reviewed by Brian Burg.
1861 Add a check for an empty array of filter functions and return true in this case to ensure text
1862 and timeline filters work correctly.
1864 * UserInterface/Views/NavigationSidebarPanel.js:
1865 (WebInspector.NavigationSidebarPanel.prototype.matchTreeElementAgainstFilterFunctions):
1867 2015-03-31 Commit Queue <commit-queue@webkit.org>
1869 Unreviewed, rolling out r182186.
1870 https://bugs.webkit.org/show_bug.cgi?id=143270
1872 it crashes all the WebGL tests on the Debug bots (Requested by
1877 "Web Inspector: add 2D/WebGL canvas instrumentation
1879 https://bugs.webkit.org/show_bug.cgi?id=137278
1880 http://trac.webkit.org/changeset/182186
1882 2015-03-31 Matt Baker <mattbaker@apple.com>
1884 Web Inspector: add 2D/WebGL canvas instrumentation infrastructure
1885 https://bugs.webkit.org/show_bug.cgi?id=137278
1887 Reviewed by Timothy Hatcher.
1889 Added models, views, and controller classes for 2D and WebGL canvas inspection. Each canvas is shown in the
1890 Resources navigation sidebar under its parent frame. Shader programs are displayed as child nodes of
1891 their respective canvas. Canvases will get an associated content view and details sidebar in a later patch
1892 (see https://bugs.webkit.org/show_bug.cgi?id=138941).
1894 Shader programs will get an associated content view for editing shader source in a later patch (see
1895 https://bugs.webkit.org/show_bug.cgi?id=138593). Individual shaders are not shown in the Resource navigation
1896 sidebar, and at this time there are no plans to instrument shaders that aren't attached to a program.
1898 * Localizations/en.lproj/localizedStrings.js:
1899 * UserInterface/Base/Main.js:
1900 (WebInspector.loaded):
1901 (WebInspector.sidebarPanelForRepresentedObject):
1902 * UserInterface/Base/Test.js:
1903 (WebInspector.loaded):
1904 * UserInterface/Main.html:
1905 * UserInterface/Test.html:
1906 Updated for new canvas/shader program types.
1908 * UserInterface/Controllers/CanvasManager.js: Added.
1909 (WebInspector.CanvasManager):
1910 (WebInspector.CanvasManager.prototype.canvasesForFrame):
1911 (WebInspector.CanvasManager.prototype.canvasAdded.set this):
1912 (WebInspector.CanvasManager.prototype.canvasAdded):
1913 (WebInspector.CanvasManager.prototype.canvasRemoved):
1914 (WebInspector.CanvasManager.programDeleted.get console):
1915 (WebInspector.CanvasManager.prototype.programCreated.get console):
1916 (WebInspector.CanvasManager.prototype.programCreated):
1917 (WebInspector.CanvasManager.prototype._mainResourceDidChange):
1918 Frontend controller for canvases and their shader programs.
1920 * UserInterface/Images/Canvas.svg: Added.
1921 * UserInterface/Images/DocumentGL.png: Added.
1922 * UserInterface/Images/DocumentGL@2x.png: Added.
1923 New art for canvas and shader program tree elements.
1925 * UserInterface/Models/Canvas.js: Added.
1926 (WebInspector.Canvas):
1927 (WebInspector.Canvas.prototype.set fromPayload):
1928 (WebInspector.Canvas.displayNameForContextType):
1929 (WebInspector.Canvas.resetUniqueDisplayNameNumbers):
1930 (WebInspector.Canvas.prototype.get id):
1931 (WebInspector.Canvas.prototype.get parentFrame):
1932 (WebInspector.Canvas.prototype.get name):
1933 (WebInspector.Canvas.prototype.get cssCanvas):
1934 (WebInspector.Canvas.prototype.get contextType):
1935 (WebInspector.Canvas.prototype.get contextAttributes):
1936 (WebInspector.Canvas.prototype.get programs):
1937 (WebInspector.Canvas.prototype.get displayName):
1938 (WebInspector.Canvas.programForId):
1939 (WebInspector.Canvas.get programWasCreated.set this):
1940 (WebInspector.Canvas.prototype.get programWasCreated):
1941 (WebInspector.Canvas.prototype.programWasDeleted):
1942 (WebInspector.Canvas.prototype.saveIdentityToCookie):
1943 Model for DOM or CSS canvas (2D or WebGL).
1945 * UserInterface/Models/ShaderProgram.js: Added.
1946 (WebInspector.ShaderProgram):
1947 (WebInspector.ShaderProgram.prototype.get id):
1948 (WebInspector.ShaderProgram.prototype.get canvas):
1949 (WebInspector.ShaderProgram.prototype.get displayName):
1950 (WebInspector.ShaderProgram.prototype.saveIdentityToCookie):
1951 (WebInspector.ShaderProgram.prototype.updateCanvas):
1952 * UserInterface/Models/WebGLContextAttributes.js: Added.
1953 (WebInspector.WebGLContextAttributes):
1954 (WebInspector.WebGLContextAttributes.fromPayload):
1955 (WebInspector.WebGLContextAttributes.prototype.get alpha):
1956 (WebInspector.WebGLContextAttributes.prototype.get depth):
1957 (WebInspector.WebGLContextAttributes.prototype.get stencil):
1958 (WebInspector.WebGLContextAttributes.prototype.get antialias):
1959 (WebInspector.WebGLContextAttributes.prototype.get premultipliedAlpha):
1960 (WebInspector.WebGLContextAttributes.prototype.get preserveDrawingBuffer):
1961 Model for WebGL canvas context attributes.
1963 * UserInterface/Protocol/CanvasObserver.js: Added.
1964 (WebInspector.CanvasObserver.prototype.canvasAdded):
1965 (WebInspector.CanvasObserver.prototype.canvasRemoved):
1966 (WebInspector.CanvasObserver.prototype.programCreated):
1967 (WebInspector.CanvasObserver.prototype.programDeleted):
1968 (WebInspector.CanvasObserver):
1969 Model for WebGL canvas shader program.
1971 * UserInterface/Views/CanvasTreeElement.js: Added.
1972 (WebInspector.CanvasTreeElement.validateRepresentedObject):
1973 (WebInspector.CanvasTreeElement.countChildren):
1974 (WebInspector.CanvasTreeElement):
1975 (WebInspector.CanvasTreeElement.prototype.onexpand):
1976 (WebInspector.CanvasTreeElement.prototype.oncollapse):
1977 (WebInspector.CanvasTreeElement.prototype.onpopulate):
1978 (WebInspector.CanvasTreeElement.prototype._programWasCreated):
1979 (WebInspector.CanvasTreeElement.prototype._programWasDeleted):
1980 Folderized tree element for canvases and their child objects (shader programs).
1982 * UserInterface/Views/FrameTreeElement.js:
1983 (WebInspector.FrameTreeElement.prototype.onattach):
1984 (WebInspector.FrameTreeElement.prototype.ondetach):
1985 (WebInspector.FrameTreeElement.prototype.onpopulate):
1986 (WebInspector.FrameTreeElement.prototype._canvasesAvailable):
1987 (WebInspector.FrameTreeElement.prototype._canvasWasAdded):
1988 (WebInspector.FrameTreeElement.prototype._canvasWasRemoved):
1989 Updated to support canvas tree elements.
1991 * UserInterface/Views/ResourceIcons.css:
1992 (.canvas-icon .icon):
1993 (.shader-program-icon .icon):
1994 Styles for new canvas and shader program icons.
1996 * UserInterface/Views/ResourceSidebarPanel.js:
1997 (WebInspector.ResourceSidebarPanel.prototype._treeElementSelected):
1998 Updated for new tree element types.
2000 * UserInterface/Views/ShaderProgramTreeElement.js: Added.
2001 (WebInspector.ShaderProgramTreeElement):
2002 Tree element for shader programs. Shown as children of CanvasTreeElement.
2004 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
2005 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:
2007 2015-03-30 Joseph Pecoraro <pecoraro@apple.com>
2009 Web Inspector: Regression: null shouldn't be expandable in object outline
2010 https://bugs.webkit.org/show_bug.cgi?id=143209
2012 Reviewed by Mark Lam.
2014 * UserInterface/Views/FormattedValue.js:
2015 (WebInspector.FormattedValue.createObjectTreeOrFormattedValueForRemoteObject):
2016 When creating an object tree or formatted value, choose just a formatted value
2017 for "null", since it does not have properties.
2019 2015-03-30 Tobias Reiss <tobi+webkit@basecode.de>
2021 Web Inspector: Add more ESLint rules that reflect the current state of the code base
2022 https://bugs.webkit.org/show_bug.cgi?id=143212
2024 Reviewed by Timothy Hatcher.
2027 Define some utilities as globals.
2028 Replace "no-comma-dangle" with "comma-dangle". "no-comma-dangle" is deprecated and does not trigger in ESLint v.0.17.1
2029 Set "new-cap" to 0 due to the usage of "WebInspector.UIString".
2030 Disable "no-redeclare" for now and enable it back as soon as block scoped `let` is used.
2031 Disable "dot-notation", "no-shadow" and "no-use-before-define" due to a lot of hits.
2032 Disable "no-inner-declarations" as this is a common pattern to save memory.
2033 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
2034 * UserInterface/Models/SourceCodeLocation.js:
2035 It's not necessary to initialize x to undefined.
2036 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
2037 * UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
2038 * UserInterface/Views/TextEditor.js:
2039 * UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
2040 Remove unused variable x.
2041 * UserInterface/Views/ObjectTreeMapEntryTreeElement.js:
2042 * UserInterface/Models/PropertyPath.js:
2043 * UserInterface/Views/RadioButtonNavigationItem.js:
2044 * UserInterface/Views/ReplayDashboardView.js:
2045 * UserInterface/Models/ScriptSyntaxTree.js:
2046 * UserInterface/Views/SourceCodeTextEditor.js:
2047 * UserInterface/Views/SourceCodeTreeElement.js:
2048 Remove trailing and unexpected whitespace.
2049 * UserInterface/Views/ProbeSetDataGrid.js:
2050 * UserInterface/Views/TimelineRuler.js:
2051 Add missing semicolon.
2052 * UserInterface/Views/TimelineDataGrid.js:
2053 * UserInterface/Views/TimelineRecordFrame.js:
2054 Add missing var statement.
2055 * UserInterface/Views/TypeTokenView.js:
2056 Remove unnecessary `bind`.
2058 2015-03-28 Saam Barati <saambarati1@gmail.com>
2060 Web Inspector: ES6: Better support for Symbol types in Type Profiler
2061 https://bugs.webkit.org/show_bug.cgi?id=141257
2063 Reviewed by Joseph Pecoraro.
2065 The Web Inspector's visualization of JSC's type profiler
2066 should have support for the Symbol type.
2068 * UserInterface/Models/TypeSet.js:
2069 (WebInspector.TypeSet):
2070 (WebInspector.TypeSet.prototype.get primitiveTypeNames):
2071 * UserInterface/Views/TypeTokenView.css:
2072 TypeTokenView will display Symbol type tokens using the same color that
2073 Symbol values are displayed as formatted values.
2075 (.type-token-symbol):
2076 * UserInterface/Views/TypeTokenView.js:
2077 (WebInspector.TypeTokenView.prototype._displayTypeName):
2078 (WebInspector.TypeTokenView):
2080 2015-03-28 Joseph Pecoraro <pecoraro@apple.com>
2082 Web Inspector: Adopt Array.prototype.includes and String.prototype.includes
2083 https://bugs.webkit.org/show_bug.cgi?id=143176
2085 Reviewed by Timothy Hatcher.
2087 * UserInterface/Base/Utilities.js:
2088 Remove our custom implementations of Array/String contains functions.
2090 * UserInterface/Base/Main.js:
2091 (WebInspector._updateContentViewForCurrentNavigationSidebar):
2092 (WebInspector._contentBrowserCurrentContentViewDidChange):
2093 * UserInterface/Controllers/CodeMirrorCompletionController.js:
2094 (WebInspector.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions.):
2095 (WebInspector.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions):
2096 * UserInterface/Controllers/CodeMirrorTokenTrackingController.js:
2097 (WebInspector.CodeMirrorTokenTrackingController.prototype._updateHoveredTokenInfo):
2098 (WebInspector.CodeMirrorTokenTrackingController.prototype._processJavaScriptExpression):
2099 * UserInterface/Controllers/FrameResourceManager.js:
2100 (WebInspector.FrameResourceManager.prototype._extraDomainsActivated):
2101 (WebInspector.FrameResourceManager):
2102 * UserInterface/Controllers/LayerTreeManager.js:
2103 (WebInspector.LayerTreeManager.prototype.layerTreeMutations):
2104 * UserInterface/Controllers/StorageManager.js:
2105 (WebInspector.StorageManager.prototype._extraDomainsActivated):
2106 (WebInspector.StorageManager):
2107 * UserInterface/Models/Branch.js:
2108 (WebInspector.Branch.prototype.addRevision):
2109 * UserInterface/Models/CSSKeywordCompletions.js:
2110 (WebInspector.CSSKeywordCompletions.forProperty):
2111 * UserInterface/Models/CSSRule.js:
2112 (WebInspector.CSSRule.prototype.get matchedSelectors):
2113 * UserInterface/Models/CSSStyleDeclaration.js:
2114 * UserInterface/Models/Color.js:
2115 (WebInspector.Color.fromString):
2116 * UserInterface/Models/DOMNode.js:
2117 * UserInterface/Models/DOMNodeStyles.js:
2118 (WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload):
2119 * UserInterface/Views/CSSStyleDeclarationSection.js:
2120 (WebInspector.CSSStyleDeclarationSection.prototype.refresh):
2121 * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
2122 (WebInspector.CSSStyleDetailsSidebarPanel.prototype._updatePseudoClassCheckboxes):
2123 (WebInspector.CSSStyleDetailsSidebarPanel):
2124 * UserInterface/Views/ContentBrowser.js:
2125 (WebInspector.ContentBrowser.prototype._updateContentViewSelectionPathNavigationItem):
2126 * UserInterface/Views/DOMTreeElement.js:
2127 * UserInterface/Views/DebuggerSidebarPanel.js:
2128 (WebInspector.DebuggerSidebarPanel.prototype._resourceAdded):
2129 * UserInterface/Views/GeneralTreeElement.js:
2130 (WebInspector.GeneralTreeElement.prototype.addClassName):
2131 (WebInspector.GeneralTreeElement.prototype.removeClassName):
2132 * UserInterface/Views/LegacyConsoleMessageImpl.js:
2133 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsTable):
2134 * UserInterface/Views/LogContentView.js:
2135 (WebInspector.LogContentView.prototype._updateMessagesSelection):
2136 * UserInterface/Views/NavigationBar.js:
2137 (WebInspector.NavigationBar.prototype._findNavigationItem):
2138 * UserInterface/Views/Sidebar.js:
2139 (WebInspector.Sidebar.prototype.findSidebarPanel):
2140 Replace contains with includes where appropriate.
2142 2015-03-28 Joseph Pecoraro <pecoraro@apple.com>
2144 Web Inspector: Tweak node styles in ObjectTreeView
2145 https://bugs.webkit.org/show_bug.cgi?id=143179
2147 Reviewed by Timothy Hatcher.
2149 * UserInterface/Views/LogContentView.css:
2150 (.console-group-messages .outline-disclosure.single-node li):
2151 * UserInterface/Views/DOMTreeOutline.css:
2152 (.dom-tree-outline.single-node li):
2153 This style makes sense as a generic DOMTreeOutline style.
2155 * UserInterface/Views/FormattedValue.css:
2156 (.formatted-node > .dom-tree-outline):
2157 (.formatted-node > .dom-tree-outline ol):
2158 (.formatted-node > .dom-tree-outline li.hovered:not(.selected) .selection):
2159 Style for nodes in ObjectTreeView.
2161 * UserInterface/Views/ObjectTreeArrayIndexTreeElement.css:
2162 (.object-tree-array-index .index-value .formatted-node .dom-tree-outline):
2163 Styles for node in Array value.
2165 * UserInterface/Views/FormattedValue.js:
2166 (WebInspector.FormattedValue.createElementForNode):
2169 2015-03-27 Joseph Pecoraro <pecoraro@apple.com>
2171 Web Inspector: TypeProfiler doesn't work on files with ES6 Class Syntax
2172 https://bugs.webkit.org/show_bug.cgi?id=143169
2174 Reviewed by Timothy Hatcher.
2176 * UserInterface/Models/ScriptSyntaxTree.js:
2177 (WebInspector.ScriptSyntaxTree.prototype._recurse):
2178 (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):
2179 (WebInspector.ScriptSyntaxTree):
2180 Add basic support for Esprima's ES6 Class/Method/Spread nodes.
2181 There are more ES6 features that should be covered, but this
2182 covers all the features we use in Web Inspector source, so
2183 Type Profiling can work with our own source.
2185 Treat Methods like getters / setters right now because their
2186 syntax is very similiar to getters/setters. There is a bug
2187 handling generic ES6 cleanup to better name things.
2189 2015-03-27 Joseph Pecoraro <pecoraro@apple.com>
2191 Web Inspector: Uncaught TDZ Exception with Type Profiler
2192 https://bugs.webkit.org/show_bug.cgi?id=143167
2194 Reviewed by Timothy Hatcher.
2196 * UserInterface/Views/TypePropertiesSection.js:
2197 (WebInspector.TypePropertyTreeElement):
2198 Avoid TDZ issue by not using "this" before "super".
2200 * UserInterface/Models/ScriptSyntaxTree.js:
2201 (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):
2202 (WebInspector.ScriptSyntaxTree):
2203 Better handle unsupported node types by returning null and avoiding an exception.
2205 * UserInterface/Views/SourceCodeTextEditor.js:
2206 Fix an issue I saw once where the sourceCode was a Script itself.
2208 2015-03-27 Joseph Pecoraro <pecoraro@apple.com>
2210 Web Inspector: Uncaught exception while debugging, after performSearch callback line does not exists
2211 https://bugs.webkit.org/show_bug.cgi?id=143172
2213 Reviewed by Timothy Hatcher.
2215 * UserInterface/Views/SourceCodeTextEditor.js:
2216 (WebInspector.SourceCodeTextEditor.prototype.customPerformSearch.searchResultCallback):
2217 (WebInspector.SourceCodeTextEditor.prototype.customPerformSearch):
2218 Gracefully handle if the line does not exist.
2220 2015-03-27 Ryosuke Niwa <rniwa@webkit.org>
2222 ES6 Classes: Runtime error in JIT'd class calling super() with arguments and superclass has default constructor
2223 https://bugs.webkit.org/show_bug.cgi?id=142862
2225 Reviewed by Benjamin Poulain.
2227 Removed the workaround for the bug since it has been fixed by r181993.
2229 * UserInterface/Base/Object.js:
2230 * UserInterface/Models/DebuggerDashboard.js:
2231 * UserInterface/Models/NetworkTimeline.js:
2232 * UserInterface/Models/ReplayDashboard.js:
2233 * UserInterface/Models/Revision.js:
2235 2015-03-27 Joseph Pecoraro <pecoraro@apple.com>
2237 Web Inspector: Add Setter Icon for ObjectTreeView
2238 https://bugs.webkit.org/show_bug.cgi?id=143129
2240 Reviewed by Timothy Hatcher.
2242 * UserInterface/Images/Pencil.svg: Added.
2243 New icon used to indicate setter properties.
2245 * Localizations/en.lproj/localizedStrings.js:
2246 Remove "Read only" and replace with "Setter".
2248 * UserInterface/Views/ObjectTreeArrayIndexTreeElement.js:
2249 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._titleFragment):
2250 (WebInspector.ObjectTreeArrayIndexTreeElement):
2251 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
2252 (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitlePropertyStyle):
2253 (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitleAPIStyle):
2254 Update cases that created setter / getter elements.
2256 * UserInterface/Views/ObjectTreeBaseTreeElement.js:
2257 (WebInspector.ObjectTreeBaseTreeElement.prototype.createGetterElement):
2258 (WebInspector.ObjectTreeBaseTreeElement.prototype.createInteractiveGetterElement): Deleted.
2259 * UserInterface/Views/ObjectTreePropertyTreeElement.css:
2260 (.object-tree-property :matches(.getter, .setter)):
2261 (.object-tree-property .spacer):
2262 (.object-tree-property .getter):
2263 (.object-tree-property .setter):
2264 (.object-tree-property .getter + .setter):
2265 New setter element and styles. Setters are always non-interactable right now.
2267 2015-03-27 Joseph Pecoraro <pecoraro@apple.com>
2269 Web Inspector: Uncaught Exceptions with Context Menus
2270 https://bugs.webkit.org/show_bug.cgi?id=143162
2272 Reviewed by Timothy Hatcher.
2274 * UserInterface/Protocol/InspectorFrontendAPI.js:
2275 (InspectorFrontendAPI.contextMenuCleared):
2277 2015-03-27 Joseph Pecoraro <pecoraro@apple.com>
2279 Web Inspector: Disable editing in Metrics section while it is not working
2280 https://bugs.webkit.org/show_bug.cgi?id=143165
2282 Reviewed by Timothy Hatcher.
2284 * UserInterface/Views/BoxModelDetailsSectionRow.js:
2285 (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics.createElement):
2286 (WebInspector.BoxModelDetailsSectionRow.prototype._applyUserInput):
2287 Disable double click to edit while it is not working. The value setter
2288 and add methods no longer exist.
2290 2015-03-27 Joseph Pecoraro <pecoraro@apple.com>
2292 Web Inspector: Uncaught Exceptions evaluating code while paused
2293 https://bugs.webkit.org/show_bug.cgi?id=143163
2295 Reviewed by Timothy Hatcher.
2297 * UserInterface/Models/CallFrame.js:
2298 (WebInspector.CallFrame.prototype.collectScopeChainVariableNames):
2299 We define a property named "valueForCaseInsensitiveKey" on Object.prototype
2300 that is readonly. So we should avoid Object.prototype when building our
2301 result list. This should probably move to a Map object eventually.
2303 2015-03-27 Joseph Pecoraro <pecoraro@apple.com>
2305 Web Inspector: Remove unused testing properties
2306 https://bugs.webkit.org/show_bug.cgi?id=143156
2308 Reviewed by Timothy Hatcher.
2310 * UserInterface/Views/LegacyConsoleMessageImpl.js:
2311 (WebInspector.LegacyConsoleMessageImpl.prototype._formatMessage):
2312 * UserInterface/Views/Section.js:
2313 (WebInspector.Section.prototype.get subtitleAsTextForTest): Deleted.
2315 2015-03-27 Joseph Pecoraro <pecoraro@apple.com>
2317 Web Inspector: Uncaught Exception: TypeError: Attempted to assign to readonly - DOMNodeDetailsSidebarPanel.js
2318 https://bugs.webkit.org/show_bug.cgi?id=143139
2320 Reviewed by Timothy Hatcher.
2322 DataGridNodes do not have a selectable setter. TreeElements do.
2323 DataGridNodes are always selectable. Match current behavior by
2324 removing all instances of attempting to set the selectability
2325 which would, under strict mode, result in an error.
2327 * UserInterface/Views/ApplicationCacheFrameContentView.js:
2328 (WebInspector.ApplicationCacheFrameContentView.prototype._populateDataGrid):
2329 * UserInterface/Views/CookieStorageContentView.js:
2330 (WebInspector.CookieStorageContentView.prototype._rebuildTable):
2331 * UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
2332 (WebInspector.DOMNodeDetailsSidebarPanel.prototype._createAttributesDataGrid):
2333 (WebInspector.DOMNodeDetailsSidebarPanel):
2334 * UserInterface/Views/DOMStorageContentView.js:
2335 (WebInspector.DOMStorageContentView.prototype.reset):
2336 * UserInterface/Views/DataGrid.js:
2338 2015-03-26 Timothy Hatcher <timothy@apple.com>
2340 Web Inspector: Convert more misc View classes to ES6
2341 https://bugs.webkit.org/show_bug.cgi?id=143128
2343 Reviewed by Joseph Pecoraro.
2345 * UserInterface/Views/CompletionSuggestionsView.js:
2346 * UserInterface/Views/ComputedStyleDetailsPanel.js:
2347 * UserInterface/Views/DashboardContainerView.js:
2348 * UserInterface/Views/DashboardView.js:
2349 * UserInterface/Views/DebuggerDashboardView.js:
2350 * UserInterface/Views/DefaultDashboardView.js:
2351 * UserInterface/Views/FilterBarButton.js:
2352 * UserInterface/Views/MetricsStyleDetailsPanel.js:
2353 * UserInterface/Views/ObjectPreviewView.js:
2354 * UserInterface/Views/ObjectTreeView.js:
2355 * UserInterface/Views/QuickConsole.js:
2356 * UserInterface/Views/ReplayDashboardView.js:
2357 * UserInterface/Views/RulesStyleDetailsPanel.js:
2358 * UserInterface/Views/StyleDetailsPanel.js:
2359 Converted to ES6 classes.
2361 2015-03-26 Timothy Hatcher <timothy@apple.com>
2363 Web Inspector: Convert TextEditor classes to ES6
2364 https://bugs.webkit.org/show_bug.cgi?id=143127
2366 Reviewed by Joseph Pecoraro.
2368 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
2369 Removed a comment about const, we can't use it in strict mode / classes.
2371 * UserInterface/Views/SourceCodeTextEditor.js:
2372 * UserInterface/Views/TextEditor.js:
2373 Converted to ES6 classes.
2375 2015-03-26 Nikita Vasilyev <nvasilyev@apple.com>
2377 Web Inspector: clicking on console record while REPL is focused does not select a new record
2378 https://bugs.webkit.org/show_bug.cgi?id=142171
2380 Reviewed by Timothy Hatcher.
2382 * UserInterface/Views/LogContentView.js:
2383 (WebInspector.LogContentView.prototype._mousedown):
2385 2015-03-26 Andres Gomez <agomez@igalia.com>
2387 [GTK] Web Inspector: New Images for Console Types
2388 https://bugs.webkit.org/show_bug.cgi?id=142301
2390 Reviewed by Joseph Pecoraro.
2392 Add more free icons and for the Web Inspector in GTK+.
2394 * UserInterface/Images/gtk/Eye.svg: Added.
2395 * UserInterface/Images/gtk/Frames.png: Added.
2396 * UserInterface/Images/gtk/Frames@2x.png: Added.
2397 * UserInterface/Images/gtk/FramesLarge.png: Added.
2398 * UserInterface/Images/gtk/FramesLarge@2x.png: Added.
2399 * UserInterface/Images/gtk/Reload.svg:
2400 * UserInterface/Images/gtk/ReloadFull.svg: Added.
2401 * UserInterface/Images/gtk/TypeBoolean.svg: Added.
2402 * UserInterface/Images/gtk/TypeNull.svg: Added.
2403 * UserInterface/Images/gtk/TypeNumber.svg: Added.
2404 * UserInterface/Images/gtk/TypeObject.svg: Added.
2405 * UserInterface/Images/gtk/TypeRegex.svg: Added.
2406 * UserInterface/Images/gtk/TypeString.svg: Added.
2407 * UserInterface/Images/gtk/TypeSymbol.svg: Added.
2408 * UserInterface/Images/gtk/TypeUndefined.svg: Added.
2410 2015-03-26 Joseph Pecoraro <pecoraro@apple.com>
2412 Web Inspector: ES6: Provide a better view for Classes in the console
2413 https://bugs.webkit.org/show_bug.cgi?id=142999
2415 Reviewed by Timothy Hatcher.
2417 * UserInterface/Protocol/RemoteObject.js:
2418 (WebInspector.RemoteObject):
2419 (WebInspector.RemoteObject.fromPrimitiveValue):
2420 (WebInspector.RemoteObject.fromPayload):
2421 (WebInspector.RemoteObject.prototype.get classPrototype):
2422 (WebInspector.RemoteObject.prototype.isClass):
2423 Update our RemoteObject model object for the new subtype
2424 and its unique properties.
2426 * UserInterface/Views/FormattedValue.js:
2427 (WebInspector.FormattedValue.createElementForTypesAndValue):
2428 (WebInspector.FormattedValue.createObjectTreeOrFormattedValueForRemoteObject):
2429 Better handle "class", as it is a new function subtype.
2431 * UserInterface/Views/LegacyConsoleMessageImpl.js:
2432 (WebInspector.LegacyConsoleMessageImpl):
2433 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsObject):
2434 Format a "class" with ObjectTreeView.
2436 * UserInterface/Views/ObjectTreeArrayIndexTreeElement.js:
2437 * UserInterface/Views/ObjectTreeBaseTreeElement.js:
2438 * UserInterface/Views/ObjectTreePropertyTreeElement.css:
2439 (.object-tree-property .getter.disabled):
2440 (.object-tree-property .getter:not(.disabled):hover):
2441 (.object-tree-property .getter:hover): Deleted.
2442 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
2443 In ClassAPI mode, you cannot invoke a getter since we don't have
2444 an instance to invoke it on. So disable interactivity with getters.
2446 * UserInterface/Views/ObjectTreeView.js:
2447 (WebInspector.ObjectTreeView):
2448 Update the modes to include an API mode for instances and classes.
2450 (WebInspector.ObjectTreeView.defaultModeForObject):
2451 * UserInterface/Views/SourceCodeTextEditor.js:
2452 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForObject):
2453 Simplify ObjectTree construction to automatically determine mode based
2454 on the RemoteObject that was provided.
2456 * Localizations/en.lproj/localizedStrings.js:
2459 2015-03-26 Timothy Hatcher <timothy@apple.com>
2461 Web Inspector: Convert TreeElement classes to ES6
2462 https://bugs.webkit.org/show_bug.cgi?id=143111
2464 Reviewed by Joseph Pecoraro.
2466 * UserInterface/Views/ApplicationCacheFrameTreeElement.js:
2467 * UserInterface/Views/ApplicationCacheManifestTreeElement.js:
2468 * UserInterface/Views/BreakpointTreeElement.js:
2469 * UserInterface/Views/CallFrameTreeElement.js:
2470 * UserInterface/Views/ContentFlowTreeElement.js:
2471 * UserInterface/Views/CookieStorageTreeElement.js:
2472 * UserInterface/Views/DOMStorageTreeElement.js:
2473 * UserInterface/Views/DOMTreeElement.js:
2474 * UserInterface/Views/DOMTreeOutline.js:
2475 * UserInterface/Views/DatabaseHostTreeElement.js:
2476 * UserInterface/Views/DatabaseTableTreeElement.js:
2477 * UserInterface/Views/DatabaseTreeElement.js:
2478 * UserInterface/Views/FolderTreeElement.js:
2479 * UserInterface/Views/FolderizedTreeElement.js:
2480 * UserInterface/Views/FrameTreeElement.js:
2481 * UserInterface/Views/GeneralTreeElement.js:
2482 * UserInterface/Views/IndexedDatabaseHostTreeElement.js:
2483 * UserInterface/Views/IndexedDatabaseObjectStoreIndexTreeElement.js:
2484 * UserInterface/Views/IndexedDatabaseObjectStoreTreeElement.js:
2485 * UserInterface/Views/IndexedDatabaseTreeElement.js:
2486 * UserInterface/Views/LegacyConsoleMessageImpl.js:
2487 * UserInterface/Views/LogTreeElement.js:
2488 * UserInterface/Views/NavigationSidebarPanel.js:
2489 * UserInterface/Views/ObjectTreeArrayIndexTreeElement.js:
2490 * UserInterface/Views/ObjectTreeBaseTreeElement.js:
2491 * UserInterface/Views/ObjectTreeMapEntryTreeElement.js:
2492 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
2493 * UserInterface/Views/ObjectTreeSetIndexTreeElement.js:
2494 * UserInterface/Views/ObjectTreeView.js:
2495 * UserInterface/Views/ProfileNodeTreeElement.js:
2496 * UserInterface/Views/PropertiesSection.js:
2497 * UserInterface/Views/ResourceTreeElement.js:
2498 * UserInterface/Views/ScriptTreeElement.js:
2499 * UserInterface/Views/SearchResultTreeElement.js:
2500 * UserInterface/Views/SourceCodeTimelineTreeElement.js:
2501 * UserInterface/Views/SourceCodeTreeElement.js:
2502 * UserInterface/Views/SourceMapResourceTreeElement.js:
2503 * UserInterface/Views/StorageTreeElement.js:
2504 * UserInterface/Views/TimelineDataGrid.js:
2505 * UserInterface/Views/TimelineRecordTreeElement.js:
2506 * UserInterface/Views/TreeElementStatusButton.js:
2507 * UserInterface/Views/TreeOutline.js:
2508 * UserInterface/Views/TreeOutlineDataGridSynchronizer.js:
2509 * UserInterface/Views/TypePropertiesSection.js:
2510 Converted to ES6 classes where possible.
2512 2015-03-26 Timothy Hatcher <timothy@apple.com>
2514 Web Inspector: Convert sidebar classes to ES6
2515 https://bugs.webkit.org/show_bug.cgi?id=143108
2517 Reviewed by Joseph Pecoraro.
2519 * UserInterface/Models/KeyboardShortcut.js:
2520 (WebInspector.KeyboardShortcut._handleKeyDown): Continue if callback is null.
2521 (WebInspector.KeyboardShortcut.prototype.set callback): Added.
2523 * UserInterface/Views/ApplicationCacheDetailsSidebarPanel.js:
2524 * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
2525 * UserInterface/Views/DOMDetailsSidebarPanel.js:
2526 * UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
2527 * UserInterface/Views/DebuggerSidebarPanel.js:
2528 * UserInterface/Views/DetailsSidebarPanel.js:
2529 * UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
2530 * UserInterface/Views/NavigationSidebarPanel.js:
2531 * UserInterface/Views/ProbeDetailsSidebarPanel.js:
2532 * UserInterface/Views/ResourceDetailsSidebarPanel.js:
2533 * UserInterface/Views/ResourceSidebarPanel.js:
2534 * UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
2535 * UserInterface/Views/Sidebar.js:
2536 * UserInterface/Views/SidebarPanel.js:
2537 * UserInterface/Views/TimelineSidebarPanel.js:
2538 Converted to ES6 classes.
2540 2015-03-26 Timothy Hatcher <timothy@apple.com>
2542 Web Inspector: Convert some View classes to ES6 classes
2543 https://bugs.webkit.org/show_bug.cgi?id=143107
2545 Reviewed by Joseph Pecoraro.
2547 * UserInterface/Protocol/InspectorBackend.js:
2548 * UserInterface/Protocol/InspectorFrontendAPI.js:
2549 (InspectorFrontendAPI.contextMenuItemSelected): Updated to the right function path.
2550 * UserInterface/Views/BoxModelDetailsSectionRow.js:
2551 * UserInterface/Views/BreakpointActionView.js:
2552 * UserInterface/Views/CodeMirrorAdditions.js:
2553 * UserInterface/Views/ColorPicker.js:
2554 * UserInterface/Views/ColorWheel.js:
2555 * UserInterface/Views/ContextMenu.js:
2556 * UserInterface/Views/DOMTreeElementPathComponent.js:
2557 * UserInterface/Views/DetailsSection.js:
2558 * UserInterface/Views/DetailsSectionDataGridRow.js:
2559 * UserInterface/Views/DetailsSectionGroup.js:
2560 * UserInterface/Views/DetailsSectionPropertiesRow.js:
2561 * UserInterface/Views/DetailsSectionRow.js:
2562 * UserInterface/Views/DetailsSectionSimpleRow.js:
2563 * UserInterface/Views/DetailsSectionTextRow.js:
2564 * UserInterface/Views/EditingSupport.js:
2565 * UserInterface/Views/EventListenerSection.js:
2566 * UserInterface/Views/EventListenerSectionGroup.js:
2567 * UserInterface/Views/FilterBar.js:
2568 * UserInterface/Views/FindBanner.js:
2569 * UserInterface/Views/GeneralTreeElementPathComponent.js:
2570 * UserInterface/Views/GoToLineDialog.js:
2571 * UserInterface/Views/GradientSlider.js:
2572 * UserInterface/Views/HierarchicalPathComponent.js:
2573 * UserInterface/Views/HierarchicalPathNavigationItem.js:
2574 * UserInterface/Views/HoverMenu.js:
2575 * UserInterface/Views/Popover.js:
2576 * UserInterface/Views/ProbeSetDetailsSection.js:
2577 * UserInterface/Views/ResourceTimelineDataGridNodePathComponent.js:
2578 * UserInterface/Views/SearchBar.js:
2579 * UserInterface/Views/Slider.js:
2580 Converted to ES6 classes.
2582 2015-03-26 Timothy Hatcher <timothy@apple.com>
2584 Web Inspector: Convert Base and Protocol files to ES6 classes
2585 https://bugs.webkit.org/show_bug.cgi?id=143106
2587 Reviewed by Joseph Pecoraro.
2589 * UserInterface/Base/EventListener.js:
2590 * UserInterface/Base/EventListenerSet.js:
2591 * UserInterface/Protocol/ApplicationCacheObserver.js:
2592 * UserInterface/Protocol/CSSObserver.js:
2593 * UserInterface/Protocol/ConsoleObserver.js:
2594 * UserInterface/Protocol/DOMObserver.js:
2595 * UserInterface/Protocol/DOMStorageObserver.js:
2596 * UserInterface/Protocol/DatabaseObserver.js:
2597 * UserInterface/Protocol/DebuggerObserver.js:
2598 * UserInterface/Protocol/InspectorBackend.js:
2599 * UserInterface/Protocol/InspectorObserver.js:
2600 * UserInterface/Protocol/LayerTreeObserver.js:
2601 * UserInterface/Protocol/MessageDispatcher.js:
2602 * UserInterface/Protocol/NetworkObserver.js:
2603 * UserInterface/Protocol/PageObserver.js:
2604 * UserInterface/Protocol/RemoteObject.js:
2605 * UserInterface/Protocol/ReplayObserver.js:
2606 * UserInterface/Protocol/RuntimeObserver.js:
2607 * UserInterface/Protocol/TimelineObserver.js:
2608 Converted to ES6 classes where possible.
2610 2015-03-25 Tobias Reiss <tobi+webkit@basecode.de>
2612 Web Inspector: Add ESLint "Disallow Undeclared Variables" rule and enable ES6 env
2613 https://bugs.webkit.org/show_bug.cgi?id=143062
2615 Reviewed by Joseph Pecoraro.
2617 ESLint: Add support for es6 environment and "no-undef" rule which disallows
2618 use of undeclared variables unless mentioned in a /*global */ block.
2622 2015-03-25 Nikita Vasilyev <nvasilyev@apple.com>
2624 Web Inspector: console.table with source code location look poor
2625 https://bugs.webkit.org/show_bug.cgi?id=142068
2627 Reviewed by Timothy Hatcher.
2629 * UserInterface/Views/LegacyConsoleMessageImpl.js:
2630 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsTable):
2631 Remove dataGridContainer as it is an unnecessary span element.
2632 * UserInterface/Views/LogContentView.css:
2633 (.console-messages .data-grid):
2635 2015-03-24 Joseph Pecoraro <pecoraro@apple.com>
2637 Web Inspector: IndexedDB / Databases ContentViews should have refresh button
2638 https://bugs.webkit.org/show_bug.cgi?id=142996
2640 Reviewed by Timothy Hatcher.
2642 * Localizations/en.lproj/localizedStrings.js:
2643 Remove unused strings.
2645 * UserInterface/Images/ReloadFull.svg: Added.
2646 This is the same as Reload.svg but adjusted to fill the viewbox edge to edge.
2647 The only change is to the viewbox.
2649 * UserInterface/Protocol/RemoteObject.js:
2650 (WebInspector.RemoteObject.prototype.release):
2651 Some clients would call release not knowing if this was an object or not.
2652 Act gracefully in the case that this was not an object that needs a
2655 * UserInterface/Views/DatabaseTableContentView.js:
2656 (WebInspector.DatabaseTableContentView):
2657 (WebInspector.DatabaseTableContentView.prototype.get navigationItems):
2658 (WebInspector.DatabaseTableContentView.prototype._queryError):
2659 (WebInspector.DatabaseTableContentView.prototype._refreshButtonClicked):
2660 * UserInterface/Views/IndexedDatabaseObjectStoreContentView.js:
2661 (WebInspector.IndexedDatabaseObjectStoreContentView):
2662 (WebInspector.IndexedDatabaseObjectStoreContentView.prototype.get navigationItems):
2663 (WebInspector.IndexedDatabaseObjectStoreContentView.prototype._fetchMoreData):
2664 (WebInspector.IndexedDatabaseObjectStoreContentView.prototype._refreshButtonClicked):
2665 Give the storage content views a refresh button to reload the content.
2667 2015-03-24 Joseph Pecoraro <pecoraro@apple.com>
2669 Setter should have a single formal parameter, Getter no parameters
2670 https://bugs.webkit.org/show_bug.cgi?id=142903
2672 Reviewed by Geoffrey Garen.
2674 * UserInterface/Views/GradientSlider.js:
2675 (WebInspector.GradientSliderKnob.prototype.get wellColor):
2676 Fix a getter that was incorrectly taking a parameter.
2678 2015-03-24 Tobias Reiss <tobi+webkit@basecode.de>
2680 Web Inspector: REGRESSION (r179286): ReferenceError: Can't find variable: selector
2681 https://bugs.webkit.org/show_bug.cgi?id=143022
2683 Reviewed by Timothy Hatcher.
2685 Fix a regression where a missing variable statement causes a ReferenceError.
2687 * UserInterface/Models/DOMNodeStyles.js:
2689 2015-03-24 Tobias Reiss <tobi+webkit@basecode.de>
2691 Web Inspector: Adopt ES6 Class Syntax for CSSStyleDeclarationTextEditor
2692 https://bugs.webkit.org/show_bug.cgi?id=143019
2694 Reviewed by Timothy Hatcher.
2696 - Convert CSSStyleDeclarationTextEditor to use class syntax
2697 - Convert constructor functions to constructor methods
2698 - Convert "constructor.method" to class static methods where possible
2699 - Convert all methods to method syntax, eliminate commas between methods
2700 - Convert all superclass calls in classes to use "super"
2701 - Removed FIXME from WebInspector.Object subclasses, added calls to super.
2702 - Fixed strict mode issues now that classes enforce strict mode (see below).
2704 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
2705 Many function declarations modified.
2707 2015-03-24 Joseph Pecoraro <pecoraro@apple.com>
2709 Web Inspector: Workaround issue causing uncaught exception in Inspector
2710 https://bugs.webkit.org/show_bug.cgi?id=143015
2712 Reviewed by Timothy Hatcher.
2714 Workaround <https://webkit.org/b/143012> and avoid early returning in constructors.
2716 * UserInterface/Controllers/ReplayManager.js:
2717 (WebInspector.ReplayManager.class.ReplayManager):
2719 2015-03-06 Brian J. Burg <burg@cs.washington.edu>
2721 Web Inspector: unify resizer implementations used by DataGrid and Sidebar
2722 https://bugs.webkit.org/show_bug.cgi?id=142407
2724 Reviewed by Timothy Hatcher.
2726 Both of these implementations do the same thing slightly differently. Unify the code
2727 and use the "glass pane" technique to preserve cursor while dragging over links or text.
2729 This patch implements vertical and horizontal rule orientations. Further refactorings
2730 to use this class may need to add "Indeterminate" orientation to support moving the inspector
2731 window by its fake toolbar element.
2733 * UserInterface/Main.html:
2734 * UserInterface/Views/DataGrid.css:
2735 (.data-grid .resizer):
2736 (.data-grid-resizer): Deleted.
2737 * UserInterface/Views/DataGrid.js: Store Resizer instances rather than resizer elements.
2738 Use symbols to secretly store neighbor column ids on the resizer objects. Stop using
2739 WebInspector.elementDragStart, as I would like to deprecate it in favor of Resizer instances.
2741 (WebInspector.DataGrid):
2742 (WebInspector.DataGrid.prototype._positionResizerElements):
2743 (WebInspector.DataGrid.prototype.resizerDragStarted):
2744 (WebInspector.DataGrid.prototype.resizerDragging):
2745 (WebInspector.DataGrid.prototype.resizerDragEnded):
2746 (WebInspector.DataGrid.prototype._startResizerDragging): Deleted.
2747 (WebInspector.DataGrid.prototype._resizerDragging): Deleted.
2748 (WebInspector.DataGrid.prototype._endResizerDragging): Deleted.
2749 * UserInterface/Views/Resizer.css:
2751 (.resizer.vertical-rule):
2752 (.resizer.horizontal-rule):
2753 (.glass-pane-for-drag):
2754 * UserInterface/Views/Resizer.js: Added.
2755 (WebInspector.Resizer):
2756 (WebInspector.Resizer.prototype.get element):
2757 (WebInspector.Resizer.prototype.get orientation):
2758 (WebInspector.Resizer.prototype.get initialPosition):
2759 (WebInspector.Resizer.prototype._currentPosition):
2760 (WebInspector.Resizer.prototype._resizerMouseDown):
2761 (WebInspector.Resizer.prototype._resizerMouseMoved):
2762 (WebInspector.Resizer.prototype._resizerMouseUp):
2763 * UserInterface/Views/Sidebar.css:
2764 (.sidebar > .resizer): Deleted.
2765 * UserInterface/Views/Sidebar.js:
2766 (WebInspector.Sidebar):
2767 (WebInspector.Sidebar.prototype.resizerDragStarted):
2768 (WebInspector.Sidebar.prototype.resizerDragging):
2769 (WebInspector.Sidebar.prototype.resizerDragEnded):
2770 (WebInspector.Sidebar.prototype._navigationItemSelected):
2771 (WebInspector.Sidebar.prototype._resizerMouseDown): Deleted.
2772 (WebInspector.Sidebar.prototype._resizerMouseMoved): Deleted.
2773 (WebInspector.Sidebar.prototype._resizerMouseUp): Deleted.
2775 2015-03-17 Jono Wells <jonowells@apple.com>
2777 Web Inspector: Debugger sidebar should have a filter button for breakpoints
2778 https://bugs.webkit.org/show_bug.cgi?id=142779
2780 Reviewed by Timothy Hatcher.
2782 Add the infrastructure for activation filter buttons that can appear next to the text filters at the bottom
2783 of any navigation sidebar panel. These filter bar buttons have defined within them a function that returns
2784 a boolean value that indicates whether the input, typically a tree element, should be filtered or not.
2786 This infrastructure is then used to create a filter for the debugger sidebar that, when applied, only shows
2787 scripts that have breakpoints set on them.
2789 * Localizations/en.lproj/localizedStrings.js: Updated.
2790 * UserInterface/Main.html: Files added.
2792 * UserInterface/Views/DebuggerSidebarPanel.js:
2793 (WebInspector.DebuggerSidebarPanel.showResourcesWithChildrenOnlyFilterFunction):
2794 (WebInspector.DebuggerSidebarPanel):
2795 (WebInspector.DebuggerSidebarPanel.prototype._addBreakpoint): Drive-by fix.
2796 Add filter button to filter bar.
2798 * UserInterface/Views/FilterBar.css:
2799 (.filter-bar > .navigation-bar > .item):
2800 Style filter button.
2802 * UserInterface/Views/FilterBar.js:
2803 (WebInspector.FilterBar):
2804 (WebInspector.FilterBar.prototype.get filters):
2805 (WebInspector.FilterBar.prototype.set filters):
2806 (WebInspector.FilterBar.prototype.hasActiveFilters):
2807 (WebInspector.FilterBar.prototype._handleFilterChanged):
2808 (WebInspector.FilterBar.prototype._inputFieldChanged): Deleted.
2809 Create space for filter bar buttons and set up event handlers to deal with them.
2811 * UserInterface/Views/FilterBarButton.js: Copied from Source/WebInspectorUI/UserInterface/Views/FilterBar.css.
2812 (WebInspector.FilterBarButton):
2813 (WebInspector.FilterBarButton.prototype.get filterFunction):
2814 (WebInspector.FilterBarButton.prototype.toggle):
2815 Create class for a filter bar button that stores a filter function.
2817 * UserInterface/Views/NavigationSidebarPanel.js:
2818 (WebInspector.NavigationSidebarPanel):
2819 (WebInspector.NavigationSidebarPanel.prototype.matchTreeElementAgainstFilterFunctions):
2820 (WebInspector.NavigationSidebarPanel.prototype.applyFiltersToTreeElement):
2821 (WebInspector.NavigationSidebarPanel.prototype._filterDidChange):
2822 (WebInspector.NavigationSidebarPanel.prototype._updateFilter):
2823 (WebInspector.NavigationSidebarPanel.prototype._textFilterDidChange): Deleted.
2824 Add functionality to support button filters and process their corresponding functions correctly when filtering.
2826 2015-03-22 Matt Baker <mattbaker@apple.com>
2828 Web Inspector: Adopt ES6 Class Syntax for all Controller Objects
2829 https://bugs.webkit.org/show_bug.cgi?id=142890
2831 Reviewed by Joseph Pecoraro.
2833 - Convert all UserInterface/Controllers objects to classes
2834 - Convert constructor functions to constructor methods
2835 - Convert "constructor.method" to class static methods where possible
2836 - Convert all methods to method syntax, eliminate commas between methods
2837 - Convert all superclass calls in classes to use "super"
2838 - Removed FIXME from WebInspector.Object subclasses, added calls to super.
2839 - Fixed strict mode issues now that classes enforce strict mode (see below).
2841 * Tools/PrettyPrinting/Formatter.js:
2842 * Tools/PrettyPrinting/FormatterContentBuilder.js:
2843 Updated to match corresponding files in UserInterface/Controllers.
2845 * UserInterface/Controllers/*.js:
2846 Many files modified mostly mechanically (regex find-replace).
2848 * UserInterface/Controllers/CodeMirrorCompletionController.js:
2849 * UserInterface/Controllers/FormatterContentBuilder.js:
2850 Replaced const usage with var. Use of const is prohibited in strict mode, which is implicit within a class.
2852 * UserInterface/Controllers/CodeMirrorTokenTrackingController.js:
2853 * UserInterface/Controllers/DOMTreeManager.js:
2854 Moved function declarations out of if statements. Strict mode does not allow function declarations in a lexically nested statement.
2856 2015-03-20 Nikita Vasilyev <nvasilyev@apple.com>
2858 Web Inspector: Fast typing lags in the Styles sidebar or Console
2859 https://bugs.webkit.org/show_bug.cgi?id=142919
2861 Asynchronous autocomplete causes a race condition in CodeMirror,
2862 which results in skipped characters in while typing. Completing immediately
2865 Reviewed by Timothy Hatcher.
2867 * UserInterface/Controllers/CodeMirrorCompletionController.js:
2868 (WebInspector.CodeMirrorCompletionController.prototype.hideCompletions):
2869 (WebInspector.CodeMirrorCompletionController.prototype._completeAtCurrentPosition):
2870 (WebInspector.CodeMirrorCompletionController.prototype.):
2872 2015-03-19 Joseph Pecoraro <pecoraro@apple.com>
2874 Web Inspector: Adopt ES6 Class Syntax for all Model Objects
2875 https://bugs.webkit.org/show_bug.cgi?id=142858
2877 Reviewed by Timothy Hatcher.
2879 - Convert WebInspector.Object to a class
2880 - Convert all UserInterface/Models objects to classes
2881 - Convert constructor functions to constructor methods
2882 - Convert "constructor.method" to class static methods where possible
2883 - Convert all methods to method syntax, eliminate commas between methods
2884 - Convert all superclass calls in classes to use "super"
2885 - Workaround <https://webkit.org/b/142862> and add empty constructors
2886 - Added "deprecated" prefix to addConstructorFunctions, since it is not needed with classes
2887 - Added many missing calls to super in constructors
2888 - Added FIXME to WebInspector.Object subclasses not yet moved to classes.
2889 - Cleaned up SourceMap global properties, moved to constructor instead of prototype
2890 - Cleaned up Timeline factory constructor to static "create" factory method
2891 - Fixed any style issues noticed in the mass edit
2892 - Fixed strict mode issues now that classes enforce strict mode
2893 - RunLoopTimelineRecord.js was missing a `var` for a local variable
2894 - "const" is not allowed, converted to "var"
2895 - "arguments.callee" is not allowed in strict mode
2897 * UserInterface/**/*.js:
2898 Many files modified mostly mechanically.
2900 2015-03-19 Jono Wells <jonowells@apple.com>
2902 Web Inspector: Debugger sidebar header should say "Scripts" instead of "Breakpoints", appear only on pause
2903 https://bugs.webkit.org/show_bug.cgi?id=142847
2905 Reviewed by Timothy Hatcher.
2907 Add a `paused` class on the debugger sidebar panel. Use that class to adjust the sidebar styles so that, when
2908 the debugger is not paused: there is no header for the scripts section, there is no border beneath the scripts
2909 section, and the scripts section cannot be collapsed (which could be done while the debugger is paused). The
2910 header has changed to say "Scripts" instead of "Breakpoints" when it is showing.
2912 * UserInterface/Views/DebuggerSidebarPanel.css:
2913 (.sidebar > .panel.navigation.debugger .details-section.scripts):
2914 (.sidebar > .panel.navigation.debugger .details-section.scripts .header):
2915 (.sidebar > .panel.navigation.debugger .details-section.scripts.collapsed > .content):
2916 (.sidebar > .panel.navigation.debugger.paused .details-section.scripts):
2917 (.sidebar > .panel.navigation.debugger.paused .details-section.scripts .header):
2918 (.sidebar > .panel.navigation.debugger.paused .details-section.scripts.collapsed > .content):
2919 Adjust styles to hide header and border.
2921 * UserInterface/Views/DebuggerSidebarPanel.js:
2922 (WebInspector.DebuggerSidebarPanel):
2923 (WebInspector.DebuggerSidebarPanel.prototype._debuggerDidPause):
2924 (WebInspector.DebuggerSidebarPanel.prototype._debuggerDidResume):
2925 Add a `paused` class to the debugger sidebar when it is paused.
2927 2015-03-19 Jono Wells <jonowells@apple.com>
2929 Web Inspector: FilterBar for debugger sidebar hides breakpoints for displayed resources
2930 https://bugs.webkit.org/show_bug.cgi?id=142777
2932 Reviewed by Brian Burg.
2934 Typing into the text input on the filter bar for the debugger sidebar no longer incorrectly hides the
2935 breakpoints for scripts that match the text input.
2937 * UserInterface/Views/BreakpointTreeElement.js:
2938 (WebInspector.BreakpointTreeElement.prototype.get filterableData): Added.
2940 2015-03-18 Joseph Pecoraro <pecoraro@apple.com>
2942 Web Inspector: Replace last use of ObjectPropertiesSection with ObjectTreeView
2943 https://bugs.webkit.org/show_bug.cgi?id=142834
2945 Reviewed by Timothy Hatcher.
2947 * UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
2948 (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties):
2949 Use properties only ObjectTreeView instead of ObjectPropertiesSection.
2950 This doesn't fix the functionality issues, but fixes the appearance.
2952 * UserInterface/Views/DetailsSection.css:
2953 (.details-section > .content > .group:first-child > .row.simple:first-child > *): Deleted.
2954 (body.mac-platform.legacy .details-section > .content > .group:first-child > .row.simple:first-child > *): Deleted.
2955 (.details-section > .content > .group > .row.properties:not(.empty)): Deleted.
2956 (body.mac-platform.legacy .details-section > .content > .group > .row.properties:not(.empty)): Deleted.
2957 Re-add back the small padding at the top of sections. This actually
2958 broke padding in a few sections (Event Listeners) at the expense
2959 of eliminating a few pixels of whitespace at the top of other sections.
2960 We should focus on addressing the extra whitespace separately.
2962 * UserInterface/Main.html:
2963 * UserInterface/Views/ObjectPropertiesSection.js: Removed.
2964 * UserInterface/Views/TypePropertiesSection.js:
2965 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
2966 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:
2967 Remove new unused class.
2969 2015-03-18 Joseph Pecoraro <pecoraro@apple.com>
2971 Web Inspector: Debugger Popovers and Probes should use FormattedValue/ObjectTreeView instead of Custom/ObjectPropertiesSection
2972 https://bugs.webkit.org/show_bug.cgi?id=142830
2974 Reviewed by Timothy Hatcher.
2976 * UserInterface/Views/ProbeSetDataGrid.css:
2977 (.details-section.probe-set .data-grid .object-tree > :matches(.title, .object-preview)::before):
2978 Another line-height fix for object tree disclosure triangles.
2980 * UserInterface/Views/ProbeSetDataGridNode.js:
2981 (WebInspector.ProbeSetDataGridNode.prototype.createCellContent):
2982 Create an ObjectTree / FormattedValue for the RemoteObject.
2984 * UserInterface/Views/SourceCodeTextEditor.css:
2985 (.popover .debugger-popover-content > .title):
2986 (.popover .debugger-popover-content > .body):
2987 (.popover .debugger-popover-content.function > .body):
2988 Be more specific and don't accidentally style ".title" within the body.
2990 * UserInterface/Views/SourceCodeTextEditor.js:
2991 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForObject):
2992 Show a properties only ObjectTree instead of an ObjectPropertiesSection.
2994 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForString): Deleted.
2995 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForRegExp): Deleted.
2996 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForNumber): Deleted.
2997 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForBoolean): Deleted.
2998 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForNull): Deleted.
2999 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForUndefined): Deleted.
3000 (WebInspector.SourceCodeTextEditor.prototype._showPopoverWithFormattedValue):
3001 Reduce most of these to a single popover for formatted values.
3003 2015-03-18 Joseph Pecoraro <pecoraro@apple.com>
3005 Web Inspector: Scopes sidebar should use new ObjectTreeView and not ObjectPropertiesSection
3006 https://bugs.webkit.org/show_bug.cgi?id=142808
3008 Reviewed by Timothy Hatcher.
3010 * UserInterface/Models/PropertyPath.js:
3011 (WebInspector.PropertyPath):
3012 (WebInspector.PropertyPath.emptyPropertyPathForScope):
3013 Allow a special property empty path for "Scopes". This way for a
3014 "<scopeObject>.property" we can show just the tooltip "property".
3016 * UserInterface/Views/ObjectTreeView.css:
3017 (.object-tree.properties-only > :matches(.title, .object-preview)):
3018 (.object-tree.properties-only .object-tree-outline):
3019 (.object-tree.properties-only .object-tree-property .property-name):
3020 Tweak styles for only properties view, which won't have a top-level
3021 preview and doesn't fade out enumerable properties.
3023 * UserInterface/Views/ObjectTreeView.js:
3024 (WebInspector.ObjectTreeView.prototype.get treeOutline):
3025 Access the TreeOutline.
3027 (WebInspector.ObjectTreeView.prototype.showOnlyProperties):
3028 Properties only view modifies the display slightly.
3030 (WebInspector.ObjectTreeView.prototype.appendExtraPropertyDescriptor):
3031 (WebInspector.ObjectTreeView.prototype._updateProperties):
3032 Allow the client to add its own property descriptors to display
3033 as a property in this ObjectTreeView.
3035 * UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
3036 (WebInspector.ScopeChainDetailsSidebarPanel.prototype.refresh):
3037 Switch to using an ObjectTreeView.
3039 (WebInspector.ScopeChainDetailsSidebarPanel.prototype._propertyPathIdentifierForTreeElement):
3040 (WebInspector.ScopeChainDetailsSidebarPanel.prototype._objectTreeAddHandler):
3041 (WebInspector.ScopeChainDetailsSidebarPanel.prototype._objectTreeExpandHandler):
3042 (WebInspector.ScopeChainDetailsSidebarPanel.prototype._objectTreeCollapseHandler):
3043 Keep track of what properties were expanded so we can auto-expand
3044 them again when the sidebar refreshes.
3046 * UserInterface/Main.html:
3047 * UserInterface/Views/ScopeVariableTreeElement.js: Removed.
3048 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
3049 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:
3050 Remove the now unused ScopeVariableTreeElement.js.
3052 2015-03-17 Joseph Pecoraro <pecoraro@apple.com>
3054 Web Inspector: Debugger Sidebar Icons Misaligned
3055 https://bugs.webkit.org/show_bug.cgi?id=142654
3057 Reviewed by Timothy Hatcher.
3059 The debugger sidebar content was accidentally 1px too small. The
3060 TreeOutline being inside of a .detail-section was getting a smaller
3061 font-size. We should just have the normal font-size for the
3062 debugger navigation sidebar. This matches the Resources sidebar
3063 in the TreeOutline, and icons line up better.
3065 * UserInterface/Views/DebuggerSidebarPanel.css:
3066 (.sidebar > .panel.navigation.debugger .details-section):
3068 2015-03-17 Tobias Reiss <tobi+webkit@basecode.de>
3070 Web Inspector: Removal of multiline completion hint broken in Details sidebar
3071 https://bugs.webkit.org/show_bug.cgi?id=142796
3073 Reviewed by Joseph Pecoraro.
3075 Prioritize CodeMirrorCompletionController over CSSStyleDeclarationTextEditor.
3076 Both classes control the current CodeMirror instance of the Details Sidebar.
3077 This change prevents possible race conditions during complete or delete-complete phases,
3078 especially during operations on multiple styles in one line.
3080 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
3081 (WebInspector.CSSStyleDeclarationTextEditor):
3083 2015-03-17 Matt Baker <mattbaker@apple.com>
3085 Web Inspector: Show rendering frames (and FPS) in Layout and Rendering timeline
3086 https://bugs.webkit.org/show_bug.cgi?id=142029
3088 Reviewed by Timothy Hatcher.
3090 Add UI for showing runloop records and their child records as a frame histogram,
3091 with the recording time on the x-axis and the frame duration on the y-axis. Each frame
3092 is comprised of colored regions representing the time spent in various activities (script,
3095 Eventually the Frames timeline will replace the Layout & Rendering timeline. Until the views
3096 for the new timeline are finalized the Layout & Rendering timeline will remain in place.
3098 * Localizations/en.lproj/localizedStrings.js:
3099 * UserInterface/Main.html:
3100 New string and files.
3102 * UserInterface/Controllers/TimelineManager.js:
3103 (WebInspector.TimelineManager.prototype.eventRecorded):
3104 (WebInspector.TimelineManager.prototype.pageDidLoad):
3105 (WebInspector.TimelineManager.prototype._processNestedRecords):
3106 (WebInspector.TimelineManager.prototype._processRecord):
3107 (WebInspector.TimelineManager.prototype._processEvent):
3108 (WebInspector.TimelineManager.prototype._loadNewRecording):
3109 (WebInspector.TimelineManager.prototype.eventRecorded.processRecord): Deleted.
3110 Added support for new runloop record type and nested record handling.
3112 * UserInterface/Images/Frames.png: Added.
3113 * UserInterface/Images/Frames@2x.png: Added.
3114 * UserInterface/Images/FramesLarge.png: Added.
3115 * UserInterface/Images/FramesLarge@2x.png: Added.
3116 New images for runloop timeline overview graph and runloop tree records.
3118 * UserInterface/Models/RunLoopTimelineRecord.js: Added.
3119 (WebInspector.RunLoopTimelineRecord):
3120 (WebInspector.RunLoopTimelineRecord.prototype.get children):
3121 (WebInspector.RunLoopTimelineRecord.prototype.get durationRemainder):
3122 (WebInspector.RunLoopTimelineRecord.prototype.durationForRecords.get var):
3123 Extends TimelineRecord to add child records and subframe duration details.
3125 * UserInterface/Models/Timeline.js:
3126 (WebInspector.Timeline.prototype.get displayName):
3127 (WebInspector.Timeline.prototype.get iconClassName):
3128 New UI strings and icons.
3130 * UserInterface/Models/TimelineRecord.js:
3131 * UserInterface/Views/ContentView.js:
3132 (WebInspector.ContentView):
3133 * UserInterface/Views/LayoutTimelineView.js:
3134 (WebInspector.LayoutTimelineView.prototype._layoutTimelineRecordAdded):
3135 * UserInterface/Views/TimelineRecordTreeElement.js:
3136 (WebInspector.TimelineRecordTreeElement):
3137 Added support for new runloop record type.
3139 * UserInterface/Views/RunLoopTimelineOverviewGraph.css: Added.
3140 (.timeline-overview-graph.runloop > .divider):
3141 (.timeline-overview-graph.runloop > .divider > span):
3142 New styles for runloop timeline graph.
3144 * UserInterface/Views/RunLoopTimelineOverviewGraph.js: Added.
3145 (WebInspector.RunLoopTimelineOverviewGraph):
3146 (WebInspector.RunLoopTimelineOverviewGraph.prototype.updateLayout.createFrame):
3147 (WebInspector.RunLoopTimelineOverviewGraph.prototype.get graphHeightSeconds.this):
3148 (WebInspector.RunLoopTimelineOverviewGraph.prototype.get graphHeightSeconds):
3149 (WebInspector.RunLoopTimelineOverviewGraph.prototype._updateDividers.createDividerAtPosition.get if):
3150 New overview graph for displaying TimelineRecordFrames and horizontal frame budget dividers.
3152 * UserInterface/Views/TimelineIcons.css:
3153 (.runloop-icon .icon):
3154 (.runloop-icon.large .icon):
3155 (.runloop-record .icon):
3156 * UserInterface/Views/TimelineSidebarPanel.js:
3157 New runloop icon styles.
3159 * UserInterface/Views/TimelineOverviewGraph.js:
3160 (WebInspector.TimelineOverviewGraph):
3161 Updated factory to support creation of the new overview graph.
3163 * UserInterface/Views/TimelineRecordFrame.css: Added.
3164 (.timeline-record-frame):
3165 (.timeline-record-frame > .frame):
3166 (.timeline-record-frame > .dropped):
3167 (.timeline-record-frame > .frame > .duration):
3168 (.timeline-record-frame > .frame > .duration:first-child):
3169 (.timeline-record-frame > .frame > .duration:last-child):
3170 (.timeline-record-frame > .frame > .duration.timeline-record-type-network):
3171 (.timeline-record-frame > .frame > .duration.timeline-record-type-layout):
3172 (.timeline-record-frame > .frame > .duration.timeline-record-type-script):
3173 New styles for frame bars in the runloop timeline graph.
3175 * UserInterface/Views/TimelineRecordFrame.js: Added.
3176 (WebInspector.TimelineRecordFrame):
3177 (WebInspector.TimelineRecordFrame.createCombinedFrames):
3178 (WebInspector.TimelineRecordFrame.prototype.get element):
3179 (WebInspector.TimelineRecordFrame.prototype.get duration):
3180 (WebInspector.TimelineRecordFrame.prototype.get records):
3181 (WebInspector.TimelineRecordFrame.prototype.set records):
3182 (WebInspector.TimelineRecordFrame.prototype._updateChildElements.createDurationElement):
3183 New view representing a single frame within the runloop overview graph.
3185 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
3186 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:
3189 2015-03-16 Joseph Pecoraro <pecoraro@apple.com>
3191 Web Inspector: Add more DOM Native Function parameter strings
3192 https://bugs.webkit.org/show_bug.cgi?id=142760
3194 Reviewed by Timothy Hatcher.
3196 * UserInterface/Models/NativeFunctionParameters.js:
3197 Add native parameter strings generated and hand modified
3198 for DOM built-in classes.
3200 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
3201 For native constructors "FooConstructor" the description is just
3202 the name of the Constructor not the function string.
3204 2015-03-16 Joseph Pecoraro <pecoraro@apple.com>
3206 Web Inspector: Object Previews in Indexed DB tables
3207 https://bugs.webkit.org/show_bug.cgi?id=140813
3209 Reviewed by Timothy Hatcher.
3211 * UserInterface/Views/FormattedValue.js:
3212 (WebInspector.FormattedValue.createObjectTreeOrFormattedValueForRemoteObject):
3213 Add a boolean param for ObjectTree construction if it should force allowing object expansion.
3215 * UserInterface/Views/IndexedDatabaseEntryDataGridNode.js:
3216 (WebInspector.IndexedDatabaseEntryDataGridNode.prototype.createCellContent):
3217 Switch to creating an ObjectTree or FormattedValue.
3219 * UserInterface/Views/IndexedDatabaseObjectStoreContentView.css:
3220 (.content-view.indexed-database-object-store > .data-grid tr.selected):
3221 Change row selection color to match the console's lighter blue instead of dark blue.
3223 (.content-view.indexed-database-object-store > .data-grid .object-tree > :matches(.title, .object-preview)::before):
3224 Adjust object tree disclosure triangle placement for larger line heights.
3226 (.content-view.indexed-database-object-store > .data-grid td .section .header): Deleted.
3227 (.content-view.indexed-database-object-store > .data-grid td .section .header::before): Deleted.
3228 (.content-view.indexed-database-object-store > .data-grid td .section .header .title): Deleted.
3229 (.content-view.indexed-database-object-store > .data-grid:focus tr.selected td .section .header::before): Deleted.
3230 (.content-view.indexed-database-object-store > .data-grid:focus tr.selected td .section.expanded .header::before): Deleted.
3231 (.content-view.indexed-database-object-store > .data-grid:focus tr.selected td .properties-tree li.parent::before): Deleted.
3232 (.content-view.indexed-database-object-store > .data-grid:focus tr.selected td .properties-tree li.parent.expanded::before): Deleted.
3233 (.content-view.indexed-database-object-store > .data-grid:focus tr.selected td .properties-tree li *): Deleted.
3234 Remove now unnecessary styles.
3236 * UserInterface/Views/ObjectTreeArrayIndexTreeElement.css:
3237 (.object-tree .object-tree-array-index > .icon):
3238 Increase the specificity to override ".data-grid td .icon" styles.
3240 2015-03-16 Joseph Pecoraro <pecoraro@apple.com>
3242 Web Inspector: Better Console Previews for Arrays / Small Objects
3243 https://bugs.webkit.org/show_bug.cgi?id=142322
3245 Reviewed by Timothy Hatcher.
3247 * UserInterface/Views/ObjectPreviewView.js:
3248 If there is a sub-preview, show the sub-preview.
3250 * UserInterface/Views/ObjectTreeView.js:
3251 (WebInspector.ObjectTreeView):
3252 For an ObjectTree that is not a root (e.g. one inside of
3253 an array/set/map property tree element) allow it to be
3254 expanded even if the preview is lossless.
3256 2015-03-16 Nikita Vasilyev <nvasilyev@apple.com>
3258 Web Inspector: Rename ConsoleMessage and ConsoleMessageImpl to LegacyConsoleMessage and LegacyConsoleMessageImpl respectively
3259 https://bugs.webkit.org/show_bug.cgi?id=142712
3261 As a first step of ConsoleMessage refactoring (https://bugs.webkit.org/show_bug.cgi?id=142599):
3263 - Rename WebInspector.ConsoleMessage class to WebInspector.LegacyConsoleMessage
3264 - Rename WebInspector.ConsoleMessageImpl class to WebInspector.LegacyConsoleMessageImpl
3265 - Rename ConsoleMessage.js file to LegacyConsoleMessage.js
3266 - Rename ConsoleMessageImpl file to LegacyConsoleMessageImpl.js
3268 Reviewed by Joseph Pecoraro.
3270 * UserInterface/Controllers/JavaScriptLogViewController.js:
3271 (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessage):
3272 * UserInterface/Controllers/LogManager.js:
3273 (WebInspector.LogManager.prototype.messageWasAdded):
3274 * UserInterface/Main.html:
3275 * UserInterface/Models/DefaultDashboard.js:
3276 (WebInspector.DefaultDashboard.prototype._incrementConsoleMessageType):
3277 * UserInterface/Views/ConsoleCommandResult.js:
3278 (WebInspector.ConsoleCommandResult):
3279 (WebInspector.ConsoleCommandResult.prototype.toMessageElement):
3280 * UserInterface/Views/ConsoleGroup.js:
3281 (WebInspector.ConsoleGroup.prototype.render):
3282 * UserInterface/Views/LegacyConsoleMessage.js: Renamed from Source/WebInspectorUI/UserInterface/Views/ConsoleMessage.js.
3283 (WebInspector.LegacyConsoleMessage):
3284 (WebInspector.LegacyConsoleMessage.prototype.isErrorOrWarning):
3285 (WebInspector.LegacyConsoleMessage.prototype.updateRepeatCount):
3286 (WebInspector.LegacyConsoleMessage.prototype.clone):
3287 (WebInspector.LegacyConsoleMessage.create):
3288 * UserInterface/Views/LegacyConsoleMessageImpl.js: Renamed from Source/WebInspectorUI/UserInterface/Views/ConsoleMessageImpl.js.
3289 (WebInspector.LegacyConsoleMessageImpl):
3290 (WebInspector.LegacyConsoleMessageImpl.prototype._formatMessage):
3291 (WebInspector.LegacyConsoleMessageImpl.prototype._shouldDumpStackTrace):
3292 (WebInspector.LegacyConsoleMessageImpl.prototype._shouldHideURL):
3293 (WebInspector.LegacyConsoleMessageImpl.prototype._firstNonNativeCallFrame):
3294 (WebInspector.LegacyConsoleMessageImpl.prototype.get message):
3295 (WebInspector.LegacyConsoleMessageImpl.prototype.get formattedMessage):
3296 (WebInspector.LegacyConsoleMessageImpl.prototype._linkifyLocation):
3297 (WebInspector.LegacyConsoleMessageImpl.prototype._linkifyCallFrame):
3298 (WebInspector.LegacyConsoleMessageImpl.prototype.isErrorOrWarning):
3299 (WebInspector.LegacyConsoleMessageImpl.prototype._format):
3300 (WebInspector.LegacyConsoleMessageImpl.prototype._isExpandable):
3301 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameter):
3302 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsValue):
3303 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsObject):
3304 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsString):
3305 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsNode):
3306 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsArray):
3307 (WebInspector.LegacyConsoleMessageImpl.prototype._rootPropertyPathForObject):
3308 (WebInspector.LegacyConsoleMessageImpl.prototype._userProvidedColumnNames):
3309 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsTable):
3310 (WebInspector.LegacyConsoleMessageImpl.prototype.):
3311 (WebInspector.LegacyConsoleMessageImpl.prototype.stringFormatter):
3312 (WebInspector.LegacyConsoleMessageImpl.prototype.floatFormatter):
3313 (WebInspector.LegacyConsoleMessageImpl.prototype.integerFormatter):
3314 (WebInspector.LegacyConsoleMessageImpl.prototype.styleFormatter):
3315 (WebInspector.LegacyConsoleMessageImpl.prototype.isWhitelistedProperty):
3316 (WebInspector.LegacyConsoleMessageImpl.prototype.append):
3317 (WebInspector.LegacyConsoleMessageImpl.prototype._formatWithSubstitutionString):
3318 (WebInspector.LegacyConsoleMessageImpl.prototype.decorateMessageElement):
3319 (WebInspector.LegacyConsoleMessageImpl.prototype.toMessageElement):
3320 (WebInspector.LegacyConsoleMessageImpl.prototype._populateStackTraceTreeElement):
3321 (WebInspector.LegacyConsoleMessageImpl.prototype.updateRepeatCount):
3322 (WebInspector.LegacyConsoleMessageImpl.prototype.toString):
3323 (WebInspector.LegacyConsoleMessageImpl.prototype.get text):
3324 (WebInspector.LegacyConsoleMessageImpl.prototype.isEqual):
3325 (WebInspector.LegacyConsoleMessageImpl.prototype.get stackTrace):
3326 (WebInspector.LegacyConsoleMessageImpl.prototype.clone):
3327 (WebInspector.LegacyConsoleMessageImpl.prototype.get levelString):
3328 (WebInspector.LegacyConsoleMessageImpl.prototype.get clipboardPrefixString):
3329 (WebInspector.LegacyConsoleMessageImpl.prototype.toClipboardString):
3330 * UserInterface/Views/LogContentView.js:
3331 (WebInspector.LogContentView.prototype.didAppendConsoleMessage):
3332 (WebInspector.LogContentView.prototype._messageAdded):
3333 (WebInspector.LogContentView.prototype._filterMessages):
3334 (WebInspector.LogContentView.prototype._reappendProvisionalMessages):
3335 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
3336 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:
3338 2015-03-16 Commit Queue <commit-queue@webkit.org>
3340 Unreviewed, rolling out r181517.
3341 https://bugs.webkit.org/show_bug.cgi?id=142718
3343 This patch broke GTK+ build (Requested by NVI on #webkit).
3347 "Web Inspector: Rename ConsoleMessage and ConsoleMessageImpl
3348 to LegacyConsoleMessage and LegacyConsoleMessageImpl
3350 https://bugs.webkit.org/show_bug.cgi?id=142712
3351 http://trac.webkit.org/changeset/181517
3353 2015-03-15 Nikita Vasilyev <nvasilyev@apple.com>
3355 Web Inspector: Console Scrolls Unexpectedly when Clicking inside un-selected Expanding Object
3356 https://bugs.webkit.org/show_bug.cgi?id=142655
3358 Don't scroll when selection change is triggered by clicking, e.g.
3359 only scroll on arrow up and down key press events.
3361 Reviewed by Joseph Pecoraro.
3363 * UserInterface/Views/LogContentView.js:
3364 (WebInspector.LogContentView.prototype._mousemove):
3365 (WebInspector.LogContentView.prototype._updateMessagesSelection):
3366 (WebInspector.LogContentView.prototype._upArrowWasPressed):
3367 (WebInspector.LogContentView.prototype._downArrowWasPressed):
3369 2015-03-15 Nikita Vasilyev <nvasilyev@apple.com>
3371 Web Inspector: Rename ConsoleMessage and ConsoleMessageImpl to LegacyConsoleMessage and LegacyConsoleMessageImpl respectively
3372 https://bugs.webkit.org/show_bug.cgi?id=142712
3374 As a first step of ConsoleMessage refactoring (https://bugs.webkit.org/show_bug.cgi?id=142599):
3376 - Rename WebInspector.ConsoleMessage class to WebInspector.LegacyConsoleMessage
3377 - Rename WebInspector.ConsoleMessageImpl class to WebInspector.LegacyConsoleMessageImpl
3378 - Rename ConsoleMessage.js file to LegacyConsoleMessage.js
3379 - Rename ConsoleMessageImpl file to LegacyConsoleMessageImpl.js
3381 Reviewed by Joseph Pecoraro.
3383 * UserInterface/Controllers/JavaScriptLogViewController.js:
3384 (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessage):
3385 * UserInterface/Controllers/LogManager.js:
3386 (WebInspector.LogManager.prototype.messageWasAdded):
3387 * UserInterface/Main.html:
3388 * UserInterface/Models/DefaultDashboard.js:
3389 (WebInspector.DefaultDashboard.prototype._incrementConsoleMessageType):
3390 * UserInterface/Views/ConsoleCommandResult.js:
3391 (WebInspector.ConsoleCommandResult):
3392 (WebInspector.ConsoleCommandResult.prototype.toMessageElement):
3393 * UserInterface/Views/ConsoleGroup.js:
3394 (WebInspector.ConsoleGroup.prototype.render):
3395 * UserInterface/Views/LegacyConsoleMessage.js: Renamed from Source/WebInspectorUI/UserInterface/Views/ConsoleMessage.js.
3396 (WebInspector.LegacyConsoleMessage):
3397 (WebInspector.LegacyConsoleMessage.prototype.isErrorOrWarning):
3398 (WebInspector.LegacyConsoleMessage.prototype.updateRepeatCount):
3399 (WebInspector.LegacyConsoleMessage.prototype.clone):
3400 (WebInspector.LegacyConsoleMessage.create):
3401 * UserInterface/Views/LegacyConsoleMessageImpl.js: Renamed from Source/WebInspectorUI/UserInterface/Views/ConsoleMessageImpl.js.
3402 (WebInspector.LegacyConsoleMessageImpl):
3403 (WebInspector.LegacyConsoleMessageImpl.prototype._formatMessage):
3404 (WebInspector.LegacyConsoleMessageImpl.prototype._shouldDumpStackTrace):
3405 (WebInspector.LegacyConsoleMessageImpl.prototype._shouldHideURL):
3406 (WebInspector.LegacyConsoleMessageImpl.prototype._firstNonNativeCallFrame):
3407 (WebInspector.LegacyConsoleMessageImpl.prototype.get message):
3408 (WebInspector.LegacyConsoleMessageImpl.prototype.get formattedMessage):
3409 (WebInspector.LegacyConsoleMessageImpl.prototype._linkifyLocation):
3410 (WebInspector.LegacyConsoleMessageImpl.prototype._linkifyCallFrame):
3411 (WebInspector.LegacyConsoleMessageImpl.prototype.isErrorOrWarning):
3412 (WebInspector.LegacyConsoleMessageImpl.prototype._format):
3413 (WebInspector.LegacyConsoleMessageImpl.prototype._isExpandable):
3414 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameter):
3415 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsValue):
3416 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsObject):
3417 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsString):
3418 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsNode):
3419 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsArray):
3420 (WebInspector.LegacyConsoleMessageImpl.prototype._rootPropertyPathForObject):
3421 (WebInspector.LegacyConsoleMessageImpl.prototype._userProvidedColumnNames):
3422 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsTable):
3423 (WebInspector.LegacyConsoleMessageImpl.prototype.):
3424 (WebInspector.LegacyConsoleMessageImpl.prototype.stringFormatter):
3425 (WebInspector.LegacyConsoleMessageImpl.prototype.floatFormatter):
3426 (WebInspector.LegacyConsoleMessageImpl.prototype.integerFormatter):
3427 (WebInspector.LegacyConsoleMessageImpl.prototype.styleFormatter):
3428 (WebInspector.LegacyConsoleMessageImpl.prototype.isWhitelistedProperty):
3429 (WebInspector.LegacyConsoleMessageImpl.prototype.append):
3430 (WebInspector.LegacyConsoleMessageImpl.prototype._formatWithSubstitutionString):
3431 (WebInspector.LegacyConsoleMessageImpl.prototype.decorateMessageElement):
3432 (WebInspector.LegacyConsoleMessageImpl.prototype.toMessageElement):
3433 (WebInspector.LegacyConsoleMessageImpl.prototype._populateStackTraceTreeElement):
3434 (WebInspector.LegacyConsoleMessageImpl.prototype.updateRepeatCount):
3435 (WebInspector.LegacyConsoleMessageImpl.prototype.toString):
3436 (WebInspector.LegacyConsoleMessageImpl.prototype.get text):
3437 (WebInspector.LegacyConsoleMessageImpl.prototype.isEqual):
3438 (WebInspector.LegacyConsoleMessageImpl.prototype.get stackTrace):
3439 (WebInspector.LegacyConsoleMessageImpl.prototype.clone):
3440 (WebInspector.LegacyConsoleMessageImpl.prototype.get levelString):
3441 (WebInspector.LegacyConsoleMessageImpl.prototype.get clipboardPrefixString):
3442 (WebInspector.LegacyConsoleMessageImpl.prototype.toClipboardString):
3443 * UserInterface/Views/LogContentView.js:
3444 (WebInspector.LogContentView.prototype.didAppendConsoleMessage):
3445 (WebInspector.LogContentView.prototype._messageAdded):
3446 (WebInspector.LogContentView.prototype._filterMessages):
3447 (WebInspector.LogContentView.prototype._reappendProvisionalMessages):
3448 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
3449 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:
3451 2015-03-12 Jono Wells <jonowells@apple.com>
3453 Web Inspector: Debugger sidebar should group global breakpoints together
3454 https://bugs.webkit.org/show_bug.cgi?id=142607
3456 Reviewed by Timothy Hatcher.
3458 Update the DebuggerSidebarPanel class to hold global breakpoints such as "All Exceptions" in one container. This
3459 will be the place future such breakpoints are added.
3461 * Localizations/en.lproj/localizedStrings.js: Added string.
3462 * UserInterface/Main.html: Small rearrangement.
3464 * UserInterface/Views/DebuggerSidebarPanel.js: Change how exception breaking options are displayed.
3465 (WebInspector.DebuggerSidebarPanel):
3466 (WebInspector.DebuggerSidebarPanel.prototype._treeElementSelected):
3467 (WebInspector.DebuggerSidebarPanel.prototype._compareTopLevelTreeElements):
3469 * UserInterface/Views/FolderTreeElement.js: Support additional classes for icons.
3470 * UserInterface/Views/ResourceSidebarPanel.js: Change call to FolderTreeElement constructor.
3472 2015-03-12 Joseph Pecoraro <pecoraro@apple.com>
3474 Web Inspector: Console Errors during provisional document loads get lost with "Clear Log on Reload"
3475 https://bugs.webkit.org/show_bug.cgi?id=142603
3477 Reviewed by Timothy Hatcher.
3479 * UserInterface/Views/LogContentView.js:
3480 (WebInspector.LogContentView.prototype._messageAdded):
3481 (WebInspector.LogContentView.prototype._provisionalLoadStarted):
3482 Detect a provisional load has started to start save messages that come in at this time.
3484 (WebInspector.LogContentView.prototype._sessionStarted):
3485 Reappend provisional load messages if we auto-cleared.
3487 (WebInspector.LogContentView.prototype._reappendProvisionalMessages):
3488 (WebInspector.LogContentView.prototype._clearProvisionalState):
3489 Helpers for dealing with the provisional loading state.
3491 2015-03-11 Joseph Pecoraro <pecoraro@apple.com>
3493 Web Inspector: CSS parser errors in the console should include column numbers
3494 https://bugs.webkit.org/show_bug.cgi?id=114313
3496 Reviewed by Darin Adler.
3498 * UserInterface/Views/ConsoleMessageImpl.js:
3499 (WebInspector.ConsoleMessageImpl.prototype._linkifyLocation):
3500 Column numbers in console messages are also 1 based and should be adjusted.
3502 2015-03-11 Commit Queue <commit-queue@webkit.org>
3504 Unreviewed, rolling out r181367.
3505 https://bugs.webkit.org/show_bug.cgi?id=142581
3507 Caused crashes on the debug bots (Requested by cdumez on
3512 "Web Inspector: CSS parser errors in the console should
3513 include column numbers"
3514 https://bugs.webkit.org/show_bug.cgi?id=114313
3515 http://trac.webkit.org/changeset/181367
3517 2015-03-11 Joseph Pecoraro <pecoraro@apple.com>
3519 Web Inspector: Reload after Global Search results in empty Resources Sidebar.
3520 https://bugs.webkit.org/show_bug.cgi?id=142572
3522 Reviewed by Timothy Hatcher.
3524 If you reload when the search content tree outline is showing, break out
3525 to show the resource tree outline.
3527 * UserInterface/Views/ResourceSidebarPanel.js:
3528 (WebInspector.ResourceSidebarPanel.prototype._showResourcesContentTreeOutline):
3529 (WebInspector.ResourceSidebarPanel.prototype._showSearchContentTreeOutline):
3531 2015-03-11 Joseph Pecoraro <pecoraro@apple.com>
3533 Web Inspector: SearchResultTreeElement.representedObject is missing a saveIdentityToCookie implementation
3534 https://bugs.webkit.org/show_bug.cgi?id=134698
3536 Reviewed by Timothy Hatcher.
3538 This will restore selection of a global search tree element if you
3539 close and reopen the inspector in such a case.
3541 * UserInterface/Models/DOMSearchMatchObject.js:
3542 (WebInspector.DOMSearchMatchObject.prototype.get resource):
3543 (WebInspector.DOMSearchMatchObject.titleForDOMNode):
3544 Cookie has the resource URL, DOM Node title, and text range.
3546 * UserInterface/Models/SourceCodeSearchMatchObject.js:
3547 (WebInspector.SourceCodeSearchMatchObject.prototype.get sourceCodeTextRange):
3548 Cookie has the source code URL and text range.
3550 2015-03-10 Joseph Pecoraro <pecoraro@apple.com>
3552 Web Inspector: CSS parser errors in the console should include column numbers
3553 https://bugs.webkit.org/show_bug.cgi?id=114313
3555 Reviewed by Benjamin Poulain.
3557 * UserInterface/Views/ConsoleMessageImpl.js:
3558 (WebInspector.ConsoleMessageImpl.prototype._linkifyLocation):
3559 Column numbers in console messages are also 1 based and should be adjusted.
3561 2015-03-10 Joseph Pecoraro <pecoraro@apple.com>
3563 Web Inspector: console.error output broken, does not produce ObjectTree
3564 https://bugs.webkit.org/show_bug.cgi?id=142554
3566 Reviewed by Timothy Hatcher.
3568 * UserInterface/Models/IssueMessage.js:
3569 (WebInspector.IssueMessage):
3570 * UserInterface/Protocol/ConsoleObserver.js:
3571 (WebInspector.ConsoleObserver.prototype.messageAdded):
3573 2015-03-10 Saam Barati <saambarati1@gmail.com>
3575 Web Inspector: Destructuring function parameters should show type information
3576 https://bugs.webkit.org/show_bug.cgi?id=142233
3578 Reviewed by Joseph Pecoraro.
3580 JSC supports a function's formal parameter being a destructuring pattern,
3581 and so should the type profiler in the Inspector. This was just an oversight
3582 not to have this in bug 141215.
3584 This patch also does a bit of refactoring to not have duplicate code
3585 that traverses AST nodes in TypeTokenAnnotator and ScriptSyntaxTree.
3586 Before, both of these classes were responsible for traversing the AST
3587 in an identical way, this is bad. Now, ScriptSyntaxTree contains the
3588 canonical implementation of how the AST should be traversed and which
3589 AST nodes should be collected for type profiling. ScriptSyntaxTree will
3590 pass this information back to TypeTokenAnnotator.
3592 * UserInterface/Controllers/TypeTokenAnnotator.js:
3593 (WebInspector.TypeTokenAnnotator.prototype._insertTypeToken):
3594 (WebInspector.TypeTokenAnnotator.prototype._insertTypeTokensForEachNode): Deleted.
3595 * UserInterface/Models/ScriptSyntaxTree.js:
3596 (WebInspector.ScriptSyntaxTree.prototype.):
3597 (WebInspector.ScriptSyntaxTree.prototype.updateTypes):
3598 (WebInspector.ScriptSyntaxTree.prototype._gatherIdentifiersInDeclaration):
3599 (WebInspector.ScriptSyntaxTree.prototype.gatherIdentifiersInVariableDeclaration): Deleted.
3601 2015-03-09 Joseph Pecoraro <pecoraro@apple.com>
3603 Web Inspector: Inline Error / Warning message for Issues
3604 https://bugs.webkit.org/show_bug.cgi?id=142520
3606 Reviewed by Timothy Hatcher.
3608 * Localizations/en.lproj/localizedStrings.js:
3609 * UserInterface/Main.html:
3610 New strings and new files.
3612 * UserInterface/Controllers/IssueManager.js:
3613 (WebInspector.IssueManager.prototype.issueWasAdded):
3614 * UserInterface/Models/IssueMessage.js:
3615 (WebInspector.IssueMessage):
3616 (WebInspector.IssueMessage.prototype.get columnNumber):
3617 * UserInterface/Protocol/ConsoleObserver.js:
3618 (WebInspector.ConsoleObserver.prototype.messageAdded):
3619 Correctly pass the column number into IssueMessage.
3621 * UserInterface/Models/LineWidget.js:
3622 (WebInspector.LineWidget):
3623 (WebInspector.LineWidget.prototype.get codeMirrorLineWidget):
3624 (WebInspector.LineWidget.prototype.get widgetElement):
3625 Create a new Model class for a LineWidget. The root element
3626 should never change, but its children can be updated.
3628 * UserInterface/Views/SourceCodeTextEditor.css:
3629 (.source-code.text-editor .CodeMirror-linewidget):
3630 Override styles so that widgets can overlap line content.
3632 (.source-code.text-editor > .CodeMirror .issue-widget):
3633 (.source-code.text-editor > .CodeMirror .issue-widget.inline):
3634 Float issue widgets to the right side of the editor.
3636 (.source-code.text-editor > .CodeMirror .issue-widget > .arrow):
3637 (.source-code.text-editor > .CodeMirror .issue-widget.inline > .arrow):
3638 Pure CSS arrow for widgets on the same line as their issue.
3640 (.source-code.text-editor > .CodeMirror .issue-widget > .icon):
3641 (.source-code.text-editor > .CodeMirror .issue-widget > .icon.icon-warning):
3642 (.source-code.text-editor > .CodeMirror .issue-widget > .icon.icon-error):
3643 Issue icon styles for the different issue types.
3645 (.source-code.text-editor > .CodeMirror .issue-widget.warning):
3646 (.source-code.text-editor > .CodeMirror .issue-widget.inline.warning):
3647 (.source-code.text-editor > .CodeMirror .issue-widget.inline.warning > .arrow):
3648 (.source-code.text-editor > .CodeMirror .issue-widget.error):
3649 (.source-code.text-editor > .CodeMirror .issue-widget.inline.error):
3650 (.source-code.text-editor > .CodeMirror .issue-widget.inline.error > .arrow):
3651 Different colors for the different issue types.
3653 (.source-code.text-editor > .CodeMirror .issue-widget > .text):
3654 (.source-code.text-editor > .CodeMirror .issue-widget.inline > .text):
3655 Text positioning when on the same line or when expanded.
3657 * UserInterface/Views/SourceCodeTextEditor.js:
3658 (WebInspector.SourceCodeTextEditor.prototype._addIssue):
3659 (WebInspector.SourceCodeTextEditor.prototype._iconClassNameForIssueLevel):
3660 (WebInspector.SourceCodeTextEditor.prototype._updateIssueWidgetForIssues):
3661 (WebInspector.SourceCodeTextEditor.prototype._isWidgetToggleable):
3662 (WebInspector.SourceCodeTextEditor.prototype._handleWidgetClick):
3663 Create widgets for issues.
3665 (WebInspector.SourceCodeTextEditor.prototype._contentDidPopulate):
3666 (WebInspector.SourceCodeTextEditor.prototype.textEditorUpdatedFormatting):
3667 (WebInspector.SourceCodeTextEditor.prototype._clearWidgets):
3668 (WebInspector.SourceCodeTextEditor.prototype._reinsertAllIssues):
3669 Update all widgets in certain cases.
3671 * UserInterface/Views/TextEditor.js:
3672 (WebInspector.TextEditor.prototype.addStyleClassToLine):
3673 This assertion is known to happen for issues added to an editor
3674 before the content has loaded.
3676 (WebInspector.TextEditor.prototype.createWidgetForLine):
3677 Create a widget for a line.
3679 2015-03-06 Joseph Pecoraro <pecoraro@apple.com>
3681 Web Inspector: JS Pretty Printing: "case" or "default" outside of switch causes unbalanced indentation
3682 https://bugs.webkit.org/show_bug.cgi?id=142428
3684 Reviewed by Timothy Hatcher.
3686 * Tools/PrettyPrinting/CodeMirrorFormatters.js:
3687 * UserInterface/Views/CodeMirrorFormatters.js:
3688 Fix "case" and "default" indentation rules to only happen inside a switch.
3690 * Tools/PrettyPrinting/js-tests/switch-case-default-expected.js:
3691 * Tools/PrettyPrinting/js-tests/switch-case-default.js:
3692 Add tests for "case" and "default" nested inside and outside of switches.
3694 2015-03-06 Joseph Pecoraro <pecoraro@apple.com>
3696 Web Inspector: ES6: Improved Support for Iterator Objects
3697 https://bugs.webkit.org/show_bug.cgi?id=142420
3699 Reviewed by Timothy Hatcher.
3701 * UserInterface/Views/ConsoleMessageImpl.js:
3702 (WebInspector.ConsoleMessageImpl):
3703 Treat an iterator like an object.
3705 * UserInterface/Views/ObjectPreviewView.js:
3706 Output iterator previews with []s, not {}s.
3708 2015-03-06 Joseph Pecoraro <pecoraro@apple.com>
3710 Web Inspector: Adopt Object Literal Method Property Syntax
3711 https://bugs.webkit.org/show_bug.cgi?id=142409
3713 Reviewed by Timothy Hatcher.
3715 Mechanical change touching lots of files.
3717 2015-03-06 Joseph Pecoraro <pecoraro@apple.com>
3719 Web Inspector: Adopt Object Literal Shorthand Property Construction Syntax
3720 https://bugs.webkit.org/show_bug.cgi?id=142374
3722 Reviewed by Timothy Hatcher.
3724 Mechanical change touching lots of files.
3726 2015-03-06 Jono Wells <jonowells@apple.com>
3728 Web Inspector: Populate Debugger sidebar with all debuggable resources
3729 https://bugs.webkit.org/show_bug.cgi?id=141232
3731 Reviewed by Timothy Hatcher.
3733 All debuggable resources now show in the debugger sidebar. The _resourceAdded handler now adds a script resource
3734 to the sidebar regardless of whether it has any breakpoints set on it. The new function
3735 _getTreeElementForSourceCodeAndAddToContentTreeOutline adds the element to the debugger sidebar before
3736 _addBreakpointsForSourceCode is called. Removing all breakpoints from a resource no longer removes that
3737 resource from the debugger sidebar. TreeOutline.prototype.removeChild has been updated so the disclosure
3738 button will disappear and reappear correctly when removing/adding breakpoints.
3740 * UserInterface/Views/DebuggerSidebarPanel.js:
3741 (WebInspector.DebuggerSidebarPanel.prototype._addBreakpoint): Expand resource if first breakpoint is added.
3742 (WebInspector.DebuggerSidebarPanel.prototype._getTreeElementForSourceCodeAndAddToContentTreeOutline): Created.
3743 (WebInspector.DebuggerSidebarPanel.prototype._resourceAdded): Checks resource type and adds scripts to sidebar.
3744 (WebInspector.DebuggerSidebarPanel.prototype._mainResourceChanged):
3745 (WebInspector.DebuggerSidebarPanel.prototype._scriptAdded):
3746 (WebInspector.DebuggerSidebarPanel.prototype._removeBreakpointTreeElement): No longer removes empty parent.
3747 (WebInspector.DebuggerSidebarPanel.prototype._treeElementSelected): Displays scripts without breakpoints now.
3749 * UserInterface/Views/GeneralTreeElement.js:
3750 (WebInspector.GeneralTreeElement.prototype.get disclosureButton): Drive-by fix. Unused. Deleted.
3752 * UserInterface/Views/TreeOutline.js:
3753 (TreeOutline.prototype.removeChild):
3754 Remove parent class and set hasChildren to false if necessary to properly hide and reveal disclosure button
3755 for elements whose children have been removed.
3757 2015-03-05 Joseph Pecoraro <pecoraro@apple.com>
3759 Web Inspector: Follow-up fixes to ObjectTreeBaseTreeElement
3760 https://bugs.webkit.org/show_bug.cgi?id=142367
3762 Reviewed by Timothy Hatcher.
3764 * UserInterface/Views/ObjectTreeMapEntryTreeElement.js:
3765 (WebInspector.ObjectTreeMapEntryTreeElement.prototype.propertyPathType):
3766 * UserInterface/Views/ObjectTreeSetIndexTreeElement.js:
3767 (WebInspector.ObjectTreeSetIndexTreeElement.prototype.resolvedValuePropertyPath):
3768 (WebInspector.ObjectTreeSetIndexTreeElement.prototype._titleFragment):
3770 2015-03-05 Tobias Reiss <tobi+webkit@basecode.de>
3772 Web Inspector: console.debug/info should show up in Log Console Filter
3773 https://bugs.webkit.org/show_bug.cgi?id=142300
3775 Reviewed by Joseph Pecoraro.
3777 Add WebInspector.ConsoleMessage.MessageLevel.Debug case that allows console.debug/info
3778 to show up in Log Console Filter.
3780 * UserInterface/Views/LogContentView.js:
3781 (WebInspector.LogContentView.prototype._filterMessages):
3783 2015-03-05 Joseph Pecoraro <pecoraro@apple.com>
3785 Web Inspector: Add ObjectTreeBaseTreeElement to share functionality
3786 https://bugs.webkit.org/show_bug.cgi?id=142323
3788 Reviewed by Timothy Hatcher.
3790 By making this change:
3792 - Share lots of duplicated code.
3793 - Array / Set / Map tree elements get context menu support
3795 * UserInterface/Main.html:
3796 * UserInterface/Views/ObjectTreeBaseTreeElement.js: Added.
3797 (WebInspector.ObjectTreeBaseTreeElement):
3798 (WebInspector.ObjectTreeBaseTreeElement.prototype.get property):
3799 (WebInspector.ObjectTreeBaseTreeElement.prototype.get propertyPath):
3800 (WebInspector.ObjectTreeBaseTreeElement.prototype.oncontextmenu):
3801 (WebInspector.ObjectTreeBaseTreeElement.prototype.resolvedValue):
3802 (WebInspector.ObjectTreeBaseTreeElement.prototype.resolvedValuePropertyPath):
3803 (WebInspector.ObjectTreeBaseTreeElement.prototype.thisPropertyPath):
3804 (WebInspector.ObjectTreeBaseTreeElement.prototype.hadError):
3805 (WebInspector.ObjectTreeBaseTreeElement.prototype.propertyPathType):
3806 (WebInspector.ObjectTreeBaseTreeElement.prototype.propertyPathString):
3807 (WebInspector.ObjectTreeBaseTreeElement.prototype.createInteractiveGetterElement):
3808 (WebInspector.ObjectTreeBaseTreeElement.prototype.createReadOnlyIconElement):
3809 New file, copying most of the code from PropertyTreeElement so it can be shared.
3811 * UserInterface/Views/ObjectTreeArrayIndexTreeElement.js:
3812 (WebInspector.ObjectTreeArrayIndexTreeElement):
3813 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype.invokedGetter):
3814 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._titleFragment):
3815 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype.get property): Deleted.
3816 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._resolvedValue): Deleted.
3817 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._propertyPathType): Deleted.
3818 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._resolvedValuePropertyPath): Deleted.
3819 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._thisPropertyPath): Deleted.
3820 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._propertyPathString): Deleted.
3821 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._updateTitle): Deleted.
3822 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._createInteractiveGetterElement.): Deleted.
3823 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._createReadOnlyIconElement): Deleted.
3824 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
3825 (WebInspector.ObjectTreePropertyTreeElement):
3826 (WebInspector.ObjectTreePropertyTreeElement.prototype.invokedGetter):
3827 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateHasChildren):
3828 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTooltips):
3829 (WebInspector.ObjectTreePropertyTreeElement.prototype._titleFragment):
3830 (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitlePrototype):
3831 (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitlePropertyStyle):
3832 (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitleAPIStyle):
3833 (WebInspector.ObjectTreePropertyTreeElement.prototype._alwaysDisplayAsProperty):
3834 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateChildren):
3835 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateChildrenInternal):
3836 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateEntries):
3837 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateProperties):
3838 (WebInspector.ObjectTreePropertyTreeElement.prototype.get property): Deleted.
3839 (WebInspector.ObjectTreePropertyTreeElement.prototype.oncontextmenu): Deleted.
3840 (WebInspector.ObjectTreePropertyTreeElement.prototype._resolvedValue): Deleted.
3841 (WebInspector.ObjectTreePropertyTreeElement.prototype._propertyPathType): Deleted.
3842 (WebInspector.ObjectTreePropertyTreeElement.prototype._resolvedValuePropertyPath): Deleted.
3843 (WebInspector.ObjectTreePropertyTreeElement.prototype._thisPropertyPath): Deleted.
3844 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTitleAndIcon): Deleted.
3845 (WebInspector.ObjectTreePropertyTreeElement.prototype._createInteractiveGetterElement.): Deleted.
3846 (WebInspector.ObjectTreePropertyTreeElement.prototype._createReadOnlyIconElement): Deleted.
3847 (WebInspector.ObjectTreePropertyTreeElement.prototype): Deleted.
3848 Subclass ObjectTreeBaseTreeElement and eliminate the code now
3849 automatically handled by the base class.
3851 * UserInterface/Views/ObjectTreeMapEntryTreeElement.js:
3852 (WebInspector.ObjectTreeMapEntryTreeElement):
3853 (WebInspector.ObjectTreeMapEntryTreeElement.prototype.resolvedValue):
3854 (WebInspector.ObjectTreeMapEntryTreeElement.prototype._titleFragment):
3855 (WebInspector.ObjectTreeMapEntryTreeElement.prototype._propertyPathString): Deleted.
3856 * UserInterface/Views/ObjectTreeSetIndexTreeElement.js: