Web Inspector: CSS Pretty Printing fails to put space between value functions around...
[WebKit-https.git] / Source / WebInspectorUI / ChangeLog
1 2014-10-08  Joseph Pecoraro  <pecoraro@apple.com>
2
3         Web Inspector: CSS Pretty Printing fails to put space between value functions around ending parenthesis
4         https://bugs.webkit.org/show_bug.cgi?id=137415
5
6         Reviewed by Timothy Hatcher.
7
8         Add a space after a closing parenthesis if we are still inside a property.
9         This adds space between space separated function lists such as
10         -webkit-transform:foo(...)bar(...). Also add a test for keyframe syntax.
11
12         * Tools/PrettyPrinting/CodeMirrorFormatters.js:
13         * Tools/PrettyPrinting/css-tests/keyframes-expected.css: Added.
14         * Tools/PrettyPrinting/css-tests/keyframes.css: Added.
15         * Tools/PrettyPrinting/index.html:
16         * UserInterface/Views/CodeMirrorFormatters.js:
17
18 2014-10-08  Joseph Pecoraro  <pecoraro@apple.com>
19
20         Web Inspector: CSS Pretty Printing fails to put space between rgb(...) and numbers in minified gradients
21         https://bugs.webkit.org/show_bug.cgi?id=137414
22
23         Reviewed by Timothy Hatcher.
24
25         Add whitespace between rgb(...) and a number, possible in gradient
26         syntax like "linear-gradient(rgb(...)0%,rgb(...)100%)".
27
28         * Tools/PrettyPrinting/CodeMirrorFormatters.js:
29         * Tools/PrettyPrinting/css-tests/gradient-expected.css: Added.
30         (.dot-nav:nth-child(1n) li a.active):
31         * Tools/PrettyPrinting/css-tests/gradient.css: Added.
32         (.dot-nav:nth-child(1n) li a.active):
33         * Tools/PrettyPrinting/index.html:
34         * UserInterface/Views/CodeMirrorFormatters.js:
35
36 2014-10-08  Joseph Pecoraro  <pecoraro@apple.com>
37
38         Web Inspector: CSS Pretty Printing fails to wrap long lines of selectors with pseudo classes/elements
39         https://bugs.webkit.org/show_bug.cgi?id=137413
40
41         Reviewed by Timothy Hatcher.
42
43         Long line wrapping was breaking as soon as there was a ':' for a psuedo
44         class or element. Likewise it was counting comment strings as part of
45         the length of the line even though it would get a newline after it.
46
47         * Tools/PrettyPrinting/CodeMirrorFormatters.js:
48         * Tools/PrettyPrinting/css-tests/basic-expected.css:
49         (progress, section, summary, time):
50         * Tools/PrettyPrinting/css-tests/wrapping-expected.css: Added.
51         (a.tryamacs, a.upgradenows):
52         (a.tryamacs:hover, a.upgradenows:hover):
53         * Tools/PrettyPrinting/css-tests/wrapping.css: Added.
54         (a.browsewebappss,a.businessstores,a.buyiphones,a.buynows,a.buynows-arrow,a.comingsoons,p::before,a.descargarahoras,a.downloadituness,a.downloadnows,a.finds,a.freetrials,a.getstarteds,a.gos,a.howtoapplys,a.howtobuys,a.joinnows,a.learnmores,a.nikebuynows,a.notifymes,a.ordernows,a.preordernows,a.preorders,a.reserves,a.startyoursearchs,a.submits,a.tryamacs,a.upgradenows):
55         (a.browsewebappss:hover,a.businessstores:hover,a.buyiphones:hover,a.buynows:hover,a.buynows-arrow:hover,a.comingsoons:hover,p::before,a.descargarahoras:hover,a.downloadituness:hover,a.downloadnows:hover,a.finds:hover,a.freetrials:hover,a.getstarteds:hover,a.gos:hover,a.howtoapplys:hover,a.howtobuys:hover,a.joinnows:hover,a.learnmores:hover,a.nikebuynows:hover,a.notifymes:hover,a.ordernows:hover,a.preordernows:hover,a.preorders:hover,a.reserves:hover,a.startyoursearchs:hover,a.submits:hover,a.tryamacs:hover,a.upgradenows:hover):
56         * Tools/PrettyPrinting/index.html:
57         * UserInterface/Views/CodeMirrorFormatters.js:
58
59 2014-10-04  Joseph Pecoraro  <pecoraro@apple.com>
60
61         Web Inspector: Add PrettyPrinter CSS tests
62         https://bugs.webkit.org/show_bug.cgi?id=134005
63
64         Reviewed by Timothy Hatcher.
65
66         Add CSS pretty printing tests. Improve pretty printing of calc()
67         expressions and media-queries with whitespace around operators
68         and keywords. Also fix the debug output in the tool for CSS.
69
70         * Tools/PrettyPrinting/CodeMirrorFormatters.js:
71         * Tools/PrettyPrinting/FormatterContentBuilder.js:
72         (FormatterContentBuilder.prototype._appendIndent):
73         * Tools/PrettyPrinting/FormatterDebug.js:
74         (.debugToken):
75         (Formatter.prototype.debug):
76         * Tools/PrettyPrinting/css-tests/basic-expected.css: Added.
77         * Tools/PrettyPrinting/css-tests/basic.css: Added.
78         * Tools/PrettyPrinting/css-tests/calc-expected.css: Added.
79         * Tools/PrettyPrinting/css-tests/calc.css: Added.
80         * Tools/PrettyPrinting/css-tests/media-query-expected.css: Added.
81         * Tools/PrettyPrinting/css-tests/media-query.css: Added.
82         * Tools/PrettyPrinting/css-tests/selectors-expected.css: Added.
83         * Tools/PrettyPrinting/css-tests/selectors.css: Added.
84         * Tools/PrettyPrinting/index.html:
85         * UserInterface/Views/CodeMirrorFormatters.js:
86
87 2014-10-04  Brian J. Burg  <burg@cs.washington.edu>
88
89         Unreviewed, rolling out r174319.
90
91         Causes assertions in fast/profiler tests. Needs nontrivial
92         investigation, will take offline.
93
94         Reverted changeset:
95
96         "Web Inspector: timelines should not count time elapsed while
97         paused in the debugger"
98         https://bugs.webkit.org/show_bug.cgi?id=136351
99         http://trac.webkit.org/changeset/174319
100
101 2014-10-04  Brian J. Burg  <burg@cs.washington.edu>
102
103         Web Inspector: timelines should not count time elapsed while paused in the debugger
104         https://bugs.webkit.org/show_bug.cgi?id=136351
105
106         Reviewed by Timothy Hatcher.
107
108         Don't update the timeline's current time when the debugger is paused.
109
110         Start and end times for timeline records are now in seconds elapsed since timeline
111         recording started, rather than milliseconds since the epoch. Add a workaround to
112         preserve compatibility with old backends.
113
114         * UserInterface/Controllers/TimelineManager.js:
115         (WebInspector.TimelineManager.prototype.capturingStarted):
116         (WebInspector.TimelineManager.prototype.eventRecorded.processRecord):
117         (WebInspector.TimelineManager.prototype.eventRecorded):
118         * UserInterface/Views/TimelineContentView.js:
119         (WebInspector.TimelineContentView.prototype._debuggerPaused):
120         (WebInspector.TimelineContentView.prototype._debuggerResumed):
121
122 2014-10-03  Saam Barati  <saambarati1@gmail.com>
123
124         Web Inspector: Move the computation that results in UI strings from JSC to the Web Inspector
125         https://bugs.webkit.org/show_bug.cgi?id=137295
126
127         Reviewed by Timothy Hatcher.
128
129         The inspector now computes a set of properties that was previously 
130         computed inside JSC. 
131
132         This patch also addresses the weird experience of the 
133         type of an expression claiming to be both a Number and 
134         an Integer. This could be a bit confusing because Number 
135         is supposed to represent Double|Integer and the previous
136         UI implied that Number was equivalent to Double. The new UI only 
137         ever shows either the type of Number or Integer when showing
138         the type information of an expression. It never shows both Number
139         and Integer simultaneously to describe a single expression.
140
141         * UserInterface/Models/TypeSet.js:
142         (WebInspector.TypeSet):
143         (WebInspector.TypeSet.prototype.isContainedIn):
144         (WebInspector.TypeSet.prototype.get primitiveTypeNames):
145         * UserInterface/Views/TypePropertiesSection.js:
146         (WebInspector.TypePropertiesSection):
147         (WebInspector.TypePropertiesSection.prototype.onpopulate):
148         * UserInterface/Views/TypeTokenView.js:
149         (WebInspector.TypeTokenView):
150         (WebInspector.TypeTokenView.prototype.update):
151         (WebInspector.TypeTokenView.prototype._shouldShowPopover):
152         (WebInspector.TypeTokenView.prototype._displayTypeName):
153
154 2014-10-02  Joseph Pecoraro  <pecoraro@apple.com>
155
156         Web Inspector: Cannot add a new CSS Rule to elements with 3 or more class names
157         https://bugs.webkit.org/show_bug.cgi?id=137375
158
159         Reviewed by Timothy Hatcher.
160
161         Correctly merge all class names with dots instead of just the first two.
162
163         * UserInterface/Models/DOMNode.js:
164
165 2014-10-02  Mark Lam  <mark.lam@apple.com>
166
167         Fixed the Inspector to be able to properly distinguish between scope types.
168         <https://webkit.org/b/137279>
169
170         Reviewed by Geoffrey Garen and Joseph Pecoraro.
171
172         * Localizations/en.lproj/localizedStrings.js:
173         * UserInterface/Controllers/DebuggerManager.js:
174         * UserInterface/Models/ScopeChainNode.js:
175         * UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
176         - Added handling of the FunctionNameScope case.
177
178 2014-10-02  Andres Gomez  <agomez@igalia.com>
179
180         Web Inspector: [GTK] Missing icons and enhancing the proportion and visibility of some icons
181         https://bugs.webkit.org/show_bug.cgi?id=137248
182
183         Reviewed by Carlos Garcia Campos.
184
185         Add more free icons and removed some unused ones for the Web
186         Inspector in GTK+.
187         Also, enhanced the visibility and/or proportion of several of the
188         icons.
189
190         * UserInterface/Images/gtk/AUTHORS:
191         * UserInterface/Images/gtk/COPYING:
192         * UserInterface/Images/gtk/Checkers.svg: Added.
193         * UserInterface/Images/gtk/Circle.svg: Added.
194         * UserInterface/Images/gtk/CloseLarge.svg: Added.
195         * UserInterface/Images/gtk/CloseTimeline.png: Removed.
196         * UserInterface/Images/gtk/CloseTimeline@2x.png: Removed.
197         * UserInterface/Images/gtk/Crosshair.svg:
198         * UserInterface/Images/gtk/DOMCharacterData.svg:
199         * UserInterface/Images/gtk/DOMComment.svg:
200         * UserInterface/Images/gtk/DOMDocument.svg:
201         * UserInterface/Images/gtk/DOMDocumentType.svg:
202         * UserInterface/Images/gtk/DOMElement.svg:
203         * UserInterface/Images/gtk/DOMNode.svg:
204         * UserInterface/Images/gtk/DOMTextNode.svg:
205         * UserInterface/Images/gtk/DOMTree.svg:
206         * UserInterface/Images/gtk/EventListener.svg:
207         * UserInterface/Images/gtk/Exception.svg:
208         * UserInterface/Images/gtk/Function.svg:
209         * UserInterface/Images/gtk/GradientStop.png: Added.
210         * UserInterface/Images/gtk/GradientStop@2x.png: Added.
211         * UserInterface/Images/gtk/GradientStopSelected.png: Added.
212         * UserInterface/Images/gtk/GradientStopSelected@2x.png: Added.
213         * UserInterface/Images/gtk/Issues.svg:
214         * UserInterface/Images/gtk/IssuesEnabled.svg:
215         * UserInterface/Images/gtk/LessColumns.svg: Removed.
216         * UserInterface/Images/gtk/Logs.svg:
217         * UserInterface/Images/gtk/Memory.svg: Removed.
218         * UserInterface/Images/gtk/MoreColumns.svg: Removed.
219         * UserInterface/Images/gtk/Native.svg:
220         * UserInterface/Images/gtk/NavigationItemAngleBrackets.svg:
221         * UserInterface/Images/gtk/NavigationItemBrushAndRuler.svg:
222         * UserInterface/Images/gtk/NavigationItemBug.svg:
223         * UserInterface/Images/gtk/NavigationItemFile.svg:
224         * UserInterface/Images/gtk/NavigationItemLayers.svg:
225         * UserInterface/Images/gtk/NavigationItemMagnifyingGlass.svg: Removed.
226         * UserInterface/Images/gtk/NavigationItemProbes.pdf: Added.
227         * UserInterface/Images/gtk/NavigationItemStopwatch.svg:
228         * UserInterface/Images/gtk/NavigationItemTypes.svg: Added.
229         * UserInterface/Images/gtk/PaintFlashing.svg: Added.
230         * UserInterface/Images/gtk/PseudoElement.svg:
231         * UserInterface/Images/gtk/Record.svg: Added.
232         * UserInterface/Images/gtk/Recording.png: Removed.
233         * UserInterface/Images/gtk/Recording@2x.png: Removed.
234         * UserInterface/Images/gtk/RecordingHovered.png: Removed.
235         * UserInterface/Images/gtk/RecordingHovered@2x.png: Removed.
236         * UserInterface/Images/gtk/RecordingStopped.png: Removed.
237         * UserInterface/Images/gtk/RecordingStopped@2x.png: Removed.
238         * UserInterface/Images/gtk/Reflection.svg:
239         * UserInterface/Images/gtk/ReplayPauseButton.svg: Added.
240         * UserInterface/Images/gtk/ReplayPlayButton.svg: Added.
241         * UserInterface/Images/gtk/ReplayRecordingButton.svg: Added.
242         * UserInterface/Images/gtk/Request.svg:
243         * UserInterface/Images/gtk/Resources.svg:
244         * UserInterface/Images/gtk/Response.svg:
245         * UserInterface/Images/gtk/ResultLine.svg:
246         * UserInterface/Images/gtk/SourceCode.svg:
247         * UserInterface/Images/gtk/Stop.svg: Added.
248         * UserInterface/Images/gtk/StyleRuleAuthor.svg:
249         * UserInterface/Images/gtk/StyleRuleInherited.svg:
250         * UserInterface/Images/gtk/StyleRuleInheritedElement.svg:
251         * UserInterface/Images/gtk/StyleRuleInspector.svg:
252         * UserInterface/Images/gtk/StyleRuleUser.svg:
253         * UserInterface/Images/gtk/StyleRuleUserAgent.svg:
254         * UserInterface/Images/gtk/Time.svg:
255         * UserInterface/Images/gtk/TimelineRecordAnimation.svg:
256         * UserInterface/Images/gtk/TimelineRecordConsoleProfile.svg: Added.
257         * UserInterface/Images/gtk/TimelineRecordEvent.svg:
258         * UserInterface/Images/gtk/TimelineRecordLayout.svg:
259         * UserInterface/Images/gtk/TimelineRecordPaint.svg:
260         * UserInterface/Images/gtk/TimelineRecordProbeSampled.svg: Added.
261         * UserInterface/Images/gtk/TimelineRecordScriptEvaluated.svg:
262         * UserInterface/Images/gtk/TimelineRecordStyle.svg:
263         * UserInterface/Images/gtk/TimelineRecordTimer.svg:
264         * UserInterface/Images/gtk/Weight.svg:
265
266 2014-09-27  Brian J. Burg  <burg@cs.washington.edu>
267
268         Web Replay: Playback position updates should be sent before the next event loop input is dispatched
269         https://bugs.webkit.org/show_bug.cgi?id=137162
270
271         Reviewed by Timothy Hatcher.
272
273         Pausing playback from the UI was broken because of a typo. Fix this, and rename
274         stopPlayback to cancelPlayback.
275
276         * UserInterface/Controllers/ReplayManager.js:
277         (WebInspector.ReplayManager.prototype.switchSession.if):
278
279 2014-09-26  Joseph Pecoraro  <pecoraro@apple.com>
280
281         Web Inspector: Automatic Inspection should continue once all breakpoints are loaded
282         https://bugs.webkit.org/show_bug.cgi?id=137038
283
284         Reviewed by Timothy Hatcher.
285
286         * UserInterface/Base/Main.js:
287         Send the initialized message after we have sent all other setup messages,
288         such as enabling features and setting breakpoints.
289
290 2014-09-26  Saam Barati  <saambarati1@gmail.com>
291
292         Web Inspector: Type Token View shows type information on hover when it shouldn't
293         https://bugs.webkit.org/show_bug.cgi?id=137152
294
295         Reviewed by Brian J. Burg.
296
297         TypeTokenView should only show type information when there is 
298         more than one primitive type or more than zero objects types. 
299         This fixes a bug in checking the length of object types.
300
301         * UserInterface/Views/TypeTokenView.js:
302         (WebInspector.TypeTokenView.prototype._shouldShowPopover):
303
304 2014-09-25  Timothy Hatcher  <timothy@apple.com>
305
306         Web Inspector: Show type info icon is blurry
307         https://bugs.webkit.org/show_bug.cgi?id=137125
308
309         Reviewed by Darin Adler.
310
311         * UserInterface/Images/NavigationItemTypes.svg:
312         * UserInterface/Views/ScriptContentView.js:
313         (WebInspector.ScriptContentView):
314         * UserInterface/Views/TextContentView.js:
315         (WebInspector.TextContentView):
316         * UserInterface/Views/TextResourceContentView.js:
317         (WebInspector.TextResourceContentView):
318
319 2014-09-25  Saam Barati  <saambarati1@gmail.com>
320
321         Web Inspector: console.assert(bitString) TypeSet:50 
322         https://bugs.webkit.org/show_bug.cgi?id=137051
323
324         Reviewed by Joseph Pecoraro.
325
326         This fixes TypeSet's isContainedIn method by ensuring that 
327         the type bit string isn't zero because the test would trivially 
328         pass if the bit string is zero.
329
330         * UserInterface/Models/TypeSet.js:
331         (WebInspector.TypeSet.prototype.isContainedIn):
332
333 2014-09-25  Brian J. Burg  <burg@cs.washington.edu>
334
335         Web Inspector: FunctionCall timeline records omit profile data if the debugger has paused
336         https://bugs.webkit.org/show_bug.cgi?id=136805
337
338         Reviewed by Timothy Hatcher.
339
340         * UserInterface/Test.html: Add missing include for ScopeChainNode.js.
341
342 2014-09-25  Brian J. Burg  <burg@cs.washington.edu>
343
344         Web Inspector: sort probe details sidebar sections by source code location string
345         https://bugs.webkit.org/show_bug.cgi?id=137080
346
347         Reviewed by Timothy Hatcher.
348
349         Probe sections should display in the same order as associated breakpoint tree elements.
350
351         * UserInterface/Views/ProbeDetailsSidebarPanel.js:
352         (WebInspector.ProbeDetailsSidebarPanel.prototype.inspect.inspectedProbeSets):
353         (WebInspector.ProbeDetailsSidebarPanel.prototype.inspect):
354
355 2014-09-25  Andres Gomez  <agomez@igalia.com>
356
357         Unreviewed. Add more free icons for the Web Inspector in GTK+.
358
359         * UserInterface/Images/gtk/AUTHORS:
360         * UserInterface/Images/gtk/ApplicationCacheManifest.png: Added.
361         * UserInterface/Images/gtk/ApplicationCacheManifest@2x.png: Added.
362         * UserInterface/Images/gtk/COPYING:
363         * UserInterface/Images/gtk/COPYING_LGPL2: Added.
364         * UserInterface/Images/gtk/Cookie.png: Added.
365         * UserInterface/Images/gtk/Cookie@2x.png: Added.
366         * UserInterface/Images/gtk/HoverMenuButton.png: Added.
367         * UserInterface/Images/gtk/HoverMenuButton@2x.png: Added.
368         * UserInterface/Images/gtk/InstructionPointer.png: Added.
369         * UserInterface/Images/gtk/InstructionPointer@2x.png: Added.
370         * UserInterface/Images/gtk/Log.png: Added.
371         * UserInterface/Images/gtk/Log@2x.png: Added.
372         * UserInterface/Images/gtk/Profile.png: Added.
373         * UserInterface/Images/gtk/Profile@2x.png: Added.
374         * UserInterface/Images/gtk/Recording.png: Added.
375         * UserInterface/Images/gtk/Recording@2x.png: Added.
376         * UserInterface/Images/gtk/RecordingHovered.png: Added.
377         * UserInterface/Images/gtk/RecordingHovered@2x.png: Added.
378         * UserInterface/Images/gtk/RecordingStopped.png: Added.
379         * UserInterface/Images/gtk/RecordingStopped@2x.png: Added.
380         * UserInterface/Images/gtk/Script.png: Added.
381         * UserInterface/Images/gtk/Script@2x.png: Added.
382         * UserInterface/Images/gtk/ScriptLarge.png: Added.
383         * UserInterface/Images/gtk/ScriptLarge@2x.png: Added.
384         * UserInterface/Images/gtk/SliderThumb.png: Added.
385         * UserInterface/Images/gtk/SliderThumb@2x.png: Added.
386         * UserInterface/Images/gtk/SliderThumbPressed.png: Added.
387         * UserInterface/Images/gtk/SliderThumbPressed@2x.png: Added.
388         * UserInterface/Images/gtk/Stopwatch.png: Added.
389         * UserInterface/Images/gtk/Stopwatch@2x.png: Added.
390
391 2014-09-21  Timothy Hatcher  <timothy@apple.com>
392
393         Make the Web Inspector use a separate web process.
394
395         https://bugs.webkit.org/show_bug.cgi?id=135120
396
397         Reviewed by Anders Carlsson.
398
399         * Localizations/en.lproj/localizedStrings.js: Updated.
400
401         * UserInterface/Base/Main.js:
402         (WebInspector.loaded):
403         (WebInspector.contentLoaded):
404         Move InspectorFrontendHost.loaded to later in the load.
405         Calling it early just shows the window before we have
406         a user interface to show.
407
408         * UserInterface/Base/Test.js:
409         (WebInspector.loaded):
410         (WebInspector.contentLoaded):
411         Match the changes in Main.js.
412
413         * UserInterface/Protocol/InspectorFrontendAPI.js:
414         (InspectorFrontendAPI.savedURL): Change comment.
415         (InspectorFrontendAPI.appendedToURL): Change comment.
416         (InspectorFrontendAPI.dispatch): Add an assert and early
417         return to be safe from unknown commands.
418         (InspectorFrontendAPI.loadCompleted): Delete _pendingCommands,
419         no need to keep an empty array around a one time use.
420
421 2014-09-24  Andres Gomez  <agomez@igalia.com>
422
423         Unreviewed. Add more free icons for the Web Inspector in GTK+
424
425         * UserInterface/Images/gtk/AUTHORS:
426         * UserInterface/Images/gtk/ApplicationCache.png: Added.
427         * UserInterface/Images/gtk/ApplicationCache@2x.png: Added.
428         * UserInterface/Images/gtk/BottomUpTree.svg: Added.
429         * UserInterface/Images/gtk/Breakpoint.png: Added.
430         * UserInterface/Images/gtk/Breakpoint@2x.png: Added.
431         * UserInterface/Images/gtk/BreakpointButton.svg:
432         * UserInterface/Images/gtk/BreakpointInactive.png: Added.
433         * UserInterface/Images/gtk/BreakpointInactive@2x.png: Added.
434         * UserInterface/Images/gtk/BreakpointInactiveButton.svg:
435         * UserInterface/Images/gtk/COPYING:
436         * UserInterface/Images/gtk/COPYING_CCBYSA3: Copied from Source/WebInspectorUI/UserInterface/Images/gtk/COPYING.
437         * UserInterface/Images/gtk/ClippingCSS.png: Added.
438         * UserInterface/Images/gtk/ClippingCSS@2x.png: Added.
439         * UserInterface/Images/gtk/ClippingGeneric.png: Added.
440         * UserInterface/Images/gtk/ClippingGeneric@2x.png: Added.
441         * UserInterface/Images/gtk/ClippingJS.png: Added.
442         * UserInterface/Images/gtk/ClippingJS@2x.png: Added.
443         * UserInterface/Images/gtk/CloseTimeline.png: Added.
444         * UserInterface/Images/gtk/CloseTimeline@2x.png: Added.
445         * UserInterface/Images/gtk/ColorIcon.png: Added.
446         * UserInterface/Images/gtk/ColorIcon@2x.png: Added.
447         * UserInterface/Images/gtk/Colors.png: Added.
448         * UserInterface/Images/gtk/Colors@2x.png: Added.
449         * UserInterface/Images/gtk/ColorsLarge.png: Added.
450         * UserInterface/Images/gtk/ColorsLarge@2x.png: Added.
451         * UserInterface/Images/gtk/Database.png: Added.
452         * UserInterface/Images/gtk/Database@2x.png: Added.
453         * UserInterface/Images/gtk/DatabaseTable.png: Added.
454         * UserInterface/Images/gtk/DatabaseTable@2x.png: Added.
455         * UserInterface/Images/gtk/HierarchicalNavigationItemChevron.svg: Added.
456         * UserInterface/Images/gtk/IndeterminateProgressSpinner1.svg: Added.
457         * UserInterface/Images/gtk/IndeterminateProgressSpinner10.svg: Added.
458         * UserInterface/Images/gtk/IndeterminateProgressSpinner11.svg: Added.
459         * UserInterface/Images/gtk/IndeterminateProgressSpinner12.svg: Added.
460         * UserInterface/Images/gtk/IndeterminateProgressSpinner2.svg: Added.
461         * UserInterface/Images/gtk/IndeterminateProgressSpinner3.svg: Added.
462         * UserInterface/Images/gtk/IndeterminateProgressSpinner4.svg: Added.
463         * UserInterface/Images/gtk/IndeterminateProgressSpinner5.svg: Added.
464         * UserInterface/Images/gtk/IndeterminateProgressSpinner6.svg: Added.
465         * UserInterface/Images/gtk/IndeterminateProgressSpinner7.svg: Added.
466         * UserInterface/Images/gtk/IndeterminateProgressSpinner8.svg: Added.
467         * UserInterface/Images/gtk/IndeterminateProgressSpinner9.svg: Added.
468         * UserInterface/Images/gtk/Issues.svg: Added.
469         * UserInterface/Images/gtk/IssuesEnabled.svg: Added.
470         * UserInterface/Images/gtk/LayerBorders.svg: Added.
471         * UserInterface/Images/gtk/LessColumns.svg: Added.
472         * UserInterface/Images/gtk/LocalStorage.png: Added.
473         * UserInterface/Images/gtk/LocalStorage@2x.png: Added.
474         * UserInterface/Images/gtk/Locked.svg: Added.
475         * UserInterface/Images/gtk/Logs.svg: Added.
476         * UserInterface/Images/gtk/Memory.svg: Added.
477         * UserInterface/Images/gtk/MoreColumns.svg: Added.
478         * UserInterface/Images/gtk/Native.svg: Added.
479         * UserInterface/Images/gtk/NavigationItemAngleBrackets.svg: Added.
480         * UserInterface/Images/gtk/NavigationItemBrushAndRuler.svg: Added.
481         * UserInterface/Images/gtk/NavigationItemBug.svg: Added.
482         * UserInterface/Images/gtk/NavigationItemCurleyBraces.svg: Added.
483         * UserInterface/Images/gtk/NavigationItemFile.svg: Added.
484         * UserInterface/Images/gtk/NavigationItemLayers.svg: Added.
485         * UserInterface/Images/gtk/NavigationItemLog.svg: Added.
486         * UserInterface/Images/gtk/NavigationItemMagnifyingGlass.svg: Added.
487         * UserInterface/Images/gtk/NavigationItemStopwatch.svg: Added.
488         * UserInterface/Images/gtk/NavigationItemStorage.svg: Added.
489         * UserInterface/Images/gtk/NavigationItemTrash.svg: Added.
490         * UserInterface/Images/gtk/NavigationItemVariable.svg: Added.
491         * UserInterface/Images/gtk/Network.png: Added.
492         * UserInterface/Images/gtk/Network@2x.png: Added.
493         * UserInterface/Images/gtk/NetworkLarge.png: Added.
494         * UserInterface/Images/gtk/NetworkLarge@2x.png: Added.
495         * UserInterface/Images/gtk/Pause.svg: Added.
496         * UserInterface/Images/gtk/Percent.svg: Added.
497         * UserInterface/Images/gtk/Plus.svg: Added.
498         * UserInterface/Images/gtk/PseudoElement.svg: Added.
499         * UserInterface/Images/gtk/Reflection.svg: Added.
500         * UserInterface/Images/gtk/Reload.svg: Added.
501         * UserInterface/Images/gtk/Request.svg: Added.
502         * UserInterface/Images/gtk/Response.svg: Added.
503         * UserInterface/Images/gtk/ResultLine.svg: Added.
504         * UserInterface/Images/gtk/Resume.svg: Added.
505         * UserInterface/Images/gtk/SessionStorage.png: Added.
506         * UserInterface/Images/gtk/SessionStorage@2x.png: Added.
507         * UserInterface/Images/gtk/ShadowDOM.svg: Added.
508         * UserInterface/Images/gtk/SourceCode.svg: Added.
509         * UserInterface/Images/gtk/SplitToggleDown.svg: Added.
510         * UserInterface/Images/gtk/SplitToggleUp.svg: Added.
511         * UserInterface/Images/gtk/StepInto.svg: Added.
512         * UserInterface/Images/gtk/StepOut.svg: Added.
513         * UserInterface/Images/gtk/StepOver.svg: Added.
514         * UserInterface/Images/gtk/StyleRuleAuthor.svg: Added.
515         * UserInterface/Images/gtk/StyleRuleInherited.svg: Added.
516         * UserInterface/Images/gtk/StyleRuleInheritedElement.svg: Added.
517         * UserInterface/Images/gtk/StyleRuleInspector.svg: Added.
518         * UserInterface/Images/gtk/StyleRuleUser.svg: Added.
519         * UserInterface/Images/gtk/StyleRuleUserAgent.svg: Added.
520         * UserInterface/Images/gtk/Time.svg: Added.
521         * UserInterface/Images/gtk/TimelineRecordAnimation.svg: Added.
522         * UserInterface/Images/gtk/TimelineRecordEvent.svg: Added.
523         * UserInterface/Images/gtk/TimelineRecordLayout.svg: Added.
524         * UserInterface/Images/gtk/TimelineRecordPaint.svg: Added.
525         * UserInterface/Images/gtk/TimelineRecordScriptEvaluated.svg: Added.
526         * UserInterface/Images/gtk/TimelineRecordStyle.svg: Added.
527         * UserInterface/Images/gtk/TimelineRecordTimer.svg: Added.
528         * UserInterface/Images/gtk/Undock.svg: Added.
529         * UserInterface/Images/gtk/UserInputPrompt.svg: Added.
530         * UserInterface/Images/gtk/UserInputPromptPrevious.svg: Added.
531         * UserInterface/Images/gtk/UserInputResult.svg: Added.
532         * UserInterface/Images/gtk/Warning.svg: Added.
533         * UserInterface/Images/gtk/Weight.svg: Added.
534
535 2014-09-23  Timothy Hatcher  <timothy@apple.com>
536
537         Web Inspector: Remove UserInterface/Images/gtk from Apple builds
538         https://bugs.webkit.org/show_bug.cgi?id=136955
539
540         Reviewed by Joseph Pecoraro.
541
542         * Scripts/copy-user-interface-resources.pl:
543         Remove Images/Legacy and Images/gtk on Mac and Windows builds by looking
544         at the MAC_OS_X_VERSION_MAJOR and OFFICIAL_BUILD environment vars.
545
546 2014-09-21  Saam Barati  <saambarati1@gmail.com>
547
548         Web Inspector: fix TypeSet hierarchy in TypeTokenView
549         https://bugs.webkit.org/show_bug.cgi?id=136982
550
551         Reviewed by Joseph Pecoraro.
552
553         The protocol object representation of TypeSet was being computed 
554         incorrectly in JSC::TypeSet. This patch fixes that problem
555         and also asserts that the type information that the Web Inspector
556         receives is not empty.
557
558         * UserInterface/Models/TypeSet.js:
559         (WebInspector.TypeSet):
560         * UserInterface/Views/TypeTokenView.js:
561         (WebInspector.TypeTokenView.prototype._displayTypeName):
562
563 2014-09-21  Saam Barati  <saambarati1@gmail.com>
564
565         Web Inspector: unlocalized 'many' string in type profiler inline bubble
566         https://bugs.webkit.org/show_bug.cgi?id=136980
567
568         Reviewed by Timothy Hatcher.
569
570         Generate the localizable string for the type profiler's "many" inline bubble.
571
572         * Localizations/en.lproj/localizedStrings.js:
573         * UserInterface/Views/TypeTokenView.js:
574
575 2014-09-20  Joseph Pecoraro  <pecoraro@apple.com>
576
577         Web Inspector: Option+Click on CSS url(...) should jump to resource view
578         https://bugs.webkit.org/show_bug.cgi?id=136965
579
580         Reviewed by Timothy Hatcher.
581
582         * UserInterface/Views/CodeMirrorAdditions.js:
583         When parsing CSS url(...) tokens, the contents of url(...)
584         are a "string" type, not "atom".
585
586 2014-09-19  Daniel Bates  <dabates@apple.com>
587
588         Always assume internal SDK when building configuration Production
589         https://bugs.webkit.org/show_bug.cgi?id=136925
590         <rdar://problem/18362399>
591
592         Reviewed by Dan Bernstein.
593
594         * Configurations/DebugRelease.xcconfig: Also move #include of HaveInternalSDK.xcconfig from DebugRelease.xcconfig
595         to Base.xcconfig so as to be consistent with the format of other Base.xcconfig/DebugRelease.xcconfig files
596         (e.g. Source/WebCore/Configurations/Base.xcconfig and Source/WebCore/Configurations/DebugRelease.xcconfig).
597
598 2014-09-19  Carlos Garcia Campos  <cgarcia@igalia.com>
599
600         Webkitgtk 2.5.3: tarball contains APPLE LICENSE file - stating not distributable
601         https://bugs.webkit.org/show_bug.cgi?id=136632
602
603         Reviewed by Gustavo Noronha Silva.
604
605         Add free icons for the GTK port. These icons are from the GNOME
606         project, some of them adapted by Andres Gomez for the inspector.
607         This is only a subset of the icons, since we still don't have a
608         free replacement for all of them, but at least it makes the
609         inspector kind of usable.
610
611         * UserInterface/Images/gtk/AUTHORS: Added.
612         * UserInterface/Images/gtk/BackArrow.svg: Added.
613         * UserInterface/Images/gtk/BreakpointActionAdd.svg: Added.
614         * UserInterface/Images/gtk/BreakpointActionRemove.svg: Added.
615         * UserInterface/Images/gtk/BreakpointButton.svg: Added.
616         * UserInterface/Images/gtk/BreakpointInactiveButton.svg: Added.
617         * UserInterface/Images/gtk/Breakpoints.svg: Added.
618         * UserInterface/Images/gtk/COPYING: Added.
619         * UserInterface/Images/gtk/Close.svg: Added.
620         * UserInterface/Images/gtk/CloseWhite.svg: Added.
621         * UserInterface/Images/gtk/ContentFlow.svg: Added.
622         * UserInterface/Images/gtk/Crosshair.svg: Added.
623         * UserInterface/Images/gtk/DOMCharacterData.svg: Added.
624         * UserInterface/Images/gtk/DOMComment.svg: Added.
625         * UserInterface/Images/gtk/DOMDocument.svg: Added.
626         * UserInterface/Images/gtk/DOMDocumentType.svg: Added.
627         * UserInterface/Images/gtk/DOMElement.svg: Added.
628         * UserInterface/Images/gtk/DOMNode.svg: Added.
629         * UserInterface/Images/gtk/DOMTextNode.svg: Added.
630         * UserInterface/Images/gtk/DOMTree.svg: Added.
631         * UserInterface/Images/gtk/DisclosureTriangleSmallClosed.svg: Added.
632         * UserInterface/Images/gtk/DisclosureTriangleSmallOpen.svg: Added.
633         * UserInterface/Images/gtk/DisclosureTriangleTinyClosed.svg: Added.
634         * UserInterface/Images/gtk/DisclosureTriangleTinyOpen.svg: Added.
635         * UserInterface/Images/gtk/DockBottom.svg: Added.
636         * UserInterface/Images/gtk/DockRight.svg: Added.
637         * UserInterface/Images/gtk/DocumentCSS.png: Added.
638         * UserInterface/Images/gtk/DocumentCSS@2x.png: Added.
639         * UserInterface/Images/gtk/DocumentFont.png: Added.
640         * UserInterface/Images/gtk/DocumentFont@2x.png: Added.
641         * UserInterface/Images/gtk/DocumentGeneric.png: Added.
642         * UserInterface/Images/gtk/DocumentGeneric@2x.png: Added.
643         * UserInterface/Images/gtk/DocumentImage.png: Added.
644         * UserInterface/Images/gtk/DocumentImage@2x.png: Added.
645         * UserInterface/Images/gtk/DocumentJS.png: Added.
646         * UserInterface/Images/gtk/DocumentJS@2x.png: Added.
647         * UserInterface/Images/gtk/DocumentMarkup.png: Added.
648         * UserInterface/Images/gtk/DocumentMarkup@2x.png: Added.
649         * UserInterface/Images/gtk/DownloadArrow.svg: Added.
650         * UserInterface/Images/gtk/Error.svg: Added.
651         * UserInterface/Images/gtk/Errors.svg: Added.
652         * UserInterface/Images/gtk/ErrorsEnabled.svg: Added.
653         * UserInterface/Images/gtk/EventListener.svg: Added.
654         * UserInterface/Images/gtk/Exception.svg: Added.
655         * UserInterface/Images/gtk/FilterFieldGlyph.svg: Added.
656         * UserInterface/Images/gtk/FolderGeneric.png: Added.
657         * UserInterface/Images/gtk/FolderGeneric@2x.png: Added.
658         * UserInterface/Images/gtk/ForwardArrow.svg: Added.
659         * UserInterface/Images/gtk/Function.svg: Added.
660         * UserInterface/Images/gtk/GoToArrow.svg: Added.
661         * UserInterface/Images/gtk/Resources.svg: Added.
662         * UserInterface/Images/gtk/SortIndicatorDownArrow.svg: Added.
663         * UserInterface/Images/gtk/SortIndicatorUpArrow.svg: Added.
664         * UserInterface/Images/gtk/UpDownArrows.svg: Added.
665
666 2014-09-17  Joseph Pecoraro  <pecoraro@apple.com>
667
668         Web Inspector: Remove unnecessary prefixes in WebInspectorUI CSS
669         https://bugs.webkit.org/show_bug.cgi?id=136905
670
671         Reviewed by Timothy Hatcher.
672
673         Removed vendor prefixes from justify-content and a few lingering
674         occurances with transition, box-shadow, and display.
675
676         * UserInterface/Views/BreakpointActionView.css:
677         * UserInterface/Views/BreakpointTreeElement.css:
678         * UserInterface/Views/ButtonNavigationItem.css:
679         * UserInterface/Views/CSSStyleDetailsSidebarPanel.css:
680         * UserInterface/Views/ControlToolbarItem.css:
681         * UserInterface/Views/DebuggerDashboardView.css:
682         * UserInterface/Views/DefaultDashboardView.css:
683         * UserInterface/Views/FontResourceContentView.css:
684         * UserInterface/Views/ImageResourceContentView.css:
685         * UserInterface/Views/LayerTreeSidebarPanel.css:
686         * UserInterface/Views/Main.css:
687         * UserInterface/Views/NavigationBar.css:
688         * UserInterface/Views/NavigationSidebarPanel.css:
689         * UserInterface/Views/Popover.css:
690         * UserInterface/Views/ReplayDashboardView.css:
691         * UserInterface/Views/Toolbar.css:
692
693 2014-09-17  Dean Jackson  <dino@apple.com>
694
695         WebInpector can use unprefixed flexbox
696         https://bugs.webkit.org/show_bug.cgi?id=136899
697
698         Reviewed by Joseph Pecoraro.
699
700         Now the inspector UI itself can use a non-prefixed flexbox. This was
701         a basic search and replace for the following properties:
702         - align-content
703         - align-items
704         - align-self
705         - flex-basis
706         - flex-direction
707         - flex-wrap
708         - flex-grow
709         - flex-shrink
710         - flex
711         - flex-flow
712         - justify
713
714         * UserInterface/Views/ButtonToolbarItem.css:
715         * UserInterface/Views/CSSStyleDetailsSidebarPanel.css:
716         * UserInterface/Views/ContentBrowser.css:
717         * UserInterface/Views/ControlToolbarItem.css:
718         * UserInterface/Views/DebuggerDashboardView.css:
719         * UserInterface/Views/DefaultDashboardView.css:
720         * UserInterface/Views/FilterBar.css:
721         * UserInterface/Views/FlexibleSpaceNavigationItem.css:
722         * UserInterface/Views/FontResourceContentView.css:
723         * UserInterface/Views/HierarchicalPathComponent.css:
724         * UserInterface/Views/ImageResourceContentView.css:
725         * UserInterface/Views/LayerTreeSidebarPanel.css:
726         * UserInterface/Views/LogContentView.css:
727         * UserInterface/Views/Main.css:
728         * UserInterface/Views/NavigationBar.css:
729         * UserInterface/Views/NavigationSidebarPanel.css:
730         * UserInterface/Views/Popover.css:
731         * UserInterface/Views/QuickConsole.css:
732         * UserInterface/Views/ReplayDashboardView.css:
733         * UserInterface/Views/ResourceSidebarPanel.css:
734         * UserInterface/Views/Toolbar.css:
735
736 2014-09-16  Dean Jackson  <dino@apple.com>
737
738         Add unprefixed flexbox display values and property names/values
739         https://bugs.webkit.org/show_bug.cgi?id=136880
740         <rdar://problem/18361137>
741
742         Reviewed by Benjamin Poulain with some extra comments by Joseph Pecoraro.
743
744         * UserInterface/Models/CSSKeywordCompletions.js: Switch to all the unprefixed
745         flex properties.
746
747 2014-09-16  Joseph Pecoraro  <pecoraro@apple.com>
748
749         Web Inspector: Add Versioned Inspector protocol JSON files for iOS 8.0
750         https://bugs.webkit.org/show_bug.cgi?id=136873
751
752         Reviewed by Timothy Hatcher.
753
754         * Scripts/update-LegacyInspectorBackendCommands.rb:
755         * UserInterface/Protocol/Legacy/8.0/InspectorJSBackendCommands.js: Added.
756         * UserInterface/Protocol/Legacy/8.0/InspectorWebBackendCommands.js: Added.
757         * Versions/InspectorJS-iOS-8.0.json: Added.
758         * Versions/InspectorWeb-iOS-8.0.json: Added.
759
760 2014-09-16  Joseph Pecoraro  <pecoraro@apple.com>
761
762         Web Inspector: Fix ESLint no-extra-bind warnings
763         https://bugs.webkit.org/show_bug.cgi?id=136659
764
765         Reviewed by Timothy Hatcher.
766
767         * .eslintrc:
768         * UserInterface/Controllers/LayerTreeManager.js:
769         (WebInspector.LayerTreeManager.prototype.layersForNode):
770
771 2014-09-15  Matt Baker  <mattbaker@apple.com>
772
773         Web Inspector: mouse drifts away from resizer when resizing docked inspector
774         https://bugs.webkit.org/show_bug.cgi?id=22263
775
776         Reviewed by Joseph Pecoraro.
777
778         Modified the docked resizer dragging logic to record the initial mouse down position relative to the
779         resizer client rectangle. Added check while dragging the resizer to ensure that the cursor is positioned
780         correctly with respect to the resize direction before updating the attached window dimension.
781
782         * UserInterface/Base/Main.js:
783         (WebInspector._dockedResizerMouseDown.dockedResizerDrag):
784
785 2014-09-11  Joseph Pecoraro  <pecoraro@apple.com>
786
787         Web Inspector: Fix assert in QuickConsole - main frame execution context path component
788         https://bugs.webkit.org/show_bug.cgi?id=136748
789
790         Reviewed by Timothy Hatcher.
791
792         This can get called for the MainFrame on page navigations.
793         In such cases we can return a better result from this method.
794
795         * UserInterface/Views/QuickConsole.js:
796         (WebInspector.QuickConsole.prototype._insertExecutionContextPathComponentForFrame):
797
798 2014-09-11  Joseph Pecoraro  <pecoraro@apple.com>
799
800         Web Inspector: Hide DOM search result highlights when find banner is not showing
801         https://bugs.webkit.org/show_bug.cgi?id=136749
802
803         Reviewed by Timothy Hatcher.
804
805         Match search highlights in TextEditor by only showing the highlight
806         when the find banner is showing.
807
808         * UserInterface/Views/DOMTreeOutline.css:
809         (.showing-find-banner .dom-tree-outline .search-result):
810         (.dom-tree-outline .search-highlight): Deleted.
811
812 2014-09-11  Joseph Pecoraro  <pecoraro@apple.com>
813
814         Web Inspector: DOM Tree search highlights are not appearing
815         https://bugs.webkit.org/show_bug.cgi?id=136662
816
817         Reviewed by Timothy Hatcher.
818
819         When performing a search within the DOMTreeContentView all
820         search results should immediately highlight. When moving
821         between search results, emphasize the current with a bouncy.
822         Remember to remove the highlights when the search is changed
823         or cleared.
824
825         * UserInterface/Views/DOMTreeContentView.js:
826         (WebInspector.DOMTreeContentView.prototype.performSearch.searchResultsReady):
827         (WebInspector.DOMTreeContentView.prototype.searchCleared):
828         Shor or hide highlights when searches change.
829
830         (WebInspector.DOMTreeContentView.prototype.revealResult):
831         (WebInspector.DOMTreeContentView.prototype._revealSearchResult):
832         Emphasize the highlight when moving to a new current result.
833
834         (WebInspector.DOMTreeContentView.prototype._showSearchHighlights):
835         (WebInspector.DOMTreeContentView.prototype._hideSearchHighlights):
836         On each affected DOMTreeElement show or hide search highlights.
837
838         * UserInterface/Views/DOMTreeElement.js:
839         (WebInspector.DOMTreeElement.prototype.emphasizeSearchHighlight.animationEnded):
840         (WebInspector.DOMTreeElement.prototype.emphasizeSearchHighlight):
841         Give a brief bouncy-highlight when told to emphasize the search highlight.
842
843         (WebInspector.DOMTreeElement.prototype.updateTitle):
844         Remove unused and unnecessary style class on each row.
845
846         (WebInspector.DOMTreeElement.prototype._highlightSearchResults):
847         Update the stale code to use new function names and accessors.
848
849         * UserInterface/Views/DOMTreeOutline.css:
850         (.dom-tree-outline .search-highlight):
851         Styles for the search highlight match search highlights in the sidebar.
852
853         * UserInterface/Views/Main.css:
854         (.bouncy-highlight):
855         * UserInterface/Views/TextEditor.css:
856         Move bouncy-highlight to Main.css.
857
858 2014-09-10  Saam Barati  <saambarati1@gmail.com>
859
860         Web Inspector: Modify the type profiler runtime protocol to transfer some computation into the WebInspector
861         https://bugs.webkit.org/show_bug.cgi?id=136500
862
863         Reviewed by Joseph Pecoraro.
864
865         This patch maintains the same UI in the Web Inspector for displaying
866         type information, but now accounts for the new protocol for type profiling.
867         
868         The Inspector now has a TypeSet class that wraps the TypeDescription 
869         protocol object and creates a simple interface for asking protocol objects 
870         about their type.
871
872         * UserInterface/Controllers/TypeTokenAnnotator.js:
873         (WebInspector.TypeTokenAnnotator.prototype._insertTypeTokensForEachNode):
874         * UserInterface/Main.html:
875         * UserInterface/Models/TypeSet.js: Added.
876         (WebInspector.TypeSet):
877         (WebInspector.TypeSet.fromPayload):
878         (WebInspector.TypeSet.prototype.isContainedIn):
879         * UserInterface/Views/SourceCodeTextEditor.js:
880         (WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedJavaScriptTypeInformation.handler):
881         (WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedJavaScriptTypeInformation):
882         * UserInterface/Views/TypePropertiesSection.js:
883         (WebInspector.TypePropertiesSection.prototype.onpopulate):
884         (WebInspector.TypePropertyTreeElement.prototype.onpopulate):
885         * UserInterface/Views/TypeTokenView.js:
886         (WebInspector.TypeTokenView.prototype.update):
887         (WebInspector.TypeTokenView.prototype._shouldShowPopover):
888         (WebInspector.TypeTokenView.prototype._displayTypeName):
889
890 2014-09-10  Joseph Pecoraro  <pecoraro@apple.com>
891
892         Web Inspector: Eliminate typeof "undefined" checks
893         https://bugs.webkit.org/show_bug.cgi?id=136691
894
895         Reviewed by Alexey Proskuryakov.
896
897         * UserInterface/Base/Main.js:
898         (WebInspector.linkifyURLAsNode):
899         (WebInspector.linkifyStringAsFragment):
900         * UserInterface/Protocol/InspectorBackend.js:
901         (InspectorBackend.Command.prototype._invokeWithArguments):
902         * UserInterface/Views/DataGrid.js:
903         (WebInspector.DataGrid.prototype.get resizeMethod):
904         * UserInterface/Views/NavigationBar.js:
905         (WebInspector.NavigationBar.prototype.get minimumWidth):
906
907 2014-09-10  Joseph Pecoraro  <pecoraro@apple.com>
908
909         Web Inspector: Fix obscure ESLint warnings and skip directories
910         https://bugs.webkit.org/show_bug.cgi?id=136686
911
912         Reviewed by Timothy Hatcher.
913
914         * .eslintignore: Added.
915         Skip directories we do not want ESLint to process.
916
917         * .eslintrc:
918         Add rules we've seen and sort sections.
919
920         * UserInterface/Controllers/FormatterContentBuilder.js:
921         (FormatterContentBuilder.prototype._appendIndent):
922         * UserInterface/Models/Color.js:
923         * UserInterface/Models/DOMNodeStyles.js:
924         (WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload):
925         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
926         * UserInterface/Views/DOMTreeDataGridNode.js:
927         * UserInterface/Views/DOMTreeElement.js:
928         (WebInspector.DOMTreeElement.prototype.ondelete):
929         (WebInspector.DOMTreeElement.prototype._insertInLastAttributePosition):
930         (WebInspector.DOMTreeElement.prototype._distinctClosingTagElement):
931         * UserInterface/Views/EditingSupport.js:
932         (WebInspector.EditingConfig):
933         * UserInterface/Views/LayerTreeDataGridNode.js:
934         (WebInspector.LayerTreeDataGridNode.prototype._makeOutlet):
935         * UserInterface/Views/TreeOutline.js:
936         (TreeOutline.prototype.appendChild):
937         (TreeOutline.prototype.insertChild):
938         (TreeOutline.prototype.removeChildAtIndex):
939         (TreeOutline.prototype.removeChild):
940         (TreeElement.prototype.expandRecursively):
941         Fix linter issues.
942
943 2014-09-10  Joseph Pecoraro  <pecoraro@apple.com>
944
945         Web Inspector: Fix ESLint consistent-return warnings
946         https://bugs.webkit.org/show_bug.cgi?id=136682
947
948         Reviewed by Timothy Hatcher.
949
950         * .eslintrc:
951         * UserInterface/Controllers/BranchManager.js:
952         (WebInspector.BranchManager.prototype.createBranch):
953         * UserInterface/Controllers/FrameResourceManager.js:
954         (WebInspector.FrameResourceManager.prototype._addNewResourceToFrame):
955         * UserInterface/Models/DOMNodeStyles.js:
956         (WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload):
957         * UserInterface/Views/BoxModelDetailsSectionRow.js:
958         (WebInspector.BoxModelDetailsSectionRow.prototype._applyUserInput):
959         * UserInterface/Views/DOMTreeElement.js:
960         (WebInspector.DOMTreeElement.prototype.showChild):
961         (WebInspector.DOMTreeElement.prototype._startEditingTarget):
962         (WebInspector.DOMTreeElement.prototype._startEditing):
963         * UserInterface/Views/EditingSupport.js:
964         * UserInterface/Views/EventListenerSectionGroup.js:
965         (WebInspector.EventListenerSectionGroup.prototype._nodeTextOrLink):
966         * UserInterface/Views/FrameContentView.js:
967         (WebInspector.FrameContentView.prototype._showContentViewForIdentifier):
968         * UserInterface/Views/NavigationBar.js:
969         (WebInspector.NavigationBar.prototype.insertNavigationItem):
970         (WebInspector.NavigationBar.prototype.removeNavigationItem):
971         * UserInterface/Views/QuickConsole.js:
972         (WebInspector.QuickConsole.prototype._insertExecutionContextPathComponentForFrame):
973         * UserInterface/Views/Sidebar.js:
974         (WebInspector.Sidebar.prototype.addSidebarPanel):
975         (WebInspector.Sidebar.prototype.removeSidebarPanel):
976         * UserInterface/Views/TextEditor.js:
977         (WebInspector.TextEditor.prototype.addStyleClassToLine):
978         (WebInspector.TextEditor.prototype.removeStyleClassFromLine):
979         (WebInspector.TextEditor.prototype.toggleStyleClassForLine):
980
981 2014-09-10  Joseph Pecoraro  <pecoraro@apple.com>
982
983         Web Inspector: Fix ESLint no-undef warnings
984         https://bugs.webkit.org/show_bug.cgi?id=136660
985
986         Reviewed by Timothy Hatcher.
987
988         * UserInterface/Models/DOMSearchMatchObject.js:
989         (WebInspector.DOMSearchMatchObject.prototype._generateClassName):
990         (WebInspector.DOMSearchMatchObject.titleForDOMNode):
991         * UserInterface/Models/Gradient.js:
992         (WebInspector.Gradient.fromString):
993         * UserInterface/Views/CodeMirrorAdditions.js:
994         * UserInterface/Views/ReplayDashboardView.js:
995         (WebInspector.ReplayDashboardView):
996
997 2014-09-10  Joseph Pecoraro  <pecoraro@apple.com>
998
999         Web Inspector: Remove unused Console search highlight methods
1000         https://bugs.webkit.org/show_bug.cgi?id=136661
1001
1002         Reviewed by Timothy Hatcher.
1003
1004         ESLint's no-undef warning complained about some undefined references
1005         in these functions that would have thrown exceptions. Turns out this
1006         code is unused, and we do highlighting in the console separately.
1007
1008         * UserInterface/Views/ConsoleCommand.js:
1009         (WebInspector.ConsoleCommand.prototype.clearHighlight): Deleted.
1010         (WebInspector.ConsoleCommand.prototype.highlightSearchResults): Deleted.
1011         (WebInspector.ConsoleCommand.prototype.matchesRegex): Deleted.
1012         * UserInterface/Views/ConsoleMessageImpl.js:
1013         (WebInspector.ConsoleMessageImpl.prototype.clearHighlight): Deleted.
1014         (WebInspector.ConsoleMessageImpl.prototype.highlightSearchResults): Deleted.
1015         (WebInspector.ConsoleMessageImpl.prototype.matchesRegex): Deleted.
1016
1017 2014-09-10  Joseph Pecoraro  <pecoraro@apple.com>
1018
1019         Web Inspector: Fix ESLint* no-avoidable-bind warnings
1020         https://bugs.webkit.org/show_bug.cgi?id=136690
1021
1022         Reviewed by Timothy Hatcher.
1023
1024         * UserInterface/Protocol/RemoteObject.js:
1025         (WebInspector.LocalJSONObject.prototype._children):
1026         * UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
1027         (WebInspector.CSSStyleDetailsSidebarPanel):
1028         * UserInterface/Views/LayerTreeSidebarPanel.js:
1029         (WebInspector.LayerTreeSidebarPanel.prototype._updateDataGrid):
1030         * UserInterface/Views/LogContentView.js:
1031         (WebInspector.LogContentView.prototype._filterMessages):
1032         * UserInterface/Views/TextResourceContentView.js:
1033         (WebInspector.TextResourceContentView.prototype.get supplementalRepresentedObjects):
1034
1035 2014-09-09  Benjamin Poulain  <bpoulain@apple.com>
1036
1037         Disable the "unreachable-code" warning
1038         https://bugs.webkit.org/show_bug.cgi?id=136677
1039
1040         Reviewed by Darin Adler.
1041
1042         * Configurations/Base.xcconfig:
1043
1044 2014-09-08  Joseph Pecoraro  <pecoraro@apple.com>
1045
1046         Web Inspector: Fix ESLint no-trailing-spaces warnings
1047         https://bugs.webkit.org/show_bug.cgi?id=136657
1048
1049         Reviewed by Andy Estes.
1050
1051         * .eslintrc:
1052         * UserInterface/Base/DOMUtilities.js:
1053         * UserInterface/Base/URLUtilities.js:
1054         (relativePath):
1055         * UserInterface/Base/Utilities.js:
1056         * UserInterface/Controllers/CodeMirrorColorEditingController.js:
1057         (WebInspector.CodeMirrorColorEditingController.prototype._colorPickerColorChanged):
1058         * UserInterface/Controllers/CodeMirrorDragToAdjustNumberController.js:
1059         (WebInspector.CodeMirrorDragToAdjustNumberController.prototype.set enabled):
1060         (WebInspector.CodeMirrorDragToAdjustNumberController.prototype.dragToAdjustControllerCanAdjustObjectAtPoint):
1061         * UserInterface/Controllers/CodeMirrorEditingController.js:
1062         (WebInspector.CodeMirrorEditingController.prototype.handleKeydownEvent):
1063         * UserInterface/Controllers/CodeMirrorGradientEditingController.js:
1064         (WebInspector.CodeMirrorGradientEditingController.prototype.gradientSliderStopWasSelected):
1065         * UserInterface/Controllers/CodeMirrorTokenTrackingController.js:
1066         (WebInspector.CodeMirrorTokenTrackingController.prototype._processJavaScriptExpression):
1067         * UserInterface/Controllers/DragToAdjustController.js:
1068         (WebInspector.DragToAdjustController.prototype.set active):
1069         (WebInspector.DragToAdjustController.prototype._setDragging):
1070         (WebInspector.DragToAdjustController.prototype._setTracksMouseClickAndDrag):
1071         * UserInterface/External/Esprima/esprima.js:
1072         * UserInterface/Models/ApplicationCacheFrame.js:
1073         (WebInspector.ApplicationCacheFrame):
1074         * UserInterface/Models/ApplicationCacheManifest.js:
1075         (WebInspector.ApplicationCacheManifest):
1076         (WebInspector.ApplicationCacheManifest.prototype.get manifestURL):
1077         * UserInterface/Models/CookieStorageObject.js:
1078         * UserInterface/Models/DOMSearchMatchObject.js:
1079         (WebInspector.DOMSearchMatchObject.prototype.get title):
1080         (WebInspector.DOMSearchMatchObject.titleForDOMNode):
1081         * UserInterface/Models/DatabaseObject.js:
1082         (WebInspector.DatabaseObject.prototype.getTableNames):
1083         * UserInterface/Models/DatabaseTableObject.js:
1084         (WebInspector.DatabaseTableObject):
1085         * UserInterface/Models/Gradient.js:
1086         (WebInspector.Gradient.fromString):
1087         (WebInspector.RadialGradient.prototype.toString):
1088         * UserInterface/Models/IssueMessage.js:
1089         (WebInspector.IssueMessage.prototype._formatTextIfNecessary):
1090         * UserInterface/Models/Resource.js:
1091         (WebInspector.Resource.prototype.getImageSize.imageDidLoad):
1092         (WebInspector.Resource.prototype.getImageSize):
1093         * UserInterface/Models/Script.js:
1094         (WebInspector.Script.prototype._makeSyntaxTree):
1095         * UserInterface/Models/SourceCodeLocation.js:
1096         (WebInspector.SourceCodeLocation.prototype.hasDifferentDisplayLocation):
1097         * UserInterface/Models/TextMarker.js:
1098         * UserInterface/Protocol/PageObserver.js:
1099         * UserInterface/Views/ApplicationCacheDetailsSidebarPanel.js:
1100         (WebInspector.ApplicationCacheDetailsSidebarPanel.prototype.set applicationCacheFrame):
1101         (WebInspector.ApplicationCacheDetailsSidebarPanel.prototype.refresh):
1102         (WebInspector.ApplicationCacheDetailsSidebarPanel.prototype._networkStateUpdated):
1103         * UserInterface/Views/ApplicationCacheFrameTreeElement.js:
1104         (WebInspector.ApplicationCacheFrameTreeElement):
1105         * UserInterface/Views/ApplicationCacheManifestTreeElement.js:
1106         (WebInspector.ApplicationCacheManifestTreeElement.prototype.get name):
1107         (WebInspector.ApplicationCacheManifestTreeElement.prototype.get secondaryName):
1108         * UserInterface/Views/ButtonNavigationItem.js:
1109         (WebInspector.ButtonNavigationItem):
1110         * UserInterface/Views/ColorPicker.js:
1111         * UserInterface/Views/ColorWheel.js:
1112         (WebInspector.ColorWheel.prototype._draw):
1113         * UserInterface/Views/CompletionSuggestionsView.js:
1114         (WebInspector.CompletionSuggestionsView.prototype.show):
1115         * UserInterface/Views/ConsoleCommand.js:
1116         * UserInterface/Views/ConsolePrompt.js:
1117         * UserInterface/Views/ContentFlowTreeElement.js:
1118         * UserInterface/Views/CookieStorageTreeElement.js:
1119         (WebInspector.CookieStorageTreeElement):
1120         * UserInterface/Views/EventListenerSectionGroup.js:
1121         (WebInspector.EventListenerSectionGroup.prototype._functionTextOrLink):
1122         * UserInterface/Views/GeneralTreeElementPathComponent.js:
1123         * UserInterface/Views/GoToLineDialog.js:
1124         (WebInspector.GoToLineDialog.prototype._handleKeydownEvent):
1125         * UserInterface/Views/LayerTreeDataGridNode.js:
1126         (WebInspector.LayerTreeDataGridNode.prototype._makeNameCell):
1127         * UserInterface/Views/LayerTreeSidebarPanel.js:
1128         * UserInterface/Views/LogContentView.js:
1129         (WebInspector.LogContentView.prototype._highlightRanges):
1130         * UserInterface/Views/NavigationBar.js:
1131         (WebInspector.NavigationBar):
1132         * UserInterface/Views/NavigationItem.js:
1133         (WebInspector.NavigationItem):
1134         * UserInterface/Views/ResourceDetailsSidebarPanel.js:
1135         (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshImageSizeSection):
1136         * UserInterface/Views/ScopeBar.js:
1137         * UserInterface/Views/ScopeBarItem.js:
1138         (WebInspector.ScopeBarItem):
1139         * UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
1140         (WebInspector.ScopeChainDetailsSidebarPanel):
1141         * UserInterface/Views/ScriptTimelineDataGridNode.js:
1142         (WebInspector.ScriptTimelineDataGridNode.prototype.updateRangeTimes):
1143         * UserInterface/Views/ScriptTreeElement.js:
1144         (WebInspector.ScriptTreeElement):
1145         * UserInterface/Views/SearchBar.js:
1146         * UserInterface/Views/SearchResultTreeElement.js:
1147         (WebInspector.SearchResultTreeElement.truncateAndHighlightTitle):
1148         * UserInterface/Views/Slider.js:
1149
1150 2014-09-09  Joseph Pecoraro  <pecoraro@apple.com>
1151
1152         Web Inspector: Fix ESLint eqeqeq warnings
1153         https://bugs.webkit.org/show_bug.cgi?id=136658
1154
1155         Reviewed by Andy Estes.
1156
1157         * UserInterface/Controllers/DOMTreeManager.js:
1158         (WebInspector.DOMTreeManager.prototype.mycallback):
1159         (WebInspector.DOMTreeManager.prototype.searchResult):
1160         * UserInterface/Models/Breakpoint.js:
1161         (WebInspector.Breakpoint.prototype.clearActions):
1162         * UserInterface/Models/DOMTree.js:
1163         (WebInspector.DOMTree.prototype._requestRootDOMNode.rootObjectAvailable):
1164         (WebInspector.DOMTree.prototype._requestRootDOMNode.rootDOMNodeAvailable):
1165         (WebInspector.DOMTree.prototype._requestRootDOMNode.dispatchCallbacks):
1166         (WebInspector.DOMTree.prototype._requestRootDOMNode):
1167         * UserInterface/Models/ProbeSet.js:
1168         (WebInspector.ProbeSet.prototype.removeProbe):
1169         * UserInterface/Models/ProbeSetDataTable.js:
1170         (WebInspector.ProbeSetDataTable.prototype.addSampleForProbe):
1171         * UserInterface/Views/CodeMirrorAdditions.js:
1172         * UserInterface/Views/CookieStorageContentView.js:
1173         (WebInspector.CookieStorageContentView.prototype._filterCookies):
1174         (WebInspector.cookieMatchesResourceURL):
1175         * UserInterface/Views/DOMStorageContentView.js:
1176         (WebInspector.DOMStorageContentView.prototype._editingCallback):
1177         * UserInterface/Views/DOMTreeElement.js:
1178         (WebInspector.DOMTreeElement):
1179         (WebInspector.DOMTreeElement.prototype._updateChildren):
1180         (WebInspector.DOMTreeElement.prototype._startEditingTarget):
1181         (WebInspector.DOMTreeElement.prototype._textNodeEditingCommitted):
1182         * UserInterface/Views/DataGrid.js:
1183         (WebInspector.DataGrid.prototype._resizerDragging):
1184         * UserInterface/Views/DatabaseContentView.js:
1185         (WebInspector.DatabaseContentView.prototype._queryError):
1186         * UserInterface/Views/DetailsSectionSimpleRow.js:
1187         (.valueElementClicked):
1188         (WebInspector.DetailsSectionSimpleRow):
1189         * UserInterface/Views/Slider.js:
1190         (WebInspector.Slider.prototype.get _maxX):
1191         * UserInterface/Views/TreeOutline.js:
1192         (TreeElement.prototype.expand):
1193
1194 2014-09-09  Jono Wells  <jonowells@apple.com>
1195
1196         Web Inspector: Fix ESLint no-extra-semi
1197         https://bugs.webkit.org/show_bug.cgi?id=136666
1198
1199         Reviewed by Andy Estes.
1200
1201         Add explicit no-extra-semi rule to .eslintrc. Remove all unnecessary
1202         semicolons as identified by ESLint.
1203
1204         * .eslintrc:
1205         * Tools/PrettyPrinting/Formatter.js:
1206         (Formatter):
1207         * UserInterface/Controllers/Formatter.js:
1208         (Formatter):
1209         * UserInterface/Models/Resource.js:
1210         (WebInspector.Resource.prototype.getImageSize.imageDidLoad):
1211         (WebInspector.Resource.prototype.getImageSize):
1212         * UserInterface/Views/LayerTreeSidebarPanel.js:
1213         (WebInspector.LayerTreeSidebarPanel.prototype._sortDataGrid.comparator):
1214         (WebInspector.LayerTreeSidebarPanel.prototype._sortDataGrid):
1215         * UserInterface/Views/ObjectPropertiesSection.js:
1216         (WebInspector.ObjectPropertyTreeElement.prototype.callback):
1217         (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression):
1218
1219 2014-09-09  Jono Wells  <jonowells@apple.com>
1220
1221         Web Inspector: Fix ESLint semi (missing semicolon)
1222         https://bugs.webkit.org/show_bug.cgi?id=136665
1223
1224         Reviewed by Andy Estes.
1225
1226         Add missing semicolons as identified by ESLint. Add explicit semi rule to .eslintrc.
1227
1228         * .eslintrc:
1229         * Tools/PrettyPrinting/FormatterContentBuilder.js:
1230         * Tools/PrettyPrinting/FormatterDebug.js:
1231         (Formatter.prototype.debug):
1232         * UserInterface/Base/DOMUtilities.js:
1233         * UserInterface/Base/EventListener.js:
1234         (WebInspector.EventListener):
1235         (WebInspector.EventListener.prototype.this._callback):
1236         (WebInspector.EventListener.prototype.connect):
1237         * UserInterface/Base/Object.js:
1238         (WebInspector.Object):
1239         (WebInspector.Object.addConstructorFunctions):
1240         (WebInspector.Event):
1241         * UserInterface/Base/URLUtilities.js:
1242         (WebInspector.displayNameForURL):
1243         (WebInspector.displayNameForHost):
1244         * UserInterface/Base/Utilities.js:
1245         (.):
1246         * UserInterface/Controllers/BranchManager.js:
1247         (WebInspector.BranchManager):
1248         * UserInterface/Controllers/CSSStyleManager.js:
1249         (WebInspector.CSSStyleManager):
1250         * UserInterface/Controllers/CodeMirrorColorEditingController.js:
1251         (WebInspector.CodeMirrorColorEditingController):
1252         * UserInterface/Controllers/CodeMirrorEditingController.js:
1253         (WebInspector.CodeMirrorEditingController):
1254         * UserInterface/Controllers/CodeMirrorGradientEditingController.js:
1255         (WebInspector.CodeMirrorGradientEditingController):
1256         (WebInspector.CodeMirrorGradientEditingController.prototype.popoverDidPresent):
1257         * UserInterface/Controllers/CodeMirrorTokenTrackingController.js:
1258         * UserInterface/Controllers/FormatterContentBuilder.js:
1259         * UserInterface/Controllers/FormatterSourceMap.js:
1260         (WebInspector.FormatterSourceMap.fromBuilder):
1261         * UserInterface/Controllers/IssueManager.js:
1262         (WebInspector.IssueManager):
1263         * UserInterface/Controllers/LogManager.js:
1264         (WebInspector.LogManager):
1265         * UserInterface/Models/BreakpointAction.js:
1266         * UserInterface/Models/CSSCompletions.js:
1267         (WebInspector.CSSCompletions):
1268         (WebInspector.CSSCompletions.requestCSSNameCompletions):
1269         * UserInterface/Models/CSSKeywordCompletions.js:
1270         (WebInspector.CSSKeywordCompletions.forProperty):
1271         (WebInspector.CSSKeywordCompletions.isColorAwareProperty):
1272         * UserInterface/Models/CSSStyleSheet.js:
1273         (WebInspector.CSSStyleSheet.resetUniqueDisplayNameNumbers):
1274         * UserInterface/Models/Color.js:
1275         (WebInspector.Color):
1276         (WebInspector.Color.fromString):
1277         * UserInterface/Models/DOMNode.js:
1278         (WebInspector.DOMNode):
1279         * UserInterface/Models/DOMSearchMatchObject.js:
1280         (WebInspector.DOMSearchMatchObject.titleForDOMNode):
1281         * UserInterface/Models/ExecutionContext.js:
1282         (WebInspector.ExecutionContext.supported):
1283         * UserInterface/Models/Gradient.js:
1284         (WebInspector.LinearGradient):
1285         (WebInspector.LinearGradient.linearGradientWithComponents):
1286         (WebInspector.RadialGradient):
1287         (WebInspector.RadialGradient.radialGradientWithComponents):
1288         * UserInterface/Models/IssueMessage.js:
1289         (WebInspector.IssueMessage):
1290         * UserInterface/Models/ReplaySessionSegment.js:
1291         (WebInspector.IncompleteSessionSegment):
1292         * UserInterface/Models/Resource.js:
1293         (WebInspector.Resource.prototype.associateWithScript):
1294         * UserInterface/Models/Script.js:
1295         (WebInspector.Script.resetUniqueDisplayNameNumbers):
1296         * UserInterface/Models/Setting.js:
1297         (WebInspector.Setting):
1298         * UserInterface/Models/SourceCodePosition.js:
1299         (WebInspector.SourceCodePosition):
1300         * UserInterface/Models/SourceMap.js:
1301         (WebInspector.SourceMap):
1302         (WebInspector.SourceMap.StringCharIterator):
1303         * UserInterface/Models/TextMarker.js:
1304         (WebInspector.TextMarker):
1305         * UserInterface/Models/TextRange.js:
1306         (WebInspector.TextRange):
1307         * UserInterface/Protocol/InspectorFrontendHostStub.js:
1308         (.WebInspector.InspectorFrontendHostStub):
1309         * UserInterface/Protocol/MessageDispatcher.js:
1310         (WebInspector.dispatchNextQueuedMessageFromBackend):
1311         (WebInspector.dispatchMessageFromBackend):
1312         * UserInterface/Protocol/RemoteObject.js:
1313         (WebInspector.RemoteObject):
1314         (WebInspector.RemoteObject.fromPrimitiveValue):
1315         (WebInspector.RemoteObject.fromLocalObject):
1316         (WebInspector.RemoteObject.resolveNode):
1317         (WebInspector.RemoteObject.fromPayload):
1318         (WebInspector.RemoteObject.type):
1319         (WebInspector.RemoteObjectProperty):
1320         (WebInspector.RemoteObjectProperty.fromPrimitiveValue):
1321         (WebInspector.LocalJSONObject):
1322         * UserInterface/Protocol/ReplayObserver.js:
1323         (WebInspector.ReplayPosition.fromProtocol):
1324         * UserInterface/Views/BreakpointActionView.js:
1325         (WebInspector.BreakpointActionView.displayStringForType):
1326         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
1327         (WebInspector.CSSStyleDeclarationTextEditor.prototype.if):
1328         * UserInterface/Views/ClusterContentView.js:
1329         (WebInspector.ClusterContentView.prototype.goBack):
1330         (WebInspector.ClusterContentView.prototype.goForward):
1331         * UserInterface/Views/CodeMirrorAdditions.js:
1332         * UserInterface/Views/ColorWheel.js:
1333         (WebInspector.ColorWheel):
1334         * UserInterface/Views/ConsoleMessage.js:
1335         (WebInspector.ConsoleMessage):
1336         (WebInspector.ConsoleMessage.create):
1337         * UserInterface/Views/ConsoleMessageImpl.js:
1338         (WebInspector.ConsoleMessageImpl):
1339         * UserInterface/Views/ContextMenu.js:
1340         (WebInspector.ContextMenuItem):
1341         (WebInspector.ContextSubMenuItem):
1342         (WebInspector.ContextMenu):
1343         (WebInspector.ContextMenu.Provider):
1344         (WebInspector.ContextMenu.registerProvider):
1345         (WebInspector.contextMenuItemSelected):
1346         (WebInspector.contextMenuCleared):
1347         * UserInterface/Views/DOMTreeElement.js:
1348         (WebInspector.DOMTreeElement):
1349         * UserInterface/Views/DOMTreeOutline.js:
1350         (WebInspector.DOMTreeOutline):
1351         * UserInterface/Views/DOMTreeUpdater.js:
1352         (WebInspector.DOMTreeUpdater):
1353         * UserInterface/Views/DatabaseContentView.js:
1354         (WebInspector.DatabaseContentView):
1355         * UserInterface/Views/EditingSupport.js:
1356         (WebInspector.isBeingEdited):
1357         (WebInspector.markBeingEdited):
1358         (WebInspector.isEditingAnyField):
1359         (WebInspector.isEventTargetAnEditableField):
1360         (WebInspector.EditingConfig):
1361         (WebInspector.startEditing):
1362         * UserInterface/Views/EventListenerSection.js:
1363         (WebInspector.EventListenerSection):
1364         * UserInterface/Views/EventListenerSectionGroup.js:
1365         (WebInspector.EventListenerSectionGroup):
1366         * UserInterface/Views/FindBanner.js:
1367         * UserInterface/Views/GeneralTreeElement.js:
1368         (WebInspector.GeneralTreeElement):
1369         * UserInterface/Views/GoToLineDialog.js:
1370         (WebInspector.GoToLineDialog):
1371         * UserInterface/Views/IndeterminateProgressSpinner.js:
1372         (WebInspector.IndeterminateProgressSpinner):
1373         * UserInterface/Views/LayoutTimelineDataGrid.js:
1374         (WebInspector.LayoutTimelineDataGrid):
1375         * UserInterface/Views/LogContentView.js:
1376         (WebInspector.LogContentView):
1377         * UserInterface/Views/NavigationItem.js:
1378         * UserInterface/Views/ObjectPropertiesSection.js:
1379         (WebInspector.ObjectPropertiesSection):
1380         (WebInspector.ObjectPropertiesSection.CompareProperties):
1381         (WebInspector.ObjectPropertyTreeElement):
1382         * UserInterface/Views/ProbeSetDetailsSection.js:
1383         * UserInterface/Views/PropertiesSection.js:
1384         (WebInspector.PropertiesSection):
1385         * UserInterface/Views/ResourceTreeElement.js:
1386         (WebInspector.ResourceTreeElement.compareResourceTreeElements):
1387         (WebInspector.ResourceTreeElement.compareFolderAndResourceTreeElements):
1388         * UserInterface/Views/ScriptTimelineDataGrid.js:
1389         (WebInspector.ScriptTimelineDataGrid):
1390         * UserInterface/Views/SearchResultTreeElement.js:
1391         (WebInspector.SearchResultTreeElement.truncateAndHighlightTitle):
1392         * UserInterface/Views/TimelineRuler.js:
1393         (WebInspector.TimelineRuler):
1394         (WebInspector.TimelineRuler.prototype.get allowsClippedLabels):
1395         (WebInspector.TimelineRuler.prototype._handleMouseUp):
1396         * UserInterface/Views/Toolbar.js:
1397         * UserInterface/Views/TreeOutline.js:
1398         (TreeOutline.prototype.appendChild):
1399         (TreeOutline.prototype.insertChild):
1400         (TreeOutline.prototype.removeChildAtIndex):
1401         (TreeOutline.prototype.removeChild):
1402         (TreeOutline.prototype.removeChildren):
1403         (TreeOutline.prototype.removeChildrenRecursive):
1404         (TreeOutline.prototype._rememberTreeElement):
1405         (TreeOutline.prototype._forgetTreeElement):
1406         (TreeOutline.prototype._forgetChildrenRecursive):
1407         (TreeOutline.prototype.getCachedTreeElement):
1408         (TreeOutline.prototype.findTreeElement):
1409         (TreeOutline.prototype._treeElementDidChange):
1410         (TreeOutline.prototype.treeElementFromPoint):
1411         (TreeOutline.prototype._treeKeyDown):
1412         (TreeOutline.prototype.expand):
1413         (TreeOutline.prototype.collapse):
1414         (TreeOutline.prototype.revealed):
1415         (TreeOutline.prototype.reveal):
1416         (TreeOutline.prototype.select):
1417         (TreeOutline.prototype.revealAndSelect):
1418         (TreeElement.prototype._attach):
1419         (TreeElement.prototype._detach):
1420         (TreeElement.treeElementMouseDown):
1421         (TreeElement.treeElementToggled):
1422         (TreeElement.treeElementDoubleClicked):
1423         (TreeElement.prototype.collapse):
1424         (TreeElement.prototype.collapseRecursively):
1425         (TreeElement.prototype.expand):
1426         (TreeElement.prototype.expandRecursively):
1427         (TreeElement.prototype.hasAncestor):
1428         (TreeElement.prototype.reveal):
1429         (TreeElement.prototype.revealed):
1430         (TreeElement.prototype.selectOnMouseDown):
1431         (TreeElement.prototype.select):
1432         (TreeElement.prototype.revealAndSelect):
1433         (TreeElement.prototype.deselect):
1434         (TreeElement.prototype.onpopulate):
1435         (TreeElement.prototype.traverseNextTreeElement):
1436         (TreeElement.prototype.traversePreviousTreeElement):
1437         (TreeElement.prototype.isEventWithinDisclosureTriangle):
1438         * UserInterface/Views/TreeOutlineDataGridSynchronizer.js:
1439         (WebInspector.TreeOutlineDataGridSynchronizer):
1440
1441 2014-09-08  Joseph Pecoraro  <pecoraro@apple.com>
1442
1443         Web Inspector: Inspector frequently restores wrong view when opened (often Timelines instead of Resource)
1444         https://bugs.webkit.org/show_bug.cgi?id=135965
1445
1446         Reviewed by Timothy Hatcher.
1447
1448         There were numerous subtle race conditions in state restoration.
1449         This patch intends to fix a number of them to get what feels
1450         like sane behavior for selected sidebar state restoration.
1451
1452         1. Starting a Timeline recording no longer automatically switches to the TimelineContentView.
1453         This was making every reload switch to Timelines. If you had
1454         a resource selected (e.g. the DOM Tree) we should go back
1455         to showing the DOM tree.
1456
1457         2. Background sidebars should not reveal and select tree elements.
1458         This was making resources get selected in Timelines when reloading the page
1459         because the background Resources sidebar was restoring selection of the resource.
1460         That is an unexpected selection and breaks the experience of Timelines.
1461
1462         3. ContentView changes during page navigation / reload should not be saved, and improve Resource restoration.
1463         If a TimelineContentView was in the ContentBrowser back/forward history,
1464         a reload with a resource selected in the Resources sidebar would end up
1465         showing the Timelines sidebar. This was because when ContentViews are
1466         closed during the navigation, the ContentBrowser would fall back to the
1467         remaining TimelineContentView and switch to its only allowed sidebar
1468         (Timelines). ResourceSidebarPanel, knowing a resource was selected,
1469         would select the MainFrame intending to stay in the Resource sidebar,
1470         but the resource is okay with showing in any sidebar, so we stay on Timelines.
1471
1472         4. Resource sidebar state restoration should propertly restore selection.
1473         On reload, state restoration would know the resource to re-select in the
1474         Resources sidebar. As ResourceTreeElements are added to the sidebar
1475         they are checked against the state restoration cookie. If they match,
1476         they would select the element and delete the cookie. Unfortunately,
1477         if this was the first TreeElement child being added to a FrameTreeElement,
1478         the FrameTreeElement onpopulate would remove all children and re-add
1479         them in a unique way. Unfortunately this means the TreeElement we
1480         selected based on the cookie, immediately got thrown away and recreated,
1481         and we no longer reveal and select it. This is a special case for
1482         FrameTreeElements which use the onpopulate SPI. So, instead of starting
1483         processing the new element queue, if this is the first time just trigger
1484         the onpopulate and elements are made just once.
1485
1486         5. Show Error Console triggering early, could have unexpected sidebar behavior.
1487         Opening Web Inspector directly to the console can run before
1488         WebInspector.contentLoaded (DOMContentLoaded). So in that case
1489         WebInspector.showFullHeightConsole was not handling if the contentBrowser
1490         had no content view yet, and the sidebar might be-reopened later on
1491         in contentLoaded based on the setting value.
1492
1493         6. Improve automatic resource selection for sidebars with multiple tree outlines.
1494         Selecting a call frame tree element was unexpectedly changing the
1495         selection to a Resource where the breakpoint was set. This was
1496         because we were only looking at one of potentially many content
1497         tree outlines in the sidebar to see if there was a user action.
1498         
1499         * UserInterface/Base/Main.js:
1500         (WebInspector.contentLoaded):
1501         (WebInspector.showFullHeightConsole):
1502         (WebInspector.toggleConsoleView):
1503         (WebInspector._mainResourceDidChange):
1504         (WebInspector._provisionalLoadStarted):
1505         (WebInspector._revealAndSelectRepresentedObjectInNavigationSidebar):
1506         (WebInspector._updateCookieForInspectorViewState):
1507         (WebInspector._contentBrowserCurrentContentViewDidChange):
1508         * UserInterface/Views/NavigationSidebarPanel.js:
1509         (WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged):
1510         * UserInterface/Views/ResourceSidebarPanel.js:
1511         (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange.delayedWork):
1512         (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange):
1513         * UserInterface/Views/TimelineSidebarPanel.js:
1514         (WebInspector.TimelineSidebarPanel.prototype._recordingLoaded):
1515
1516 2014-09-08  Matt Baker  <mattbaker@apple.com>
1517
1518         Web Inspector: Add layout test for lowercase CSSProperty names
1519         https://bugs.webkit.org/show_bug.cgi?id=135961
1520
1521         Reviewed by Joseph Pecoraro.
1522
1523         Modified test components to support testing CSSStyleManager and related classes:
1524         - Added required models to Test.html
1525         - Added CSSCompletions initialization to Test.js
1526         - CSSCompletions doesn't assume presence of CodeMirror.
1527
1528         * UserInterface/Base/Test.js:
1529         (WebInspector.loaded):
1530         * UserInterface/Models/CSSCompletions.js:
1531         * UserInterface/Test.html:
1532
1533 2014-09-08  Matt Baker  <mattbaker@apple.com>
1534
1535         Web Inspector: Fixes to layout test infrastructure
1536         https://bugs.webkit.org/show_bug.cgi?id=136360
1537
1538         Reviewed by Joseph Pecoraro.
1539
1540         Added missing includes to Test.html, which was breaking tests that
1541         depended on SourceCodeLocation and LazySourceCodeLocation. Also fixed
1542         bug which prevented test results from being resent after reloading the
1543         page under test.
1544
1545         * UserInterface/Base/Test.js:
1546         (InspectorTest.reloadPage):
1547         * UserInterface/Test.html:
1548
1549 2014-09-07  Timothy Hatcher  <timothy@apple.com>
1550
1551         Use a <circle> instead of a <path> in DownloadArrow.svg.
1552         https://bugs.webkit.org/show_bug.cgi?id=136608
1553
1554         Reviewed by Antoine Quint.
1555
1556         * UserInterface/Images/DownloadArrow.svg:
1557         * UserInterface/Views/TreeElementStatusButton.css:
1558         (.item > .status > .status-button > svg .filled):
1559         (body.mac-platform.legacy .item > .status > .status-button > svg .filled):
1560         (:focus .item.selected > .status > .status-button > svg .filled):
1561         (.item > .status > .status-button > svg .stroked):
1562         (body.mac-platform.legacy .item > .status > .status-button > svg .stroked):
1563         (:focus .item.selected > .status > .status-button > svg .stroked):
1564         Tweak CSS selectors to apply to other shapes, not just path.
1565
1566 2014-09-06  Darin Adler  <darin@apple.com>
1567
1568         Make updates suggested by new version of Xcode
1569         https://bugs.webkit.org/show_bug.cgi?id=136603
1570
1571         Reviewed by Mark Rowe.
1572
1573         * Configurations/Base.xcconfig: Added CLANG_WARN_BOOL_CONVERSION, CLANG_WARN_CONSTANT_CONVERSION,
1574         CLANG_WARN_EMPTY_BODY, CLANG_WARN_ENUM_CONVERSION, CLANG_WARN_INT_CONVERSION,
1575         CLANG_WARN_UNREACHABLE_CODE, CLANG_WARN__DUPLICATE_METHOD_MATCH, ENABLE_STRICT_OBJC_MSGSEND,
1576         GCC_WARN_UNDECLARED_SELECTOR, and GCC_WARN_UNUSED_FUNCTION as suggested by Xcode update check.
1577         Also removed duplicate GCC_WARN_UNUSED_VARIABLE line.
1578
1579         * WebInspectorUI.xcodeproj/project.pbxproj: Updated LastUpgradeCheck.
1580
1581 2014-09-02  Brian J. Burg  <burg@cs.washington.edu>
1582
1583         LegacyProfiler: remove redundant ProfileNode members and other cleanup
1584         https://bugs.webkit.org/show_bug.cgi?id=136380
1585
1586         Reviewed by Timothy Hatcher.
1587
1588         Remove unused Profile.idleTime member.
1589
1590         * UserInterface/Models/Profile.js:
1591         (WebInspector.Profile.prototype.get idleTime): Deleted.
1592         * UserInterface/Models/ScriptTimelineRecord.js:
1593         (WebInspector.ScriptTimelineRecord.prototype._initializeProfileFromPayload):
1594
1595 2014-09-02  Brian J. Burg  <burg@cs.washington.edu>
1596
1597         Web Inspector: remove ProfilerAgent and legacy profiler files in the frontend
1598         https://bugs.webkit.org/show_bug.cgi?id=136462
1599
1600         Reviewed by Timothy Hatcher.
1601
1602         The legacy profiler manager didn't do anything, and its views and models
1603         have been superseded by new views and models based on the Timeline classes.
1604
1605         * .eslintrc:
1606         * UserInterface/Base/Main.js:
1607         (WebInspector.loaded):
1608         (WebInspector.openURL): Remove profile URL handling code.
1609         * UserInterface/Controllers/LegacyProfileManager.js: Removed.
1610         * UserInterface/Main.html:
1611         * UserInterface/Protocol/ConsoleObserver.js:
1612         (WebInspector.ConsoleObserver.prototype.messageAdded):
1613         * UserInterface/Protocol/InspectorFrontendAPI.js:
1614         (InspectorFrontendAPI.isProfilingJavaScript): Deleted.
1615         (InspectorFrontendAPI.startProfilingJavaScript): Deleted.
1616         (InspectorFrontendAPI.stopProfilingJavaScript): Deleted.
1617         * UserInterface/Protocol/LegacyProfilerObserver.js: Removed.
1618         * UserInterface/Views/LegacyBottomUpProfileDataGridTree.js: Removed.
1619         * UserInterface/Views/LegacyJavaScriptProfileObject.js: Removed.
1620         * UserInterface/Views/LegacyJavaScriptProfileType.js: Removed.
1621         * UserInterface/Views/LegacyJavaScriptProfileView.css: Removed.
1622         * UserInterface/Views/LegacyJavaScriptProfileView.js: Removed.
1623         * UserInterface/Views/LegacyProfileDataGridTree.js: Removed.
1624         * UserInterface/Views/LegacyProfileObject.js: Removed.
1625         * UserInterface/Views/LegacyProfileType.js: Removed.
1626         * UserInterface/Views/LegacyProfileView.css: Removed.
1627         * UserInterface/Views/LegacyProfileView.js: Removed.
1628         * UserInterface/Views/LegacyTopDownProfileDataGridTree.js: Removed.
1629
1630 2014-08-29  Saam Barati  <saambarati1@gmail.com>
1631
1632         Web Inspector: Create a UI for displaying JavaScript type information
1633         https://bugs.webkit.org/show_bug.cgi?id=135142
1634
1635         Reviewed by Joseph Pecoraro.
1636
1637         JavaScriptCore now has a type profiler. This patch provides a frontend
1638         user interface for displaying this type information in the Web Inspector.
1639         The user interface works by placing inline "type tokens" next to important
1640         JavaScript expressions: function arguments, function return types, and 
1641         variable declarations. Type information can also be seen for almost every
1642         JavaScipt expression just by hovering over it while viewing a JavaScript file.
1643
1644         Currently, turning on the type profiler is expensive, so the inspector
1645         ensures to never turn on type profiling until the user specifically asks 
1646         for type information to be turned on.
1647
1648         * UserInterface/Base/Main.js:
1649         (WebInspector.loaded):
1650         * UserInterface/Controllers/CodeMirrorTokenTrackingController.js:
1651         (WebInspector.CodeMirrorTokenTrackingController.prototype._startTracking):
1652         (WebInspector.CodeMirrorTokenTrackingController.prototype._processNewHoveredToken):
1653         Added a new type profiling mode.
1654
1655         * UserInterface/Controllers/FormatterSourceMap.js:
1656         (WebInspector.FormatterSourceMap.prototype.originalToFormatted):
1657         (WebInspector.FormatterSourceMap.prototype.originalPositionToFormatted):
1658         (WebInspector.FormatterSourceMap.prototype.formattedToOriginal):
1659         (WebInspector.FormatterSourceMap.prototype.formattedToOriginalOffset):
1660         * UserInterface/Controllers/TypeTokenAnnotator.js: Added.
1661         (WebInspector.TypeTokenAnnotator):
1662         (WebInspector.TypeTokenAnnotator.prototype.get isActive):
1663         (WebInspector.TypeTokenAnnotator.prototype.get sourceCodeTextEditor):
1664         (WebInspector.TypeTokenAnnotator.prototype.pause):
1665         (WebInspector.TypeTokenAnnotator.prototype.resume):
1666         (WebInspector.TypeTokenAnnotator.prototype.refresh):
1667         (WebInspector.TypeTokenAnnotator.prototype.reset):
1668         (WebInspector.TypeTokenAnnotator.prototype.toggleTypeAnnotations):
1669         (WebInspector.TypeTokenAnnotator.prototype._insertAnnotations.):
1670         (WebInspector.TypeTokenAnnotator.prototype._insertTypeTokensForEachNode):
1671         (WebInspector.TypeTokenAnnotator.prototype._insertToken):
1672         (WebInspector.TypeTokenAnnotator.prototype.isLineTerminator):
1673         (WebInspector.TypeTokenAnnotator.prototype._translateToOffsetAfterFunctionParameterList):
1674         (WebInspector.TypeTokenAnnotator.prototype._clearTimeoutIfNeeded):
1675         This class is responsible for producing the inline "type token" annotations.
1676
1677         * UserInterface/Images/NavigationItemTypes.svg: Added.
1678         * UserInterface/Main.html:
1679         * UserInterface/Models/Script.js:
1680         (WebInspector.Script.prototype.get scriptSyntaxTree):
1681         * UserInterface/Models/ScriptSyntaxTree.js:
1682         (WebInspector.ScriptSyntaxTree.prototype.containsNonEmptyReturnStatement):
1683         (WebInspector.ScriptSyntaxTree.prototype.):
1684         (WebInspector.ScriptSyntaxTree.prototype.updateTypes):
1685         (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):
1686         * UserInterface/Views/ScriptContentView.js:
1687         (WebInspector.ScriptContentView):
1688         (WebInspector.ScriptContentView.prototype.get navigationItems):
1689         (WebInspector.ScriptContentView.prototype._contentDidPopulate):
1690         (WebInspector.ScriptContentView.prototype._toggleTypeAnnotations):
1691         (WebInspector.ScriptContentView.prototype._showJavaScriptTypeInformationSettingChanged):
1692         * UserInterface/Views/SourceCodeTextEditor.js:
1693         (WebInspector.SourceCodeTextEditor):
1694         (WebInspector.SourceCodeTextEditor.prototype.shown):
1695         (WebInspector.SourceCodeTextEditor.prototype.hidden):
1696         (WebInspector.SourceCodeTextEditor.prototype.canShowTypeAnnotations):
1697         (WebInspector.SourceCodeTextEditor.prototype.toggleTypeAnnotations):
1698         (WebInspector.SourceCodeTextEditor.prototype.showPopoverForTypes):
1699         (WebInspector.SourceCodeTextEditor.prototype.prettyPrint):
1700         (WebInspector.SourceCodeTextEditor.prototype._populateWithContent):
1701         (WebInspector.SourceCodeTextEditor.prototype._debuggerDidPause):
1702         (WebInspector.SourceCodeTextEditor.prototype._debuggerDidResume):
1703         (WebInspector.SourceCodeTextEditor.prototype._updateTokenTrackingControllerState):
1704         (WebInspector.SourceCodeTextEditor.prototype.tokenTrackingControllerNewHighlightCandidate):
1705         (WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedJavaScriptTypeInformation.handler):
1706         (WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedJavaScriptTypeInformation):
1707         (WebInspector.SourceCodeTextEditor.prototype._showPopover):
1708         (WebInspector.SourceCodeTextEditor.prototype.editingControllerDidFinishEditing):
1709         (WebInspector.SourceCodeTextEditor.prototype._makeTypeTokenAnnotator):
1710         (WebInspector.SourceCodeTextEditor.prototype._enableScrollEventsForTypeTokenAnnotator):
1711         (WebInspector.SourceCodeTextEditor.prototype._disableScrollEventsForTypeTokenAnnotator):
1712         (WebInspector.SourceCodeTextEditor.prototype._makeTypeTokenScrollEventHandler.scrollHandler):
1713         (WebInspector.SourceCodeTextEditor.prototype._makeTypeTokenScrollEventHandler):
1714         * UserInterface/Views/TextContentView.js:
1715         (WebInspector.TextContentView.prototype.get navigationItems):
1716         * UserInterface/Views/TextEditor.js:
1717         (WebInspector.TextEditor.prototype.set formatted):
1718         (WebInspector.TextEditor.prototype.canShowTypeAnnotations):
1719         (WebInspector.TextEditor.prototype.visibleRangeOffsets):
1720         (WebInspector.TextEditor.prototype.originalOffsetToCurrentPosition):
1721         (WebInspector.TextEditor.prototype.currentOffsetToCurrentPosition):
1722         (WebInspector.TextEditor.prototype.currentPositionToOriginalOffset):
1723         (WebInspector.TextEditor.prototype.currentPositionToCurrentOffset):
1724         (WebInspector.TextEditor.prototype.setInlineWidget):
1725         (WebInspector.TextEditor.prototype.addScrollHandler):
1726         (WebInspector.TextEditor.prototype.removeScrollHandler):
1727         (WebInspector.TextEditor.prototype._scrollIntoViewCentered):
1728         * UserInterface/Views/TextResourceContentView.js:
1729         (WebInspector.TextResourceContentView):
1730         (WebInspector.TextResourceContentView.prototype.get navigationItems):
1731         (WebInspector.TextResourceContentView.prototype._contentDidPopulate):
1732         (WebInspector.TextResourceContentView.prototype._toggleTypeAnnotations):
1733         (WebInspector.TextResourceContentView.prototype._showJavaScriptTypeInformationSettingChanged):
1734         * UserInterface/Views/TypePropertiesSection.js: Added.
1735         (WebInspector.TypePropertiesSection):
1736         (WebInspector.TypePropertiesSection.prototype.onpopulate):
1737         (WebInspector.TypePropertiesSection.PropertyComparator):
1738         (WebInspector.TypePropertyTreeElement):
1739         (WebInspector.TypePropertyTreeElement.prototype.onpopulate):
1740         * UserInterface/Views/TypeTokenView.css: Added.
1741         (.type-token):
1742         (.type-token-left-spacing):
1743         (.type-token-right-spacing):
1744         (.type-token-function, .type-token-boolean):
1745         (.type-token-number):
1746         (.type-token-string):
1747         (.type-token-default):
1748         (.type-token-empty):
1749         (.type-token-many):
1750         * UserInterface/Views/TypeTokenView.js: Added.
1751         (WebInspector.TypeTokenView):
1752         (WebInspector.TypeTokenView.titleForPopover):
1753         (WebInspector.TypeTokenView.prototype.update):
1754         (WebInspector.TypeTokenView.prototype._setUpMouseoverHandlers):
1755         (WebInspector.TypeTokenView.prototype._shouldShowPopover):
1756         The inline "type token" view.
1757
1758 2014-08-29  Saam Barati  <sbarati@apple.com>
1759
1760         Web Inspector: Fix how Popover animates
1761         https://bugs.webkit.org/show_bug.cgi?id=136353
1762
1763         Reviewed by Timothy Hatcher.
1764
1765         Popovers currently don't animate properly because they use 
1766         window.requestAnimationFrame which won't fire its callback 
1767         while the inspector is paused in the debugger. This patches
1768         switches the callback mechanism to setTimeout and also changes
1769         how a Popover's anchor animates to prevent visual glitches.
1770
1771         Popover also has a new function that allows a new target
1772         frame and new content to be set simultaneously and to
1773         animate to show the new content while changing the 
1774         location of the popover frame.
1775
1776         SourceCodeTextEditor uses Popover's new API for animating
1777         between popovers when paused in the debugger. SourceCodeTextEditor 
1778         also now ensures proper balancing of popover tracking event 
1779         listeners.
1780
1781         * UserInterface/Views/Popover.js:
1782         (WebInspector.Popover.prototype.present):
1783         (WebInspector.Popover.prototype.presentNewContentWithFrame):
1784         (WebInspector.Popover.prototype.dismiss):
1785         (WebInspector.Popover.prototype._update):
1786         (WebInspector.Popover.prototype.drawBackground):
1787         (WebInspector.Popover.prototype._animateFrame):
1788         (WebInspector.Popover.prototype._drawFrame):
1789         (WebInspector.Popover.prototype._addListenersIfNeeded):
1790         (WebInspector.Popover.prototype._animateFrame.drawBackground): Deleted.
1791         * UserInterface/Views/SourceCodeTextEditor.js:
1792         (WebInspector.SourceCodeTextEditor.prototype._showPopover):
1793         (WebInspector.SourceCodeTextEditor.prototype._dismissPopover):
1794         (WebInspector.SourceCodeTextEditor.prototype._trackPopoverEvents):
1795
1796 2014-08-28  Saam Barati  <sbarati@apple.com>
1797
1798         Web Inspector: Write tests for ScriptSyntaxTree and fix bugs in the data structure
1799         https://bugs.webkit.org/show_bug.cgi?id=136272
1800
1801         Reviewed by Joseph Pecoraro.
1802
1803         Include the necessary files in Test.html to test ScriptSyntaxTree.
1804         Also, ScriptSyntaxTree had a couple of errors for two of its nodes
1805         where they simply ignored one of the properties on the node.
1806         These errors were found while writing the tests and are fixed
1807         in this patch.
1808
1809         * UserInterface/Models/ScriptSyntaxTree.js:
1810         (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):
1811         * UserInterface/Test.html:
1812
1813 2014-08-27  Saam Barati  <sbarati@apple.com>
1814
1815         Web Inspector: Layout issues for popover on not legacy OS
1816         https://bugs.webkit.org/show_bug.cgi?id=136268
1817
1818         Reviewed by Joseph Pecoraro.
1819
1820         On the latest OS, popovers invade the title bar's space which will
1821         cause layout issues because the title bar will render above
1822         the popover. Fix this by providing some padding for popovers on 
1823         not legacy OSs.
1824
1825         * UserInterface/Views/Popover.js:
1826
1827 2014-08-27  Timothy Hatcher  <timothy@apple.com>
1828
1829         REGRESSION: Web Inspector: Legacy toolbar has two different colors in unfocused windowed mode
1830         https://bugs.webkit.org/show_bug.cgi?id=136289
1831
1832         Reviewed by Darin Adler.
1833
1834         * UserInterface/Views/Toolbar.css:
1835         (body.mac-platform.legacy .toolbar): Override the background-color as transparent. Non-legacy
1836         uses a solid color instead of a gradient for window-inactive.
1837
1838 2014-08-26  Saam Barati  <sbarati@apple.com>
1839
1840         Web Inspector: Fix CodeMirrorTokenTrackingController::_startTracking assertion
1841         https://bugs.webkit.org/show_bug.cgi?id=136160
1842
1843         Reviewed by Joseph Pecoraro.
1844
1845         Check if '_tracking' is already true before calling '_startTracking'
1846         to prevent the assertion from always firing.
1847
1848         * UserInterface/Controllers/CodeMirrorTokenTrackingController.js:
1849         (WebInspector.CodeMirrorTokenTrackingController.prototype._mouseEntered):
1850
1851 2014-08-25  Brent Fulgham  <bfulgham@apple.com>
1852
1853         [Win] Pass OFFICIAL_BUILD flag to WebInspectorUI build process
1854         https://bugs.webkit.org/show_bug.cgi?id=136229
1855
1856         Reviewed by Dean Jackson.
1857
1858         * WebInspectorUI.vcxproj/WebInspectorUI.make: Pass OFFICIAL_BUILD
1859         flag to build-webinspectorui.pl.
1860         * WebInspectorUI.vcxproj/build-webinspectorui.pl: Accept and use
1861         the OFFICIAL_BUILD flag.
1862
1863 2014-08-24  Benjamin Poulain  <benjamin@webkit.org>
1864
1865         The inspector should not use the "after" pseudo element with the compatibility syntax
1866         https://bugs.webkit.org/show_bug.cgi?id=136204
1867
1868         Reviewed by Darin Adler.
1869
1870         We should only use hte proper pseudo element syntax inside WebKit.
1871
1872         * Tools/PrettyPrinting/codemirror-additions.css:
1873         * Tools/PrettyPrinting/populate/apple.css:
1874
1875 2014-08-24  Brian J. Burg  <burg@cs.washington.edu>
1876
1877         Web Inspector: Rename DOM.RGBA and remove workarounds in the bindings generator
1878         https://bugs.webkit.org/show_bug.cgi?id=136025
1879
1880         Reviewed by Joseph Pecoraro.
1881
1882         Also rename DOM.RGBA in legacy protocol specifications.
1883
1884         * Versions/Inspector-iOS-6.0.json:
1885         * Versions/Inspector-iOS-7.0.json:
1886
1887 2014-08-21  Simon Fraser  <simon.fraser@apple.com>
1888
1889         Add a button to enable paint flashing in the web inspector
1890         https://bugs.webkit.org/show_bug.cgi?id=136133
1891
1892         Reviewed by Tim Hatcher.
1893         
1894         Add a button to the right of the layer borders button to turn on paint flashing.
1895         Future patches will actually enable this feature.
1896
1897         * Localizations/en.lproj/localizedStrings.js: Tooltip strings.
1898         * UserInterface/Images/PaintFlashing.svg: Added. "Paintbrush" icon.
1899         * UserInterface/Views/DOMTreeContentView.js:
1900         (WebInspector.DOMTreeContentView):
1901         (WebInspector.DOMTreeContentView.prototype.get navigationItems):
1902         (WebInspector.DOMTreeContentView.prototype._togglePaintFlashing):
1903
1904 2014-08-20  Saam Barati  <sbarati@apple.com>
1905
1906         Rename HighFidelityTypeProfiling variables for more clarity
1907         https://bugs.webkit.org/show_bug.cgi?id=135899
1908
1909         Reviewed by Geoffrey Garen.
1910
1911         Change a reference in a comment to a JavaScriptCore file to its 
1912         newly renamed variant.
1913
1914         * UserInterface/Models/ScriptSyntaxTree.js:
1915
1916 2014-08-18  Saam Barati  <sbarati@apple.com>
1917
1918         Web Inspector: Introduce an inspector Abstract Syntax Tree.
1919         https://bugs.webkit.org/show_bug.cgi?id=135763
1920
1921         Reviewed by Joseph Pecoraro.
1922
1923         This patch adds an Abstract Syntax Tree to the Web inspector. 
1924         This syntax tree is modeled off the Esprima.js syntax tree
1925         which complies with the Mozilla Parser API:
1926         https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey/Parser_API
1927         Script is the owner of the Web Inspector syntax tree, and has an API
1928         for accessing its syntax tree property.
1929
1930         * UserInterface/External/Esprima/esprima.js:
1931         * UserInterface/Main.html:
1932         * UserInterface/Models/Script.js:
1933         (WebInspector.Script):
1934         (WebInspector.Script.prototype.requestScriptSyntaxTree.makeSyntaxTreeAndCallCallback):
1935         (WebInspector.Script.prototype._resolveResource):
1936         (WebInspector.Script.prototype._makeSyntaxTree):
1937         * UserInterface/Models/ScriptSyntaxTree.js: Added.
1938         (WebInspector.ScriptSyntaxTree):
1939         (WebInspector.ScriptSyntaxTree.prototype.get parsedSuccessfully):
1940         (WebInspector.ScriptSyntaxTree.prototype.forEachNode):
1941         (WebInspector.ScriptSyntaxTree.prototype.):
1942         (WebInspector.ScriptSyntaxTree.prototype.filter):
1943         (WebInspector.ScriptSyntaxTree.prototype.filterForNodesInRange):
1944         (WebInspector.ScriptSyntaxTree.prototype.filterByRange):
1945         (WebInspector.ScriptSyntaxTree.prototype.containsNonEmptyReturnStatement.removeFunctionsFilter):
1946         (WebInspector.ScriptSyntaxTree.prototype.containsNonEmptyReturnStatement):
1947         (WebInspector.ScriptSyntaxTree.prototype.updateTypes):
1948         (WebInspector.ScriptSyntaxTree.prototype._defaultParserState):
1949         (WebInspector.ScriptSyntaxTree.prototype._recurse):
1950         (WebInspector.ScriptSyntaxTree.prototype._recurseArray):
1951         (WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):
1952
1953 2014-08-16  Joseph Pecoraro  <pecoraro@apple.com>
1954
1955         Web Inspector: Improve performance of selection range changes viewing Scripts timeline
1956         https://bugs.webkit.org/show_bug.cgi?id=136015
1957
1958         Reviewed by Timothy Hatcher.
1959
1960         * UserInterface/Base/Utilities.js:
1961         (clamp):
1962         Helper function to clamp a value between a min and max.
1963
1964         * UserInterface/Models/ProfileNode.js:
1965         (WebInspector.ProfileNode.prototype.get startTime):
1966         (WebInspector.ProfileNode.prototype.get endTime):
1967         These can be quickly calculated, so avoid full calculation to grab the values.
1968
1969         * UserInterface/Views/ScriptTimelineView.js:
1970         (WebInspector.ScriptTimelineView.prototype.updateLayout):
1971         Update ranges with a smart helper, instead of blindly doing it and needing refresh.
1972
1973         * UserInterface/Views/ProfileNodeDataGridNode.js:
1974         (WebInspector.ProfileNodeDataGridNode.prototype.get rangeEndTime):
1975         (WebInspector.ProfileNodeDataGridNode.prototype.get data):
1976         (WebInspector.ProfileNodeDataGridNode.prototype.updateRangeTimes):
1977         (WebInspector.ProfileNodeDataGridNode.prototype.set rangeStartTime): Deleted.
1978         (WebInspector.ProfileNodeDataGridNode.prototype.set rangeEndTime): Deleted.
1979         * UserInterface/Views/ScriptTimelineDataGridNode.js:
1980         (WebInspector.ScriptTimelineDataGridNode.prototype.updateRangeTimes):
1981         (WebInspector.ScriptTimelineDataGridNode.prototype.set rangeStartTime): Deleted.
1982         (WebInspector.ScriptTimelineDataGridNode.prototype.set rangeEndTime): Deleted.
1983         When updating the range selection, compare to the last range selection
1984         on this DataGridNode. If the visible portion of this node's time range
1985         changes, we need a refresh. Otherwise, we don't need a refresh.
1986
1987 2014-08-15  Joseph Pecoraro  <pecoraro@apple.com>
1988
1989         Web Inspector: Update Scripts/update-LegacyInspectorBackendCommands.rb for the new generator
1990         https://bugs.webkit.org/show_bug.cgi?id=136006
1991
1992         Reviewed by Timothy Hatcher.
1993
1994         * Scripts/update-LegacyInspectorBackendCommands.rb:
1995         Use the new generator and pass the appropriate flags.
1996
1997         * UserInterface/Protocol/Legacy/6.0/InspectorWebBackendCommands.js:
1998         * UserInterface/Protocol/Legacy/7.0/InspectorWebBackendCommands.js:
1999         Newly generated files using the new generator.
2000
2001         * Versions/Inspector-iOS-6.0.json:
2002         Remove unsupported features.
2003
2004 2014-08-15  Joseph Pecoraro  <pecoraro@apple.com>
2005
2006         Web Inspector: Remove forced layouts during recording caused by striped background element resizing
2007         https://bugs.webkit.org/show_bug.cgi?id=136009
2008
2009         Reviewed by Timothy Hatcher.
2010
2011         We used to manually resize and a custom striped background behind
2012         the timeline tree outline content area. This can happen frequently
2013         during timeline recordings causing forced layouts. We can eliminate
2014         the hack and instead put the stripe background on the tree outline.
2015
2016         * UserInterface/Views/TimelineSidebarPanel.js:
2017         (WebInspector.TimelineSidebarPanel.prototype.updateCustomContentOverflow): Deleted.
2018         * UserInterface/Views/TimelineSidebarPanel.css:
2019         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .content .item > .status > .status-button):
2020         (.sidebar > .panel.navigation.timeline > .content > .stripe-background): Deleted.
2021         (.sidebar > .panel.navigation.timeline.timeline-content-view-showing > .content > .stripe-background): Deleted.
2022         Eliminate the striped background element.
2023
2024         * UserInterface/Views/TimelineView.css:
2025         (.panel.navigation.timeline > .content > .navigation-sidebar-panel-content-tree-outline):
2026         (.panel.navigation.timeline.timeline-content-view-showing > .content > .navigation-sidebar-panel-content-tree-outline):
2027         Give the timeline content tree outlines the striped background.
2028
2029         * UserInterface/Views/NavigationSidebarPanel.js:
2030         (WebInspector.NavigationSidebarPanel.prototype._updateContentOverflowShadowVisibility):
2031         (WebInspector.NavigationSidebarPanel.prototype.updateCustomContentOverflow): Deleted.
2032         Remove the now unused updateCustomContentOverflow method.
2033
2034 2014-08-15  Jono Wells  <jonowells@apple.com>
2035
2036         Web Inspector: Inspect Element doesn't always highlight the correct element when inspector is closed before inspecting
2037         https://bugs.webkit.org/show_bug.cgi?id=135995
2038
2039         Reviewed by Joseph Pecoraro.
2040
2041         Change so if an element is inspected via the Inspect Element context menu, selected
2042         node restoration is disallowed until the main resource in the main frame changes.
2043         This way an attempt by a sub-frame will not change the highlighted element in the
2044         Main Frame's DOM tree unexpectedly.
2045
2046         * UserInterface/Controllers/DOMTreeManager.js:
2047         (WebInspector.DOMTreeManager):
2048         (WebInspector.DOMTreeManager.prototype._mainResourceDidChange):
2049         (WebInspector.DOMTreeManager.prototype.inspectElement):
2050
2051 2014-08-15  Brian J. Burg  <burg@cs.washington.edu>
2052
2053         Web Inspector: rewrite CodeGeneratorInspector to be modular and testable
2054         https://bugs.webkit.org/show_bug.cgi?id=131596
2055
2056         Reviewed by Joseph Pecoraro.
2057
2058         Also apply type extraction refactorings to old protocol versions for consistency.
2059
2060         * Versions/Inspector-iOS-6.0.json:
2061         * Versions/Inspector-iOS-7.0.json:
2062
2063 2014-08-15  Timothy Hatcher  <timothy@apple.com>
2064
2065         Web Inspector: Probe details sidebar data grids do not show data
2066         https://bugs.webkit.org/show_bug.cgi?id=135992
2067
2068         Reviewed by Joseph Pecoraro.
2069
2070         * UserInterface/Views/ProbeSetDataGrid.js:
2071         (WebInspector.ProbeSetDataGrid): Make the DataGrid be inline to show the data correctly.
2072
2073 2014-08-15  Timothy Hatcher  <timothy@apple.com>
2074
2075         Web Inspector: Legacy Mac toolbar appearance looks wrong
2076         https://bugs.webkit.org/show_bug.cgi?id=135962
2077
2078         Reviewed by Joseph Pecoraro.
2079
2080         * UserInterface/Views/Toolbar.css:
2081         (body.mac-platform.legacy .toolbar): Don't draw a gradient background when not docked.
2082         Move border-bottom-color from body.mac-platform.legacy.docked .toolbar to here so it
2083         applies all the time as it should have.
2084
2085 2014-08-14  Joseph Pecoraro  <pecoraro@apple.com>
2086
2087         Web Inspector: Dragging Undocked inspector by window title has broken behavior
2088         https://bugs.webkit.org/show_bug.cgi?id=135950
2089
2090         Reviewed by Timothy Hatcher.
2091
2092         * UserInterface/Base/Main.js:
2093         On Mac ports where we the inspector content goes everywhere, window dragging behavior
2094         still exists for the top 22px of the window. So don't do our JavaScript based window
2095         dragging for this special region.
2096
2097         * UserInterface/Models/KeyboardShortcut.js:
2098         (WebInspector.KeyboardShortcut.Modifier.get CommandOrControl):
2099         (WebInspector.KeyboardShortcut.prototype.get displayName):
2100         Instead of calling a host function, use the value already in the frontend.
2101
2102 2014-08-14  Joseph Pecoraro  <pecoraro@apple.com>
2103
2104         Web Inspector: Split console toggle button wrong - Images/Images/SplitToggleUp.svg does not exist
2105         https://bugs.webkit.org/show_bug.cgi?id=135957
2106
2107         Reviewed by Timothy Hatcher.
2108
2109         * UserInterface/Views/LogContentView.js:
2110         (WebInspector.LogContentView):
2111         Wrong image path passed to platformImagePath.
2112
2113 2014-08-14  Joseph Pecoraro  <pecoraro@apple.com>
2114
2115         Web Inspector: Avoid re-binding the same function over and over
2116         https://bugs.webkit.org/show_bug.cgi?id=135949
2117
2118         Reviewed by Timothy Hatcher.
2119
2120         * UserInterface/Controllers/TimelineManager.js:
2121         (WebInspector.TimelineManager.prototype._startAutoCapturing):
2122         (WebInspector.TimelineManager.prototype._stopAutoRecordingSoon):
2123         (WebInspector.TimelineManager.prototype._resetAutoRecordingDeadTimeTimeout):
2124         Stash a bound copy of the function once, and reuse it.
2125
2126 2014-08-14  Joseph Pecoraro  <pecoraro@apple.com>
2127
2128         Web Inspector: Timelines can get caught in requestAnimationFrame loop when not recording
2129         https://bugs.webkit.org/show_bug.cgi?id=135946
2130
2131         Reviewed by Timothy Hatcher.
2132
2133         Each TimelineContentView was listening for the TimelineManager's start/stop
2134         capturing events. However, only the active recording could possibly update.
2135         Likewise, if a pre-existing recording started and stopped we did not properly
2136         stop in the case where we were waiting for an event to update the current time,
2137         which would result in an infinite rAF loop of no updates.
2138
2139         * UserInterface/Models/TimelineRecording.js:
2140         (WebInspector.TimelineRecording.prototype.unloaded):
2141         When a timeline recording is unloaded trigger an event.
2142
2143         * UserInterface/Views/TimelineContentView.js:
2144         (WebInspector.TimelineContentView.prototype._startUpdatingCurrentTime):
2145         Assert we were not already waiting.
2146
2147         (WebInspector.TimelineContentView.prototype._stopUpdatingCurrentTime):
2148         Properly handle the case of starting/stoping an already existing recording
2149         without a new event coming in.
2150
2151         (WebInspector.TimelineContentView.prototype._recordingTimesUpdated):
2152         (WebInspector.TimelineContentView.prototype._recordingReset):
2153         Convert to a boolean instead of deleting state.
2154
2155         (WebInspector.TimelineContentView.prototype._recordingUnloaded):
2156         Stop listening to timeline manager events that no longer affect unloaded recordings.
2157
2158 2014-08-13  Jono Wells  <jonowells@apple.com>
2159
2160         Web Inspector: eslint configuration should be stored as .eslintrc
2161         https://bugs.webkit.org/show_bug.cgi?id=135916
2162
2163         .eslintrc file added to allow for ESLint solutions, within editors and otherwise,
2164         to be automatically configured based on the WebKit JavaScript coding style. The
2165         initial file is incomplete.
2166
2167         Reviewed by Joseph Pecoraro.
2168
2169         * .eslintrc: Added.
2170         * External/.eslintrc: Added.
2171
2172 2014-08-13  Timothy Hatcher  <timothy@apple.com>
2173
2174         Web Inspector: Missing semicolon after console.assert in TimelineSidebarPanel.js
2175         https://bugs.webkit.org/show_bug.cgi?id=135917
2176
2177         Reviewed by Joseph Pecoraro.
2178
2179         * UserInterface/Views/TimelineSidebarPanel.js:
2180
2181 2014-08-13  Joseph Pecoraro  <pecoraro@apple.com>
2182
2183         Web Inspector: Inline DataGrid inside details sidebar has double thick top border with legacy styles
2184         https://bugs.webkit.org/show_bug.cgi?id=135894
2185
2186         Reviewed by Timothy Hatcher.
2187
2188         * UserInterface/Views/DetailsSection.css:
2189         (body.mac-platform.legacy .details-section:not(.collapsed) .data-grid.inline):
2190         In legacy styles the details-section header always has a 1px bottom border.
2191         In all styles, an inline data grid had a 1px border everywhere. So, handle
2192         this specific case by removing the top border of an inline data grid
2193         that is inside an expanded details section.
2194
2195 2014-08-13  Joseph Pecoraro  <pecoraro@apple.com>
2196
2197         Web Inspector: "No Filter Results" view only shows once, does not show again
2198         https://bugs.webkit.org/show_bug.cgi?id=135892
2199
2200         Reviewed by Timothy Hatcher.
2201
2202         * UserInterface/Views/NavigationSidebarPanel.js:
2203         (WebInspector.NavigationSidebarPanel.prototype.showEmptyContentPlaceholder):
2204         We were checking at the wrong level for a parent. Check if the root
2205         placeholder element has a parent or not.
2206
2207 2014-08-13  Joseph Pecoraro  <pecoraro@apple.com>
2208
2209         Web Inspector: Incorrect border colors in event listeners sections in details sidebar
2210         https://bugs.webkit.org/show_bug.cgi?id=135891
2211
2212         Reviewed by Timothy Hatcher.
2213
2214         * UserInterface/Views/DetailsSection.css:
2215         (.details-section .details-section > .header):
2216         (.details-section .details-section:not(.collapsed) > .header):
2217         Remove box-shadow and replace with a bottom border.
2218
2219         (body.mac-platform.legacy .details-section .details-section.collapsed > .header):
2220         (.details-section .details-section.collaspsed > .header): Deleted.
2221         Collapsed was spelled incorrectly so this was not applying properly before.
2222         But correct this for legacy because legacy still uses a box-shadow.
2223
2224 2014-08-13  Joseph Pecoraro  <pecoraro@apple.com>
2225
2226         Web Inspector: Timeline Close buttons can use polish for new and legacy styles
2227         https://bugs.webkit.org/show_bug.cgi?id=135870
2228
2229         Reviewed by Timothy Hatcher.
2230
2231         * UserInterface/Images/Legacy/Close.svg:
2232         Ensure this has fill colors in tree selections.
2233
2234         * UserInterface/Views/TimelineSidebarPanel.css:
2235         (.sidebar > .panel.navigation.timeline > .timelines-content .close-button):
2236         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .timelines-content .close-button):
2237         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .content .item > .status > .status-button):
2238         Size the close-button for the top overviews differently in new styles (14x14) and legacy (12x12).
2239
2240 2014-08-13  Timothy Hatcher  <timothy@apple.com>
2241
2242         Web Inspector: Workaround a NSWindow change to the title bar.
2243         https://bugs.webkit.org/show_bug.cgi?id=135880
2244
2245         Reviewed by Joseph Pecoraro.
2246
2247         * UserInterface/Base/Main.js:
2248         (WebInspector._updateToolbarHeight): Don't call in legacy mode.
2249
2250         * UserInterface/Views/DashboardContainerView.css:
2251         (.toolbar .dashboard-container):
2252         (.toolbar .dashboard):
2253         Drive-by fix some errant drop-shadows. The transparent border was pushing the inset top
2254         drop shadow down when it shouldn't. Remove duplicate background and shadow.
2255
2256         * UserInterface/Views/Main.css:
2257         (body): Set the background white, never needs to be transparent now.
2258         (body.mac-platform.legacy:not(.docked)): Set background to transparent when not docked in legacy.
2259         (body.docked.bottom): Update border color.
2260         (body.docked.right): Ditto.
2261         (body.docked.bottom.mac-platform.legacy): Keep old border color.
2262         (body.docked.right.mac-platform.legacy): Ditto.
2263
2264         * UserInterface/Views/Toolbar.css:
2265         (.toolbar): Set a default border and background gradient.
2266         (body.window-inactive .toolbar): No gradient but use a solid color when inactive.
2267         (body.mac-platform:not(.legacy):not(.docked) .toolbar): Padding on the top for the title bar.
2268         (body.mac-platform:not(.legacy):not(.docked) .toolbar.icon-and-label-vertical): Account for title bar height.
2269         (body.mac-platform:not(.legacy):not(.docked) .toolbar.icon-and-label-vertical.small-size): Ditto.
2270         (body.mac-platform:not(.legacy):not(.docked) .toolbar.icon-only): Ditto.
2271         (body.mac-platform:not(.legacy):not(.docked) .toolbar.label-only): Ditto.
2272         (body.mac-platform.legacy .toolbar): No inset shadow in legacy when not docked.
2273         (body.mac-platform.legacy.docked .toolbar): Restore legacy border color.
2274         (body.mac-platform.legacy:not(.docked) .toolbar .item.button > .label): Only disable sub-pixel antialiasing on legacy!
2275         (body.mac-platform.legacy.window-inactive .toolbar): Restore legacy border color.
2276
2277 2014-08-13  Timothy Hatcher  <timothy@apple.com>
2278
2279         Web Inspector: Restore Helvetica as the dashboard font in legacy mode
2280         https://bugs.webkit.org/show_bug.cgi?id=135886
2281
2282         Reviewed by Joseph Pecoraro.
2283
2284         * UserInterface/Views/DefaultDashboardView.css:
2285         (body.mac-platform.legacy .toolbar .dashboard.default > .item):
2286
2287 2014-08-12  Joseph Pecoraro  <pecoraro@apple.com>
2288
2289         Web Inspector: Timeline record content view close button does not work after scrolling, invisible scrollbar
2290         https://bugs.webkit.org/show_bug.cgi?id=135863
2291
2292         Reviewed by Timothy Hatcher.
2293
2294         A workaround is to not have position:relative content inside of
2295         scrollable region. Turns out this was only done in two places,
2296         and I do not see any absolutely positioned content in navigation
2297         sidebar content tree outlines. This also fixes clicking on the
2298         reload button if you've scrolled the Resources sidebar. 
2299
2300         * UserInterface/Views/NavigationSidebarPanel.css:
2301         (.navigation-sidebar-panel-content-tree-outline .children): Deleted.
2302         (.navigation-sidebar-panel-content-tree-outline .item): Deleted.
2303
2304 2014-08-12  Joseph Pecoraro  <pecoraro@apple.com>
2305
2306         Web Inspector: Remove unused variable in Platform.js
2307         https://bugs.webkit.org/show_bug.cgi?id=135869
2308
2309         Reviewed by Timothy Hatcher.
2310
2311         * UserInterface/Base/Platform.js:
2312
2313 2014-08-12  Joseph Pecoraro  <pecoraro@apple.com>
2314
2315         Web Inspector: Timeline selection range creation does not work when clicking event bubble or near bottom of overview
2316         https://bugs.webkit.org/show_bug.cgi?id=135849
2317
2318         Reviewed by Timothy Hatcher.
2319
2320         Click events on elements in the graph container (event bubbles) or
2321         in the scroll container (bottom 16px) were becoming the event targets.
2322         As siblings of the ruler, the dispatch would not go through the ruler.
2323         The ruler was supposed to be overlaying everything in the overview,
2324         so give the ruler a z-index so it really is overlaying elements.
2325
2326         * UserInterface/Views/TimelineRuler.css:
2327         (.timeline-ruler):
2328
2329 2014-08-12  Joseph Pecoraro  <pecoraro@apple.com>
2330
2331         Web Inspector: GoToLine dialog clear text button looks poor
2332         https://bugs.webkit.org/show_bug.cgi?id=135828
2333
2334         Reviewed by Timothy Hatcher.
2335
2336         Legacy/CloseWhite.svg was not used, but in the case where the white
2337         close button is needed the thicker bars looks better. Re-use the
2338         Legacy image as the default CloseWhite.svg.
2339
2340         * UserInterface/Images/CloseWhite.svg:
2341         * UserInterface/Images/Legacy/CloseWhite.svg: Removed.
2342
2343 2014-08-12  Joseph Pecoraro  <pecoraro@apple.com>
2344
2345         Web Inspector: Easier Way to go back to the Timeline Overviews
2346         https://bugs.webkit.org/show_bug.cgi?id=135827
2347
2348         Reviewed by Timothy Hatcher.
2349
2350         * Localizations/en.lproj/localizedStrings.js:
2351         Added new tooltip UIString.
2352
2353         * UserInterface/Images/Close.svg:
2354         * UserInterface/Images/CloseLarge.svg:
2355         * UserInterface/Images/Legacy/Close.svg:
2356         Add "stroked" class so the buttons can fill with white on selected rows.
2357         Also re-center the non-legacy images horizontally.
2358
2359         * UserInterface/Views/GeneralTreeElement.js:
2360         (WebInspector.GeneralTreeElement.prototype.set status):
2361         Do not recreate elements if the status did not change.
2362
2363         * UserInterface/Views/LayoutTimelineView.js:
2364         (WebInspector.LayoutTimelineView):
2365         (WebInspector.LayoutTimelineView.prototype._treeElementDeselected):
2366         (WebInspector.LayoutTimelineView.prototype._treeElementSelected):
2367         (WebInspector.LayoutTimelineView.prototype._updateTreeElementWithCloseButton):
2368         (WebInspector.LayoutTimelineView.prototype._closeStatusButtonClicked):
2369         * UserInterface/Views/NetworkTimelineView.js:
2370         (WebInspector.NetworkTimelineView):
2371         (WebInspector.NetworkTimelineView.prototype._treeElementDeselected):
2372         (WebInspector.NetworkTimelineView.prototype._treeElementSelected):
2373         (WebInspector.NetworkTimelineView.prototype._updateTreeElementWithCloseButton):
2374         (WebInspector.NetworkTimelineView.prototype._closeStatusButtonClicked):
2375         * UserInterface/Views/OverviewTimelineView.js:
2376         (WebInspector.OverviewTimelineView.prototype._treeElementDeselected):
2377         (WebInspector.OverviewTimelineView.prototype._treeElementSelected):
2378         (WebInspector.OverviewTimelineView.prototype._updateTreeElementWithCloseButton):
2379         (WebInspector.OverviewTimelineView.prototype._closeStatusButtonClicked):
2380         * UserInterface/Views/ScriptTimelineView.js:
2381         (WebInspector.ScriptTimelineView):
2382         (WebInspector.ScriptTimelineView.prototype._treeElementDeselected):
2383         (WebInspector.ScriptTimelineView.prototype._treeElementSelected):
2384         (WebInspector.ScriptTimelineView.prototype._updateTreeElementWithCloseButton):
2385         (WebInspector.ScriptTimelineView.prototype._closeStatusButtonClicked):
2386         Provide select/deselect handlers to show/hide the close status bar button
2387         when selecting a row that shows a non-Timeline content view. Currently the
2388         only content views the tree elements can show are Resource views, so the
2389         tooltip is the same everywhere.
2390
2391 2014-08-12  Timothy Hatcher  <timothy@apple.com>
2392
2393         Web Inspector: Expect to see top level JavaScript function profiler details for event handlers in timeline
2394         https://bugs.webkit.org/show_bug.cgi?id=132109
2395
2396         Reviewed by Joseph Pecoraro.
2397
2398         * UserInterface/Views/ScriptTimelineView.js:
2399         (WebInspector.ScriptTimelineView.prototype._processPendingRecords): Don't promote root node children if
2400         there is only one child.
2401
2402 2014-08-11  Brian J. Burg  <burg@cs.washington.edu>
2403
2404         Web Inspector: show a replay dashboard when capturing or replaying
2405         https://bugs.webkit.org/show_bug.cgi?id=135170
2406
2407         Reviewed by Timothy Hatcher.
2408
2409         This patch adds a replay dashboard with record/play/pause buttons. It
2410         is shown automatically when the user starts capturing an execution from
2411         the replay menu in the Timelines sidebar panel.
2412
2413         * UserInterface/Base/Main.js:
2414         (WebInspector.loaded):
2415         (WebInspector._captureDidStart):
2416         * UserInterface/Controllers/DashboardManager.js:
2417         (WebInspector.DashboardManager):
2418         * UserInterface/Images/ReplayPauseButton.svg: Added.
2419         * UserInterface/Images/ReplayPlayButton.svg: Added.
2420         * UserInterface/Images/ReplayRecordingButton.svg: Added.
2421         * UserInterface/Main.html:
2422         * UserInterface/Models/ReplayDashboard.js: Copied from Source/WebInspectorUI/UserInterface/Controllers/DashboardManager.js.
2423         (WebInspector.ReplayDashboard):
2424         * UserInterface/Views/DashboardView.js:
2425         (WebInspector.DashboardView):
2426         * UserInterface/Views/ReplayDashboardView.css: Copied from Source/WebInspectorUI/UserInterface/Controllers/DashboardManager.js.
2427         (.toolbar .dashboard.replay):
2428         (.toolbar .dashboard.replay div.navigation-bar):
2429         (.toolbar .dashboard.replay .item.button > .glyph):
2430         (.toolbar.label-only .dashboard.replay .item.button > .glyph):
2431         * UserInterface/Views/ReplayDashboardView.js: Added.
2432         (WebInspector.ReplayDashboardView):
2433         (WebInspector.ReplayDashboardView.prototype._captureButtonItemClicked):
2434         (WebInspector.ReplayDashboardView.prototype._replayButtonItemClicked):
2435         (WebInspector.ReplayDashboardView.prototype._captureStarted):
2436         (WebInspector.ReplayDashboardView.prototype._captureStopped):
2437         (WebInspector.ReplayDashboardView.prototype._playbackStarted):
2438         (WebInspector.ReplayDashboardView.prototype._playbackPaused):
2439         (WebInspector.ReplayDashboardView.prototype._playbackFinished):
2440
2441 2014-08-08  Brian J. Burg  <burg@cs.washington.edu>
2442
2443         Web Inspector: DebuggerManager commands should return promises
2444         https://bugs.webkit.org/show_bug.cgi?id=135690
2445
2446         Reviewed by Timothy Hatcher.
2447
2448         Convert the existing debugger commands to return promises. This
2449         requires separately waiting for protocol command's promise to be
2450         fulfilled, as well as waiting for the appropriate DebuggerManager
2451         event. If the protocol command promise is rejected, tear down the
2452         single-fire event listener.
2453
2454         * UserInterface/Controllers/DebuggerManager.js:
2455         (WebInspector.DebuggerManager.prototype.pause):
2456         (WebInspector.DebuggerManager.prototype.resume):
2457         (WebInspector.DebuggerManager.prototype.stepOver):
2458         (WebInspector.DebuggerManager.prototype.stepInto):
2459         (WebInspector.DebuggerManager.prototype.stepOut):
2460         * UserInterface/Controllers/ReplayManager.js: Use the promise-based API.
2461         (WebInspector.ReplayManager.prototype._suppressBreakpointsAndResumeIfNeeded):
2462
2463 2014-08-11  Timothy Hatcher  <timothy@apple.com>
2464
2465         Web Inspector: Update folder icons
2466         https://bugs.webkit.org/show_bug.cgi?id=135808
2467
2468         Reviewed by Joseph Pecoraro.
2469
2470         * UserInterface/Images/FolderGeneric.png: Updated.
2471         * UserInterface/Images/FolderGeneric@2x.png: Updated.
2472
2473 2014-08-11  Timothy Hatcher  <timothy@apple.com>
2474
2475         Web Inspector: DataGrid and its clients are a cluster-cuss of styles
2476         https://bugs.webkit.org/show_bug.cgi?id=135788
2477
2478         Clean up DataGrid and its subclasses and client styles.
2479
2480         Reviewed by Joseph Pecoraro.
2481
2482         * Localizations/en.lproj/localizedStrings.js:
2483         * UserInterface/Views/ApplicationCacheFrameContentView.css:
2484         (.content-view.application-cache-frame > .data-grid):
2485         * UserInterface/Views/CookieStorageContentView.css:
2486         (.content-view.cookie-storage > .data-grid):
2487         * UserInterface/Views/DOMStorageContentView.css:
2488         (.content-view.dom-storage > .data-grid):
2489         * UserInterface/Views/DOMTreeDataGrid.css:
2490         (.dom-tree-data-grid .data-grid):
2491         (.dom-tree-data-grid .name-column .icon):
2492         * UserInterface/Views/DOMTreeDataGrid.js:
2493         (WebInspector.DOMTreeDataGrid):
2494         * UserInterface/Views/DataGrid.css:
2495         (.data-grid):
2496         (.data-grid table):
2497         (.data-grid .data-container):
2498         (.data-grid.inline):
2499         (.data-grid th):
2500         (.data-grid :-webkit-any(th, td):not(:last-child)):
2501         (.data-grid th.sortable:active):
2502         (.data-grid th:-webkit-any(.sort-ascending, .sort-descending)):
2503         (.data-grid table.data):
2504         (.data-grid td):
2505         (.data-grid:focus tr.selected td:not(:last-child)):
2506         (body.mac-platform.legacy .data-grid:focus tr.selected td:not(:last-child)):
2507         (.data-grid :-webkit-any(th, td) > div):
2508         (.data-grid th:-webkit-any(.sort-ascending, .sort-descending) > div:first-child):
2509         (.data-grid th.sort-ascending > div:first-child::after):
2510         (.data-grid th.sort-descending > div:first-child::after):
2511         (.data-grid td .subtitle):
2512         (.data-grid td .subtitle::before):
2513         (.data-grid:focus tr.selected td .subtitle):
2514         (.data-grid td.error):
2515         (.data-grid tr.selected td.error):
2516         (.data-grid td .icon):
2517         (.data-grid td .go-to-arrow):
2518         (.data-grid tr:-webkit-any(.selected, :hover) .go-to-arrow):
2519         * UserInterface/Views/DatabaseContentView.css:
2520         (.storage-view):
2521         * UserInterface/Views/DatabaseTableContentView.css:
2522         (.content-view.database-table > .data-grid):
2523         * UserInterface/Views/DetailsSection.css:
2524         (.details-section > .content .data-grid):
2525         * UserInterface/Views/IndexedDatabaseObjectStoreContentView.css:
2526         (.content-view.indexed-database-object-store > .data-grid):
2527         * UserInterface/Views/LayerTreeDataGridNode.js:
2528         (WebInspector.LayerTreeDataGridNode.prototype._makeNameCell):
2529         (WebInspector.LayerTreeDataGridNode.prototype._updateNameCellData):
2530         * UserInterface/Views/LayerTreeSidebarPanel.css:
2531         (.layer-tree.panel .data-grid):
2532         (.layer-tree.panel .name-column .icon):
2533         (.layer-tree.panel tr.reflection .name-column .icon):
2534         (.layer-tree.panel tr.pseudo-element .name-column .icon):
2535         (.layer-tree.panel .name-column .reflection):
2536         (.layer-tree.panel tr.selected .name-column .reflection):
2537         (.layer-tree.panel .bottom-bar):
2538         (body.mac-platform.legacy .layer-tree.panel .bottom-bar):
2539         (.layer-tree.panel .bottom-bar > div):
2540         (body.mac-platform.legacy .layer-tree.panel .bottom-bar > div):
2541         (body.mac-platform.legacy .layer-tree-popover):
2542         * UserInterface/Views/LayerTreeSidebarPanel.js:
2543         (WebInspector.LayerTreeSidebarPanel):
2544         (WebInspector.LayerTreeSidebarPanel.prototype._buildLayerInfoSection):
2545         (WebInspector.LayerTreeSidebarPanel.prototype._buildDataGridSection):
2546         (WebInspector.LayerTreeSidebarPanel.prototype._buildBottomBar):
2547         (WebInspector.LayerTreeSidebarPanel.prototype._updateMetrics):
2548         * UserInterface/Views/LegacyJavaScriptProfileView.css:
2549         (.content-view.profile-view > .data-grid):
2550         * UserInterface/Views/LegacyProfileView.css:
2551         * UserInterface/Views/LogContentView.css:
2552         (.console-message .bubble):
2553         * UserInterface/Views/NetworkTimelineView.css:
2554         (.timeline-view.network > .data-grid):
2555         * UserInterface/Views/OverviewTimelineView.css:
2556         (.timeline-view.overview > .timeline-ruler > .header):
2557         (.timeline-view.overview > .data-grid):
2558         * UserInterface/Views/OverviewTimelineView.js:
2559         * UserInterface/Views/ProbeDetailsSidebarPanel.css:
2560         (.details-section.probe-set .options > .probe-add):
2561         (.popover .probe-popover):
2562         * UserInterface/Views/ProbeSetDataGrid.css:
2563         (.details-section.probe-set .data-grid tr.past-value td):
2564         (.details-section.probe-set .data-grid > td.unknown-value):
2565         (.details-section.probe-set .data-grid tr.revealed.highlighted):
2566         (.details-section.probe-set .data-grid tr.separator):
2567         (.details-section.probe-set .data-grid > tr.data-updated):
2568         (.details-section.probe-set .data-grid .selected .section *):
2569         (.details-section.probe-set .data-grid .selected td.unknown-value):
2570         (.details-section.probe-set .data-grid .section):
2571         * UserInterface/Views/QuickConsole.css:
2572         (.quick-console):
2573         * UserInterface/Views/TimelineDataGrid.css:
2574         (.data-grid.timeline th):
2575         (.data-grid.timeline > .navigation-bar-container > .navigation-bar):
2576         * UserInterface/Views/TimelineRuler.css:
2577         (.timeline-ruler > .header):
2578         (.timeline-ruler > .header > .divider):
2579
2580 2014-08-11  Brent Fulgham  <bfulgham@apple.com>
2581
2582         [Win] Adjust build script for Windows production build.
2583         https://bugs.webkit.org/show_bug.cgi?id=135806
2584         <rdar://problem/17978299>
2585
2586         Reviewed by Timothy Hatcher.
2587
2588         * WebInspectorUI.vcxproj/WebInspectorUI.make: Make sure target for
2589         xcopy operation exists.
2590         * WebInspectorUI.vcxproj/WebInspectorUI.proj: Don't create directories
2591         we don't need, make sure the target location exists before we build.
2592         * WebInspectorUI.vcxproj/build-webinspectorui.pl: Make sure that
2593         production builds get the intermediary command files from the
2594         right place.
2595
2596 2014-08-11  Brian J. Burg  <burg@cs.washington.edu>
2597
2598         Web Inspector: Add a helper to avoid leaking single-fire event listeners in Promise chains
2599         https://bugs.webkit.org/show_bug.cgi?id=135772
2600
2601         Reviewed by Timothy Hatcher.
2602
2603         A common pattern when working with promise chains is to convert an event
2604         handler into a promise by using a single-fire event listener with the
2605         resolve continuation as the callback. This is fine if the event fires;
2606         if it doesn't fire, then the event emitter permanently keeps a reference to the
2607         this-object and the callback.
2608
2609         This patch adds EventListener, a proxy object for events that can be manipulated
2610         from multiple promise callback functions. If a promise is rejected, the catch
2611         block can disconnect any event listeners set up earlier in the promise chain.
2612
2613         This patch also reimplements EventListenerSet to use multiple EventListeners,
2614         since they share the same logic to uniformly handle Inspector and DOM events.
2615
2616         Test: inspector/event-listener.html
2617         Test: inspector/event-listener-set.html
2618
2619         * UserInterface/Base/EventListener.js: Added.
2620         (WebInspector.EventListener):
2621         (WebInspector.EventListener.prototype.this._callback):
2622         (WebInspector.EventListener.prototype.connect):
2623         (WebInspector.EventListener.prototype.disconnect):
2624         * UserInterface/Base/EventListenerSet.js: Update license block.
2625         (WebInspector.EventListenerSet.prototype.register):
2626         (WebInspector.EventListenerSet.prototype.install):
2627         (WebInspector.EventListenerSet.prototype.uninstall):
2628         * UserInterface/Main.html: Include EventListener.
2629         * UserInterface/Test.html: Include EventListener and EventListenerSet.
2630
2631 2014-08-10  Timothy Hatcher  <timothy@apple.com>
2632
2633         Web Inspector: new glyphs are visible on OS X 10.9 builds
2634         https://bugs.webkit.org/show_bug.cgi?id=135743
2635
2636         Reviewed by Joseph Pecoraro.
2637
2638         * UserInterface/Images/Legacy/UserInputPrompt.svg: Removed.
2639         * UserInterface/Images/Legacy/UserInputPromptPrevious.svg: Removed.
2640         * UserInterface/Images/Legacy/UserInputResult.svg: Removed.
2641         Removed images that were not used.
2642
2643         * UserInterface/Views/DashboardContainerView.css:
2644         (body.mac-platform.legacy .dashboard-container .advance-arrow):
2645         * UserInterface/Views/DebuggerDashboardView.js:
2646         (WebInspector.DebuggerDashboardView):
2647         * UserInterface/Views/FolderIcon.css:
2648         (body.mac-platform.legacy .folder-icon .icon):
2649         * UserInterface/Views/HierarchicalPathComponent.css:
2650         (body.mac-platform.legacy .hierarchical-path-component > .selector-arrows):
2651         * UserInterface/Views/LogContentView.js:
2652         (WebInspector.LogContentView):
2653         Use legacy images.
2654
2655         * UserInterface/Views/NavigationSidebarPanel.css:
2656         (.navigation-sidebar-panel-content-tree-outline:focus .item.selected .subtitle):
2657         Fix color for selected subtitle.
2658
2659         * UserInterface/Views/TimelineSidebarPanel.js:
2660         (WebInspector.TimelineSidebarPanel):
2661         Use legacy images.
2662
2663 2014-08-09  Brian J. Burg  <burg@cs.washington.edu>
2664
2665         Web Inspector: TimelineManager should reuse empty recordings
2666         https://bugs.webkit.org/show_bug.cgi?id=135749
2667
2668         Reviewed by Timothy Hatcher.
2669
2670         Check whether the recording is empty before creating a new one.
2671
2672         * UserInterface/Controllers/TimelineManager.js:
2673         (WebInspector.TimelineManager.prototype._loadNewRecording):
2674         * UserInterface/Models/TimelineRecording.js:
2675         (WebInspector.TimelineRecording.prototype.isEmpty):
2676         (WebInspector.TimelineRecording.prototype.unloaded):
2677
2678 2014-08-08  Brian J. Burg  <burg@cs.washington.edu>
2679
2680         Web Inspector: add debugging flag to InspectorTest for unbuffered logging to stderr
2681         https://bugs.webkit.org/show_bug.cgi?id=135726
2682
2683         Reviewed by Timothy Hatcher.
2684
2685         Added a flag for debugging inspector tests which will synchronously log messages.
2686         This avoids failure modes that prevent logging from being added to the test page.
2687
2688         * UserInterface/Base/Test.js:
2689         (InspectorTest.debugLog):
2690         (InspectorTest.addResult):
2691
2692 2014-08-08  Joseph Pecoraro  <pecoraro@apple.com>
2693
2694         Web Inspector: When Switching Recordings, the UI datagrids do not update to match selection
2695         https://bugs.webkit.org/show_bug.cgi?id=135764
2696
2697         Reviewed by Timothy Hatcher.
2698
2699         * UserInterface/Views/TimelineSidebarPanel.js:
2700         When changing the activeContentView trigger an update of the datagrids by
2701         re-applying the filter, which will be different now that the view is different.
2702
2703 2014-08-08  Joseph Pecoraro  <pecoraro@apple.com>
2704
2705         Web Inspector: Uncaught Exception opening Web Inspector - TypeError: undefined is not a function - candidateObjectCookie.every
2706         https://bugs.webkit.org/show_bug.cgi?id=135762
2707
2708         Reviewed by Timothy Hatcher.
2709
2710         * UserInterface/Views/NavigationSidebarPanel.js:
2711         (WebInspector.NavigationSidebarPanel.prototype.treeElementMatchesCookie):
2712         Fix a typo, the wrong object was being used.
2713
2714 2014-08-07  Brian J. Burg  <burg@cs.washington.edu>
2715
2716         REGRESSION(r172094): timeline views are blank after reloading in some situations
2717         https://bugs.webkit.org/show_bug.cgi?id=135742
2718
2719         Reviewed by Timothy Hatcher.
2720
2721         Address various bugs that cause the wrong timeline content views to appear when
2722         starting a recording by reloading the inspected page. Fix other small oversights
2723         that were encountered in the sidebar-based view state restoration code.
2724
2725         * UserInterface/Models/TimelineRecording.js:
2726         (WebInspector.TimelineRecording.prototype.saveIdentityToCookie): Add a dummy implementation.
2727
2728         * UserInterface/Views/NavigationSidebarPanel.js:
2729         (WebInspector.NavigationSidebarPanel.prototype.treeElementMatchesCookie):
2730         This code erroneously matches any tree element whose represented object's
2731         saveIdentityToCookie function produces an empty cookie.
2732
2733         * UserInterface/Views/TimelineContentView.js:
2734         (WebInspector.TimelineContentView.prototype._showTimelineView): Add an assertion
2735         that will find mismatches between represented objects of the TimelineContentView
2736         and TimelineViews.
2737
2738         * UserInterface/Views/TimelineSidebarPanel.js:
2739         (WebInspector.TimelineSidebarPanel.prototype.restoreStateFromCookie): Don't call
2740         the superclass's implementation, since we do not want to perform a relaxed match
2741         against any of our tree elements. The only thing that can be restored across reopen
2742         is a selected timeline tree element, which is already handled by this override.
2743
2744 2014-08-07  Joseph Pecoraro  <pecoraro@apple.com>
2745
2746         Web Inspector: Fix accidental always true comparison
2747         https://bugs.webkit.org/show_bug.cgi?id=135741
2748
2749         Reviewed by Timothy Hatcher.
2750
2751         Remove accidental "!" that would always cause this comparison to succeed.
2752
2753         * UserInterface/Views/OverviewTimelineView.js:
2754         (WebInspector.OverviewTimelineView.prototype.updateLayout):
2755
2756 2014-08-07  Joseph Pecoraro  <pecoraro@apple.com>
2757
2758         Web Inspector: Timeline Filter Bars are not appearing at all
2759         https://bugs.webkit.org/show_bug.cgi?id=135740
2760
2761         Reviewed by Timothy Hatcher.
2762
2763         * UserInterface/Views/TimelineDataGrid.css:
2764         (.data-grid.timeline.has-non-default-filter > .navigation-bar-container):
2765         (.data-grid.timeline > .navigation-bar-container > .navigation-bar):
2766         (body.mac-platform.legacy .data-grid.timeline > .navigation-bar-container > .navigation-bar):
2767         Update the positioning and height for non-legacy because the console is now taller.
2768
2769         * UserInterface/Views/ScopeBar.js:
2770         (WebInspector.ScopeBar.prototype.hasNonDefaultItemSelected):
2771         Helper to know if there is a non-default filter.
2772
2773         * UserInterface/Views/TimelineDataGrid.js:
2774         (WebInspector.TimelineDataGrid.prototype.treeElementMatchesActiveScopeFilters):
2775         (WebInspector.TimelineDataGrid.prototype._scopeBarSelectedItemsDidChange):
2776         Update scope bar visibility. If non-default we want to always show it.
2777         
2778         (WebInspector.TimelineDataGrid.prototype._updateScopeBarForcedVisibility):
2779         If there is a non-default filter, force showing the bar.
2780
2781 2014-08-07  Joseph Pecoraro  <pecoraro@apple.com>
2782
2783         Web Inspector: breakpoints enabled state is not persisted across re-opening the inspector
2784         https://bugs.webkit.org/show_bug.cgi?id=135745
2785
2786         Reviewed by Timothy Hatcher.
2787
2788         When restoring breakpoints when the inspector is initializing, do not
2789         let setting these breakpoints automatically enable breakpoints. We should
2790         respect the setting in this case.
2791
2792         * UserInterface/Controllers/DebuggerManager.js:
2793         (WebInspector.DebuggerManager.restoreBreakpointsSoon):
2794         (WebInspector.DebuggerManager):
2795
2796 2014-08-07  Timothy Hatcher  <timothy@apple.com>
2797
2798         Web Inspector: Combine and minify Esprima
2799         https://bugs.webkit.org/show_bug.cgi?id=135728
2800
2801         Reviewed by Joseph Pecoraro.
2802
2803         * Scripts/combine-resources.pl:
2804         * Scripts/copy-user-interface-resources.pl:
2805         * UserInterface/External/Esprima/LICENSE: Added.
2806
2807 2014-08-07  Timothy Hatcher  <timothy@apple.com>
2808
2809         Fix regression where tree outline keyboard navigation is broken.
2810
2811         https://bugs.webkit.org/show_bug.cgi?id=135718
2812
2813         Reviewed by Joseph Pecoraro.
2814
2815         * UserInterface/Views/TreeOutline.js:
2816         (TreeElement.prototype.revealed): Fix the check for currentAncestor.hidden.
2817
2818 2014-08-07  Timothy Hatcher  <timothy@apple.com>
2819
2820         Web Inspector: Filter bar text and icon are positioned too low and tight
2821         https://bugs.webkit.org/show_bug.cgi?id=135723
2822
2823         Reviewed by Joseph Pecoraro.
2824
2825         * UserInterface/Views/FilterBar.css:
2826         (.filter-bar > input[type="search"]):
2827         (.filter-bar > input[type="search"]::-webkit-search-decoration):
2828         * UserInterface/Views/SearchBar.css:
2829         (.search-bar > input[type="search"]):
2830
2831 2014-08-07  Timothy Hatcher  <timothy@apple.com>
2832
2833         Web Inspector: Dashboard error and warning icons should be filled when enabled
2834         https://bugs.webkit.org/show_bug.cgi?id=135725
2835
2836         Reviewed by Joseph Pecoraro.
2837
2838         * UserInterface/Images/ErrorsEnabled.svg:
2839         * UserInterface/Images/IssuesEnabled.svg:
2840
2841 2014-08-07  Joseph Pecoraro  <pecoraro@apple.com>
2842
2843         Web Inspector: Dashboard contents shift when window changes active state
2844         https://bugs.webkit.org/show_bug.cgi?id=135724
2845
2846         Reviewed by Timothy Hatcher.
2847
2848         The container was getting a 1px border when inactive and none when active.
2849         Give it a transparent border when active so contents don't change size.
2850
2851         * UserInterface/Views/DashboardContainerView.css:
2852         (.toolbar .dashboard-container):
2853
2854 2014-08-07  Timothy Hatcher  <timothy@apple.com>
2855
2856         Fix reference to missing CloseTimeline.svg image.
2857
2858         Rubber-stamped by Joseph Pecoraro.
2859
2860         * UserInterface/Views/TimelineSidebarPanel.js:
2861         (WebInspector.TimelineSidebarPanel.createTimelineTreeElement): Use CloseLarge.svg instead.
2862
2863 2014-08-07  Brent Fulgham  <bfulgham@apple.com>
2864
2865         [Win] Unreviewed build fix.
2866
2867         Add a WebInspectorUI.proj file for use with MSBuild utility.
2868
2869         * WebInspectorUI.vcxproj/WebInspectorUI.proj: Added.
2870
2871 2014-08-07  Benjamin Poulain  <bpoulain@apple.com>
2872
2873         Get rid of INPUT_SPEECH
2874         https://bugs.webkit.org/show_bug.cgi?id=135672
2875
2876         Reviewed by Andreas Kling.
2877
2878         * UserInterface/Models/CSSKeywordCompletions.js:
2879
2880 2014-08-07  Joseph Pecoraro  <pecoraro@apple.com>
2881
2882         Web Inspector: Dragging selection window when mouse goes out of window bounds does not behave as expected
2883         https://bugs.webkit.org/show_bug.cgi?id=135372
2884
2885         Reviewed by Timothy Hatcher.
2886
2887         Constrain move selection window dragging to the ruler bounds
2888         based on the mouse down position on the drag window.
2889
2890         * UserInterface/Views/TimelineRuler.js:
2891         (WebInspector.TimelineRuler.prototype._handleMouseDown):
2892         (WebInspector.TimelineRuler.prototype._handleMouseMove):
2893         (WebInspector.TimelineRuler.prototype._handleMouseUp):
2894
2895 2014-08-07  Timothy Hatcher  <timothy@apple.com>
2896
2897         Web Inspector: Update glyphs to be more like Xcode 6
2898         https://bugs.webkit.org/show_bug.cgi?id=135705
2899
2900         Reviewed by Joseph Pecoraro.
2901
2902         * Localizations/en.lproj/localizedStrings.js: Updated.
2903
2904         * UserInterface/Base/ImageUtilities.js:
2905         (platformImagePath): Added.
2906         (generateEmbossedImages.generateImage):
2907         Bump the base image version. Helper function. Use isLegacyMacOS.
2908
2909         * UserInterface/Base/Main.js:
2910         (WebInspector.contentLoaded):
2911         (WebInspector._updateDockNavigationItems):
2912         (WebInspector._generateDisclosureTriangleImages):
2913         Use new images and add legacy path. Remove the shadow.
2914
2915         * UserInterface/Images: Updated images.
2916         * UserInterface/Images/Legacy: Added. Moved legacy images here.
2917
2918         * UserInterface/Views/CSSStyleDeclarationSection.css:
2919         (.style-declaration-section):
2920         (body.mac-platform.legacy .style-declaration-section + .style-declaration-section):
2921         (.style-declaration-section.last-in-group):
2922         (.style-declaration-section.last-in-group + .style-declaration-section):
2923         Use a consistent gray for borders.
2924
2925         * UserInterface/Views/CSSStyleDetailsSidebarPanel.css:
2926         (.sidebar > .panel.details.css-style > .content > .pseudo-classes):
2927         Use a consistent gray for borders.
2928
2929         * UserInterface/Views/ContentBrowser.js:
2930         (WebInspector.ContentBrowser):
2931         Use new images and add legacy path.
2932
2933         * UserInterface/Views/ControlToolbarItem.css:
2934         (.toolbar .item.control):
2935         (body.mac-platform.legacy .toolbar .item.control):
2936         (.toolbar .item.control:hover):
2937         (body.mac-platform.legacy .toolbar .item.control:hover):
2938         Adjust the opacity for controls.
2939
2940         * UserInterface/Views/DOMTreeContentView.js:
2941         (WebInspector.DOMTreeContentView):
2942         Use new images and add legacy path.
2943
2944         * UserInterface/Views/DataGrid.css:
2945         (.data-grid tr.selected):
2946         Use a consistent gray for borders.
2947
2948         * UserInterface/Views/DataGrid.js:
2949         (WebInspector.DataGrid.prototype.get _generateSortIndicatorImagesIfNeeded):
2950         Use new images and add legacy path. Remove the shadow.
2951
2952         * UserInterface/Views/DebuggerSidebarPanel.js:
2953         (WebInspector.DebuggerSidebarPanel):
2954         Use new images and add legacy path.
2955
2956         * UserInterface/Views/DefaultDashboardView.css:
2957         (.toolbar .dashboard.default > .item):
2958         (body.mac-platform.legacy .toolbar .dashboard.default > .item):
2959         (body.mac-platform.legacy .toolbar .dashboard.default > .resourcesCount > img):
2960         (body.mac-platform.legacy .toolbar .dashboard.default > .time > img):
2961         (body.mac-platform.legacy .toolbar .dashboard.default > .logs > img):
2962         (body.mac-platform.legacy .toolbar .dashboard.default > .resourcesSize > img):
2963         (body.mac-platform.legacy .toolbar .dashboard.default > .errors > img):
2964         (body.mac-platform.legacy .toolbar .dashboard.default > .errors.enabled > img):
2965         (body.mac-platform.legacy .toolbar .dashboard.default > .issues > img):
2966         (body.mac-platform.legacy .toolbar .dashboard.default > .issues.enabled > img):
2967         Use new images and add legacy path.
2968
2969         * UserInterface/Views/DetailsSection.css:
2970         (.details-section):
2971         (.details-section .details-section:first-child):
2972         (body.mac-platform.legacy .details-section > .header):
2973         (.details-section > .content > .group):
2974         (.details-section > .content > .group:nth-child(even) > .row.simple:first-child > *):
2975         (body.mac-platform.legacy .details-section > .content > .group:last-child > .row.simple:last-child > *):
2976         Use a consistent gray for borders.
2977
2978         * UserInterface/Views/FilterBar.css:
2979         (body.mac-platform.legacy .filter-bar > input[type="search"]::-webkit-search-decoration):
2980         Use new images and add legacy path.
2981
2982         * UserInterface/Views/FindBanner.css:
2983         (.find-banner):
2984         Use a consistent gray for borders.
2985
2986         * UserInterface/Views/FindBanner.js:
2987         (WebInspector.FindBanner.prototype._generateButtonsGlyphsIfNeeded):
2988         Add legacy path.
2989
2990         * UserInterface/Views/FrameTreeElement.js:
2991         (WebInspector.FrameTreeElement.prototype.updateStatusForMainFrame):
2992         Use new images and add legacy path.
2993
2994         * UserInterface/Views/LogContentView.js:
2995         (WebInspector.LogContentView):
2996         Use new images and add legacy path.
2997
2998         * UserInterface/Views/Main.css:
2999         (#split-content-browser):
3000         Use a consistent gray for borders.
3001
3002         * UserInterface/Views/NavigationSidebarPanel.css:
3003         (.sidebar > .panel.navigation > .overflow-shadow):
3004         (body.mac-platform.legacy .sidebar > .panel.navigation > .overflow-shadow):
3005         (.sidebar > .panel.navigation > .overflow-shadow.top):
3006         (body.mac-platform.legacy .sidebar > .panel.navigation > .overflow-shadow.top):
3007         (.sidebar > .panel.navigation > .empty-content-placeholder):
3008         (body.mac-platform.legacy .sidebar > .panel.navigation > .empty-content-placeholder):
3009         (.navigation-sidebar-panel-content-tree-outline:focus .item.selected .disclosure-button):
3010         (.navigation-sidebar-panel-content-tree-outline:focus .item.selected.expanded .disclosure-button):
3011         (.navigation-sidebar-panel-content-tree-outline .item.selected):
3012         (.navigation-sidebar-panel-content-tree-outline:focus .item.selected):
3013         Adjust the styles to make the selected item use white text and icons only when focused.
3014
3015         * UserInterface/Views/NavigationSidebarPanel.js:
3016         (WebInspector.NavigationSidebarPanel.prototype._updateContentOverflowShadowVisibility):
3017         (WebInspector.NavigationSidebarPanel.prototype._generateDisclosureTrianglesIfNeeded):
3018         Remove the shadow from the disclosure triangles. Make the overflow shadow not fade.
3019
3020         * UserInterface/Views/ProbeDetailsSidebarPanel.css:
3021         (.details-section.probe-set .options > .probe-clear-samples):
3022         (.details-section.probe-set .options > .probe-remove):
3023         (.details-section.probe-set .options > .probe-add):
3024         (body.mac-platform.legacy .details-section.probe-set .options > .probe-clear-samples):
3025         (body.mac-platform.legacy .details-section.probe-set .options > .probe-remove):
3026         (body.mac-platform.legacy .details-section.probe-set .options > .probe-add):
3027         Tweak size and position of icons and use legacy paths.
3028
3029         * UserInterface/Views/QuickConsole.css:
3030         (.quick-console):
3031         Adjust padding to match filter bar height.
3032
3033         * UserInterface/Views/ResourceSidebarPanel.css:
3034         (.sidebar > .panel.navigation.resource > .search-bar):
3035         Adjust height.
3036
3037         * UserInterface/Views/RulesStyleDetailsPanel.css:
3038         (.sidebar > .panel.details.css-style .rules .label + .style-declaration-section):
3039         (.sidebar > .panel.details.css-style .rules .new-rule + .style-declaration-section):
3040         (body.mac-platform.legacy .sidebar > .panel.details.css-style .rules .new-rule img):
3041         Use a consistent gray for borders. Don't bold the New Rule label.
3042
3043         * UserInterface/Views/ScriptContentView.js:
3044         (WebInspector.ScriptContentView):
3045         Use new images and add legacy path.
3046
3047         * UserInterface/Views/Sidebar.css:
3048         (.sidebar.left):
3049         (.sidebar.right):
3050         Use a consistent gray for borders.
3051
3052         * UserInterface/Views/TextContentView.js:
3053         (WebInspector.TextContentView):
3054         Use new images and add legacy path.
3055
3056         * UserInterface/Views/TextResourceContentView.js:
3057         (WebInspector.TextResourceContentView):
3058         Use new images and add legacy path.
3059
3060         * UserInterface/Views/TimelineContentView.js:
3061         (WebInspector.TimelineContentView):
3062         Use new images and add legacy path.
3063
3064         * UserInterface/Views/TimelineDataGrid.css:
3065         (.data-grid.timeline th):
3066         (.data-grid.timeline th.sortable:active):
3067         (.data-grid.timeline th.sort-descending):
3068         Fix a regression with the gradient background showing in legacy mode.
3069
3070         * UserInterface/Views/TimelineIcons.css:
3071         (body.mac-platform.legacy .network-icon .icon):
3072         (body.mac-platform.legacy .network-icon.large .icon):
3073         (body.mac-platform.legacy .colors-icon .icon):
3074         (body.mac-platform.legacy .colors-icon.large .icon):
3075         Added legacy versions of these icons.
3076
3077         * UserInterface/Views/TimelineSidebarPanel.css:
3078         (.sidebar > .panel.navigation.timeline > .status-bar > .record-glyph):
3079         (.sidebar > .panel.navigation.timeline > .status-bar > .record-glyph:hover):
3080         (.sidebar > .panel.navigation.timeline > .status-bar > .record-glyph:active):
3081         (.sidebar > .panel.navigation.timeline > .status-bar > .record-glyph.recording):
3082         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-glyph):
3083         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-glyph.recording):
3084         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-glyph:hover):
3085         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-glyph.recording:hover):
3086         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-glyph.forced):
3087         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-glyph.recording.forced):
3088         (.sidebar > .panel.navigation.timeline > .timelines-content .close-button):
3089         (.sidebar > .panel.navigation.timeline > .timelines-content li.item.selected + li.item):
3090         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .timelines-content :focus li.item.selected + li.item):
3091         Update the styles for the recording button and close button.
3092
3093         * UserInterface/Views/TimelineSidebarPanel.js:
3094         (WebInspector.TimelineSidebarPanel.createTimelineTreeElement):
3095         Use TreeElementStatusButton instead of a styled image.
3096
3097         * UserInterface/Views/TreeElementStatusButton.css:
3098         (.item > .status > .status-button > svg path.filled):
3099         (body.mac-platform.legacy .item > .status > .status-button > svg path.filled):
3100         (:focus .item.selected > .status > .status-button > svg path.filled):
3101         (.item > .status > .status-button > svg path.stroked):
3102         (body.mac-platform.legacy .item > .status > .status-button > svg path.stroked):
3103         (:focus .item.selected > .status > .status-button > svg path.stroked):
3104         (.item.selected > .status > .status-button:active):
3105         (.item > .status > .status-button.disabled):
3106         Updated selectors and styles to work with stroke or fill.
3107
3108 2014-08-07  Brian J. Burg  <burg@cs.washington.edu>
3109
3110         Web Inspector: DebuggerManager sends spurious setBreakpointsActive commands when setting a breakpoint
3111         https://bugs.webkit.org/show_bug.cgi?id=135674
3112
3113         Reviewed by David Kilzer.
3114
3115         * UserInterface/Controllers/DebuggerManager.js:
3116         (WebInspector.DebuggerManager.prototype.set breakpointsEnabled): Fix a typo.
3117
3118 2014-08-06  Brian J. Burg  <burg@cs.washington.edu>
3119
3120         Web Inspector: breakpoint resolved state should not depend on all breakpoints being enabled
3121         https://bugs.webkit.org/show_bug.cgi?id=135517
3122
3123         Reviewed by Joseph Pecoraro.
3124
3125         Previously, Breakpoint.resolved returned false if all breakpoints were disabled, even if
3126         the breakpoint had an associated SourceCode. This was a weird hack to make it easier to
3127         style breakpoint widgets. This made it hard for other code to deal with resolved
3128         breakpoints that were also disabled, or SourceCodeLocations that resolve and unresolve.
3129         This patch removes that consideration and fixes style update code to manually check if all
3130         breakpoints are being suppressed.
3131
3132         The code now enforces that a Breakpoint must have a SourceCode before it can be resolved.
3133         (As a performance optimization when loading the initial frame tree, we sometimes we give
3134         Breakpoints a SourceCode before the debugger officially says that the breakpoint has been
3135         resolved. Thus, it's possible to be unresolved with a SourceCode, but not vice-versa.)
3136
3137         This patch also adds a few guards where we assumed a SourceCodeLocation had a SourceCode.
3138
3139         * UserInterface/Controllers/DebuggerManager.js:
3140         (WebInspector.DebuggerManager.prototype.set breakpointsEnabled): Remove spurious
3141         ResolvedStateDidChange events.
3142
3143         (WebInspector.DebuggerManager.prototype.breakpointResolved): Set the breakpoint's SourceCode
3144         if it has not been set already by DebuggerManager.associateBreakpointsWithSourceCode.
3145
3146         * UserInterface/Models/Breakpoint.js:
3147         (WebInspector.Breakpoint.prototype.get resolved):
3148         (WebInspector.Breakpoint.prototype.set resolved.isSpecialBreakpoint):
3149         (WebInspector.Breakpoint.prototype.set resolved): Add an assertion.
3150         * UserInterface/Models/SourceCodeLocation.js: Add guards for !SourceCode.
3151         (WebInspector.SourceCodeLocation.prototype.populateLiveDisplayLocationTooltip):
3152         * UserInterface/Views/BreakpointTreeElement.js: Account for DebuggerManager.breakpointsEnabled.
3153         (WebInspector.BreakpointTreeElement):
3154         (WebInspector.BreakpointTreeElement.prototype._updateStatus):
3155         * UserInterface/Views/ProbeSetDetailsSection.js:
3156         (WebInspector.ProbeSetDetailsSection.prototype._updateLinkElement): Loosen the assertion.
3157         * UserInterface/Views/SourceCodeTextEditor.js: Account for DebuggerManager.breakpointsEnabled.
3158         (WebInspector.SourceCodeTextEditor):
3159         (WebInspector.SourceCodeTextEditor.prototype.close):
3160         (WebInspector.SourceCodeTextEditor.prototype._breakpointStatusDidChange):
3161         (WebInspector.SourceCodeTextEditor.prototype._breakpointsEnabledDidChange):
3162         (WebInspector.SourceCodeTextEditor.prototype._updateBreakpointStatus):
3163         * UserInterface/Views/TextEditor.js: Account for DebuggerManager.breakpointsEnabled.
3164
3165 2014-08-06  Brian J. Burg  <burg@cs.washington.edu>
3166
3167         Web Inspector: ReplayManager should unpause and suppress breakpoints before capturing/replaying
3168         https://bugs.webkit.org/show_bug.cgi?id=135608
3169
3170         Reviewed by Timothy Hatcher.
3171
3172         It is jarring when the debugger pauses during capturing or replaying. For now, we should suppress
3173         all breakpoints during capturing or replaying, and restore breakpoint enabled state when
3174         capturing finishes, when replaying finishes, or during temporary replay pauses.
3175
3176         In the future, the debugger will be selectively enabled during playback to seek to specific
3177         breakpoint hits. This is tracked in https://bugs.webkit.org/show_bug.cgi?id=135663.
3178
3179         * UserInterface/Controllers/ReplayManager.js:
3180         (WebInspector.ReplayManager.prototype.startCapturing.result):
3181         (WebInspector.ReplayManager.prototype.replayToPosition.result):
3182         (WebInspector.ReplayManager.prototype.replayToCompletion.result):
3183         (WebInspector.ReplayManager.prototype.captureStopped):
3184         (WebInspector.ReplayManager.prototype.playbackPaused):
3185         (WebInspector.ReplayManager.prototype.playbackFinished):
3186         (WebInspector.ReplayManager.prototype._changeSegmentState):
3187         (WebInspector.ReplayManager.prototype._suppressBreakpointsAndResumeIfNeeded):
3188
3189 2014-08-06  Brent Fulgham  <bfulgham@apple.com>
3190
3191         [Win] Build fix.
3192
3193         * WebInspectorUI.vcxproj/WebInspectorUI.vcxproj: DebugSuffix target was missing
3194         proper path settings for final output.
3195
3196 2014-08-06  Wenson Hsieh  <wenson_hsieh@apple.com>
3197
3198         Implement parsing for CSS scroll snap points
3199         https://bugs.webkit.org/show_bug.cgi?id=134301
3200
3201         Reviewed by Dean Jackson.
3202
3203         * UserInterface/Models/CSSKeywordCompletions.js: Added snap point property keywords, such as mandatory, proximity, elements, and repeat.
3204
3205 2014-08-06  Brian J. Burg  <burg@cs.washington.edu>
3206
3207         REGRESSION(r172094): tests fail because Inspector test harness does not include UIString
3208         https://bugs.webkit.org/show_bug.cgi?id=135658
3209
3210         Reviewed by Joseph Pecoraro.
3211
3212         * UserInterface/Base/Test.js:
3213         (WebInspector.contentLoaded): Fix brace placement.
3214         (WebInspector.UIString): Added. This is the identity function during testing.
3215
3216 2014-08-06  Brian J. Burg  <burg@cs.washington.edu>
3217
3218         Web Inspector: convert ReplayManager to a promise-based API
3219         https://bugs.webkit.org/show_bug.cgi?id=135249
3220
3221         Reviewed by Timothy Hatcher.
3222
3223         Convert replay commands to an asynchronous, promise-based API. This addresses
3224         two problems with a synchronous replay API: clients can only use the synchronous
3225         API if session and segment state are exactly correct, and trying to change state
3226         to match this requirement requires chaining multiple commands and events.
3227
3228         The asynchronous API allows clients to issue replay commands with impunity,
3229         as long as they can be unambiguously handled. For example, issuing
3230         pausePlayback() while capturing is not allowed, but issuing startCapturing()
3231         while replaying is allowed. The API also hides implementation details that
3232         are not important, such as steps to unpause or temporarily disable the debugger.
3233
3234         This patch also cleans up uses of promises, such as adding error re-throwing.
3235         It adds return type annotations to public ReplayManager asynchronous methods.
3236
3237         * UserInterface/Controllers/ReplayManager.js:
3238         (WebInspector.ReplayManager.catch):
3239         (WebInspector.ReplayManager):
3240         (WebInspector.ReplayManager.prototype.createSession):
3241         (WebInspector.ReplayManager.prototype.switchSession):
3242         (WebInspector.ReplayManager.prototype.startCapturing):
3243         (WebInspector.ReplayManager.prototype.stopCapturing):
3244         (WebInspector.ReplayManager.prototype.replayToPosition):
3245         (WebInspector.ReplayManager.prototype.replayToCompletion):
3246         (WebInspector.ReplayManager.prototype.sessionCreated.catch): re-throw.
3247         (WebInspector.ReplayManager.prototype.segmentCompleted.catch): re-throw.
3248         (WebInspector.ReplayManager.prototype.segmentCompleted.catch): re-throw.
3249         (WebInspector.ReplayManager.prototype.segmentUnloaded.catch): re-throw.
3250         (WebInspector.ReplayManager.prototype.sessionCreated.catech): re-throw.
3251
3252 2014-08-06  Brian J. Burg  <burg@cs.washington.edu>
3253
3254         Web Inspector: protocol command invocations should return a promise if no callback is supplied
3255         https://bugs.webkit.org/show_bug.cgi?id=130702
3256
3257         Reviewed by Timothy Hatcher.
3258
3259         This allows the trailing Agent.command.promise(args) to be dropped in favor of just
3260         Agent.command(args). It should make it a bit easier to convert code to use promises.
3261
3262         Test: LayoutTests/inspector/protocol-promise-result.html
3263
3264         * UserInterface/Controllers/ReplayManager.js: Drop use of .promise().
3265         * UserInterface/Controllers/TimelineManager.js: Drop use of .promise().
3266         (WebInspector.TimelineManager.prototype.startCapturing):
3267         * UserInterface/Protocol/InspectorBackend.js:
3268         (.callable): Redirect to the promise entry point if the last argument isn't a function.
3269         (InspectorBackend.Command.create):
3270
3271 2014-08-05  James Craig  <jcraig@apple.com>
3272
3273         Web Inspector: AXI: Add label string once AccessibilityObject::computedLabel() is available
3274         https://bugs.webkit.org/show_bug.cgi?id=129940
3275
3276         Reviewed by Chris Fleizach.
3277
3278         * UserInterface/Views/DOMNodeDetailsSidebarPanel.js: UI update for label field in Node Inspector.
3279         (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshAccessibility):
3280
3281 2014-08-05  Brian J. Burg  <burg@cs.washington.edu>
3282
3283         Web Inspector: support storing multiple timeline recordings in the manager
3284         https://bugs.webkit.org/show_bug.cgi?id=132875
3285
3286         Reviewed by Timothy Hatcher.
3287
3288         This patch adds support for capturing multiple timeline recordings and switching
3289         between them in the user interface using hierarchical path components.
3290
3291         * Localizations/en.lproj/localizedStrings.js:
3292         * UserInterface/Base/Main.js:
3293         (WebInspector.contentLoaded): Remove hard-coded priming of the timeline sidebar panel.
3294         Instead, load the first recording in the timeline manager after the initial load.
3295
3296         (WebInspector._revealAndSelectRepresentedObjectInNavigationSidebar): Don't suppress
3297         onselect events when selecting the tree element for a newly shown content view. This
3298         allows the sidebar to sync the current content view and timeline tree element selection
3299         with what is displayed in the content browser.
3300
3301         * UserInterface/Controllers/TimelineManager.js: Add two new events, RecordingCreated and
3302         RecordingLoaded. A recording is considered active when any new records recieved will be
3303         appended to that recording. The user interface is not necessarily viewing the active
3304         recording.
3305
3306         (WebInspector.TimelineManager.delayedWork):
3307         (WebInspector.TimelineManager): Keep a list of recordings, and load the first recording
3308         asynchronously so that everyone can add an event listener for it.
3309
3310         (WebInspector.TimelineManager.prototype.get activeRecording):
3311         (WebInspector.TimelineManager.prototype.get recordings):
3312         (WebInspector.TimelineManager.prototype.startCapturing):
3313         (WebInspector.TimelineManager.prototype.stopCapturing): Use promises to make the iOS 7
3314         fallback path better match the async semantics of the non-fallback path.
3315
3316         (WebInspector.TimelineManager.prototype.unloadRecording):
3317         (WebInspector.TimelineManager.prototype._loadNewRecording): Stop capturing and unload
3318         any existing recording before creating and loading a new recording.
3319
3320         (WebInspector.TimelineManager.prototype._startAutoCapturing): Create a new recording
3321         rather than resetting the current recording.
3322
3323         * UserInterface/Models/NetworkTimeline.js:
3324         (WebInspector.NetworkTimeline):