1 2015-04-07 Joseph Pecoraro <pecoraro@apple.com>
3 Web Inspector: ES6: Show Symbol properties on Objects
4 https://bugs.webkit.org/show_bug.cgi?id=141279
6 Reviewed by Timothy Hatcher.
8 * Localizations/en.lproj/localizedStrings.js:
9 * UserInterface/Models/PropertyDescriptor.js:
10 (WebInspector.PropertyDescriptor.get symbol):
12 * UserInterface/Protocol/RemoteObject.js:
13 (WebInspector.RemoteObject.wrappedCallback):
14 Update new PropertyDescriptor call site.
16 * UserInterface/Views/ObjectTreeBaseTreeElement.js:
17 (WebInspector.ObjectTreeBaseTreeElement._logSymbolProperty):
18 Provide a context menu for rows with Symbol properties to log
19 the Symbol property, and therefore get a reference to it.
21 * UserInterface/Views/ObjectTreeView.js:
22 (WebInspector.ObjectTreeView.comparePropertyDescriptors):
23 Better handle symbol properties in sorting.
25 * UserInterface/Views/TypePropertiesSection.js:
26 (WebInspector.TypePropertiesSection.PropertyComparator):
27 Return better value when values are equal.
29 2015-04-07 Timothy Hatcher <timothy@apple.com>
31 Web Inspector: HierarchicalPathNavigationItem's additionalClassNames should be _additionalClassNames
32 https://bugs.webkit.org/show_bug.cgi?id=143487
34 Reviewed by Joseph Pecoraro.
36 * UserInterface/Views/HierarchicalPathNavigationItem.js:
37 (WebInspector.HierarchicalPathNavigationItem.prototype.get _additionalClassNames):
39 2015-04-05 Joseph Pecoraro <pecoraro@apple.com>
41 Web Inspector: Add String/Array "includes" parameter display string
42 https://bugs.webkit.org/show_bug.cgi?id=143434
44 Reviewed by Darin Adler.
46 * UserInterface/Models/NativeFunctionParameters.js:
48 2015-04-05 Joseph Pecoraro <pecoraro@apple.com>
50 Web Inspector: Regression: Map instances don't expand
51 https://bugs.webkit.org/show_bug.cgi?id=143428
53 Reviewed by Brian Burg.
55 Fix uses of "this" in super() calls. Also fix a style name
56 that no longer exists and was intended to be inlined.
58 * UserInterface/Views/IndexedDatabaseObjectStoreTreeElement.js:
59 (WebInspector.IndexedDatabaseObjectStoreTreeElement):
60 * UserInterface/Views/IndexedDatabaseTreeElement.js:
61 (WebInspector.IndexedDatabaseTreeElement):
62 * UserInterface/Views/ObjectTreeMapEntryTreeElement.js:
63 (WebInspector.ObjectTreeMapEntryTreeElement):
65 2015-04-05 Nikita Vasilyev <nvasilyev@apple.com>
67 Web Inspector: ObjectTree array index hints are clipped when shown in popover
68 https://bugs.webkit.org/show_bug.cgi?id=143309
70 Reviewed by Brian Burg.
72 * UserInterface/Views/ObjectTreeArrayIndexTreeElement.css:
73 (.object-tree-array-index .index-name):
74 Add left margin that equals the width of the expand/collapse icon.
76 2015-03-31 Nikita Vasilyev <nvasilyev@apple.com>
78 Web Inspector: console.error(object) has double disclosure triangles
79 https://bugs.webkit.org/show_bug.cgi?id=142069
81 Use inline-block instead of "float: left" or "position: absolute" to
82 make layout more predictable and easier to understand.
84 Reviewed by Timothy Hatcher.
86 * UserInterface/Views/LogContentView.css:
87 (.outline-disclosure, .outline-disclosure ol):
88 (.outline-disclosure > li.parent):
89 (.outline-disclosure > li.parent::before):
90 (.outline-disclosure li.parent): Deleted.
91 (.outline-disclosure li.parent::before): Deleted.
92 * UserInterface/Views/ObjectTreePropertyTreeElement.css:
93 (.object-tree-property > .titles):
94 (.object-tree-property > .disclosure-button):
95 (.object-tree-property > .icon):
96 * UserInterface/Views/ObjectTreeView.css:
97 (.object-tree > :matches(.title, .object-preview)::before):
98 (.object-tree:not(.lossless-preview) > :matches(.title, .object-preview)):
100 2015-03-31 Jono Wells <jonowells@apple.com>
102 Web Inspector: REGRESSION: Filtering no longer works
103 https://bugs.webkit.org/show_bug.cgi?id=143099
105 Reviewed by Brian Burg.
107 Add a check for an empty array of filter functions and return true in this case to ensure text
108 and timeline filters work correctly.
110 * UserInterface/Views/NavigationSidebarPanel.js:
111 (WebInspector.NavigationSidebarPanel.prototype.matchTreeElementAgainstFilterFunctions):
113 2015-03-31 Commit Queue <commit-queue@webkit.org>
115 Unreviewed, rolling out r182186.
116 https://bugs.webkit.org/show_bug.cgi?id=143270
118 it crashes all the WebGL tests on the Debug bots (Requested by
123 "Web Inspector: add 2D/WebGL canvas instrumentation
125 https://bugs.webkit.org/show_bug.cgi?id=137278
126 http://trac.webkit.org/changeset/182186
128 2015-03-31 Matt Baker <mattbaker@apple.com>
130 Web Inspector: add 2D/WebGL canvas instrumentation infrastructure
131 https://bugs.webkit.org/show_bug.cgi?id=137278
133 Reviewed by Timothy Hatcher.
135 Added models, views, and controller classes for 2D and WebGL canvas inspection. Each canvas is shown in the
136 Resources navigation sidebar under its parent frame. Shader programs are displayed as child nodes of
137 their respective canvas. Canvases will get an associated content view and details sidebar in a later patch
138 (see https://bugs.webkit.org/show_bug.cgi?id=138941).
140 Shader programs will get an associated content view for editing shader source in a later patch (see
141 https://bugs.webkit.org/show_bug.cgi?id=138593). Individual shaders are not shown in the Resource navigation
142 sidebar, and at this time there are no plans to instrument shaders that aren't attached to a program.
144 * Localizations/en.lproj/localizedStrings.js:
145 * UserInterface/Base/Main.js:
146 (WebInspector.loaded):
147 (WebInspector.sidebarPanelForRepresentedObject):
148 * UserInterface/Base/Test.js:
149 (WebInspector.loaded):
150 * UserInterface/Main.html:
151 * UserInterface/Test.html:
152 Updated for new canvas/shader program types.
154 * UserInterface/Controllers/CanvasManager.js: Added.
155 (WebInspector.CanvasManager):
156 (WebInspector.CanvasManager.prototype.canvasesForFrame):
157 (WebInspector.CanvasManager.prototype.canvasAdded.set this):
158 (WebInspector.CanvasManager.prototype.canvasAdded):
159 (WebInspector.CanvasManager.prototype.canvasRemoved):
160 (WebInspector.CanvasManager.programDeleted.get console):
161 (WebInspector.CanvasManager.prototype.programCreated.get console):
162 (WebInspector.CanvasManager.prototype.programCreated):
163 (WebInspector.CanvasManager.prototype._mainResourceDidChange):
164 Frontend controller for canvases and their shader programs.
166 * UserInterface/Images/Canvas.svg: Added.
167 * UserInterface/Images/DocumentGL.png: Added.
168 * UserInterface/Images/DocumentGL@2x.png: Added.
169 New art for canvas and shader program tree elements.
171 * UserInterface/Models/Canvas.js: Added.
172 (WebInspector.Canvas):
173 (WebInspector.Canvas.prototype.set fromPayload):
174 (WebInspector.Canvas.displayNameForContextType):
175 (WebInspector.Canvas.resetUniqueDisplayNameNumbers):
176 (WebInspector.Canvas.prototype.get id):
177 (WebInspector.Canvas.prototype.get parentFrame):
178 (WebInspector.Canvas.prototype.get name):
179 (WebInspector.Canvas.prototype.get cssCanvas):
180 (WebInspector.Canvas.prototype.get contextType):
181 (WebInspector.Canvas.prototype.get contextAttributes):
182 (WebInspector.Canvas.prototype.get programs):
183 (WebInspector.Canvas.prototype.get displayName):
184 (WebInspector.Canvas.programForId):
185 (WebInspector.Canvas.get programWasCreated.set this):
186 (WebInspector.Canvas.prototype.get programWasCreated):
187 (WebInspector.Canvas.prototype.programWasDeleted):
188 (WebInspector.Canvas.prototype.saveIdentityToCookie):
189 Model for DOM or CSS canvas (2D or WebGL).
191 * UserInterface/Models/ShaderProgram.js: Added.
192 (WebInspector.ShaderProgram):
193 (WebInspector.ShaderProgram.prototype.get id):
194 (WebInspector.ShaderProgram.prototype.get canvas):
195 (WebInspector.ShaderProgram.prototype.get displayName):
196 (WebInspector.ShaderProgram.prototype.saveIdentityToCookie):
197 (WebInspector.ShaderProgram.prototype.updateCanvas):
198 * UserInterface/Models/WebGLContextAttributes.js: Added.
199 (WebInspector.WebGLContextAttributes):
200 (WebInspector.WebGLContextAttributes.fromPayload):
201 (WebInspector.WebGLContextAttributes.prototype.get alpha):
202 (WebInspector.WebGLContextAttributes.prototype.get depth):
203 (WebInspector.WebGLContextAttributes.prototype.get stencil):
204 (WebInspector.WebGLContextAttributes.prototype.get antialias):
205 (WebInspector.WebGLContextAttributes.prototype.get premultipliedAlpha):
206 (WebInspector.WebGLContextAttributes.prototype.get preserveDrawingBuffer):
207 Model for WebGL canvas context attributes.
209 * UserInterface/Protocol/CanvasObserver.js: Added.
210 (WebInspector.CanvasObserver.prototype.canvasAdded):
211 (WebInspector.CanvasObserver.prototype.canvasRemoved):
212 (WebInspector.CanvasObserver.prototype.programCreated):
213 (WebInspector.CanvasObserver.prototype.programDeleted):
214 (WebInspector.CanvasObserver):
215 Model for WebGL canvas shader program.
217 * UserInterface/Views/CanvasTreeElement.js: Added.
218 (WebInspector.CanvasTreeElement.validateRepresentedObject):
219 (WebInspector.CanvasTreeElement.countChildren):
220 (WebInspector.CanvasTreeElement):
221 (WebInspector.CanvasTreeElement.prototype.onexpand):
222 (WebInspector.CanvasTreeElement.prototype.oncollapse):
223 (WebInspector.CanvasTreeElement.prototype.onpopulate):
224 (WebInspector.CanvasTreeElement.prototype._programWasCreated):
225 (WebInspector.CanvasTreeElement.prototype._programWasDeleted):
226 Folderized tree element for canvases and their child objects (shader programs).
228 * UserInterface/Views/FrameTreeElement.js:
229 (WebInspector.FrameTreeElement.prototype.onattach):
230 (WebInspector.FrameTreeElement.prototype.ondetach):
231 (WebInspector.FrameTreeElement.prototype.onpopulate):
232 (WebInspector.FrameTreeElement.prototype._canvasesAvailable):
233 (WebInspector.FrameTreeElement.prototype._canvasWasAdded):
234 (WebInspector.FrameTreeElement.prototype._canvasWasRemoved):
235 Updated to support canvas tree elements.
237 * UserInterface/Views/ResourceIcons.css:
238 (.canvas-icon .icon):
239 (.shader-program-icon .icon):
240 Styles for new canvas and shader program icons.
242 * UserInterface/Views/ResourceSidebarPanel.js:
243 (WebInspector.ResourceSidebarPanel.prototype._treeElementSelected):
244 Updated for new tree element types.
246 * UserInterface/Views/ShaderProgramTreeElement.js: Added.
247 (WebInspector.ShaderProgramTreeElement):
248 Tree element for shader programs. Shown as children of CanvasTreeElement.
250 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
251 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:
253 2015-03-30 Joseph Pecoraro <pecoraro@apple.com>
255 Web Inspector: Regression: null shouldn't be expandable in object outline
256 https://bugs.webkit.org/show_bug.cgi?id=143209
258 Reviewed by Mark Lam.
260 * UserInterface/Views/FormattedValue.js:
261 (WebInspector.FormattedValue.createObjectTreeOrFormattedValueForRemoteObject):
262 When creating an object tree or formatted value, choose just a formatted value
263 for "null", since it does not have properties.
265 2015-03-30 Tobias Reiss <tobi+webkit@basecode.de>
267 Web Inspector: Add more ESLint rules that reflect the current state of the code base
268 https://bugs.webkit.org/show_bug.cgi?id=143212
270 Reviewed by Timothy Hatcher.
273 Define some utilities as globals.
274 Replace "no-comma-dangle" with "comma-dangle". "no-comma-dangle" is deprecated and does not trigger in ESLint v.0.17.1
275 Set "new-cap" to 0 due to the usage of "WebInspector.UIString".
276 Disable "no-redeclare" for now and enable it back as soon as block scoped `let` is used.
277 Disable "dot-notation", "no-shadow" and "no-use-before-define" due to a lot of hits.
278 Disable "no-inner-declarations" as this is a common pattern to save memory.
279 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
280 * UserInterface/Models/SourceCodeLocation.js:
281 It's not necessary to initialize x to undefined.
282 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
283 * UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
284 * UserInterface/Views/TextEditor.js:
285 * UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
286 Remove unused variable x.
287 * UserInterface/Views/ObjectTreeMapEntryTreeElement.js:
288 * UserInterface/Models/PropertyPath.js:
289 * UserInterface/Views/RadioButtonNavigationItem.js:
290 * UserInterface/Views/ReplayDashboardView.js:
291 * UserInterface/Models/ScriptSyntaxTree.js:
292 * UserInterface/Views/SourceCodeTextEditor.js:
293 * UserInterface/Views/SourceCodeTreeElement.js:
294 Remove trailing and unexpected whitespace.
295 * UserInterface/Views/ProbeSetDataGrid.js:
296 * UserInterface/Views/TimelineRuler.js:
297 Add missing semicolon.
298 * UserInterface/Views/TimelineDataGrid.js:
299 * UserInterface/Views/TimelineRecordFrame.js:
300 Add missing var statement.
301 * UserInterface/Views/TypeTokenView.js:
302 Remove unnecessary `bind`.
304 2015-03-28 Saam Barati <saambarati1@gmail.com>
306 Web Inspector: ES6: Better support for Symbol types in Type Profiler
307 https://bugs.webkit.org/show_bug.cgi?id=141257
309 Reviewed by Joseph Pecoraro.
311 The Web Inspector's visualization of JSC's type profiler
312 should have support for the Symbol type.
314 * UserInterface/Models/TypeSet.js:
315 (WebInspector.TypeSet):
316 (WebInspector.TypeSet.prototype.get primitiveTypeNames):
317 * UserInterface/Views/TypeTokenView.css:
318 TypeTokenView will display Symbol type tokens using the same color that
319 Symbol values are displayed as formatted values.
321 (.type-token-symbol):
322 * UserInterface/Views/TypeTokenView.js:
323 (WebInspector.TypeTokenView.prototype._displayTypeName):
324 (WebInspector.TypeTokenView):
326 2015-03-28 Joseph Pecoraro <pecoraro@apple.com>
328 Web Inspector: Adopt Array.prototype.includes and String.prototype.includes
329 https://bugs.webkit.org/show_bug.cgi?id=143176
331 Reviewed by Timothy Hatcher.
333 * UserInterface/Base/Utilities.js:
334 Remove our custom implementations of Array/String contains functions.
336 * UserInterface/Base/Main.js:
337 (WebInspector._updateContentViewForCurrentNavigationSidebar):
338 (WebInspector._contentBrowserCurrentContentViewDidChange):
339 * UserInterface/Controllers/CodeMirrorCompletionController.js:
340 (WebInspector.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions.):
341 (WebInspector.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions):
342 * UserInterface/Controllers/CodeMirrorTokenTrackingController.js:
343 (WebInspector.CodeMirrorTokenTrackingController.prototype._updateHoveredTokenInfo):
344 (WebInspector.CodeMirrorTokenTrackingController.prototype._processJavaScriptExpression):
345 * UserInterface/Controllers/FrameResourceManager.js:
346 (WebInspector.FrameResourceManager.prototype._extraDomainsActivated):
347 (WebInspector.FrameResourceManager):
348 * UserInterface/Controllers/LayerTreeManager.js:
349 (WebInspector.LayerTreeManager.prototype.layerTreeMutations):
350 * UserInterface/Controllers/StorageManager.js:
351 (WebInspector.StorageManager.prototype._extraDomainsActivated):
352 (WebInspector.StorageManager):
353 * UserInterface/Models/Branch.js:
354 (WebInspector.Branch.prototype.addRevision):
355 * UserInterface/Models/CSSKeywordCompletions.js:
356 (WebInspector.CSSKeywordCompletions.forProperty):
357 * UserInterface/Models/CSSRule.js:
358 (WebInspector.CSSRule.prototype.get matchedSelectors):
359 * UserInterface/Models/CSSStyleDeclaration.js:
360 * UserInterface/Models/Color.js:
361 (WebInspector.Color.fromString):
362 * UserInterface/Models/DOMNode.js:
363 * UserInterface/Models/DOMNodeStyles.js:
364 (WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload):
365 * UserInterface/Views/CSSStyleDeclarationSection.js:
366 (WebInspector.CSSStyleDeclarationSection.prototype.refresh):
367 * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
368 (WebInspector.CSSStyleDetailsSidebarPanel.prototype._updatePseudoClassCheckboxes):
369 (WebInspector.CSSStyleDetailsSidebarPanel):
370 * UserInterface/Views/ContentBrowser.js:
371 (WebInspector.ContentBrowser.prototype._updateContentViewSelectionPathNavigationItem):
372 * UserInterface/Views/DOMTreeElement.js:
373 * UserInterface/Views/DebuggerSidebarPanel.js:
374 (WebInspector.DebuggerSidebarPanel.prototype._resourceAdded):
375 * UserInterface/Views/GeneralTreeElement.js:
376 (WebInspector.GeneralTreeElement.prototype.addClassName):
377 (WebInspector.GeneralTreeElement.prototype.removeClassName):
378 * UserInterface/Views/LegacyConsoleMessageImpl.js:
379 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsTable):
380 * UserInterface/Views/LogContentView.js:
381 (WebInspector.LogContentView.prototype._updateMessagesSelection):
382 * UserInterface/Views/NavigationBar.js:
383 (WebInspector.NavigationBar.prototype._findNavigationItem):
384 * UserInterface/Views/Sidebar.js:
385 (WebInspector.Sidebar.prototype.findSidebarPanel):
386 Replace contains with includes where appropriate.
388 2015-03-28 Joseph Pecoraro <pecoraro@apple.com>
390 Web Inspector: Tweak node styles in ObjectTreeView
391 https://bugs.webkit.org/show_bug.cgi?id=143179
393 Reviewed by Timothy Hatcher.
395 * UserInterface/Views/LogContentView.css:
396 (.console-group-messages .outline-disclosure.single-node li):
397 * UserInterface/Views/DOMTreeOutline.css:
398 (.dom-tree-outline.single-node li):
399 This style makes sense as a generic DOMTreeOutline style.
401 * UserInterface/Views/FormattedValue.css:
402 (.formatted-node > .dom-tree-outline):
403 (.formatted-node > .dom-tree-outline ol):
404 (.formatted-node > .dom-tree-outline li.hovered:not(.selected) .selection):
405 Style for nodes in ObjectTreeView.
407 * UserInterface/Views/ObjectTreeArrayIndexTreeElement.css:
408 (.object-tree-array-index .index-value .formatted-node .dom-tree-outline):
409 Styles for node in Array value.
411 * UserInterface/Views/FormattedValue.js:
412 (WebInspector.FormattedValue.createElementForNode):
415 2015-03-27 Joseph Pecoraro <pecoraro@apple.com>
417 Web Inspector: TypeProfiler doesn't work on files with ES6 Class Syntax
418 https://bugs.webkit.org/show_bug.cgi?id=143169
420 Reviewed by Timothy Hatcher.
422 * UserInterface/Models/ScriptSyntaxTree.js:
423 (WebInspector.ScriptSyntaxTree.prototype._recurse):
424 (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):
425 (WebInspector.ScriptSyntaxTree):
426 Add basic support for Esprima's ES6 Class/Method/Spread nodes.
427 There are more ES6 features that should be covered, but this
428 covers all the features we use in Web Inspector source, so
429 Type Profiling can work with our own source.
431 Treat Methods like getters / setters right now because their
432 syntax is very similiar to getters/setters. There is a bug
433 handling generic ES6 cleanup to better name things.
435 2015-03-27 Joseph Pecoraro <pecoraro@apple.com>
437 Web Inspector: Uncaught TDZ Exception with Type Profiler
438 https://bugs.webkit.org/show_bug.cgi?id=143167
440 Reviewed by Timothy Hatcher.
442 * UserInterface/Views/TypePropertiesSection.js:
443 (WebInspector.TypePropertyTreeElement):
444 Avoid TDZ issue by not using "this" before "super".
446 * UserInterface/Models/ScriptSyntaxTree.js:
447 (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):
448 (WebInspector.ScriptSyntaxTree):
449 Better handle unsupported node types by returning null and avoiding an exception.
451 * UserInterface/Views/SourceCodeTextEditor.js:
452 Fix an issue I saw once where the sourceCode was a Script itself.
454 2015-03-27 Joseph Pecoraro <pecoraro@apple.com>
456 Web Inspector: Uncaught exception while debugging, after performSearch callback line does not exists
457 https://bugs.webkit.org/show_bug.cgi?id=143172
459 Reviewed by Timothy Hatcher.
461 * UserInterface/Views/SourceCodeTextEditor.js:
462 (WebInspector.SourceCodeTextEditor.prototype.customPerformSearch.searchResultCallback):
463 (WebInspector.SourceCodeTextEditor.prototype.customPerformSearch):
464 Gracefully handle if the line does not exist.
466 2015-03-27 Ryosuke Niwa <rniwa@webkit.org>
468 ES6 Classes: Runtime error in JIT'd class calling super() with arguments and superclass has default constructor
469 https://bugs.webkit.org/show_bug.cgi?id=142862
471 Reviewed by Benjamin Poulain.
473 Removed the workaround for the bug since it has been fixed by r181993.
475 * UserInterface/Base/Object.js:
476 * UserInterface/Models/DebuggerDashboard.js:
477 * UserInterface/Models/NetworkTimeline.js:
478 * UserInterface/Models/ReplayDashboard.js:
479 * UserInterface/Models/Revision.js:
481 2015-03-27 Joseph Pecoraro <pecoraro@apple.com>
483 Web Inspector: Add Setter Icon for ObjectTreeView
484 https://bugs.webkit.org/show_bug.cgi?id=143129
486 Reviewed by Timothy Hatcher.
488 * UserInterface/Images/Pencil.svg: Added.
489 New icon used to indicate setter properties.
491 * Localizations/en.lproj/localizedStrings.js:
492 Remove "Read only" and replace with "Setter".
494 * UserInterface/Views/ObjectTreeArrayIndexTreeElement.js:
495 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._titleFragment):
496 (WebInspector.ObjectTreeArrayIndexTreeElement):
497 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
498 (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitlePropertyStyle):
499 (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitleAPIStyle):
500 Update cases that created setter / getter elements.
502 * UserInterface/Views/ObjectTreeBaseTreeElement.js:
503 (WebInspector.ObjectTreeBaseTreeElement.prototype.createGetterElement):
504 (WebInspector.ObjectTreeBaseTreeElement.prototype.createInteractiveGetterElement): Deleted.
505 * UserInterface/Views/ObjectTreePropertyTreeElement.css:
506 (.object-tree-property :matches(.getter, .setter)):
507 (.object-tree-property .spacer):
508 (.object-tree-property .getter):
509 (.object-tree-property .setter):
510 (.object-tree-property .getter + .setter):
511 New setter element and styles. Setters are always non-interactable right now.
513 2015-03-27 Joseph Pecoraro <pecoraro@apple.com>
515 Web Inspector: Uncaught Exceptions with Context Menus
516 https://bugs.webkit.org/show_bug.cgi?id=143162
518 Reviewed by Timothy Hatcher.
520 * UserInterface/Protocol/InspectorFrontendAPI.js:
521 (InspectorFrontendAPI.contextMenuCleared):
523 2015-03-27 Joseph Pecoraro <pecoraro@apple.com>
525 Web Inspector: Disable editing in Metrics section while it is not working
526 https://bugs.webkit.org/show_bug.cgi?id=143165
528 Reviewed by Timothy Hatcher.
530 * UserInterface/Views/BoxModelDetailsSectionRow.js:
531 (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics.createElement):
532 (WebInspector.BoxModelDetailsSectionRow.prototype._applyUserInput):
533 Disable double click to edit while it is not working. The value setter
534 and add methods no longer exist.
536 2015-03-27 Joseph Pecoraro <pecoraro@apple.com>
538 Web Inspector: Uncaught Exceptions evaluating code while paused
539 https://bugs.webkit.org/show_bug.cgi?id=143163
541 Reviewed by Timothy Hatcher.
543 * UserInterface/Models/CallFrame.js:
544 (WebInspector.CallFrame.prototype.collectScopeChainVariableNames):
545 We define a property named "valueForCaseInsensitiveKey" on Object.prototype
546 that is readonly. So we should avoid Object.prototype when building our
547 result list. This should probably move to a Map object eventually.
549 2015-03-27 Joseph Pecoraro <pecoraro@apple.com>
551 Web Inspector: Remove unused testing properties
552 https://bugs.webkit.org/show_bug.cgi?id=143156
554 Reviewed by Timothy Hatcher.
556 * UserInterface/Views/LegacyConsoleMessageImpl.js:
557 (WebInspector.LegacyConsoleMessageImpl.prototype._formatMessage):
558 * UserInterface/Views/Section.js:
559 (WebInspector.Section.prototype.get subtitleAsTextForTest): Deleted.
561 2015-03-27 Joseph Pecoraro <pecoraro@apple.com>
563 Web Inspector: Uncaught Exception: TypeError: Attempted to assign to readonly - DOMNodeDetailsSidebarPanel.js
564 https://bugs.webkit.org/show_bug.cgi?id=143139
566 Reviewed by Timothy Hatcher.
568 DataGridNodes do not have a selectable setter. TreeElements do.
569 DataGridNodes are always selectable. Match current behavior by
570 removing all instances of attempting to set the selectability
571 which would, under strict mode, result in an error.
573 * UserInterface/Views/ApplicationCacheFrameContentView.js:
574 (WebInspector.ApplicationCacheFrameContentView.prototype._populateDataGrid):
575 * UserInterface/Views/CookieStorageContentView.js:
576 (WebInspector.CookieStorageContentView.prototype._rebuildTable):
577 * UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
578 (WebInspector.DOMNodeDetailsSidebarPanel.prototype._createAttributesDataGrid):
579 (WebInspector.DOMNodeDetailsSidebarPanel):
580 * UserInterface/Views/DOMStorageContentView.js:
581 (WebInspector.DOMStorageContentView.prototype.reset):
582 * UserInterface/Views/DataGrid.js:
584 2015-03-26 Timothy Hatcher <timothy@apple.com>
586 Web Inspector: Convert more misc View classes to ES6
587 https://bugs.webkit.org/show_bug.cgi?id=143128
589 Reviewed by Joseph Pecoraro.
591 * UserInterface/Views/CompletionSuggestionsView.js:
592 * UserInterface/Views/ComputedStyleDetailsPanel.js:
593 * UserInterface/Views/DashboardContainerView.js:
594 * UserInterface/Views/DashboardView.js:
595 * UserInterface/Views/DebuggerDashboardView.js:
596 * UserInterface/Views/DefaultDashboardView.js:
597 * UserInterface/Views/FilterBarButton.js:
598 * UserInterface/Views/MetricsStyleDetailsPanel.js:
599 * UserInterface/Views/ObjectPreviewView.js:
600 * UserInterface/Views/ObjectTreeView.js:
601 * UserInterface/Views/QuickConsole.js:
602 * UserInterface/Views/ReplayDashboardView.js:
603 * UserInterface/Views/RulesStyleDetailsPanel.js:
604 * UserInterface/Views/StyleDetailsPanel.js:
605 Converted to ES6 classes.
607 2015-03-26 Timothy Hatcher <timothy@apple.com>
609 Web Inspector: Convert TextEditor classes to ES6
610 https://bugs.webkit.org/show_bug.cgi?id=143127
612 Reviewed by Joseph Pecoraro.
614 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
615 Removed a comment about const, we can't use it in strict mode / classes.
617 * UserInterface/Views/SourceCodeTextEditor.js:
618 * UserInterface/Views/TextEditor.js:
619 Converted to ES6 classes.
621 2015-03-26 Nikita Vasilyev <nvasilyev@apple.com>
623 Web Inspector: clicking on console record while REPL is focused does not select a new record
624 https://bugs.webkit.org/show_bug.cgi?id=142171
626 Reviewed by Timothy Hatcher.
628 * UserInterface/Views/LogContentView.js:
629 (WebInspector.LogContentView.prototype._mousedown):
631 2015-03-26 Andres Gomez <agomez@igalia.com>
633 [GTK] Web Inspector: New Images for Console Types
634 https://bugs.webkit.org/show_bug.cgi?id=142301
636 Reviewed by Joseph Pecoraro.
638 Add more free icons and for the Web Inspector in GTK+.
640 * UserInterface/Images/gtk/Eye.svg: Added.
641 * UserInterface/Images/gtk/Frames.png: Added.
642 * UserInterface/Images/gtk/Frames@2x.png: Added.
643 * UserInterface/Images/gtk/FramesLarge.png: Added.
644 * UserInterface/Images/gtk/FramesLarge@2x.png: Added.
645 * UserInterface/Images/gtk/Reload.svg:
646 * UserInterface/Images/gtk/ReloadFull.svg: Added.
647 * UserInterface/Images/gtk/TypeBoolean.svg: Added.
648 * UserInterface/Images/gtk/TypeNull.svg: Added.
649 * UserInterface/Images/gtk/TypeNumber.svg: Added.
650 * UserInterface/Images/gtk/TypeObject.svg: Added.
651 * UserInterface/Images/gtk/TypeRegex.svg: Added.
652 * UserInterface/Images/gtk/TypeString.svg: Added.
653 * UserInterface/Images/gtk/TypeSymbol.svg: Added.
654 * UserInterface/Images/gtk/TypeUndefined.svg: Added.
656 2015-03-26 Joseph Pecoraro <pecoraro@apple.com>
658 Web Inspector: ES6: Provide a better view for Classes in the console
659 https://bugs.webkit.org/show_bug.cgi?id=142999
661 Reviewed by Timothy Hatcher.
663 * UserInterface/Protocol/RemoteObject.js:
664 (WebInspector.RemoteObject):
665 (WebInspector.RemoteObject.fromPrimitiveValue):
666 (WebInspector.RemoteObject.fromPayload):
667 (WebInspector.RemoteObject.prototype.get classPrototype):
668 (WebInspector.RemoteObject.prototype.isClass):
669 Update our RemoteObject model object for the new subtype
670 and its unique properties.
672 * UserInterface/Views/FormattedValue.js:
673 (WebInspector.FormattedValue.createElementForTypesAndValue):
674 (WebInspector.FormattedValue.createObjectTreeOrFormattedValueForRemoteObject):
675 Better handle "class", as it is a new function subtype.
677 * UserInterface/Views/LegacyConsoleMessageImpl.js:
678 (WebInspector.LegacyConsoleMessageImpl):
679 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsObject):
680 Format a "class" with ObjectTreeView.
682 * UserInterface/Views/ObjectTreeArrayIndexTreeElement.js:
683 * UserInterface/Views/ObjectTreeBaseTreeElement.js:
684 * UserInterface/Views/ObjectTreePropertyTreeElement.css:
685 (.object-tree-property .getter.disabled):
686 (.object-tree-property .getter:not(.disabled):hover):
687 (.object-tree-property .getter:hover): Deleted.
688 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
689 In ClassAPI mode, you cannot invoke a getter since we don't have
690 an instance to invoke it on. So disable interactivity with getters.
692 * UserInterface/Views/ObjectTreeView.js:
693 (WebInspector.ObjectTreeView):
694 Update the modes to include an API mode for instances and classes.
696 (WebInspector.ObjectTreeView.defaultModeForObject):
697 * UserInterface/Views/SourceCodeTextEditor.js:
698 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForObject):
699 Simplify ObjectTree construction to automatically determine mode based
700 on the RemoteObject that was provided.
702 * Localizations/en.lproj/localizedStrings.js:
705 2015-03-26 Timothy Hatcher <timothy@apple.com>
707 Web Inspector: Convert TreeElement classes to ES6
708 https://bugs.webkit.org/show_bug.cgi?id=143111
710 Reviewed by Joseph Pecoraro.
712 * UserInterface/Views/ApplicationCacheFrameTreeElement.js:
713 * UserInterface/Views/ApplicationCacheManifestTreeElement.js:
714 * UserInterface/Views/BreakpointTreeElement.js:
715 * UserInterface/Views/CallFrameTreeElement.js:
716 * UserInterface/Views/ContentFlowTreeElement.js:
717 * UserInterface/Views/CookieStorageTreeElement.js:
718 * UserInterface/Views/DOMStorageTreeElement.js:
719 * UserInterface/Views/DOMTreeElement.js:
720 * UserInterface/Views/DOMTreeOutline.js:
721 * UserInterface/Views/DatabaseHostTreeElement.js:
722 * UserInterface/Views/DatabaseTableTreeElement.js:
723 * UserInterface/Views/DatabaseTreeElement.js:
724 * UserInterface/Views/FolderTreeElement.js:
725 * UserInterface/Views/FolderizedTreeElement.js:
726 * UserInterface/Views/FrameTreeElement.js:
727 * UserInterface/Views/GeneralTreeElement.js:
728 * UserInterface/Views/IndexedDatabaseHostTreeElement.js:
729 * UserInterface/Views/IndexedDatabaseObjectStoreIndexTreeElement.js:
730 * UserInterface/Views/IndexedDatabaseObjectStoreTreeElement.js:
731 * UserInterface/Views/IndexedDatabaseTreeElement.js:
732 * UserInterface/Views/LegacyConsoleMessageImpl.js:
733 * UserInterface/Views/LogTreeElement.js:
734 * UserInterface/Views/NavigationSidebarPanel.js:
735 * UserInterface/Views/ObjectTreeArrayIndexTreeElement.js:
736 * UserInterface/Views/ObjectTreeBaseTreeElement.js:
737 * UserInterface/Views/ObjectTreeMapEntryTreeElement.js:
738 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
739 * UserInterface/Views/ObjectTreeSetIndexTreeElement.js:
740 * UserInterface/Views/ObjectTreeView.js:
741 * UserInterface/Views/ProfileNodeTreeElement.js:
742 * UserInterface/Views/PropertiesSection.js:
743 * UserInterface/Views/ResourceTreeElement.js:
744 * UserInterface/Views/ScriptTreeElement.js:
745 * UserInterface/Views/SearchResultTreeElement.js:
746 * UserInterface/Views/SourceCodeTimelineTreeElement.js:
747 * UserInterface/Views/SourceCodeTreeElement.js:
748 * UserInterface/Views/SourceMapResourceTreeElement.js:
749 * UserInterface/Views/StorageTreeElement.js:
750 * UserInterface/Views/TimelineDataGrid.js:
751 * UserInterface/Views/TimelineRecordTreeElement.js:
752 * UserInterface/Views/TreeElementStatusButton.js:
753 * UserInterface/Views/TreeOutline.js:
754 * UserInterface/Views/TreeOutlineDataGridSynchronizer.js:
755 * UserInterface/Views/TypePropertiesSection.js:
756 Converted to ES6 classes where possible.
758 2015-03-26 Timothy Hatcher <timothy@apple.com>
760 Web Inspector: Convert sidebar classes to ES6
761 https://bugs.webkit.org/show_bug.cgi?id=143108
763 Reviewed by Joseph Pecoraro.
765 * UserInterface/Models/KeyboardShortcut.js:
766 (WebInspector.KeyboardShortcut._handleKeyDown): Continue if callback is null.
767 (WebInspector.KeyboardShortcut.prototype.set callback): Added.
769 * UserInterface/Views/ApplicationCacheDetailsSidebarPanel.js:
770 * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
771 * UserInterface/Views/DOMDetailsSidebarPanel.js:
772 * UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
773 * UserInterface/Views/DebuggerSidebarPanel.js:
774 * UserInterface/Views/DetailsSidebarPanel.js:
775 * UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
776 * UserInterface/Views/NavigationSidebarPanel.js:
777 * UserInterface/Views/ProbeDetailsSidebarPanel.js:
778 * UserInterface/Views/ResourceDetailsSidebarPanel.js:
779 * UserInterface/Views/ResourceSidebarPanel.js:
780 * UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
781 * UserInterface/Views/Sidebar.js:
782 * UserInterface/Views/SidebarPanel.js:
783 * UserInterface/Views/TimelineSidebarPanel.js:
784 Converted to ES6 classes.
786 2015-03-26 Timothy Hatcher <timothy@apple.com>
788 Web Inspector: Convert some View classes to ES6 classes
789 https://bugs.webkit.org/show_bug.cgi?id=143107
791 Reviewed by Joseph Pecoraro.
793 * UserInterface/Protocol/InspectorBackend.js:
794 * UserInterface/Protocol/InspectorFrontendAPI.js:
795 (InspectorFrontendAPI.contextMenuItemSelected): Updated to the right function path.
796 * UserInterface/Views/BoxModelDetailsSectionRow.js:
797 * UserInterface/Views/BreakpointActionView.js:
798 * UserInterface/Views/CodeMirrorAdditions.js:
799 * UserInterface/Views/ColorPicker.js:
800 * UserInterface/Views/ColorWheel.js:
801 * UserInterface/Views/ContextMenu.js:
802 * UserInterface/Views/DOMTreeElementPathComponent.js:
803 * UserInterface/Views/DetailsSection.js:
804 * UserInterface/Views/DetailsSectionDataGridRow.js:
805 * UserInterface/Views/DetailsSectionGroup.js:
806 * UserInterface/Views/DetailsSectionPropertiesRow.js:
807 * UserInterface/Views/DetailsSectionRow.js:
808 * UserInterface/Views/DetailsSectionSimpleRow.js:
809 * UserInterface/Views/DetailsSectionTextRow.js:
810 * UserInterface/Views/EditingSupport.js:
811 * UserInterface/Views/EventListenerSection.js:
812 * UserInterface/Views/EventListenerSectionGroup.js:
813 * UserInterface/Views/FilterBar.js:
814 * UserInterface/Views/FindBanner.js:
815 * UserInterface/Views/GeneralTreeElementPathComponent.js:
816 * UserInterface/Views/GoToLineDialog.js:
817 * UserInterface/Views/GradientSlider.js:
818 * UserInterface/Views/HierarchicalPathComponent.js:
819 * UserInterface/Views/HierarchicalPathNavigationItem.js:
820 * UserInterface/Views/HoverMenu.js:
821 * UserInterface/Views/Popover.js:
822 * UserInterface/Views/ProbeSetDetailsSection.js:
823 * UserInterface/Views/ResourceTimelineDataGridNodePathComponent.js:
824 * UserInterface/Views/SearchBar.js:
825 * UserInterface/Views/Slider.js:
826 Converted to ES6 classes.
828 2015-03-26 Timothy Hatcher <timothy@apple.com>
830 Web Inspector: Convert Base and Protocol files to ES6 classes
831 https://bugs.webkit.org/show_bug.cgi?id=143106
833 Reviewed by Joseph Pecoraro.
835 * UserInterface/Base/EventListener.js:
836 * UserInterface/Base/EventListenerSet.js:
837 * UserInterface/Protocol/ApplicationCacheObserver.js:
838 * UserInterface/Protocol/CSSObserver.js:
839 * UserInterface/Protocol/ConsoleObserver.js:
840 * UserInterface/Protocol/DOMObserver.js:
841 * UserInterface/Protocol/DOMStorageObserver.js:
842 * UserInterface/Protocol/DatabaseObserver.js:
843 * UserInterface/Protocol/DebuggerObserver.js:
844 * UserInterface/Protocol/InspectorBackend.js:
845 * UserInterface/Protocol/InspectorObserver.js:
846 * UserInterface/Protocol/LayerTreeObserver.js:
847 * UserInterface/Protocol/MessageDispatcher.js:
848 * UserInterface/Protocol/NetworkObserver.js:
849 * UserInterface/Protocol/PageObserver.js:
850 * UserInterface/Protocol/RemoteObject.js:
851 * UserInterface/Protocol/ReplayObserver.js:
852 * UserInterface/Protocol/RuntimeObserver.js:
853 * UserInterface/Protocol/TimelineObserver.js:
854 Converted to ES6 classes where possible.
856 2015-03-25 Tobias Reiss <tobi+webkit@basecode.de>
858 Web Inspector: Add ESLint "Disallow Undeclared Variables" rule and enable ES6 env
859 https://bugs.webkit.org/show_bug.cgi?id=143062
861 Reviewed by Joseph Pecoraro.
863 ESLint: Add support for es6 environment and "no-undef" rule which disallows
864 use of undeclared variables unless mentioned in a /*global */ block.
868 2015-03-25 Nikita Vasilyev <nvasilyev@apple.com>
870 Web Inspector: console.table with source code location look poor
871 https://bugs.webkit.org/show_bug.cgi?id=142068
873 Reviewed by Timothy Hatcher.
875 * UserInterface/Views/LegacyConsoleMessageImpl.js:
876 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsTable):
877 Remove dataGridContainer as it is an unnecessary span element.
878 * UserInterface/Views/LogContentView.css:
879 (.console-messages .data-grid):
881 2015-03-24 Joseph Pecoraro <pecoraro@apple.com>
883 Web Inspector: IndexedDB / Databases ContentViews should have refresh button
884 https://bugs.webkit.org/show_bug.cgi?id=142996
886 Reviewed by Timothy Hatcher.
888 * Localizations/en.lproj/localizedStrings.js:
889 Remove unused strings.
891 * UserInterface/Images/ReloadFull.svg: Added.
892 This is the same as Reload.svg but adjusted to fill the viewbox edge to edge.
893 The only change is to the viewbox.
895 * UserInterface/Protocol/RemoteObject.js:
896 (WebInspector.RemoteObject.prototype.release):
897 Some clients would call release not knowing if this was an object or not.
898 Act gracefully in the case that this was not an object that needs a
901 * UserInterface/Views/DatabaseTableContentView.js:
902 (WebInspector.DatabaseTableContentView):
903 (WebInspector.DatabaseTableContentView.prototype.get navigationItems):
904 (WebInspector.DatabaseTableContentView.prototype._queryError):
905 (WebInspector.DatabaseTableContentView.prototype._refreshButtonClicked):
906 * UserInterface/Views/IndexedDatabaseObjectStoreContentView.js:
907 (WebInspector.IndexedDatabaseObjectStoreContentView):
908 (WebInspector.IndexedDatabaseObjectStoreContentView.prototype.get navigationItems):
909 (WebInspector.IndexedDatabaseObjectStoreContentView.prototype._fetchMoreData):
910 (WebInspector.IndexedDatabaseObjectStoreContentView.prototype._refreshButtonClicked):
911 Give the storage content views a refresh button to reload the content.
913 2015-03-24 Joseph Pecoraro <pecoraro@apple.com>
915 Setter should have a single formal parameter, Getter no parameters
916 https://bugs.webkit.org/show_bug.cgi?id=142903
918 Reviewed by Geoffrey Garen.
920 * UserInterface/Views/GradientSlider.js:
921 (WebInspector.GradientSliderKnob.prototype.get wellColor):
922 Fix a getter that was incorrectly taking a parameter.
924 2015-03-24 Tobias Reiss <tobi+webkit@basecode.de>
926 Web Inspector: REGRESSION (r179286): ReferenceError: Can't find variable: selector
927 https://bugs.webkit.org/show_bug.cgi?id=143022
929 Reviewed by Timothy Hatcher.
931 Fix a regression where a missing variable statement causes a ReferenceError.
933 * UserInterface/Models/DOMNodeStyles.js:
935 2015-03-24 Tobias Reiss <tobi+webkit@basecode.de>
937 Web Inspector: Adopt ES6 Class Syntax for CSSStyleDeclarationTextEditor
938 https://bugs.webkit.org/show_bug.cgi?id=143019
940 Reviewed by Timothy Hatcher.
942 - Convert CSSStyleDeclarationTextEditor to use class syntax
943 - Convert constructor functions to constructor methods
944 - Convert "constructor.method" to class static methods where possible
945 - Convert all methods to method syntax, eliminate commas between methods
946 - Convert all superclass calls in classes to use "super"
947 - Removed FIXME from WebInspector.Object subclasses, added calls to super.
948 - Fixed strict mode issues now that classes enforce strict mode (see below).
950 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
951 Many function declarations modified.
953 2015-03-24 Joseph Pecoraro <pecoraro@apple.com>
955 Web Inspector: Workaround issue causing uncaught exception in Inspector
956 https://bugs.webkit.org/show_bug.cgi?id=143015
958 Reviewed by Timothy Hatcher.
960 Workaround <https://webkit.org/b/143012> and avoid early returning in constructors.
962 * UserInterface/Controllers/ReplayManager.js:
963 (WebInspector.ReplayManager.class.ReplayManager):
965 2015-03-06 Brian J. Burg <burg@cs.washington.edu>
967 Web Inspector: unify resizer implementations used by DataGrid and Sidebar
968 https://bugs.webkit.org/show_bug.cgi?id=142407
970 Reviewed by Timothy Hatcher.
972 Both of these implementations do the same thing slightly differently. Unify the code
973 and use the "glass pane" technique to preserve cursor while dragging over links or text.
975 This patch implements vertical and horizontal rule orientations. Further refactorings
976 to use this class may need to add "Indeterminate" orientation to support moving the inspector
977 window by its fake toolbar element.
979 * UserInterface/Main.html:
980 * UserInterface/Views/DataGrid.css:
981 (.data-grid .resizer):
982 (.data-grid-resizer): Deleted.
983 * UserInterface/Views/DataGrid.js: Store Resizer instances rather than resizer elements.
984 Use symbols to secretly store neighbor column ids on the resizer objects. Stop using
985 WebInspector.elementDragStart, as I would like to deprecate it in favor of Resizer instances.
987 (WebInspector.DataGrid):
988 (WebInspector.DataGrid.prototype._positionResizerElements):
989 (WebInspector.DataGrid.prototype.resizerDragStarted):
990 (WebInspector.DataGrid.prototype.resizerDragging):
991 (WebInspector.DataGrid.prototype.resizerDragEnded):
992 (WebInspector.DataGrid.prototype._startResizerDragging): Deleted.
993 (WebInspector.DataGrid.prototype._resizerDragging): Deleted.
994 (WebInspector.DataGrid.prototype._endResizerDragging): Deleted.
995 * UserInterface/Views/Resizer.css:
997 (.resizer.vertical-rule):
998 (.resizer.horizontal-rule):
999 (.glass-pane-for-drag):
1000 * UserInterface/Views/Resizer.js: Added.
1001 (WebInspector.Resizer):
1002 (WebInspector.Resizer.prototype.get element):
1003 (WebInspector.Resizer.prototype.get orientation):
1004 (WebInspector.Resizer.prototype.get initialPosition):
1005 (WebInspector.Resizer.prototype._currentPosition):
1006 (WebInspector.Resizer.prototype._resizerMouseDown):
1007 (WebInspector.Resizer.prototype._resizerMouseMoved):
1008 (WebInspector.Resizer.prototype._resizerMouseUp):
1009 * UserInterface/Views/Sidebar.css:
1010 (.sidebar > .resizer): Deleted.
1011 * UserInterface/Views/Sidebar.js:
1012 (WebInspector.Sidebar):
1013 (WebInspector.Sidebar.prototype.resizerDragStarted):
1014 (WebInspector.Sidebar.prototype.resizerDragging):
1015 (WebInspector.Sidebar.prototype.resizerDragEnded):
1016 (WebInspector.Sidebar.prototype._navigationItemSelected):
1017 (WebInspector.Sidebar.prototype._resizerMouseDown): Deleted.
1018 (WebInspector.Sidebar.prototype._resizerMouseMoved): Deleted.
1019 (WebInspector.Sidebar.prototype._resizerMouseUp): Deleted.
1021 2015-03-17 Jono Wells <jonowells@apple.com>
1023 Web Inspector: Debugger sidebar should have a filter button for breakpoints
1024 https://bugs.webkit.org/show_bug.cgi?id=142779
1026 Reviewed by Timothy Hatcher.
1028 Add the infrastructure for activation filter buttons that can appear next to the text filters at the bottom
1029 of any navigation sidebar panel. These filter bar buttons have defined within them a function that returns
1030 a boolean value that indicates whether the input, typically a tree element, should be filtered or not.
1032 This infrastructure is then used to create a filter for the debugger sidebar that, when applied, only shows
1033 scripts that have breakpoints set on them.
1035 * Localizations/en.lproj/localizedStrings.js: Updated.
1036 * UserInterface/Main.html: Files added.
1038 * UserInterface/Views/DebuggerSidebarPanel.js:
1039 (WebInspector.DebuggerSidebarPanel.showResourcesWithChildrenOnlyFilterFunction):
1040 (WebInspector.DebuggerSidebarPanel):
1041 (WebInspector.DebuggerSidebarPanel.prototype._addBreakpoint): Drive-by fix.
1042 Add filter button to filter bar.
1044 * UserInterface/Views/FilterBar.css:
1045 (.filter-bar > .navigation-bar > .item):
1046 Style filter button.
1048 * UserInterface/Views/FilterBar.js:
1049 (WebInspector.FilterBar):
1050 (WebInspector.FilterBar.prototype.get filters):
1051 (WebInspector.FilterBar.prototype.set filters):
1052 (WebInspector.FilterBar.prototype.hasActiveFilters):
1053 (WebInspector.FilterBar.prototype._handleFilterChanged):
1054 (WebInspector.FilterBar.prototype._inputFieldChanged): Deleted.
1055 Create space for filter bar buttons and set up event handlers to deal with them.
1057 * UserInterface/Views/FilterBarButton.js: Copied from Source/WebInspectorUI/UserInterface/Views/FilterBar.css.
1058 (WebInspector.FilterBarButton):
1059 (WebInspector.FilterBarButton.prototype.get filterFunction):
1060 (WebInspector.FilterBarButton.prototype.toggle):
1061 Create class for a filter bar button that stores a filter function.
1063 * UserInterface/Views/NavigationSidebarPanel.js:
1064 (WebInspector.NavigationSidebarPanel):
1065 (WebInspector.NavigationSidebarPanel.prototype.matchTreeElementAgainstFilterFunctions):
1066 (WebInspector.NavigationSidebarPanel.prototype.applyFiltersToTreeElement):
1067 (WebInspector.NavigationSidebarPanel.prototype._filterDidChange):
1068 (WebInspector.NavigationSidebarPanel.prototype._updateFilter):
1069 (WebInspector.NavigationSidebarPanel.prototype._textFilterDidChange): Deleted.
1070 Add functionality to support button filters and process their corresponding functions correctly when filtering.
1072 2015-03-22 Matt Baker <mattbaker@apple.com>
1074 Web Inspector: Adopt ES6 Class Syntax for all Controller Objects
1075 https://bugs.webkit.org/show_bug.cgi?id=142890
1077 Reviewed by Joseph Pecoraro.
1079 - Convert all UserInterface/Controllers objects to classes
1080 - Convert constructor functions to constructor methods
1081 - Convert "constructor.method" to class static methods where possible
1082 - Convert all methods to method syntax, eliminate commas between methods
1083 - Convert all superclass calls in classes to use "super"
1084 - Removed FIXME from WebInspector.Object subclasses, added calls to super.
1085 - Fixed strict mode issues now that classes enforce strict mode (see below).
1087 * Tools/PrettyPrinting/Formatter.js:
1088 * Tools/PrettyPrinting/FormatterContentBuilder.js:
1089 Updated to match corresponding files in UserInterface/Controllers.
1091 * UserInterface/Controllers/*.js:
1092 Many files modified mostly mechanically (regex find-replace).
1094 * UserInterface/Controllers/CodeMirrorCompletionController.js:
1095 * UserInterface/Controllers/FormatterContentBuilder.js:
1096 Replaced const usage with var. Use of const is prohibited in strict mode, which is implicit within a class.
1098 * UserInterface/Controllers/CodeMirrorTokenTrackingController.js:
1099 * UserInterface/Controllers/DOMTreeManager.js:
1100 Moved function declarations out of if statements. Strict mode does not allow function declarations in a lexically nested statement.
1102 2015-03-20 Nikita Vasilyev <nvasilyev@apple.com>
1104 Web Inspector: Fast typing lags in the Styles sidebar or Console
1105 https://bugs.webkit.org/show_bug.cgi?id=142919
1107 Asynchronous autocomplete causes a race condition in CodeMirror,
1108 which results in skipped characters in while typing. Completing immediately
1111 Reviewed by Timothy Hatcher.
1113 * UserInterface/Controllers/CodeMirrorCompletionController.js:
1114 (WebInspector.CodeMirrorCompletionController.prototype.hideCompletions):
1115 (WebInspector.CodeMirrorCompletionController.prototype._completeAtCurrentPosition):
1116 (WebInspector.CodeMirrorCompletionController.prototype.):
1118 2015-03-19 Joseph Pecoraro <pecoraro@apple.com>
1120 Web Inspector: Adopt ES6 Class Syntax for all Model Objects
1121 https://bugs.webkit.org/show_bug.cgi?id=142858
1123 Reviewed by Timothy Hatcher.
1125 - Convert WebInspector.Object to a class
1126 - Convert all UserInterface/Models objects to classes
1127 - Convert constructor functions to constructor methods
1128 - Convert "constructor.method" to class static methods where possible
1129 - Convert all methods to method syntax, eliminate commas between methods
1130 - Convert all superclass calls in classes to use "super"
1131 - Workaround <https://webkit.org/b/142862> and add empty constructors
1132 - Added "deprecated" prefix to addConstructorFunctions, since it is not needed with classes
1133 - Added many missing calls to super in constructors
1134 - Added FIXME to WebInspector.Object subclasses not yet moved to classes.
1135 - Cleaned up SourceMap global properties, moved to constructor instead of prototype
1136 - Cleaned up Timeline factory constructor to static "create" factory method
1137 - Fixed any style issues noticed in the mass edit
1138 - Fixed strict mode issues now that classes enforce strict mode
1139 - RunLoopTimelineRecord.js was missing a `var` for a local variable
1140 - "const" is not allowed, converted to "var"
1141 - "arguments.callee" is not allowed in strict mode
1143 * UserInterface/**/*.js:
1144 Many files modified mostly mechanically.
1146 2015-03-19 Jono Wells <jonowells@apple.com>
1148 Web Inspector: Debugger sidebar header should say "Scripts" instead of "Breakpoints", appear only on pause
1149 https://bugs.webkit.org/show_bug.cgi?id=142847
1151 Reviewed by Timothy Hatcher.
1153 Add a `paused` class on the debugger sidebar panel. Use that class to adjust the sidebar styles so that, when
1154 the debugger is not paused: there is no header for the scripts section, there is no border beneath the scripts
1155 section, and the scripts section cannot be collapsed (which could be done while the debugger is paused). The
1156 header has changed to say "Scripts" instead of "Breakpoints" when it is showing.
1158 * UserInterface/Views/DebuggerSidebarPanel.css:
1159 (.sidebar > .panel.navigation.debugger .details-section.scripts):
1160 (.sidebar > .panel.navigation.debugger .details-section.scripts .header):
1161 (.sidebar > .panel.navigation.debugger .details-section.scripts.collapsed > .content):
1162 (.sidebar > .panel.navigation.debugger.paused .details-section.scripts):
1163 (.sidebar > .panel.navigation.debugger.paused .details-section.scripts .header):
1164 (.sidebar > .panel.navigation.debugger.paused .details-section.scripts.collapsed > .content):
1165 Adjust styles to hide header and border.
1167 * UserInterface/Views/DebuggerSidebarPanel.js:
1168 (WebInspector.DebuggerSidebarPanel):
1169 (WebInspector.DebuggerSidebarPanel.prototype._debuggerDidPause):
1170 (WebInspector.DebuggerSidebarPanel.prototype._debuggerDidResume):
1171 Add a `paused` class to the debugger sidebar when it is paused.
1173 2015-03-19 Jono Wells <jonowells@apple.com>
1175 Web Inspector: FilterBar for debugger sidebar hides breakpoints for displayed resources
1176 https://bugs.webkit.org/show_bug.cgi?id=142777
1178 Reviewed by Brian Burg.
1180 Typing into the text input on the filter bar for the debugger sidebar no longer incorrectly hides the
1181 breakpoints for scripts that match the text input.
1183 * UserInterface/Views/BreakpointTreeElement.js:
1184 (WebInspector.BreakpointTreeElement.prototype.get filterableData): Added.
1186 2015-03-18 Joseph Pecoraro <pecoraro@apple.com>
1188 Web Inspector: Replace last use of ObjectPropertiesSection with ObjectTreeView
1189 https://bugs.webkit.org/show_bug.cgi?id=142834
1191 Reviewed by Timothy Hatcher.
1193 * UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
1194 (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties):
1195 Use properties only ObjectTreeView instead of ObjectPropertiesSection.
1196 This doesn't fix the functionality issues, but fixes the appearance.
1198 * UserInterface/Views/DetailsSection.css:
1199 (.details-section > .content > .group:first-child > .row.simple:first-child > *): Deleted.
1200 (body.mac-platform.legacy .details-section > .content > .group:first-child > .row.simple:first-child > *): Deleted.
1201 (.details-section > .content > .group > .row.properties:not(.empty)): Deleted.
1202 (body.mac-platform.legacy .details-section > .content > .group > .row.properties:not(.empty)): Deleted.
1203 Re-add back the small padding at the top of sections. This actually
1204 broke padding in a few sections (Event Listeners) at the expense
1205 of eliminating a few pixels of whitespace at the top of other sections.
1206 We should focus on addressing the extra whitespace separately.
1208 * UserInterface/Main.html:
1209 * UserInterface/Views/ObjectPropertiesSection.js: Removed.
1210 * UserInterface/Views/TypePropertiesSection.js:
1211 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
1212 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:
1213 Remove new unused class.
1215 2015-03-18 Joseph Pecoraro <pecoraro@apple.com>
1217 Web Inspector: Debugger Popovers and Probes should use FormattedValue/ObjectTreeView instead of Custom/ObjectPropertiesSection
1218 https://bugs.webkit.org/show_bug.cgi?id=142830
1220 Reviewed by Timothy Hatcher.
1222 * UserInterface/Views/ProbeSetDataGrid.css:
1223 (.details-section.probe-set .data-grid .object-tree > :matches(.title, .object-preview)::before):
1224 Another line-height fix for object tree disclosure triangles.
1226 * UserInterface/Views/ProbeSetDataGridNode.js:
1227 (WebInspector.ProbeSetDataGridNode.prototype.createCellContent):
1228 Create an ObjectTree / FormattedValue for the RemoteObject.
1230 * UserInterface/Views/SourceCodeTextEditor.css:
1231 (.popover .debugger-popover-content > .title):
1232 (.popover .debugger-popover-content > .body):
1233 (.popover .debugger-popover-content.function > .body):
1234 Be more specific and don't accidentally style ".title" within the body.
1236 * UserInterface/Views/SourceCodeTextEditor.js:
1237 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForObject):
1238 Show a properties only ObjectTree instead of an ObjectPropertiesSection.
1240 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForString): Deleted.
1241 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForRegExp): Deleted.
1242 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForNumber): Deleted.
1243 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForBoolean): Deleted.
1244 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForNull): Deleted.
1245 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForUndefined): Deleted.
1246 (WebInspector.SourceCodeTextEditor.prototype._showPopoverWithFormattedValue):
1247 Reduce most of these to a single popover for formatted values.
1249 2015-03-18 Joseph Pecoraro <pecoraro@apple.com>
1251 Web Inspector: Scopes sidebar should use new ObjectTreeView and not ObjectPropertiesSection
1252 https://bugs.webkit.org/show_bug.cgi?id=142808
1254 Reviewed by Timothy Hatcher.
1256 * UserInterface/Models/PropertyPath.js:
1257 (WebInspector.PropertyPath):
1258 (WebInspector.PropertyPath.emptyPropertyPathForScope):
1259 Allow a special property empty path for "Scopes". This way for a
1260 "<scopeObject>.property" we can show just the tooltip "property".
1262 * UserInterface/Views/ObjectTreeView.css:
1263 (.object-tree.properties-only > :matches(.title, .object-preview)):
1264 (.object-tree.properties-only .object-tree-outline):
1265 (.object-tree.properties-only .object-tree-property .property-name):
1266 Tweak styles for only properties view, which won't have a top-level
1267 preview and doesn't fade out enumerable properties.
1269 * UserInterface/Views/ObjectTreeView.js:
1270 (WebInspector.ObjectTreeView.prototype.get treeOutline):
1271 Access the TreeOutline.
1273 (WebInspector.ObjectTreeView.prototype.showOnlyProperties):
1274 Properties only view modifies the display slightly.
1276 (WebInspector.ObjectTreeView.prototype.appendExtraPropertyDescriptor):
1277 (WebInspector.ObjectTreeView.prototype._updateProperties):
1278 Allow the client to add its own property descriptors to display
1279 as a property in this ObjectTreeView.
1281 * UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
1282 (WebInspector.ScopeChainDetailsSidebarPanel.prototype.refresh):
1283 Switch to using an ObjectTreeView.
1285 (WebInspector.ScopeChainDetailsSidebarPanel.prototype._propertyPathIdentifierForTreeElement):
1286 (WebInspector.ScopeChainDetailsSidebarPanel.prototype._objectTreeAddHandler):
1287 (WebInspector.ScopeChainDetailsSidebarPanel.prototype._objectTreeExpandHandler):
1288 (WebInspector.ScopeChainDetailsSidebarPanel.prototype._objectTreeCollapseHandler):
1289 Keep track of what properties were expanded so we can auto-expand
1290 them again when the sidebar refreshes.
1292 * UserInterface/Main.html:
1293 * UserInterface/Views/ScopeVariableTreeElement.js: Removed.
1294 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
1295 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:
1296 Remove the now unused ScopeVariableTreeElement.js.
1298 2015-03-17 Joseph Pecoraro <pecoraro@apple.com>
1300 Web Inspector: Debugger Sidebar Icons Misaligned
1301 https://bugs.webkit.org/show_bug.cgi?id=142654
1303 Reviewed by Timothy Hatcher.
1305 The debugger sidebar content was accidentally 1px too small. The
1306 TreeOutline being inside of a .detail-section was getting a smaller
1307 font-size. We should just have the normal font-size for the
1308 debugger navigation sidebar. This matches the Resources sidebar
1309 in the TreeOutline, and icons line up better.
1311 * UserInterface/Views/DebuggerSidebarPanel.css:
1312 (.sidebar > .panel.navigation.debugger .details-section):
1314 2015-03-17 Tobias Reiss <tobi+webkit@basecode.de>
1316 Web Inspector: Removal of multiline completion hint broken in Details sidebar
1317 https://bugs.webkit.org/show_bug.cgi?id=142796
1319 Reviewed by Joseph Pecoraro.
1321 Prioritize CodeMirrorCompletionController over CSSStyleDeclarationTextEditor.
1322 Both classes control the current CodeMirror instance of the Details Sidebar.
1323 This change prevents possible race conditions during complete or delete-complete phases,
1324 especially during operations on multiple styles in one line.
1326 * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
1327 (WebInspector.CSSStyleDeclarationTextEditor):
1329 2015-03-17 Matt Baker <mattbaker@apple.com>
1331 Web Inspector: Show rendering frames (and FPS) in Layout and Rendering timeline
1332 https://bugs.webkit.org/show_bug.cgi?id=142029
1334 Reviewed by Timothy Hatcher.
1336 Add UI for showing runloop records and their child records as a frame histogram,
1337 with the recording time on the x-axis and the frame duration on the y-axis. Each frame
1338 is comprised of colored regions representing the time spent in various activities (script,
1341 Eventually the Frames timeline will replace the Layout & Rendering timeline. Until the views
1342 for the new timeline are finalized the Layout & Rendering timeline will remain in place.
1344 * Localizations/en.lproj/localizedStrings.js:
1345 * UserInterface/Main.html:
1346 New string and files.
1348 * UserInterface/Controllers/TimelineManager.js:
1349 (WebInspector.TimelineManager.prototype.eventRecorded):
1350 (WebInspector.TimelineManager.prototype.pageDidLoad):
1351 (WebInspector.TimelineManager.prototype._processNestedRecords):
1352 (WebInspector.TimelineManager.prototype._processRecord):
1353 (WebInspector.TimelineManager.prototype._processEvent):
1354 (WebInspector.TimelineManager.prototype._loadNewRecording):
1355 (WebInspector.TimelineManager.prototype.eventRecorded.processRecord): Deleted.
1356 Added support for new runloop record type and nested record handling.
1358 * UserInterface/Images/Frames.png: Added.
1359 * UserInterface/Images/Frames@2x.png: Added.
1360 * UserInterface/Images/FramesLarge.png: Added.
1361 * UserInterface/Images/FramesLarge@2x.png: Added.
1362 New images for runloop timeline overview graph and runloop tree records.
1364 * UserInterface/Models/RunLoopTimelineRecord.js: Added.
1365 (WebInspector.RunLoopTimelineRecord):
1366 (WebInspector.RunLoopTimelineRecord.prototype.get children):
1367 (WebInspector.RunLoopTimelineRecord.prototype.get durationRemainder):
1368 (WebInspector.RunLoopTimelineRecord.prototype.durationForRecords.get var):
1369 Extends TimelineRecord to add child records and subframe duration details.
1371 * UserInterface/Models/Timeline.js:
1372 (WebInspector.Timeline.prototype.get displayName):
1373 (WebInspector.Timeline.prototype.get iconClassName):
1374 New UI strings and icons.
1376 * UserInterface/Models/TimelineRecord.js:
1377 * UserInterface/Views/ContentView.js:
1378 (WebInspector.ContentView):
1379 * UserInterface/Views/LayoutTimelineView.js:
1380 (WebInspector.LayoutTimelineView.prototype._layoutTimelineRecordAdded):
1381 * UserInterface/Views/TimelineRecordTreeElement.js:
1382 (WebInspector.TimelineRecordTreeElement):
1383 Added support for new runloop record type.
1385 * UserInterface/Views/RunLoopTimelineOverviewGraph.css: Added.
1386 (.timeline-overview-graph.runloop > .divider):
1387 (.timeline-overview-graph.runloop > .divider > span):
1388 New styles for runloop timeline graph.
1390 * UserInterface/Views/RunLoopTimelineOverviewGraph.js: Added.
1391 (WebInspector.RunLoopTimelineOverviewGraph):
1392 (WebInspector.RunLoopTimelineOverviewGraph.prototype.updateLayout.createFrame):
1393 (WebInspector.RunLoopTimelineOverviewGraph.prototype.get graphHeightSeconds.this):
1394 (WebInspector.RunLoopTimelineOverviewGraph.prototype.get graphHeightSeconds):
1395 (WebInspector.RunLoopTimelineOverviewGraph.prototype._updateDividers.createDividerAtPosition.get if):
1396 New overview graph for displaying TimelineRecordFrames and horizontal frame budget dividers.
1398 * UserInterface/Views/TimelineIcons.css:
1399 (.runloop-icon .icon):
1400 (.runloop-icon.large .icon):
1401 (.runloop-record .icon):
1402 * UserInterface/Views/TimelineSidebarPanel.js:
1403 New runloop icon styles.
1405 * UserInterface/Views/TimelineOverviewGraph.js:
1406 (WebInspector.TimelineOverviewGraph):
1407 Updated factory to support creation of the new overview graph.
1409 * UserInterface/Views/TimelineRecordFrame.css: Added.
1410 (.timeline-record-frame):
1411 (.timeline-record-frame > .frame):
1412 (.timeline-record-frame > .dropped):
1413 (.timeline-record-frame > .frame > .duration):
1414 (.timeline-record-frame > .frame > .duration:first-child):
1415 (.timeline-record-frame > .frame > .duration:last-child):
1416 (.timeline-record-frame > .frame > .duration.timeline-record-type-network):
1417 (.timeline-record-frame > .frame > .duration.timeline-record-type-layout):
1418 (.timeline-record-frame > .frame > .duration.timeline-record-type-script):
1419 New styles for frame bars in the runloop timeline graph.
1421 * UserInterface/Views/TimelineRecordFrame.js: Added.
1422 (WebInspector.TimelineRecordFrame):
1423 (WebInspector.TimelineRecordFrame.createCombinedFrames):
1424 (WebInspector.TimelineRecordFrame.prototype.get element):
1425 (WebInspector.TimelineRecordFrame.prototype.get duration):
1426 (WebInspector.TimelineRecordFrame.prototype.get records):
1427 (WebInspector.TimelineRecordFrame.prototype.set records):
1428 (WebInspector.TimelineRecordFrame.prototype._updateChildElements.createDurationElement):
1429 New view representing a single frame within the runloop overview graph.
1431 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
1432 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:
1435 2015-03-16 Joseph Pecoraro <pecoraro@apple.com>
1437 Web Inspector: Add more DOM Native Function parameter strings
1438 https://bugs.webkit.org/show_bug.cgi?id=142760
1440 Reviewed by Timothy Hatcher.
1442 * UserInterface/Models/NativeFunctionParameters.js:
1443 Add native parameter strings generated and hand modified
1444 for DOM built-in classes.
1446 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
1447 For native constructors "FooConstructor" the description is just
1448 the name of the Constructor not the function string.
1450 2015-03-16 Joseph Pecoraro <pecoraro@apple.com>
1452 Web Inspector: Object Previews in Indexed DB tables
1453 https://bugs.webkit.org/show_bug.cgi?id=140813
1455 Reviewed by Timothy Hatcher.
1457 * UserInterface/Views/FormattedValue.js:
1458 (WebInspector.FormattedValue.createObjectTreeOrFormattedValueForRemoteObject):
1459 Add a boolean param for ObjectTree construction if it should force allowing object expansion.
1461 * UserInterface/Views/IndexedDatabaseEntryDataGridNode.js:
1462 (WebInspector.IndexedDatabaseEntryDataGridNode.prototype.createCellContent):
1463 Switch to creating an ObjectTree or FormattedValue.
1465 * UserInterface/Views/IndexedDatabaseObjectStoreContentView.css:
1466 (.content-view.indexed-database-object-store > .data-grid tr.selected):
1467 Change row selection color to match the console's lighter blue instead of dark blue.
1469 (.content-view.indexed-database-object-store > .data-grid .object-tree > :matches(.title, .object-preview)::before):
1470 Adjust object tree disclosure triangle placement for larger line heights.
1472 (.content-view.indexed-database-object-store > .data-grid td .section .header): Deleted.
1473 (.content-view.indexed-database-object-store > .data-grid td .section .header::before): Deleted.
1474 (.content-view.indexed-database-object-store > .data-grid td .section .header .title): Deleted.
1475 (.content-view.indexed-database-object-store > .data-grid:focus tr.selected td .section .header::before): Deleted.
1476 (.content-view.indexed-database-object-store > .data-grid:focus tr.selected td .section.expanded .header::before): Deleted.
1477 (.content-view.indexed-database-object-store > .data-grid:focus tr.selected td .properties-tree li.parent::before): Deleted.
1478 (.content-view.indexed-database-object-store > .data-grid:focus tr.selected td .properties-tree li.parent.expanded::before): Deleted.
1479 (.content-view.indexed-database-object-store > .data-grid:focus tr.selected td .properties-tree li *): Deleted.
1480 Remove now unnecessary styles.
1482 * UserInterface/Views/ObjectTreeArrayIndexTreeElement.css:
1483 (.object-tree .object-tree-array-index > .icon):
1484 Increase the specificity to override ".data-grid td .icon" styles.
1486 2015-03-16 Joseph Pecoraro <pecoraro@apple.com>
1488 Web Inspector: Better Console Previews for Arrays / Small Objects
1489 https://bugs.webkit.org/show_bug.cgi?id=142322
1491 Reviewed by Timothy Hatcher.
1493 * UserInterface/Views/ObjectPreviewView.js:
1494 If there is a sub-preview, show the sub-preview.
1496 * UserInterface/Views/ObjectTreeView.js:
1497 (WebInspector.ObjectTreeView):
1498 For an ObjectTree that is not a root (e.g. one inside of
1499 an array/set/map property tree element) allow it to be
1500 expanded even if the preview is lossless.
1502 2015-03-16 Nikita Vasilyev <nvasilyev@apple.com>
1504 Web Inspector: Rename ConsoleMessage and ConsoleMessageImpl to LegacyConsoleMessage and LegacyConsoleMessageImpl respectively
1505 https://bugs.webkit.org/show_bug.cgi?id=142712
1507 As a first step of ConsoleMessage refactoring (https://bugs.webkit.org/show_bug.cgi?id=142599):
1509 - Rename WebInspector.ConsoleMessage class to WebInspector.LegacyConsoleMessage
1510 - Rename WebInspector.ConsoleMessageImpl class to WebInspector.LegacyConsoleMessageImpl
1511 - Rename ConsoleMessage.js file to LegacyConsoleMessage.js
1512 - Rename ConsoleMessageImpl file to LegacyConsoleMessageImpl.js
1514 Reviewed by Joseph Pecoraro.
1516 * UserInterface/Controllers/JavaScriptLogViewController.js:
1517 (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessage):
1518 * UserInterface/Controllers/LogManager.js:
1519 (WebInspector.LogManager.prototype.messageWasAdded):
1520 * UserInterface/Main.html:
1521 * UserInterface/Models/DefaultDashboard.js:
1522 (WebInspector.DefaultDashboard.prototype._incrementConsoleMessageType):
1523 * UserInterface/Views/ConsoleCommandResult.js:
1524 (WebInspector.ConsoleCommandResult):
1525 (WebInspector.ConsoleCommandResult.prototype.toMessageElement):
1526 * UserInterface/Views/ConsoleGroup.js:
1527 (WebInspector.ConsoleGroup.prototype.render):
1528 * UserInterface/Views/LegacyConsoleMessage.js: Renamed from Source/WebInspectorUI/UserInterface/Views/ConsoleMessage.js.
1529 (WebInspector.LegacyConsoleMessage):
1530 (WebInspector.LegacyConsoleMessage.prototype.isErrorOrWarning):
1531 (WebInspector.LegacyConsoleMessage.prototype.updateRepeatCount):
1532 (WebInspector.LegacyConsoleMessage.prototype.clone):
1533 (WebInspector.LegacyConsoleMessage.create):
1534 * UserInterface/Views/LegacyConsoleMessageImpl.js: Renamed from Source/WebInspectorUI/UserInterface/Views/ConsoleMessageImpl.js.
1535 (WebInspector.LegacyConsoleMessageImpl):
1536 (WebInspector.LegacyConsoleMessageImpl.prototype._formatMessage):
1537 (WebInspector.LegacyConsoleMessageImpl.prototype._shouldDumpStackTrace):
1538 (WebInspector.LegacyConsoleMessageImpl.prototype._shouldHideURL):
1539 (WebInspector.LegacyConsoleMessageImpl.prototype._firstNonNativeCallFrame):
1540 (WebInspector.LegacyConsoleMessageImpl.prototype.get message):
1541 (WebInspector.LegacyConsoleMessageImpl.prototype.get formattedMessage):
1542 (WebInspector.LegacyConsoleMessageImpl.prototype._linkifyLocation):
1543 (WebInspector.LegacyConsoleMessageImpl.prototype._linkifyCallFrame):
1544 (WebInspector.LegacyConsoleMessageImpl.prototype.isErrorOrWarning):
1545 (WebInspector.LegacyConsoleMessageImpl.prototype._format):
1546 (WebInspector.LegacyConsoleMessageImpl.prototype._isExpandable):
1547 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameter):
1548 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsValue):
1549 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsObject):
1550 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsString):
1551 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsNode):
1552 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsArray):
1553 (WebInspector.LegacyConsoleMessageImpl.prototype._rootPropertyPathForObject):
1554 (WebInspector.LegacyConsoleMessageImpl.prototype._userProvidedColumnNames):
1555 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsTable):
1556 (WebInspector.LegacyConsoleMessageImpl.prototype.):
1557 (WebInspector.LegacyConsoleMessageImpl.prototype.stringFormatter):
1558 (WebInspector.LegacyConsoleMessageImpl.prototype.floatFormatter):
1559 (WebInspector.LegacyConsoleMessageImpl.prototype.integerFormatter):
1560 (WebInspector.LegacyConsoleMessageImpl.prototype.styleFormatter):
1561 (WebInspector.LegacyConsoleMessageImpl.prototype.isWhitelistedProperty):
1562 (WebInspector.LegacyConsoleMessageImpl.prototype.append):
1563 (WebInspector.LegacyConsoleMessageImpl.prototype._formatWithSubstitutionString):
1564 (WebInspector.LegacyConsoleMessageImpl.prototype.decorateMessageElement):
1565 (WebInspector.LegacyConsoleMessageImpl.prototype.toMessageElement):
1566 (WebInspector.LegacyConsoleMessageImpl.prototype._populateStackTraceTreeElement):
1567 (WebInspector.LegacyConsoleMessageImpl.prototype.updateRepeatCount):
1568 (WebInspector.LegacyConsoleMessageImpl.prototype.toString):
1569 (WebInspector.LegacyConsoleMessageImpl.prototype.get text):
1570 (WebInspector.LegacyConsoleMessageImpl.prototype.isEqual):
1571 (WebInspector.LegacyConsoleMessageImpl.prototype.get stackTrace):
1572 (WebInspector.LegacyConsoleMessageImpl.prototype.clone):
1573 (WebInspector.LegacyConsoleMessageImpl.prototype.get levelString):
1574 (WebInspector.LegacyConsoleMessageImpl.prototype.get clipboardPrefixString):
1575 (WebInspector.LegacyConsoleMessageImpl.prototype.toClipboardString):
1576 * UserInterface/Views/LogContentView.js:
1577 (WebInspector.LogContentView.prototype.didAppendConsoleMessage):
1578 (WebInspector.LogContentView.prototype._messageAdded):
1579 (WebInspector.LogContentView.prototype._filterMessages):
1580 (WebInspector.LogContentView.prototype._reappendProvisionalMessages):
1581 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
1582 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:
1584 2015-03-16 Commit Queue <commit-queue@webkit.org>
1586 Unreviewed, rolling out r181517.
1587 https://bugs.webkit.org/show_bug.cgi?id=142718
1589 This patch broke GTK+ build (Requested by NVI on #webkit).
1593 "Web Inspector: Rename ConsoleMessage and ConsoleMessageImpl
1594 to LegacyConsoleMessage and LegacyConsoleMessageImpl
1596 https://bugs.webkit.org/show_bug.cgi?id=142712
1597 http://trac.webkit.org/changeset/181517
1599 2015-03-15 Nikita Vasilyev <nvasilyev@apple.com>
1601 Web Inspector: Console Scrolls Unexpectedly when Clicking inside un-selected Expanding Object
1602 https://bugs.webkit.org/show_bug.cgi?id=142655
1604 Don't scroll when selection change is triggered by clicking, e.g.
1605 only scroll on arrow up and down key press events.
1607 Reviewed by Joseph Pecoraro.
1609 * UserInterface/Views/LogContentView.js:
1610 (WebInspector.LogContentView.prototype._mousemove):
1611 (WebInspector.LogContentView.prototype._updateMessagesSelection):
1612 (WebInspector.LogContentView.prototype._upArrowWasPressed):
1613 (WebInspector.LogContentView.prototype._downArrowWasPressed):
1615 2015-03-15 Nikita Vasilyev <nvasilyev@apple.com>
1617 Web Inspector: Rename ConsoleMessage and ConsoleMessageImpl to LegacyConsoleMessage and LegacyConsoleMessageImpl respectively
1618 https://bugs.webkit.org/show_bug.cgi?id=142712
1620 As a first step of ConsoleMessage refactoring (https://bugs.webkit.org/show_bug.cgi?id=142599):
1622 - Rename WebInspector.ConsoleMessage class to WebInspector.LegacyConsoleMessage
1623 - Rename WebInspector.ConsoleMessageImpl class to WebInspector.LegacyConsoleMessageImpl
1624 - Rename ConsoleMessage.js file to LegacyConsoleMessage.js
1625 - Rename ConsoleMessageImpl file to LegacyConsoleMessageImpl.js
1627 Reviewed by Joseph Pecoraro.
1629 * UserInterface/Controllers/JavaScriptLogViewController.js:
1630 (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessage):
1631 * UserInterface/Controllers/LogManager.js:
1632 (WebInspector.LogManager.prototype.messageWasAdded):
1633 * UserInterface/Main.html:
1634 * UserInterface/Models/DefaultDashboard.js:
1635 (WebInspector.DefaultDashboard.prototype._incrementConsoleMessageType):
1636 * UserInterface/Views/ConsoleCommandResult.js:
1637 (WebInspector.ConsoleCommandResult):
1638 (WebInspector.ConsoleCommandResult.prototype.toMessageElement):
1639 * UserInterface/Views/ConsoleGroup.js:
1640 (WebInspector.ConsoleGroup.prototype.render):
1641 * UserInterface/Views/LegacyConsoleMessage.js: Renamed from Source/WebInspectorUI/UserInterface/Views/ConsoleMessage.js.
1642 (WebInspector.LegacyConsoleMessage):
1643 (WebInspector.LegacyConsoleMessage.prototype.isErrorOrWarning):
1644 (WebInspector.LegacyConsoleMessage.prototype.updateRepeatCount):
1645 (WebInspector.LegacyConsoleMessage.prototype.clone):
1646 (WebInspector.LegacyConsoleMessage.create):
1647 * UserInterface/Views/LegacyConsoleMessageImpl.js: Renamed from Source/WebInspectorUI/UserInterface/Views/ConsoleMessageImpl.js.
1648 (WebInspector.LegacyConsoleMessageImpl):
1649 (WebInspector.LegacyConsoleMessageImpl.prototype._formatMessage):
1650 (WebInspector.LegacyConsoleMessageImpl.prototype._shouldDumpStackTrace):
1651 (WebInspector.LegacyConsoleMessageImpl.prototype._shouldHideURL):
1652 (WebInspector.LegacyConsoleMessageImpl.prototype._firstNonNativeCallFrame):
1653 (WebInspector.LegacyConsoleMessageImpl.prototype.get message):
1654 (WebInspector.LegacyConsoleMessageImpl.prototype.get formattedMessage):
1655 (WebInspector.LegacyConsoleMessageImpl.prototype._linkifyLocation):
1656 (WebInspector.LegacyConsoleMessageImpl.prototype._linkifyCallFrame):
1657 (WebInspector.LegacyConsoleMessageImpl.prototype.isErrorOrWarning):
1658 (WebInspector.LegacyConsoleMessageImpl.prototype._format):
1659 (WebInspector.LegacyConsoleMessageImpl.prototype._isExpandable):
1660 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameter):
1661 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsValue):
1662 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsObject):
1663 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsString):
1664 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsNode):
1665 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsArray):
1666 (WebInspector.LegacyConsoleMessageImpl.prototype._rootPropertyPathForObject):
1667 (WebInspector.LegacyConsoleMessageImpl.prototype._userProvidedColumnNames):
1668 (WebInspector.LegacyConsoleMessageImpl.prototype._formatParameterAsTable):
1669 (WebInspector.LegacyConsoleMessageImpl.prototype.):
1670 (WebInspector.LegacyConsoleMessageImpl.prototype.stringFormatter):
1671 (WebInspector.LegacyConsoleMessageImpl.prototype.floatFormatter):
1672 (WebInspector.LegacyConsoleMessageImpl.prototype.integerFormatter):
1673 (WebInspector.LegacyConsoleMessageImpl.prototype.styleFormatter):
1674 (WebInspector.LegacyConsoleMessageImpl.prototype.isWhitelistedProperty):
1675 (WebInspector.LegacyConsoleMessageImpl.prototype.append):
1676 (WebInspector.LegacyConsoleMessageImpl.prototype._formatWithSubstitutionString):
1677 (WebInspector.LegacyConsoleMessageImpl.prototype.decorateMessageElement):
1678 (WebInspector.LegacyConsoleMessageImpl.prototype.toMessageElement):
1679 (WebInspector.LegacyConsoleMessageImpl.prototype._populateStackTraceTreeElement):
1680 (WebInspector.LegacyConsoleMessageImpl.prototype.updateRepeatCount):
1681 (WebInspector.LegacyConsoleMessageImpl.prototype.toString):
1682 (WebInspector.LegacyConsoleMessageImpl.prototype.get text):
1683 (WebInspector.LegacyConsoleMessageImpl.prototype.isEqual):
1684 (WebInspector.LegacyConsoleMessageImpl.prototype.get stackTrace):
1685 (WebInspector.LegacyConsoleMessageImpl.prototype.clone):
1686 (WebInspector.LegacyConsoleMessageImpl.prototype.get levelString):
1687 (WebInspector.LegacyConsoleMessageImpl.prototype.get clipboardPrefixString):
1688 (WebInspector.LegacyConsoleMessageImpl.prototype.toClipboardString):
1689 * UserInterface/Views/LogContentView.js:
1690 (WebInspector.LogContentView.prototype.didAppendConsoleMessage):
1691 (WebInspector.LogContentView.prototype._messageAdded):
1692 (WebInspector.LogContentView.prototype._filterMessages):
1693 (WebInspector.LogContentView.prototype._reappendProvisionalMessages):
1694 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
1695 * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:
1697 2015-03-12 Jono Wells <jonowells@apple.com>
1699 Web Inspector: Debugger sidebar should group global breakpoints together
1700 https://bugs.webkit.org/show_bug.cgi?id=142607
1702 Reviewed by Timothy Hatcher.
1704 Update the DebuggerSidebarPanel class to hold global breakpoints such as "All Exceptions" in one container. This
1705 will be the place future such breakpoints are added.
1707 * Localizations/en.lproj/localizedStrings.js: Added string.
1708 * UserInterface/Main.html: Small rearrangement.
1710 * UserInterface/Views/DebuggerSidebarPanel.js: Change how exception breaking options are displayed.
1711 (WebInspector.DebuggerSidebarPanel):
1712 (WebInspector.DebuggerSidebarPanel.prototype._treeElementSelected):
1713 (WebInspector.DebuggerSidebarPanel.prototype._compareTopLevelTreeElements):
1715 * UserInterface/Views/FolderTreeElement.js: Support additional classes for icons.
1716 * UserInterface/Views/ResourceSidebarPanel.js: Change call to FolderTreeElement constructor.
1718 2015-03-12 Joseph Pecoraro <pecoraro@apple.com>
1720 Web Inspector: Console Errors during provisional document loads get lost with "Clear Log on Reload"
1721 https://bugs.webkit.org/show_bug.cgi?id=142603
1723 Reviewed by Timothy Hatcher.
1725 * UserInterface/Views/LogContentView.js:
1726 (WebInspector.LogContentView.prototype._messageAdded):
1727 (WebInspector.LogContentView.prototype._provisionalLoadStarted):
1728 Detect a provisional load has started to start save messages that come in at this time.
1730 (WebInspector.LogContentView.prototype._sessionStarted):
1731 Reappend provisional load messages if we auto-cleared.
1733 (WebInspector.LogContentView.prototype._reappendProvisionalMessages):
1734 (WebInspector.LogContentView.prototype._clearProvisionalState):
1735 Helpers for dealing with the provisional loading state.
1737 2015-03-11 Joseph Pecoraro <pecoraro@apple.com>
1739 Web Inspector: CSS parser errors in the console should include column numbers
1740 https://bugs.webkit.org/show_bug.cgi?id=114313
1742 Reviewed by Darin Adler.
1744 * UserInterface/Views/ConsoleMessageImpl.js:
1745 (WebInspector.ConsoleMessageImpl.prototype._linkifyLocation):
1746 Column numbers in console messages are also 1 based and should be adjusted.
1748 2015-03-11 Commit Queue <commit-queue@webkit.org>
1750 Unreviewed, rolling out r181367.
1751 https://bugs.webkit.org/show_bug.cgi?id=142581
1753 Caused crashes on the debug bots (Requested by cdumez on
1758 "Web Inspector: CSS parser errors in the console should
1759 include column numbers"
1760 https://bugs.webkit.org/show_bug.cgi?id=114313
1761 http://trac.webkit.org/changeset/181367
1763 2015-03-11 Joseph Pecoraro <pecoraro@apple.com>
1765 Web Inspector: Reload after Global Search results in empty Resources Sidebar.
1766 https://bugs.webkit.org/show_bug.cgi?id=142572
1768 Reviewed by Timothy Hatcher.
1770 If you reload when the search content tree outline is showing, break out
1771 to show the resource tree outline.
1773 * UserInterface/Views/ResourceSidebarPanel.js:
1774 (WebInspector.ResourceSidebarPanel.prototype._showResourcesContentTreeOutline):
1775 (WebInspector.ResourceSidebarPanel.prototype._showSearchContentTreeOutline):
1777 2015-03-11 Joseph Pecoraro <pecoraro@apple.com>
1779 Web Inspector: SearchResultTreeElement.representedObject is missing a saveIdentityToCookie implementation
1780 https://bugs.webkit.org/show_bug.cgi?id=134698
1782 Reviewed by Timothy Hatcher.
1784 This will restore selection of a global search tree element if you
1785 close and reopen the inspector in such a case.
1787 * UserInterface/Models/DOMSearchMatchObject.js:
1788 (WebInspector.DOMSearchMatchObject.prototype.get resource):
1789 (WebInspector.DOMSearchMatchObject.titleForDOMNode):
1790 Cookie has the resource URL, DOM Node title, and text range.
1792 * UserInterface/Models/SourceCodeSearchMatchObject.js:
1793 (WebInspector.SourceCodeSearchMatchObject.prototype.get sourceCodeTextRange):
1794 Cookie has the source code URL and text range.
1796 2015-03-10 Joseph Pecoraro <pecoraro@apple.com>
1798 Web Inspector: CSS parser errors in the console should include column numbers
1799 https://bugs.webkit.org/show_bug.cgi?id=114313
1801 Reviewed by Benjamin Poulain.
1803 * UserInterface/Views/ConsoleMessageImpl.js:
1804 (WebInspector.ConsoleMessageImpl.prototype._linkifyLocation):
1805 Column numbers in console messages are also 1 based and should be adjusted.
1807 2015-03-10 Joseph Pecoraro <pecoraro@apple.com>
1809 Web Inspector: console.error output broken, does not produce ObjectTree
1810 https://bugs.webkit.org/show_bug.cgi?id=142554
1812 Reviewed by Timothy Hatcher.
1814 * UserInterface/Models/IssueMessage.js:
1815 (WebInspector.IssueMessage):
1816 * UserInterface/Protocol/ConsoleObserver.js:
1817 (WebInspector.ConsoleObserver.prototype.messageAdded):
1819 2015-03-10 Saam Barati <saambarati1@gmail.com>
1821 Web Inspector: Destructuring function parameters should show type information
1822 https://bugs.webkit.org/show_bug.cgi?id=142233
1824 Reviewed by Joseph Pecoraro.
1826 JSC supports a function's formal parameter being a destructuring pattern,
1827 and so should the type profiler in the Inspector. This was just an oversight
1828 not to have this in bug 141215.
1830 This patch also does a bit of refactoring to not have duplicate code
1831 that traverses AST nodes in TypeTokenAnnotator and ScriptSyntaxTree.
1832 Before, both of these classes were responsible for traversing the AST
1833 in an identical way, this is bad. Now, ScriptSyntaxTree contains the
1834 canonical implementation of how the AST should be traversed and which
1835 AST nodes should be collected for type profiling. ScriptSyntaxTree will
1836 pass this information back to TypeTokenAnnotator.
1838 * UserInterface/Controllers/TypeTokenAnnotator.js:
1839 (WebInspector.TypeTokenAnnotator.prototype._insertTypeToken):
1840 (WebInspector.TypeTokenAnnotator.prototype._insertTypeTokensForEachNode): Deleted.
1841 * UserInterface/Models/ScriptSyntaxTree.js:
1842 (WebInspector.ScriptSyntaxTree.prototype.):
1843 (WebInspector.ScriptSyntaxTree.prototype.updateTypes):
1844 (WebInspector.ScriptSyntaxTree.prototype._gatherIdentifiersInDeclaration):
1845 (WebInspector.ScriptSyntaxTree.prototype.gatherIdentifiersInVariableDeclaration): Deleted.
1847 2015-03-09 Joseph Pecoraro <pecoraro@apple.com>
1849 Web Inspector: Inline Error / Warning message for Issues
1850 https://bugs.webkit.org/show_bug.cgi?id=142520
1852 Reviewed by Timothy Hatcher.
1854 * Localizations/en.lproj/localizedStrings.js:
1855 * UserInterface/Main.html:
1856 New strings and new files.
1858 * UserInterface/Controllers/IssueManager.js:
1859 (WebInspector.IssueManager.prototype.issueWasAdded):
1860 * UserInterface/Models/IssueMessage.js:
1861 (WebInspector.IssueMessage):
1862 (WebInspector.IssueMessage.prototype.get columnNumber):
1863 * UserInterface/Protocol/ConsoleObserver.js:
1864 (WebInspector.ConsoleObserver.prototype.messageAdded):
1865 Correctly pass the column number into IssueMessage.
1867 * UserInterface/Models/LineWidget.js:
1868 (WebInspector.LineWidget):
1869 (WebInspector.LineWidget.prototype.get codeMirrorLineWidget):
1870 (WebInspector.LineWidget.prototype.get widgetElement):
1871 Create a new Model class for a LineWidget. The root element
1872 should never change, but its children can be updated.
1874 * UserInterface/Views/SourceCodeTextEditor.css:
1875 (.source-code.text-editor .CodeMirror-linewidget):
1876 Override styles so that widgets can overlap line content.
1878 (.source-code.text-editor > .CodeMirror .issue-widget):
1879 (.source-code.text-editor > .CodeMirror .issue-widget.inline):
1880 Float issue widgets to the right side of the editor.
1882 (.source-code.text-editor > .CodeMirror .issue-widget > .arrow):
1883 (.source-code.text-editor > .CodeMirror .issue-widget.inline > .arrow):
1884 Pure CSS arrow for widgets on the same line as their issue.
1886 (.source-code.text-editor > .CodeMirror .issue-widget > .icon):
1887 (.source-code.text-editor > .CodeMirror .issue-widget > .icon.icon-warning):
1888 (.source-code.text-editor > .CodeMirror .issue-widget > .icon.icon-error):
1889 Issue icon styles for the different issue types.
1891 (.source-code.text-editor > .CodeMirror .issue-widget.warning):
1892 (.source-code.text-editor > .CodeMirror .issue-widget.inline.warning):
1893 (.source-code.text-editor > .CodeMirror .issue-widget.inline.warning > .arrow):
1894 (.source-code.text-editor > .CodeMirror .issue-widget.error):
1895 (.source-code.text-editor > .CodeMirror .issue-widget.inline.error):
1896 (.source-code.text-editor > .CodeMirror .issue-widget.inline.error > .arrow):
1897 Different colors for the different issue types.
1899 (.source-code.text-editor > .CodeMirror .issue-widget > .text):
1900 (.source-code.text-editor > .CodeMirror .issue-widget.inline > .text):
1901 Text positioning when on the same line or when expanded.
1903 * UserInterface/Views/SourceCodeTextEditor.js:
1904 (WebInspector.SourceCodeTextEditor.prototype._addIssue):
1905 (WebInspector.SourceCodeTextEditor.prototype._iconClassNameForIssueLevel):
1906 (WebInspector.SourceCodeTextEditor.prototype._updateIssueWidgetForIssues):
1907 (WebInspector.SourceCodeTextEditor.prototype._isWidgetToggleable):
1908 (WebInspector.SourceCodeTextEditor.prototype._handleWidgetClick):
1909 Create widgets for issues.
1911 (WebInspector.SourceCodeTextEditor.prototype._contentDidPopulate):
1912 (WebInspector.SourceCodeTextEditor.prototype.textEditorUpdatedFormatting):
1913 (WebInspector.SourceCodeTextEditor.prototype._clearWidgets):
1914 (WebInspector.SourceCodeTextEditor.prototype._reinsertAllIssues):
1915 Update all widgets in certain cases.
1917 * UserInterface/Views/TextEditor.js:
1918 (WebInspector.TextEditor.prototype.addStyleClassToLine):
1919 This assertion is known to happen for issues added to an editor
1920 before the content has loaded.
1922 (WebInspector.TextEditor.prototype.createWidgetForLine):
1923 Create a widget for a line.
1925 2015-03-06 Joseph Pecoraro <pecoraro@apple.com>
1927 Web Inspector: JS Pretty Printing: "case" or "default" outside of switch causes unbalanced indentation
1928 https://bugs.webkit.org/show_bug.cgi?id=142428
1930 Reviewed by Timothy Hatcher.
1932 * Tools/PrettyPrinting/CodeMirrorFormatters.js:
1933 * UserInterface/Views/CodeMirrorFormatters.js:
1934 Fix "case" and "default" indentation rules to only happen inside a switch.
1936 * Tools/PrettyPrinting/js-tests/switch-case-default-expected.js:
1937 * Tools/PrettyPrinting/js-tests/switch-case-default.js:
1938 Add tests for "case" and "default" nested inside and outside of switches.
1940 2015-03-06 Joseph Pecoraro <pecoraro@apple.com>
1942 Web Inspector: ES6: Improved Support for Iterator Objects
1943 https://bugs.webkit.org/show_bug.cgi?id=142420
1945 Reviewed by Timothy Hatcher.
1947 * UserInterface/Views/ConsoleMessageImpl.js:
1948 (WebInspector.ConsoleMessageImpl):
1949 Treat an iterator like an object.
1951 * UserInterface/Views/ObjectPreviewView.js:
1952 Output iterator previews with []s, not {}s.
1954 2015-03-06 Joseph Pecoraro <pecoraro@apple.com>
1956 Web Inspector: Adopt Object Literal Method Property Syntax
1957 https://bugs.webkit.org/show_bug.cgi?id=142409
1959 Reviewed by Timothy Hatcher.
1961 Mechanical change touching lots of files.
1963 2015-03-06 Joseph Pecoraro <pecoraro@apple.com>
1965 Web Inspector: Adopt Object Literal Shorthand Property Construction Syntax
1966 https://bugs.webkit.org/show_bug.cgi?id=142374
1968 Reviewed by Timothy Hatcher.
1970 Mechanical change touching lots of files.
1972 2015-03-06 Jono Wells <jonowells@apple.com>
1974 Web Inspector: Populate Debugger sidebar with all debuggable resources
1975 https://bugs.webkit.org/show_bug.cgi?id=141232
1977 Reviewed by Timothy Hatcher.
1979 All debuggable resources now show in the debugger sidebar. The _resourceAdded handler now adds a script resource
1980 to the sidebar regardless of whether it has any breakpoints set on it. The new function
1981 _getTreeElementForSourceCodeAndAddToContentTreeOutline adds the element to the debugger sidebar before
1982 _addBreakpointsForSourceCode is called. Removing all breakpoints from a resource no longer removes that
1983 resource from the debugger sidebar. TreeOutline.prototype.removeChild has been updated so the disclosure
1984 button will disappear and reappear correctly when removing/adding breakpoints.
1986 * UserInterface/Views/DebuggerSidebarPanel.js:
1987 (WebInspector.DebuggerSidebarPanel.prototype._addBreakpoint): Expand resource if first breakpoint is added.
1988 (WebInspector.DebuggerSidebarPanel.prototype._getTreeElementForSourceCodeAndAddToContentTreeOutline): Created.
1989 (WebInspector.DebuggerSidebarPanel.prototype._resourceAdded): Checks resource type and adds scripts to sidebar.
1990 (WebInspector.DebuggerSidebarPanel.prototype._mainResourceChanged):
1991 (WebInspector.DebuggerSidebarPanel.prototype._scriptAdded):
1992 (WebInspector.DebuggerSidebarPanel.prototype._removeBreakpointTreeElement): No longer removes empty parent.
1993 (WebInspector.DebuggerSidebarPanel.prototype._treeElementSelected): Displays scripts without breakpoints now.
1995 * UserInterface/Views/GeneralTreeElement.js:
1996 (WebInspector.GeneralTreeElement.prototype.get disclosureButton): Drive-by fix. Unused. Deleted.
1998 * UserInterface/Views/TreeOutline.js:
1999 (TreeOutline.prototype.removeChild):
2000 Remove parent class and set hasChildren to false if necessary to properly hide and reveal disclosure button
2001 for elements whose children have been removed.
2003 2015-03-05 Joseph Pecoraro <pecoraro@apple.com>
2005 Web Inspector: Follow-up fixes to ObjectTreeBaseTreeElement
2006 https://bugs.webkit.org/show_bug.cgi?id=142367
2008 Reviewed by Timothy Hatcher.
2010 * UserInterface/Views/ObjectTreeMapEntryTreeElement.js:
2011 (WebInspector.ObjectTreeMapEntryTreeElement.prototype.propertyPathType):
2012 * UserInterface/Views/ObjectTreeSetIndexTreeElement.js:
2013 (WebInspector.ObjectTreeSetIndexTreeElement.prototype.resolvedValuePropertyPath):
2014 (WebInspector.ObjectTreeSetIndexTreeElement.prototype._titleFragment):
2016 2015-03-05 Tobias Reiss <tobi+webkit@basecode.de>
2018 Web Inspector: console.debug/info should show up in Log Console Filter
2019 https://bugs.webkit.org/show_bug.cgi?id=142300
2021 Reviewed by Joseph Pecoraro.
2023 Add WebInspector.ConsoleMessage.MessageLevel.Debug case that allows console.debug/info
2024 to show up in Log Console Filter.
2026 * UserInterface/Views/LogContentView.js:
2027 (WebInspector.LogContentView.prototype._filterMessages):
2029 2015-03-05 Joseph Pecoraro <pecoraro@apple.com>
2031 Web Inspector: Add ObjectTreeBaseTreeElement to share functionality
2032 https://bugs.webkit.org/show_bug.cgi?id=142323
2034 Reviewed by Timothy Hatcher.
2036 By making this change:
2038 - Share lots of duplicated code.
2039 - Array / Set / Map tree elements get context menu support
2041 * UserInterface/Main.html:
2042 * UserInterface/Views/ObjectTreeBaseTreeElement.js: Added.
2043 (WebInspector.ObjectTreeBaseTreeElement):
2044 (WebInspector.ObjectTreeBaseTreeElement.prototype.get property):
2045 (WebInspector.ObjectTreeBaseTreeElement.prototype.get propertyPath):
2046 (WebInspector.ObjectTreeBaseTreeElement.prototype.oncontextmenu):
2047 (WebInspector.ObjectTreeBaseTreeElement.prototype.resolvedValue):
2048 (WebInspector.ObjectTreeBaseTreeElement.prototype.resolvedValuePropertyPath):
2049 (WebInspector.ObjectTreeBaseTreeElement.prototype.thisPropertyPath):
2050 (WebInspector.ObjectTreeBaseTreeElement.prototype.hadError):
2051 (WebInspector.ObjectTreeBaseTreeElement.prototype.propertyPathType):
2052 (WebInspector.ObjectTreeBaseTreeElement.prototype.propertyPathString):
2053 (WebInspector.ObjectTreeBaseTreeElement.prototype.createInteractiveGetterElement):
2054 (WebInspector.ObjectTreeBaseTreeElement.prototype.createReadOnlyIconElement):
2055 New file, copying most of the code from PropertyTreeElement so it can be shared.
2057 * UserInterface/Views/ObjectTreeArrayIndexTreeElement.js:
2058 (WebInspector.ObjectTreeArrayIndexTreeElement):
2059 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype.invokedGetter):
2060 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._titleFragment):
2061 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype.get property): Deleted.
2062 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._resolvedValue): Deleted.
2063 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._propertyPathType): Deleted.
2064 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._resolvedValuePropertyPath): Deleted.
2065 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._thisPropertyPath): Deleted.
2066 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._propertyPathString): Deleted.
2067 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._updateTitle): Deleted.
2068 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._createInteractiveGetterElement.): Deleted.
2069 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._createReadOnlyIconElement): Deleted.
2070 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
2071 (WebInspector.ObjectTreePropertyTreeElement):
2072 (WebInspector.ObjectTreePropertyTreeElement.prototype.invokedGetter):
2073 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateHasChildren):
2074 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTooltips):
2075 (WebInspector.ObjectTreePropertyTreeElement.prototype._titleFragment):
2076 (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitlePrototype):
2077 (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitlePropertyStyle):
2078 (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitleAPIStyle):
2079 (WebInspector.ObjectTreePropertyTreeElement.prototype._alwaysDisplayAsProperty):
2080 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateChildren):
2081 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateChildrenInternal):
2082 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateEntries):
2083 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateProperties):
2084 (WebInspector.ObjectTreePropertyTreeElement.prototype.get property): Deleted.
2085 (WebInspector.ObjectTreePropertyTreeElement.prototype.oncontextmenu): Deleted.
2086 (WebInspector.ObjectTreePropertyTreeElement.prototype._resolvedValue): Deleted.
2087 (WebInspector.ObjectTreePropertyTreeElement.prototype._propertyPathType): Deleted.
2088 (WebInspector.ObjectTreePropertyTreeElement.prototype._resolvedValuePropertyPath): Deleted.
2089 (WebInspector.ObjectTreePropertyTreeElement.prototype._thisPropertyPath): Deleted.
2090 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTitleAndIcon): Deleted.
2091 (WebInspector.ObjectTreePropertyTreeElement.prototype._createInteractiveGetterElement.): Deleted.
2092 (WebInspector.ObjectTreePropertyTreeElement.prototype._createReadOnlyIconElement): Deleted.
2093 (WebInspector.ObjectTreePropertyTreeElement.prototype): Deleted.
2094 Subclass ObjectTreeBaseTreeElement and eliminate the code now
2095 automatically handled by the base class.
2097 * UserInterface/Views/ObjectTreeMapEntryTreeElement.js:
2098 (WebInspector.ObjectTreeMapEntryTreeElement):
2099 (WebInspector.ObjectTreeMapEntryTreeElement.prototype.resolvedValue):
2100 (WebInspector.ObjectTreeMapEntryTreeElement.prototype._titleFragment):
2101 (WebInspector.ObjectTreeMapEntryTreeElement.prototype._propertyPathString): Deleted.
2102 * UserInterface/Views/ObjectTreeSetIndexTreeElement.js:
2103 (WebInspector.ObjectTreeSetIndexTreeElement):
2104 (WebInspector.ObjectTreeSetIndexTreeElement.prototype.resolvedValue):
2105 (WebInspector.ObjectTreeSetIndexTreeElement.prototype._titleFragment):
2106 (WebInspector.ObjectTreeSetIndexTreeElement.prototype._resolvedValuePropertyPath): Deleted.
2107 Override resolved value since these are not about PropertyDescriptors.
2108 This will make context menus work automatically.
2110 2015-03-04 Joseph Pecoraro <pecoraro@apple.com>
2112 Web Inspector: Improve display of previews with overflow
2113 https://bugs.webkit.org/show_bug.cgi?id=142321
2115 Reviewed by Timothy Hatcher.
2117 * UserInterface/Views/ObjectPreviewView.js:
2118 (WebInspector.ObjectPreviewView.prototype._appendEntryPreviews):
2119 (WebInspector.ObjectPreviewView.prototype._appendPropertyPreviews):
2121 2015-03-04 Joseph Pecoraro <pecoraro@apple.com>
2123 Web Inspector: Array/Collection Sizes should be visible and distinct
2124 https://bugs.webkit.org/show_bug.cgi?id=142254
2126 Reviewed by Timothy Hatcher.
2128 * UserInterface/Models/ObjectPreview.js:
2129 (WebInspector.ObjectPreview):
2130 (WebInspector.ObjectPreview.fromPayload):
2131 (WebInspector.ObjectPreview.prototype.get size):
2132 (WebInspector.ObjectPreview.prototype.hasSize):
2133 * UserInterface/Protocol/RemoteObject.js:
2134 (WebInspector.RemoteObject):
2135 (WebInspector.RemoteObject.fromPrimitiveValue):
2136 (WebInspector.RemoteObject.fromPayload):
2137 (WebInspector.RemoteObject.prototype.get size):
2138 (WebInspector.RemoteObject.prototype.hasSize):
2139 Check if this type has a size and get the size.
2140 Gracefully handle construction for legacy protocols.
2142 * UserInterface/Views/ObjectPreviewView.css:
2143 (.object-preview > .size):
2144 * UserInterface/Views/FormattedValue.css:
2145 (:matches(.formatted-array, .formatted-map, .formatted-set, .formatted-weakmap) > .size):
2146 Style the array/collection size.
2148 * UserInterface/Views/ObjectPreviewView.js:
2149 (WebInspector.ObjectPreviewView):
2150 * UserInterface/Views/FormattedValue.js:
2151 (WebInspector.FormattedValue.createElementForTypesAndValue):
2152 (WebInspector.FormattedValue.createElementForRemoteObject):
2153 (WebInspector.FormattedValue.createElementForObjectPreview):
2154 (WebInspector.FormattedValue.createElementForPropertyPreview):
2155 Add an element showing the array/collection size.
2157 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
2158 (WebInspector.ObjectTreePropertyTreeElement.prototype):
2159 Remove special handling for Array sizes now that this is handled earlier.
2161 * UserInterface/Controllers/StorageManager.js:
2162 (WebInspector.StorageManager.prototype.processData):
2163 (WebInspector.StorageManager.prototype.requestIndexedDatabaseData):
2164 Fix what looks like broken RemoteObject construction.
2166 2015-03-04 Brian J. Burg <burg@cs.washington.edu>
2168 Web Inspector: TimelineViews should be displayed in a ContentViewContainer
2169 https://bugs.webkit.org/show_bug.cgi?id=142290
2171 Reviewed by Timothy Hatcher.
2173 TimelineRecordingContentView has a bunch of logic to manage the currently visible TimelineView.
2174 This could be delegated to a ContentViewContainer to simplify the logic. It also opens the possibility
2175 for other views to be displayed beneath the timeline overview graphs when it makes sense to do so.
2177 In order to be displayable in the container, TimelineView and its subclasses have been upgraded to
2178 be ContentView subclasses. This also reduces some code duplication for basic view management.
2180 * UserInterface/Views/ContentView.js:
2181 (WebInspector.ContentView): Move base class instantiation pattern from TimelineView to here.
2182 (WebInspector.ContentView.isViewable):
2183 * UserInterface/Views/LayoutTimelineView.js: Use ContentView events and base methods.
2184 (WebInspector.LayoutTimelineView.prototype.shown):
2185 (WebInspector.LayoutTimelineView.prototype.hidden):
2186 (WebInspector.LayoutTimelineView.prototype._dataGridNodeSelected):
2187 * UserInterface/Views/NetworkTimelineView.js: Use ContentView events and base methods.
2188 (WebInspector.NetworkTimelineView.prototype.shown):
2189 (WebInspector.NetworkTimelineView.prototype.hidden):
2190 (WebInspector.NetworkTimelineView.prototype._dataGridNodeSelected):
2191 * UserInterface/Views/OverviewTimelineView.js: Use ContentView events and base methods.
2192 (WebInspector.OverviewTimelineView.prototype.shown):
2193 (WebInspector.OverviewTimelineView.prototype._dataGridNodeSelected):
2194 (WebInspector.OverviewTimelineView.prototype._treeElementSelected):
2195 * UserInterface/Views/ScriptTimelineView.js: Use ContentView events and base methods.
2196 (WebInspector.ScriptTimelineView.prototype.shown):
2197 (WebInspector.ScriptTimelineView.prototype.hidden):
2198 (WebInspector.ScriptTimelineView.prototype._dataGridNodeSelected):
2199 * UserInterface/Views/TimelineRecordingContentView.css: Use WebInspector.ContentViewContainer class.
2200 (.content-view.timeline-recording > .content-view-container):
2201 (.content-view.timeline-recording > .content-view-container > .timeline-view > .data-grid td):
2202 (.content-view.timeline-recording > .content-view-container > .timeline-view > .data-grid table.data):
2203 (.content-view.timeline-recording > .view-container): Deleted.
2204 (.content-view.timeline-recording > .view-container > .timeline-view > .data-grid td): Deleted.
2205 (.content-view.timeline-recording > .view-container > .timeline-view > .data-grid table.data): Deleted.
2207 * UserInterface/Views/TimelineRecordingContentView.js:
2208 Many of the changes here mirror the implementation of ClusterContentView. Searching is disabled since
2209 none of the timeline views are currently searchable using ContentViewContainer's full-text search.
2211 In cases where we update the current timeline view, the currentTimelineView accessor returns the
2212 content view if a TimelineView is shown in the content view container, otherwise null.
2214 (WebInspector.TimelineRecordingContentView):
2215 (WebInspector.TimelineRecordingContentView.prototype.showOverviewTimelineView):
2216 (WebInspector.TimelineRecordingContentView.prototype.showTimelineViewForTimeline):
2217 (WebInspector.TimelineRecordingContentView.prototype.get supplementalRepresentedObjects):
2218 (WebInspector.TimelineRecordingContentView.prototype.get handleCopyEvent):
2219 (WebInspector.TimelineRecordingContentView.prototype.get supportsSave):
2220 (WebInspector.TimelineRecordingContentView.prototype.get saveData):
2221 (WebInspector.TimelineRecordingContentView.prototype.get currentTimelineView):
2222 (WebInspector.TimelineRecordingContentView.prototype.shown):
2223 (WebInspector.TimelineRecordingContentView.prototype.hidden):
2224 (WebInspector.TimelineRecordingContentView.prototype.closed):
2225 (WebInspector.TimelineRecordingContentView.prototype.canGoBack):
2226 (WebInspector.TimelineRecordingContentView.prototype.canGoForward):
2227 (WebInspector.TimelineRecordingContentView.prototype.goBack):
2228 (WebInspector.TimelineRecordingContentView.prototype.goForward):
2229 (WebInspector.TimelineRecordingContentView.prototype.updateLayout):
2230 (WebInspector.TimelineRecordingContentView.prototype.saveToCookie):
2231 (WebInspector.TimelineRecordingContentView.prototype.get filterDidChange):
2232 (WebInspector.TimelineRecordingContentView.prototype._currentContentViewDidChange):
2233 (WebInspector.TimelineRecordingContentView.prototype._contentViewSelectionPathComponentDidChange):
2234 (WebInspector.TimelineRecordingContentView.prototype._contentViewSupplementalRepresentedObjectsDidChange):
2235 (WebInspector.TimelineRecordingContentView.prototype._updateTimes):
2236 (WebInspector.TimelineRecordingContentView.prototype._timelineRemoved):
2237 (WebInspector.TimelineRecordingContentView.prototype._timelineCountChanged):
2238 (WebInspector.TimelineRecordingContentView.prototype._timeRangeSelectionChanged):
2239 (WebInspector.TimelineRecordingContentView.prototype.filterDidChange): Deleted.
2240 (WebInspector.TimelineRecordingContentView.prototype._timelineViewSelectionPathComponentsDidChange): Deleted.
2241 (WebInspector.TimelineRecordingContentView.prototype._showTimelineView): Deleted.
2242 * UserInterface/Views/TimelineView.js: Remove duplicated functionality and use ContentView equivalents instead.
2243 (WebInspector.TimelineView):
2244 (WebInspector.TimelineView.prototype.filterUpdated):
2245 (WebInspector.TimelineView.prototype.needsLayout):
2246 (WebInspector.TimelineView.prototype.get representedObject): Deleted.
2247 (WebInspector.TimelineView.prototype.get visible): Deleted.
2248 (WebInspector.TimelineView.prototype.shown): Deleted.
2249 (WebInspector.TimelineView.prototype.hidden): Deleted.
2251 2015-03-03 Brian J. Burg <burg@cs.washington.edu>
2253 Web Inspector: selecting overview timeline tree elements without source locations doesn't update selection components
2254 https://bugs.webkit.org/show_bug.cgi?id=142248
2256 Reviewed by Timothy Hatcher.
2258 Add a missing event dispatch to trigger recalculation of path components when showing the overview timeline view.
2260 * UserInterface/Views/OverviewTimelineView.js:
2261 (WebInspector.OverviewTimelineView.prototype._treeElementSelected):
2263 2015-03-03 Nikita Vasilyev <nvasilyev@apple.com>
2265 Web Inspector: Refactoring: separate ConsoleSession from ConsoleGroup
2266 https://bugs.webkit.org/show_bug.cgi?id=142141
2268 ConsoleSession doesn't have a title and it's not collapsible either.
2269 Simplify ConsoleSession by removing excessive markup.
2271 Reviewed by Timothy Hatcher.
2273 * UserInterface/Controllers/JavaScriptLogViewController.js:
2274 (WebInspector.JavaScriptLogViewController):
2275 (WebInspector.JavaScriptLogViewController.prototype.startNewSession):
2276 (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessage):
2277 (WebInspector.JavaScriptLogViewController.prototype.get topConsoleGroup): Deleted.
2278 * UserInterface/Main.html:
2279 * UserInterface/Views/ConsoleGroup.js:
2280 (WebInspector.ConsoleGroup):
2281 (WebInspector.ConsoleGroup.prototype.render):
2282 (WebInspector.ConsoleGroup.prototype.addMessage):
2283 (WebInspector.ConsoleGroup.prototype.append):
2284 (WebInspector.ConsoleGroup.prototype.hasMessages): Deleted.
2285 * UserInterface/Views/ConsoleSession.js: Added.
2286 (WebInspector.ConsoleSession):
2287 (WebInspector.ConsoleSession.prototype.addMessage):
2288 (WebInspector.ConsoleSession.prototype.append):
2289 (WebInspector.ConsoleSession.prototype.hasMessages):
2290 * UserInterface/Views/LogContentView.css:
2291 (.console-session + .console-session):
2292 (.console-group.new-session .console-group-messages .console-item:first-child): Deleted.
2293 (.console-group.new-session): Deleted.
2295 2015-03-03 Brian J. Burg <burg@cs.washington.edu>
2297 Web Inspector: popover should use requestAnimationFrame to drive move/resize animations
2298 https://bugs.webkit.org/show_bug.cgi?id=142218
2300 Reviewed by Timothy Hatcher.
2302 Remove setTimeout workaround now that Inspector runs in its own process.
2304 * UserInterface/Views/Popover.js:
2305 (WebInspector.Popover.prototype.drawBackground):
2306 (WebInspector.Popover.prototype._animateFrame):
2308 2015-03-03 Brian J. Burg <burg@cs.washington.edu>
2310 Web Inspector: Console log level selector loses selection on reload
2311 https://bugs.webkit.org/show_bug.cgi?id=142199
2313 Reviewed by Timothy Hatcher.
2315 The selected items in the console scope bar were being saved as settings,
2316 but the "All" scope is forcibly selected on reload due to a logic bug.
2318 * UserInterface/Base/Main.js:
2319 (WebInspector.showFullHeightConsole):
2320 The scope bar may already have selected items restored from WebInspector.Settings.
2321 Don't select a scope unless explicitly requested (i.e., clicking on dashboard buttons)
2322 or if no scopes are selected at all. (In the latter case, "All" is the default scope.)
2324 * UserInterface/Views/LogContentView.js:
2325 (WebInspector.LogContentView): Don't specify a default value here to avoid trampling
2326 settings. The "All" scope is selected by default in showFullHeightConsole if
2327 nothing else is selected.
2329 2015-03-02 Joseph Pecoraro <pecoraro@apple.com>
2331 Web Inspector: Remove native extensions now built-in
2332 https://bugs.webkit.org/show_bug.cgi?id=142203
2334 Reviewed by Timothy Hatcher.
2336 * UserInterface/Base/Utilities.js:
2338 2015-03-02 Joseph Pecoraro <pecoraro@apple.com>
2340 Web Inspector: Context Menu to Log a Particular Object
2341 https://bugs.webkit.org/show_bug.cgi?id=142198
2343 Reviewed by Timothy Hatcher.
2345 * UserInterface/Controllers/JavaScriptLogViewController.js:
2346 (WebInspector.JavaScriptLogViewController.prototype.saveResultCallback):
2347 (WebInspector.JavaScriptLogViewController.prototype.appendImmediateExecutionWithResult):
2348 Add a way to show an execution and result immediately in the Log View.
2350 * UserInterface/Views/ConsolePrompt.js:
2351 (WebInspector.ConsolePrompt.prototype.pushHistoryItem):
2352 (WebInspector.ConsolePrompt.prototype.commitTextOrInsertNewLine):
2353 (WebInspector.ConsolePrompt.prototype._handleEnterKey):
2354 (WebInspector.ConsolePrompt.prototype._commitHistoryEntry):
2355 Add a way to append a history item to the console prompt history.
2357 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
2358 (WebInspector.ObjectTreePropertyTreeElement.prototype):
2359 Add a context menu item to object tree properties to log the value.
2361 * UserInterface/Protocol/RemoteObject.js:
2362 (WebInspector.RemoteObject.createCallArgument):
2363 (WebInspector.RemoteObject.prototype.callFunction):
2364 (WebInspector.RemoteObject.prototype.asCallArgument):
2365 Simplify CallArgument creation.
2367 * UserInterface/Controllers/RuntimeManager.js:
2368 (WebInspector.RuntimeManager.prototype.mycallback):
2369 (WebInspector.RuntimeManager.prototype.saveResult):
2370 Wrap RuntimeAgent.saveResult. If supported, run the backend command
2371 and fetch a saved result index from the backend for the given value.
2373 * Localizations/en.lproj/localizedStrings.js:
2374 * UserInterface/Base/Main.js:
2375 (WebInspector.contentLoaded):
2376 * UserInterface/Views/LogContentView.js:
2377 (WebInspector.LogContentView.prototype.get logViewController):
2380 2015-03-02 Joseph Pecoraro <pecoraro@apple.com>
2382 Web Inspector: Add Context Menus to Object Tree properties
2383 https://bugs.webkit.org/show_bug.cgi?id=142125
2385 Reviewed by Timothy Hatcher.
2387 * Localizations/en.lproj/localizedStrings.js:
2388 * UserInterface/Views/ObjectPropertiesSection.js:
2389 (WebInspector.ObjectPropertyTreeElement.prototype._functionContextMenuEventFired):
2390 (WebInspector.ObjectPropertyTreeElement.prototype._functionContextMenuEventFired.revealFunction):
2391 Fix legacy implementation.
2393 * UserInterface/Views/ObjectTreeArrayIndexTreeElement.js:
2394 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
2395 (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitlePrototype):
2396 Give prototype buttons a tooltip.
2398 (WebInspector.ObjectTreePropertyTreeElement.prototype.oncontextmenu):
2399 (WebInspector.ObjectTreePropertyTreeElement.prototype._contextMenuHandler):
2400 (WebInspector.ObjectTreePropertyTreeElement.prototype._appendMenusItemsForObject):
2401 Context Menus based on the selected object.
2403 2015-02-27 Joseph Pecoraro <pecoraro@apple.com>
2405 Web Inspector: Use Maps in ResourceCollection instead of objects
2406 https://bugs.webkit.org/show_bug.cgi?id=142101
2408 Reviewed by Timothy Hatcher.
2410 * UserInterface/Models/ResourceCollection.js:
2411 (WebInspector.ResourceCollection):
2412 (WebInspector.ResourceCollection.prototype.resourcesWithType):
2413 (WebInspector.ResourceCollection.prototype.removeAllResources):
2414 (WebInspector.ResourceCollection.prototype.resourceForURL):
2415 (WebInspector.ResourceCollection.prototype._associateWithResource):
2416 (WebInspector.ResourceCollection.prototype._disassociateWithResource):
2417 (WebInspector.ResourceCollection.prototype._resourceURLDidChange):
2418 (WebInspector.ResourceCollection.prototype._resourceTypeDidChange):
2419 Use Maps instead of objects.
2421 2015-02-26 Nikita Vasilyev <nvasilyev@apple.com>
2423 Web Inspector: Add a subtle blue background for selected console messages
2424 https://bugs.webkit.org/show_bug.cgi?id=142073
2426 Reviewed by Timothy Hatcher.
2428 * UserInterface/Views/LogContentView.css:
2429 (.console-item.selected::after):
2430 (.console-messages:focus .console-item.selected):
2431 (.console-messages:focus .console-item.selected + .console-item):
2432 (.console-error-level + .console-item):
2433 (.console-error-level .section .header .title):
2434 (.console-warning-level):
2435 (.console-warning-level + .console-item):
2437 2015-02-26 Joseph Pecoraro <pecoraro@apple.com>
2439 Web Inspector: Colored console messages apply text color to object tree properties
2440 https://bugs.webkit.org/show_bug.cgi?id=142051
2442 Reviewed by Timothy Hatcher.
2444 * UserInterface/Views/ObjectPreviewView.css:
2446 * UserInterface/Views/ObjectTreeView.css:
2448 Default the color to black within Object Tree and Object Preview views.
2450 2015-02-26 Joseph Pecoraro <pecoraro@apple.com>
2452 Web Inspector: Clear Log on Reload clears some logs that were after reload
2453 https://bugs.webkit.org/show_bug.cgi?id=142070
2455 Reviewed by Timothy Hatcher.
2457 * UserInterface/Views/LogContentView.js:
2458 (WebInspector.LogContentView.prototype._sessionStarted):
2459 We can bail after calling clearLog, since that will already start
2460 a new session for us.
2462 (WebInspector.LogContentView.prototype._clearLog):
2463 Don't trigger a backend clear messages, since that will cause us to
2464 clear messages received between the request and response.
2466 2015-02-26 Joseph Pecoraro <pecoraro@apple.com>
2468 Web Inspector: Save Console Evaluations into Command Line variables $1-$99 ($n)
2469 https://bugs.webkit.org/show_bug.cgi?id=142061
2471 Reviewed by Timothy Hatcher.
2473 * UserInterface/Controllers/RuntimeManager.js:
2474 (WebInspector.RuntimeManager.prototype.evalCallback):
2475 (WebInspector.RuntimeManager.prototype.evaluateInInspectedWindow):
2476 Add a saveResult parameter for the new protocol command in parameter.
2478 * UserInterface/Views/ConsoleMessageImpl.js:
2479 (WebInspector.ConsoleMessageImpl.prototype._formatMessage):
2480 (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsObject):
2481 (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsArray):
2482 (WebInspector.ConsoleMessageImpl.prototype._rootPropertyPathForObject):
2483 * UserInterface/Views/ObjectTreeView.js:
2484 (WebInspector.ObjectTreeView.prototype.appendTitleSuffix):
2485 For console evaluation results, show a "= $n" when the evaluation was
2486 given a saved result index.
2488 * UserInterface/Views/LogContentView.css:
2489 (.console-saved-variable):
2490 * UserInterface/Views/ObjectPreviewView.css:
2491 (.object-preview-name):
2492 Make $n and class names in previews always non-italics.
2494 * UserInterface/Controllers/JavaScriptLogViewController.js:
2495 (WebInspector.JavaScriptLogViewController.prototype.printResult):
2496 (WebInspector.JavaScriptLogViewController.prototype.consolePromptTextCommitted):
2497 * UserInterface/Controllers/JavaScriptRuntimeCompletionProvider.js:
2498 (get WebInspector.JavaScriptRuntimeCompletionProvider.prototype.):
2499 * UserInterface/Controllers/LogManager.js:
2500 (WebInspector.LogManager.prototype.messagesCleared):
2501 (WebInspector.LogManager.prototype._mainResourceDidChange):
2502 Try to provide better autocompletion for $n, by populating autocompletion menus
2503 from $1-$n where n is the maximum saved result index seen. Clear the maximum
2504 when we clear the console.
2506 * UserInterface/Views/ConsoleCommandResult.js:
2507 (WebInspector.ConsoleCommandResult):
2508 (WebInspector.ConsoleCommandResult.clearMaximumSavedResultIndex):
2509 Keep track of the maximum savedResultIndex for console evaluation results.
2511 2015-02-26 Joseph Pecoraro <pecoraro@apple.com>
2513 Web Inspector: Set/Map appear as lossless when they have lossy entries
2514 https://bugs.webkit.org/show_bug.cgi?id=142050
2516 Reviewed by Timothy Hatcher.
2518 * UserInterface/Views/ObjectPreviewView.js:
2519 (WebInspector.ObjectPreviewView.prototype._appendEntryPreviews):
2520 Take into account the lossless states of entry keys and values.
2522 2015-02-26 Joseph Pecoraro <pecoraro@apple.com>
2524 Web Inspector: New ObjectTree UI for Arrays / Maps / Sets
2525 https://bugs.webkit.org/show_bug.cgi?id=142037
2527 Reviewed by Timothy Hatcher.
2529 * Localizations/en.lproj/localizedStrings.js:
2530 * UserInterface/Main.html:
2531 Miscellaneous changes.
2533 * UserInterface/Models/PropertyDescriptor.js:
2534 (WebInspector.PropertyDescriptor.prototype.isIndexProperty):
2535 Useful for quickly checking if this property is numeric and possibly
2538 * UserInterface/Models/PropertyPath.js:
2539 (WebInspector.PropertyPath.prototype.appendMapKey):
2540 (WebInspector.PropertyPath.prototype.appendMapValue):
2541 (WebInspector.PropertyPath.prototype.appendSetIndex):
2542 Be specific about property paths into maps / sets. Note that a map
2543 value may be displayable if the key is simple.
2545 * UserInterface/Protocol/RemoteObject.js:
2546 (WebInspector.RemoteObject.prototype.hasValue):
2547 A simple value RemoteObject may have the value "undefined". So provide
2548 a falsey proof helper that actually checks if we have a value.
2550 (WebInspector.RemoteObject.prototype.isArray):
2551 (WebInspector.RemoteObject.prototype.backendGetOwnPropertyDescriptor):
2552 (WebInspector.RemoteObject.prototype.wrappedCallback):
2553 (WebInspector.RemoteObject.prototype.getOwnPropertyDescriptor):
2554 Currently backend APIs exist only to get all properties. In the case
2555 of collections, we often want to get only one property (__proto__).
2556 This is a simple implementation on top of callFunctionOn.
2558 * UserInterface/Views/ConsoleMessageImpl.js:
2559 (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsObject):
2560 (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsArray):
2561 (WebInspector.ConsoleMessageImpl.prototype.appendUndefined): Deleted.
2562 (WebInspector.ConsoleMessageImpl.prototype._printArray): Deleted.
2563 (WebInspector.ConsoleMessageImpl.prototype._formatAsArrayEntry): Deleted.
2564 Simplify array formatted to just use an ObjectTreeView. Add fixmes
2565 that we should seed the ObjectTreeView with a starting property path.
2567 * UserInterface/Views/FormattedValue.css:
2568 (.formatted-node > ol):
2569 Sometimes, a node's display was getting overridden by various console styles.
2570 Force a node to always display block. We may be able to remove this later.
2572 * UserInterface/Views/FormattedValue.js:
2573 (WebInspector.FormattedValue.createObjectTreeOrFormattedValueForRemoteObject):
2574 Helper for formatting a node / object / value more easily. This
2575 is used by all collection types.
2577 * UserInterface/Views/ObjectPreviewView.js:
2578 (WebInspector.ObjectPreviewView.prototype._appendPropertyPreviews):
2579 We lost the nice sparse array support when switching to the new preview path,
2580 we should add it back.
2582 * UserInterface/Views/ObjectTreeArrayIndexTreeElement.css:
2583 (.object-tree-array-index):
2584 (.object-tree-array-index > .titles):
2585 (.object-tree-array-index > .icon):
2586 (.object-tree-array-index .index-name):
2587 (.object-tree-array-index .index-value .object-tree):
2588 (.object-tree-array-index .index-value .object-tree .object-tree-outline):
2589 (.object-tree-property + ol .object-tree-array-index):
2590 New styles specific to array index tree elements.
2592 * UserInterface/Views/ObjectTreeMapEntryTreeElement.css:
2593 (.object-tree-array-index.object-tree-map-entry > .titles > .title > .index-name):
2594 (.object-tree-map-entry.key):
2595 (.object-tree-map-entry.key:first-of-type):
2596 (.object-tree-map-entry):
2597 New styles specific to map key/value tree elements.
2599 * UserInterface/Views/ObjectTreeCollectionTreeElement.js: Removed.
2600 Remove old collection implementation.
2602 * UserInterface/Views/ObjectTreeArrayIndexTreeElement.js: Added.
2603 (WebInspector.ObjectTreeArrayIndexTreeElement):
2604 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype.get property):
2605 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._resolvedValue):
2606 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._propertyPathType):
2607 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._resolvedValuePropertyPath):
2608 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._thisPropertyPath):
2609 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._propertyPathString):
2610 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._updateTitle):
2611 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._titleFragment):
2612 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._createInteractiveGetterElement.):
2613 (WebInspector.ObjectTreeArrayIndexTreeElement.prototype._createReadOnlyIconElement):
2614 Index followed by formatted value. Unfortunately a page can hack up an array
2615 with getter properties, so also support getter values in an array. This ends
2616 up copying a lot of ObjectTreePropertyTreeElement as a result.
2618 * UserInterface/Views/ObjectTreeMapEntryTreeElement.js: Added.
2619 (WebInspector.ObjectTreeMapEntryTreeElement):
2620 (WebInspector.ObjectTreeMapEntryTreeElement.prototype.get object):
2621 (WebInspector.ObjectTreeMapEntryTreeElement.prototype._propertyPathString):
2622 (WebInspector.ObjectTreeMapEntryTreeElement.prototype._titleFragment):
2623 (WebInspector.ObjectTreeMapKeyTreeElement):
2624 (WebInspector.ObjectTreeMapKeyTreeElement.prototype.displayPropertyName):
2625 (WebInspector.ObjectTreeMapKeyTreeElement.prototype.resolvedValuePropertyPath):
2626 (WebInspector.ObjectTreeMapValueTreeElement):
2627 (WebInspector.ObjectTreeMapValueTreeElement.prototype.displayPropertyName):
2628 (WebInspector.ObjectTreeMapValueTreeElement.prototype.resolvedValuePropertyPath):
2629 Key/value followed by formatted value.
2631 * UserInterface/Views/ObjectTreeSetIndexTreeElement.js: Added.
2632 (WebInspector.ObjectTreeSetIndexTreeElement):
2633 (WebInspector.ObjectTreeSetIndexTreeElement.prototype.get object):
2634 (WebInspector.ObjectTreeSetIndexTreeElement.prototype._resolvedValuePropertyPath):
2635 (WebInspector.ObjectTreeSetIndexTreeElement.prototype._titleFragment):
2636 Dot followed by formatted value.
2638 * UserInterface/Views/ObjectTreePropertyTreeElement.css:
2639 (.object-tree-property > .titles):
2642 * UserInterface/Views/ObjectTreeView.css:
2643 (.object-tree-property :matches(.formatted-string, .formatted-regexp)):
2644 Upgrade generic styles.
2646 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
2647 (WebInspector.ObjectTreePropertyTreeElement.prototype._resolvedValue):
2648 (WebInspector.ObjectTreePropertyTreeElement.prototype._resolvedValuePropertyPath):
2649 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateChildren):
2650 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateChildrenInternal):
2651 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateEntries):
2652 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateProperties):
2653 * UserInterface/Views/ObjectTreeView.js:
2654 (WebInspector.ObjectTreeView):
2655 (WebInspector.ObjectTreeView.emptyMessageElement):
2656 (WebInspector.ObjectTreeView.prototype.expand):
2657 (WebInspector.ObjectTreeView.prototype.collapse):
2658 (WebInspector.ObjectTreeView.prototype.update):
2659 (WebInspector.ObjectTreeView.prototype._updateChildren):
2660 (WebInspector.ObjectTreeView.prototype._updateEntries):
2661 (WebInspector.ObjectTreeView.prototype._updateProperties):
2662 (WebInspector.ObjectTreeView.prototype._handlePreviewOrTitleElementClick):
2663 Both ObjectTreeView and ObjectTreePropertyTreeElement will fetch only collection
2664 entries or properties depending on the type of the object being expanded.
2666 (WebInspector.ObjectTreeView.prototype._trackWeakEntries):
2667 (WebInspector.ObjectTreeView.prototype._untrackWeakEntries):
2668 Allow WeakMap entries to be Garbage Collected when the ObjectTreeView
2669 collapses or the console is cleared. FIXME for handling sub-tree WeakMaps.
2671 2015-02-26 Brent Fulgham <bfulgham@apple.com>
2673 [Win] Make build logs more legible by reducing noise
2674 https://bugs.webkit.org/show_bug.cgi?id=142034
2676 Reviewed by Alexey Proskuryakov.
2678 Modify batch files, makefiles, and DOS commands to remove
2679 uninteresting/unhelpful output.
2681 * WebInspectorUI.vcxproj/WebInspectorUI.make:
2683 2015-02-25 Joseph Pecoraro <pecoraro@apple.com>
2685 Web Inspector: Improve Regex/Error output in Object Tree and Previews
2686 https://bugs.webkit.org/show_bug.cgi?id=142010
2688 Reviewed by Timothy Hatcher.
2690 * UserInterface/Views/ObjectPreviewView.js:
2691 (WebInspector.ObjectPreviewView):
2692 (WebInspector.ObjectPreviewView.prototype._initTitleElement):
2693 Since some object types may be formatted as simple values, ensure they get
2694 the formatted style even in the title view.
2696 (WebInspector.ObjectPreviewView.prototype._appendPreview):
2697 Those object types that can be formatted as simple values should skip
2698 to the value formatting phase.
2700 (WebInspector.ObjectPreviewView.prototype._appendPropertyPreviews):
2701 Do not show property previews for error objects. Always assume lossy
2702 so that it can be expanded.
2704 * UserInterface/Views/ObjectTreeView.js:
2705 (WebInspector.ObjectTreeView):
2706 Make a similiar improvement for ObjectTree titles when previews are
2707 unavailable. This will make dir(value) show a stylized value in the
2708 title of the Object Tree.
2710 2015-02-25 Joseph Pecoraro <pecoraro@apple.com>
2712 Web Inspector: Improve PropertyPath display strings for getters / values
2713 https://bugs.webkit.org/show_bug.cgi?id=142008
2715 Reviewed by Timothy Hatcher.
2717 * UserInterface/Base/Utilities.js:
2718 (doubleQuotedString):
2719 Helper to double quote a string and escape double quotes with-in it.
2721 * UserInterface/Models/PropertyPath.js:
2722 (WebInspector.PropertyPath.prototype.get reducedPath):
2723 Compute the path eliminating unnecessary __proto__s. Note we don't
2724 property handle the case where a .__proto__.x is override earlier
2725 by a .x, but that case is rare.
2727 (WebInspector.PropertyPath.prototype.displayPath):
2728 Helper for choosing fullPath or reducedPath display strings.
2730 (WebInspector.PropertyPath.prototype.appendPropertyName):
2731 (WebInspector.PropertyPath.prototype.appendGetterPropertyName):
2732 (WebInspector.PropertyPath.prototype.appendSetterPropertyName):
2733 (WebInspector.PropertyPath.prototype.appendPropertyDescriptor):
2734 When appending a descriptor, specify if it is for a getter/setter or value.
2735 For getters / setters the actual function can be directly fetched via
2736 __lookupGetter__/__lookupSetter__. Continue to use the property name for values.
2738 * UserInterface/Views/FormattedValue.js:
2739 (WebInspector.FormattedValue.createElementForTypesAndValue):
2741 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
2742 (WebInspector.ObjectTreePropertyTreeElement.prototype._propertyPathType):
2743 (WebInspector.ObjectTreePropertyTreeElement.prototype._resolvedValuePropertyPath):
2744 (WebInspector.ObjectTreePropertyTreeElement.prototype._thisPropertyPath):
2745 (WebInspector.ObjectTreePropertyTreeElement.prototype):
2747 2015-02-24 Joseph Pecoraro <pecoraro@apple.com>
2749 Web Inspector: Eliminate console-formatted-* class names in favor of formatted-*
2750 https://bugs.webkit.org/show_bug.cgi?id=141948
2752 Reviewed by Timothy Hatcher.
2754 * UserInterface/Views/FormattedValue.js:
2755 (WebInspector.FormattedValue.createElementForNode):
2756 Helper for formatting a node as a DOMTreeOutline.
2758 * UserInterface/Views/ConsoleMessageImpl.js:
2759 (WebInspector.ConsoleMessageImpl.prototype._formatParameter):
2760 (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsString):
2761 (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsNode):
2762 (WebInspector.ConsoleMessageImpl.prototype.appendUndefined):
2763 (WebInspector.ConsoleMessageImpl.prototype._printArray):
2764 (WebInspector.ConsoleMessageImpl.prototype.): Deleted.
2765 * UserInterface/Views/LogContentView.css:
2766 (.console-user-command-result):
2767 (.console-formatted-object): Deleted.
2768 (.console-object-preview): Deleted.
2769 (.expanded .console-object-preview): Deleted.
2770 (.console-object-preview .name): Deleted.
2771 (.expanded .console-object-preview > .console-object-preview-body): Deleted.
2772 (.console-object-preview > .console-object-preview-name.console-object-preview-name-Object): Deleted.
2773 (.console-object-preview-body .console-object-preview-name.console-object-preview-name-Object): Deleted.
2774 (.expanded .console-object-preview > .console-object-preview-name.console-object-preview-name-Object): Deleted.
2775 (.console-formatted-object, .console-formatted-node, .console-formatted-error, .console-formatted-map, .console-formatted-set, .console-formatted-weakmap): Deleted.
2776 (:matches(.console-formatted-object, .console-formatted-node, .console-formatted-error, .console-formatted-map, .console-formatted-set, .console-formatted-weakmap) .section): Deleted.
2778 * UserInterface/Views/LogContentView.js:
2779 (WebInspector.LogContentView.prototype._leftArrowWasPressed):
2780 (WebInspector.LogContentView.prototype._rightArrowWasPressed):
2781 Add FIXMEs since this will no longer work with ObjectTree.
2783 * UserInterface/Views/ObjectPreviewView.css:
2785 * UserInterface/Views/ObjectTreeView.css:
2787 Copy over the font styles from console-formatted-object.
2789 * UserInterface/Views/ObjectPropertiesSection.js:
2790 (WebInspector.ObjectPropertyTreeElement.prototype.update):
2791 * UserInterface/Views/SourceCodeTextEditor.js:
2792 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForFunction.didGetDetails):
2793 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForFunction):
2794 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForString):
2795 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForRegExp):
2796 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForNumber):
2797 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForBoolean):
2798 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForNull):
2799 (WebInspector.SourceCodeTextEditor.prototype._showPopoverForUndefined):
2800 Convert to formatted value class names.
2802 2015-02-24 Joseph Pecoraro <pecoraro@apple.com>
2804 Web Inspector: Make Getter/Setter RemoteObject property and ObjectPreview handling consistent
2805 https://bugs.webkit.org/show_bug.cgi?id=141587
2807 Reviewed by Timothy Hatcher.
2809 * UserInterface/Models/CallFrame.js:
2810 (WebInspector.CallFrame.prototype.collectScopeChainVariableNames):
2811 * UserInterface/Models/PropertyDescriptor.js:
2812 (WebInspector.PropertyDescriptor.prototype.get nativeGetter):
2813 * UserInterface/Protocol/RemoteObject.js:
2814 (WebInspector.RemoteObject.fromPayload):
2815 (WebInspector.RemoteObject.prototype.getOwnPropertyDescriptors):
2816 (WebInspector.RemoteObject.prototype.getAllPropertyDescriptors):
2817 (WebInspector.RemoteObject.prototype.getDisplayablePropertyDescriptors):
2818 (WebInspector.RemoteObject.prototype._getPropertyDescriptors):
2819 (WebInspector.RemoteObject.prototype.if):
2820 (WebInspector.RemoteObject.prototype.deprecatedGetOwnProperties):
2821 (WebInspector.RemoteObject.prototype.deprecatedGetAllProperties):
2822 (WebInspector.RemoteObject.prototype._deprecatedGetProperties):
2823 (WebInspector.RemoteObject.prototype.getOwnAndGetterPropertyDescriptors): Deleted.
2824 (WebInspector.RemoteObject.prototype.callback): Deleted.
2825 (WebInspector.RemoteObject.prototype.getOwnProperties): Deleted.
2826 (WebInspector.RemoteObject.prototype.getOwnAndGetterProperties): Deleted.
2827 (WebInspector.RemoteObject.prototype.getAllProperties): Deleted.
2828 (WebInspector.RemoteObject.prototype.set else): Deleted.
2829 * UserInterface/Views/ConsoleMessageImpl.js:
2830 (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsArray):
2831 * UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
2832 (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties.nodePrototypesReady):
2833 * UserInterface/Views/ObjectPropertiesSection.js:
2834 (WebInspector.ObjectPropertiesSection.prototype.update):
2835 (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
2836 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
2837 (WebInspector.ObjectTreePropertyTreeElement.prototype.):
2838 (WebInspector.ObjectTreePropertyTreeElement.prototype):
2839 * UserInterface/Views/ObjectTreeView.js:
2840 (WebInspector.ObjectTreeView.prototype.update):
2842 2015-02-24 Joseph Pecoraro <pecoraro@apple.com>
2844 Web Inspector: New Object Tree View UI
2845 https://bugs.webkit.org/show_bug.cgi?id=141932
2847 Reviewed by Timothy Hatcher.
2849 Part 1: Majority of the UI.
2851 * Localizations/en.lproj/localizedStrings.js:
2852 * UserInterface/Images/Eye.svg: Added.
2853 * UserInterface/Images/TypeBoolean.svg: Added.
2854 * UserInterface/Images/TypeNull.svg: Added.
2855 * UserInterface/Images/TypeNumber.svg: Added.
2856 * UserInterface/Images/TypeObject.svg: Added.
2857 * UserInterface/Images/TypeRegex.svg: Added.
2858 * UserInterface/Images/TypeString.svg: Added.
2859 * UserInterface/Images/TypeSymbol.svg: Added.
2860 * UserInterface/Images/TypeUndefined.svg: Added.
2861 * UserInterface/Main.html:
2864 * UserInterface/Views/FormattedValue.css:
2865 (.formatted-boolean):
2866 Give booleans a light purple color.
2868 * UserInterface/Views/FormattedValue.js:
2869 (WebInspector.FormattedValue.createElementForTypesAndValue):
2870 Previously we were truncating function value logging in the console. E.g.
2871 js> multiLineFunction
2872 <- function multiLineFunction() {
2873 No longer truncate so we display the full string.
2875 * UserInterface/Models/PropertyPath.js: Added.
2876 (WebInspector.PropertyPath):
2877 (WebInspector.PropertyPath.prototype.get object):
2878 (WebInspector.PropertyPath.prototype.get parent):
2879 (WebInspector.PropertyPath.prototype.get isPrototype):
2880 (WebInspector.PropertyPath.prototype.get rootObject):
2881 (WebInspector.PropertyPath.prototype.get lastNonPrototypeObject):
2882 (WebInspector.PropertyPath.prototype.get pathComponent):
2883 (WebInspector.PropertyPath.prototype.get fullPath):
2884 (WebInspector.PropertyPath.prototype.isRoot):
2885 (WebInspector.PropertyPath.prototype.isPathComponentImpossible):
2886 (WebInspector.PropertyPath.prototype.isFullPathImpossible):
2887 (WebInspector.PropertyPath.prototype.appendPropertyName):
2888 (WebInspector.PropertyPath.prototype.appendPropertySymbol):
2889 (WebInspector.PropertyPath.prototype.appendInternalPropertyName):
2890 (WebInspector.PropertyPath.prototype.appendArrayIndex):
2891 (WebInspector.PropertyPath.prototype.appendCollectionIndex):
2892 (WebInspector.PropertyPath.prototype.appendPropertyDescriptor):
2893 (WebInspector.PropertyPath.prototype._canPropertyNameBeDotAccess):
2894 PropertyPaths are a linked list of remote object / patch component pairs.
2895 For a property like "foo['property 1'].__proto__.baz" we will have a PropertyPath
2896 chain with the RemoteObject for each component. This allows us to accurately
2897 select the RemoteObject on which we should invoke a getter. It also allows
2898 us to display the property path string from the root object, if possible.
2900 * UserInterface/Protocol/RemoteObject.js:
2901 (WebInspector.RemoteObject.prototype.callFunction):
2902 (WebInspector.RemoteObject.prototype.backendInvokeGetter):
2903 (WebInspector.RemoteObject.prototype.invokeGetter):
2904 Provide a way to invoke a getter function on a remote object if we
2905 have a reference to the getter function. At the same time, improve
2906 the mostly unused callFunction API to automatically convert
2907 RemoteObjects / values to their Runtime.CallArgument format.
2909 * UserInterface/Views/ObjectTreePropertyTreeElement.css: Added.
2910 (.object-tree-property):
2911 (.object-tree-property > .disclosure-button):
2912 (.object-tree-property.parent > .disclosure-button):
2913 (.object-tree-property.parent.expanded > .disclosure-button):
2914 (.object-tree-property > .titles):
2915 Focused styles for the ObjectTree property GeneralTreeElements.
2916 Reuse navigation sidebar disclosure-triangles.
2918 (.object-tree-property > .icon):
2919 (.object-tree-property.boolean > .icon):
2920 (.object-tree-property.function > .icon):
2921 (.object-tree-property.number > .icon):
2922 (.object-tree-property.object > .icon):
2923 (.object-tree-property.object.null > .icon):
2924 (.object-tree-property.object.node > .icon):
2925 (.object-tree-property.regex > .icon):
2926 (.object-tree-property.string > .icon):
2927 (.object-tree-property.symbol > .icon):
2928 (.object-tree-property.undefined > .icon):
2929 Use different icons for different object types. Special case
2930 "accessor" to be undefined.
2932 (.object-tree-property .prototype-name):
2933 (.object-tree-property .property-name.not-enumerable):
2934 Style property names in sans-serif font.
2935 Give non-enumerable properties a slightly transparent look.
2937 (.object-tree-property.prototype-property):
2938 (.object-tree-property.prototype-property > .icon):
2939 (.object-tree-property.prototype-property + ol):
2940 Special styles for prototype properties and their children.
2942 (.object-tree-property .getter):
2943 (.object-tree-property .getter:hover):
2944 (.object-tree-property .read-only):
2945 Styles for clickable getter button and non-interactive read-only indicator.
2947 (.object-tree-property :matches(.formatted-string, .formatted-regexp)):
2948 Do not allow wrapping for values that previously allowed wrapping.
2950 (.object-tree-property .value.error):
2951 If getting a value resulted in an error, display that error in red.
2953 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
2954 (WebInspector.ObjectTreePropertyTreeElement):
2955 Extend from GeneralTreeElement and set up class names on the root <li> object.
2957 (WebInspector.ObjectTreePropertyTreeElement.prototype.onattach): Deleted.
2958 No longer needed by using GeneralTreeElement.
2960 (WebInspector.ObjectTreePropertyTreeElement.prototype.onexpand):
2961 (WebInspector.ObjectTreePropertyTreeElement.prototype.oncollapse):
2962 Expand / collapse an associated ObjectPreview if we have one.
2964 (WebInspector.ObjectTreePropertyTreeElement.prototype._resolvedValue):
2965 (WebInspector.ObjectTreePropertyTreeElement.prototype._resolvedValuePropertyPath):
2966 This PropertyTreeElement may be displaying for a value, or a getter that has
2967 gotten a value. Refer to this as the "resolvedValue".
2969 (WebInspector.ObjectTreePropertyTreeElement.prototype._thisPropertyPath):
2970 A PropertyPath leaf used for tooltips.
2972 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateHasChildren):
2973 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTooltips):
2974 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTitleAndIcon):
2975 Helpers for updating small parts of the UI. When a getter is invoked,
2976 we need to update the entire UI of this TreeElement.
2978 (WebInspector.ObjectTreePropertyTreeElement.prototype._titleFragment):
2979 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTitle): Deleted.
2980 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTitlePropertyStyle): Deleted.
2981 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTitleAPIStyle): Deleted.
2982 (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitlePrototype):
2983 (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitlePropertyStyle):
2984 (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitleAPIStyle):
2985 Create the UI for the mainTitle of this PropertyTreeElement.
2987 (WebInspector.ObjectTreePropertyTreeElement.prototype._createInteractiveGetterElement):
2988 (WebInspector.ObjectTreePropertyTreeElement.prototype._createReadOnlyIconElement):
2989 Helpers for creating the small components of the title UI.
2991 (WebInspector.ObjectTreePropertyTreeElement.prototype._alwaysDisplayAsProperty):
2992 Establish when a property should still be displayed as a "property" even when in API mode.
2993 For example a value property on a prototype, should still display as an expandable property.
2995 * UserInterface/Views/ObjectTreeView.css:
2996 (.object-tree > :matches(.title, .object-preview)::before):
2997 (.object-tree:not(.lossless-preview) > :matches(.title, .object-preview)):
2998 (.object-tree.expanded > :matches(.title, .object-preview)::before):
2999 (.object-tree .object-tree-outline):
3000 (.object-tree-outline ol):
3001 (.object-tree-outline li .empty-message):
3002 (:matches(.console-formatted-object, .console-formatted-node, .console-formatted-error, .console-formatted-map, .console-formatted-set, .console-formatted-weakmap) .object-tree-outline):
3003 (.object-tree > .title): Deleted.
3004 (.object-tree-outline): Deleted.
3005 (.object-tree-outline li): Deleted.
3006 (.object-tree-outline li.parent): Deleted.
3007 (.object-tree-outline li.parent::before): Deleted.
3008 (.object-tree-outline li.parent.expanded::before): Deleted.
3009 (.object-tree-property .name): Deleted.
3010 (.object-tree-property .name.not-enumerable): Deleted.
3011 (.object-tree-property .value.error): Deleted.
3012 (.console-group-messages .object-tree:not(.lossless-preview)): Deleted.
3013 (.console-group-messages .object-tree:not(.lossless-preview) > :matches(.title, .object-preview)): Deleted.
3014 (.console-group-messages .object-tree:not(.lossless-preview) > :matches(.title, .object-preview)::before): Deleted.
3015 (.console-group-messages :matches(.console-formatted-object, .console-formatted-node, .console-formatted-error, .console-formatted-map, .console-formatted-set, .console-formatted-weakmap) .object-tree): Deleted.
3016 (.console-group-messages :matches(.console-formatted-object, .console-formatted-node, .console-formatted-error, .console-formatted-map, .console-formatted-set, .console-formatted-weakmap) .object-tree-outline): Deleted.
3017 Move most PropertyTreeElement specific styles into ObjectPropertyTreeElement.css.
3018 Plenty of console specific files were eliminated.
3020 * UserInterface/Views/ObjectTreeView.js:
3021 (WebInspector.ObjectTreeView.prototype.update):
3022 (WebInspector.ObjectTreeView.prototype._updateProperties):
3025 Part 2: Provide better parameter lists for native functions.
3027 When expanding an object's prototype chain, with authored code
3028 you will accurately see parameter lists for user authored functions
3029 because we can get this by parsing Function.prototype.toString.
3030 For native code, we don't get any parameter information. In such cases
3031 we can detect we are a native function, and provide our own strings.
3033 This fills in most of the JavaScript built-ins and some DOM
3034 functions, however we should autogenerate the rest of the DOM.
3036 * UserInterface/Base/Utilities.js:
3037 (isFunctionStringNativeCode):
3038 Helper to check if a function is native or not based on its string.
3040 * UserInterface/Main.html:
3041 * UserInterface/Models/NativeFunctionParameters.js: Added.
3042 Dictionary of parameter lists for native constructor functions
3043 and prototype functions.
3045 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
3046 (WebInspector.ObjectTreePropertyTreeElement):
3047 (WebInspector.ObjectTreePropertyTreeElement.prototype._functionPropertyString):
3048 (WebInspector.ObjectTreePropertyTreeElement.prototype._functionParameterString):
3049 (WebInspector.ObjectTreePropertyTreeElement.prototype):
3050 When we have a native function, try to provide a better parameter string.
3053 Part 3: Better handle errors when invoking getters.
3055 * UserInterface/Protocol/RemoteObject.js:
3056 (WebInspector.RemoteObject.prototype.callFunction):
3057 (WebInspector.RemoteObject.prototype.invokeGetter):
3058 Pass the error, wasThrown, and result through to the caller so they can
3059 act on all the information possible. Provide encapsulation though
3060 and auto-convert the result to a RemoteObject for the callback.
3062 * UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
3063 (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties.nodeResolved):
3064 (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties.nodePrototypesReady):
3065 * UserInterface/Views/DOMTreeElement.js:
3066 (WebInspector.DOMTreeElement.prototype._createTooltipForNode.setTooltip):
3067 (WebInspector.DOMTreeElement.prototype._createTooltipForNode.resolvedNode):
3068 (WebInspector.DOMTreeElement.prototype._createTooltipForNode):
3069 Update current users of callFunctionOn for the new callback parameters.
3071 * UserInterface/Views/ObjectTreePropertyTreeElement.css:
3072 (.object-tree-property.had-error > .icon):
3073 * UserInterface/Views/ObjectTreePropertyTreeElement.js:
3074 (WebInspector.ObjectTreePropertyTreeElement):
3075 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateHasChildren):
3076 (WebInspector.ObjectTreePropertyTreeElement.prototype._updateTitleAndIcon):
3077 (WebInspector.ObjectTreePropertyTreeElement.prototype._createTitlePropertyStyle):
3078 (WebInspector.ObjectTreePropertyTreeElement.prototype._createInteractiveGetterElement.):
3079 Better style getters with errors.
3081 2015-02-24 Joseph Pecoraro <pecoraro@apple.com>
3083 Web Inspector: Do not show "{}" after Date description in Object Previews
3084 https://bugs.webkit.org/show_bug.cgi?id=141898
3086 Reviewed by Timothy Hatcher.
3088 * UserInterface/Views/ObjectPreviewView.js:
3089 (WebInspector.ObjectPreviewView.prototype._appendPropertyPreviews):
3090 Only show "{...}" section for Date objects that have user
3091 defined properties. Otherwise, Dates do not have properties.
3093 2015-02-23 Joseph Pecoraro <pecoraro@apple.com>
3095 Web Inspector: Remove unused console-object-preview styles - replaced by ObjectPreviewView
3096 https://bugs.webkit.org/show_bug.cgi?id=141945
3098 Reviewed by Timothy Hatcher.
3100 * UserInterface/Views/LogContentView.css:
3101 (.console-object-preview): Deleted.
3102 (.expanded .console-object-preview): Deleted.
3103 (.console-object-preview .name): Deleted.
3104 (.expanded .console-object-preview > .console-object-preview-body): Deleted.
3105 (.console-object-preview > .console-object-preview-name.console-object-preview-name-Object): Deleted.
3106 (.console-object-preview-body .console-object-preview-name.console-object-preview-name-Object): Deleted.
3107 (.expanded .console-object-preview > .console-object-preview-name.console-object-preview-name-Object): Deleted.
3109 2015-02-23 Saam Barati <saambarati1@gmail.com>
3111 Web Inspector: BasicBlockAnnotator ranges should be inclusive of both the start and end offset
3112 https://bugs.webkit.org/show_bug.cgi?id=141334
3114 Reviewed by Timothy Hatcher.
3116 * UserInterface/Views/TextEditor.js:
3117 (WebInspector.TextEditor.prototype.addStyleToTextRange):
3119 2015-02-22 Joseph Pecoraro <pecoraro@apple.com>
3121 Web Inspector: Lazily Create GeneralTreeElement Status Elements
3122 https://bugs.webkit.org/show_bug.cgi?id=141873
3124 Reviewed by Timothy Hatcher.
3126 * UserInterface/Views/GeneralTreeElement.js:
3127 (WebInspector.GeneralTreeElement.prototype.set status):
3128 (WebInspector.GeneralTreeElement.prototype.onattach):
3129 (WebInspector.GeneralTreeElement.prototype._createElementsIfNeeded):
3130 (WebInspector.GeneralTreeElement.prototype._updateStatusElement):
3131 Lazily create and attach the status element container if
3132 "this.status" is actually used by a GeneralTreeElement subclass.
3134 * UserInterface/Views/ResourceTreeElement.js:
3135 (WebInspector.ResourceTreeElement.prototype._updateStatus):
3136 Set to the empty string instead of null to avoid inadvertently
3137 creating status elements for no reason.
3139 2015-02-22 Joseph Pecoraro <pecoraro@apple.com>
3141 Web Inspector: Give ObjectPreviewView a showTitle/showPreview toggle
3142 https://bugs.webkit.org/show_bug.cgi?id=141874
3144 Reviewed by Timothy Hatcher.
3146 Refactor ObjectTree/ObjectPreview a bit to make it easier
3147 to use expanding/collapsing previews in other places.
3149 * UserInterface/Views/ObjectPreviewView.js:
3150 (WebInspector.ObjectPreviewView):
3151 (WebInspector.ObjectPreviewView.prototype.showTitle):
3152 (WebInspector.ObjectPreviewView.prototype.showPreview):
3153 Maintain both a titleElement and previewElement. Show only
3154 one at a time based on showTitle/showPreview APIs.
3156 * UserInterface/Views/ObjectTreeView.css:
3157 (.object-tree.expanded .object-preview):
3158 * UserInterface/Views/ObjectTreeView.js:
3159 (WebInspector.ObjectTreeView):
3160 (WebInspector.ObjectTreeView.prototype.expand):
3161 (WebInspector.ObjectTreeView.prototype.collapse):
3162 If we have a preview, let PreviewView handle toggling
3163 between a title and preview display.
3165 2015-02-22 Joseph Pecoraro <pecoraro@apple.com>
3167 Web Inspector: Make Console UI icons / lines slightly larger
3168 https://bugs.webkit.org/show_bug.cgi?id=141876
3170 Reviewed by Timothy Hatcher.
3172 In preparation for a new ObjectTree design with larger icons,
3173 increase the size of existing output in the Console / Log
3174 so they don't look so small in comparison. This:
3176 - bumps minimum height of lines from 16px to 21px
3177 - 10x10 icons to be 12x12
3178 - recenters icons to match console prompt
3179 - realigns icons with console log / object output
3181 * UserInterface/Views/LogContentView.css:
3182 (.console-user-command-result.console-log-level::before):
3183 (.console-message, .console-user-command):
3184 (.console-item::before):
3185 (.console-user-command::before):
3186 (:matches(.console-warning-level, .console-error-level, .console-log-level).console-message):
3187 (:matches(.console-warning-level, .console-error-level, .console-log-level)::before):
3188 (.outline-disclosure li):
3189 (.outline-disclosure .expanded li):
3190 Fix a case breaking single-line message height.
3191 Only add padding to expanded trees, not collapsed trees.
3193 * UserInterface/Views/QuickConsole.css:
3194 (.quick-console > .console-prompt::before):
3196 2015-02-21 Joseph Pecoraro <pecoraro@apple.com>
3198 Web Inspector: Generate Previews more often for RemoteObject interaction
3199 https://bugs.webkit.org/show_bug.cgi?id=141875
3201 Reviewed by Timothy Hatcher.
3203 * UserInterface/Models/PropertyDescriptor.js:
3204 (WebInspector.PropertyDescriptor.fromPayload):
3205 Fix InternalPropertyDescriptor ingestion. There was no ".internal"
3206 property on these objects, so take a flag.
3208 * UserInterface/Protocol/RemoteObject.js:
3209 (WebInspector.RemoteObject.prototype._getPropertyDescriptors):
3210 Fix InternalPropertyDescriptor ingestion by specifying during
3211 importing the internal properties. Also, get previews.
3213 (WebInspector.RemoteObject.prototype.callFunction):
3214 Always get previews when using callFunctionOn.
3216 2015-02-20 Ronald Jett <rjett@apple.com>
3218 Web Inspector: Add a setting for clearing the console on page reload
3219 https://bugs.webkit.org/show_bug.cgi?id=134414
3221 Reviewed by Timothy Hatcher.
3223 Created a new setting "clear-log-on-reload", which defaults to true.
3224 Users can toggle this setting with an item added to the console's context menu.
3225 When enabled, the console will clear on page reload. When disabled, the console
3226 content will remain during page reloads.
3228 * Localizations/en.lproj/localizedStrings.js:
3229 * UserInterface/Views/LogContentView.js:
3230 (WebInspector.LogContentView):
3231 (WebInspector.LogContentView.prototype._sessionStarted):
3232 (WebInspector.LogContentView.prototype._handleContextMenuEvent):
3233 (WebInspector.LogContentView.prototype._toggleClearLogOnReloadSetting):
3235 2015-02-19 Saam Barati <saambarati1@gmail.com>
3237 Web Inspector: merge in upstream Esprima to support parsing more of ES6
3238 https://bugs.webkit.org/show_bug.cgi?id=141215
3240 Reviewed by Timothy Hatcher.
3242 This patch merges in a new esprima that has some ES6 support.
3243 Specifically, the ES6 support ScriptSyntaxTree now has is:
3245 - Object destructuring
3246 - Array destructuring
3248 ScriptSyntaxTree now uses Symbols for identifying AST node types
3249 instead of strings. This will prevent any direct usage of strings
3250 for node types instead of a direct property access off the
3251 ScriptSyntaxTree constructor.
3253 This patch also does some gardening work:
3254 - TypeTokenAnnotator only walks over the incoming type information
3255 data once to be more efficient.
3256 - TypeTokenView is now smarter about updating its associated DOM node
3257 only if its display name has changed.
3259 * UserInterface/Controllers/TypeTokenAnnotator.js:
3260 (WebInspector.TypeTokenAnnotator.prototype._insertTypeTokensForEachNode):
3261 * UserInterface/External/Esprima/esprima.js:
3263 * UserInterface/Models/ScriptSyntaxTree.js:
3264 (WebInspector.ScriptSyntaxTree.prototype.gatherIdentifiersInVariableDeclaration):
3265 (WebInspector.ScriptSyntaxTree.prototype._recurse):
3266 (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):
3267 * UserInterface/Views/TypeTokenView.js:
3268 (WebInspector.TypeTokenView.prototype.update):
3270 2015-02-19 Joseph Pecoraro <pecoraro@apple.com>
3272 Web Inspector: Use of Array.from for NodeList/Arguments to Array conversion
3273 https://bugs.webkit.org/show_bug.cgi?id=141819
3275 Reviewed by Timothy Hatcher.
3277 Array.from is clearer than Array.prototype.slice.call(arrayLike).
3279 * UserInterface/Base/Test.js:
3281 * UserInterface/Protocol/InspectorBackend.js:
3282 (InspectorBackend.Command.prototype.promise):
3283 (InspectorBackend.Command.prototype._invokeWithArguments):
3284 * UserInterface/Views/LogContentView.js:
3285 (WebInspector.LogContentView.prototype._allMessages):
3287 2015-02-19 Joseph Pecoraro <pecoraro@apple.com>
3289 Follow-up fix to r180371. formatParameterAsValue expects full object, not just a description.
3291 Reviewed by Timothy Hatcher.
3293 * UserInterface/Views/ConsoleMessageImpl.js:
3294 (WebInspector.ConsoleMessageImpl.prototype._formatParameter):
3296 2015-02-19 Joseph Pecoraro <pecoraro@apple.com>
3298 Web Inspector: Introduce FormattedValue helpers and use them in Console/ObjectTree
3299 https://bugs.webkit.org/show_bug.cgi?id=141812
3301 Reviewed by Timothy Hatcher.
3303 There were a few different ways to get styled values. Try to consolidate them
3304 all in FormattedValue. That is also a convenient place to have the styles.
3306 * UserInterface/Main.html:
3307 * UserInterface/Views/ConsoleMessageImpl.js:
3308 (WebInspector.ConsoleMessageImpl.prototype._formatMessage):