56dac519842904eb1c3fa4e2267d2cf692928e09
[WebKit-https.git] / Source / WebInspectorUI / ChangeLog
1 2015-01-22  Nikita Vasilyev  <nvasilyev@apple.com>
2
3         Web Inspector: Expected gutter highlight when selecting console input line, just like output line
4         https://bugs.webkit.org/show_bug.cgi?id=140696
5
6         Reviewed by Timothy Hatcher.
7
8         * UserInterface/Views/LogContentView.css:
9
10 2015-01-21  Saam Barati  <saambarati1@gmail.com>
11
12         Web Inspector: Change Annotator's isActive getter into an isActive() function.
13         https://bugs.webkit.org/show_bug.cgi?id=140729
14
15         Reviewed by Timothy Hatcher.
16
17         This patch also makes the child classes of Annotator use
18         the function instead of accessing the property directly.
19
20         * UserInterface/Controllers/Annotator.js:
21         (WebInspector.Annotator.prototype.isActive):
22         (WebInspector.Annotator.prototype.get isActive): Deleted.
23         * UserInterface/Controllers/BasicBlockAnnotator.js:
24         (WebInspector.BasicBlockAnnotator.prototype.insertAnnotations):
25         * UserInterface/Controllers/TypeTokenAnnotator.js:
26         (WebInspector.TypeTokenAnnotator.prototype.toggleTypeAnnotations):
27         * UserInterface/Views/SourceCodeTextEditor.js:
28         (WebInspector.SourceCodeTextEditor.prototype.toggleTypeAnnotations):
29         (WebInspector.SourceCodeTextEditor.prototype.prettyPrint):
30         (WebInspector.SourceCodeTextEditor.prototype._debuggerDidPause):
31         (WebInspector.SourceCodeTextEditor.prototype._debuggerDidResume):
32         (WebInspector.SourceCodeTextEditor.prototype._updateTokenTrackingControllerState):
33
34 2015-01-21  Saam Barati  <saambarati1@gmail.com>
35
36         Web Inspector: Don't allow the BasicBlockAnnotator to highlight a section if it's only a closing brace
37         https://bugs.webkit.org/show_bug.cgi?id=140727
38
39         Reviewed by Timothy Hatcher.
40
41         * UserInterface/Controllers/BasicBlockAnnotator.js:
42         (WebInspector.BasicBlockAnnotator.prototype.set _highlightTextForBasicBlock):
43         (WebInspector.BasicBlockAnnotator.prototype._isTextRangeOnlyClosingBrace):
44         BasicBlockAnnotator tries to no longer highlight a basic block if it is only
45         whitespace and a closing brace. These ranges are often after statements
46         that make these basic blocks unreachable, such as a return/break/continue
47         statement occurring inside a if/else/while/for block. This check won't
48         match every highlighted empty closing brace, but catches most of them 
49         because it only does intra block analysis instead of inter block analysis.
50
51 2015-01-20  Joseph Pecoraro  <pecoraro@apple.com>
52
53         Web Inspector: Use spread operator in a few places
54         https://bugs.webkit.org/show_bug.cgi?id=140699
55
56         Reviewed by Geoffrey Garen.
57
58         * UserInterface/Controllers/ProbeManager.js:
59         (WebInspector.ProbeManager.prototype.get probeSets):
60         Simplify by using the spread operator.
61
62         * UserInterface/Models/TimelineRecording.js:
63         This actually fixes an issue. The one place this was used was expecting
64         an array and called ".length" on the result. However, the iterator being
65         returned does not have a ".length" property so it was always undefined.
66
67 2015-01-20  Joseph Pecoraro  <pecoraro@apple.com>
68
69         Web Inspector: Expanding event objects in console shows undefined for most values, it should have real values
70         https://bugs.webkit.org/show_bug.cgi?id=137306
71
72         Reviewed by Timothy Hatcher.
73
74         When first expanding an object, show all the object's own properties and any
75         getter properties that may be on its prototype chain. Now, we only fetch
76         own properties, for __proto__ properties.
77
78         * UserInterface/Protocol/RemoteObject.js:
79         (WebInspector.RemoteObject.prototype.getOwnProperties):
80         (WebInspector.RemoteObject.prototype.getOwnAndGetterProperties):
81         (WebInspector.RemoteObject.prototype.getAllProperties):
82         (WebInspector.RemoteObject.prototype.get hasChildren): Deleted.
83         * UserInterface/Views/ObjectPropertiesSection.js:
84         (WebInspector.ObjectPropertiesSection):
85         (WebInspector.ObjectPropertiesSection.prototype.update):
86         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
87
88 2015-01-20  Joseph Pecoraro  <pecoraro@apple.com>
89
90         Web Inspector: Should show dynamic specificity values
91         https://bugs.webkit.org/show_bug.cgi?id=140647
92
93         Reviewed by Benjamin Poulain.
94
95         For dynamic selectors, provide text in the tooltip describing that the
96         specificity is dynamic and may change, and pointing out the element
97         the current value was calculated against.
98
99         * Localizations/en.lproj/localizedStrings.js:
100         * UserInterface/Models/CSSSelector.js:
101         (WebInspector.CSSSelector):
102         (WebInspector.CSSSelector.prototype.get specificity):
103         (WebInspector.CSSSelector.prototype.get dynamic):
104         * UserInterface/Models/DOMNodeStyles.js:
105         (WebInspector.DOMNodeStyles.prototype._parseSelectorListPayload.return):
106         (WebInspector.DOMNodeStyles.prototype._parseSelectorListPayload):
107         * UserInterface/Views/CSSStyleDeclarationSection.js:
108         (WebInspector.CSSStyleDeclarationSection.prototype.refresh.appendSelector):
109
110 2015-01-19  Saam Barati  <saambarati1@gmail.com>
111
112         Web Inspector: Provide a front end for JSC's Control Flow Profiler
113         https://bugs.webkit.org/show_bug.cgi?id=138454
114
115         Reviewed by Timothy Hatcher.
116
117         This patch creates a user interface for JSC's control flow profiler.
118         The Web Inspector gets basic block ranges from JSC, and displays
119         basic blocks that have not executed as having a gray background.
120         
121         BasicBlockAnnotator is the class responsible for this UI logic.
122         It also does a few nifty things when presenting a UI for this gray
123         background color: if an entire line of code is within the basic 
124         block's boundary, the annotator will not just highlight the background 
125         behind the text, but the background of the entire line itself. This
126         provides a nicer experience when glancing through large JavaScript files.
127
128         This patch also adds some necessary wrapper methods inside TextEditor
129         for accessing CodeMirror's text highlighting functionality. It also
130         creates a way for TextEditor and SourceCodeTextEditor to listen
131         for focus events inside CodeMirror.
132
133         * UserInterface/Controllers/AnnotatorManager.js: Removed.
134         * UserInterface/Controllers/BasicBlockAnnotator.js: Added.
135         (WebInspector.BasicBlockAnnotator):
136         (WebInspector.BasicBlockAnnotator.prototype.clearAnnotations):
137         (WebInspector.BasicBlockAnnotator.prototype.insertAnnotations):
138         (WebInspector.BasicBlockAnnotator.prototype._annotateBasicBlockExecutionRanges.):
139         (WebInspector.BasicBlockAnnotator.prototype._annotateBasicBlockExecutionRanges):
140         (WebInspector.BasicBlockAnnotator.prototype.set _highlightTextForBasicBlock):
141         (WebInspector.BasicBlockAnnotator.prototype._isTextRangeOnlyWhitespace):
142         (WebInspector.BasicBlockAnnotator.prototype._canGrayOutEntireLine):
143         (WebInspector.BasicBlockAnnotator.prototype._grayOutLine):
144         (WebInspector.BasicBlockAnnotator.prototype._clearRangeForBasicBlockMarker.get marker):
145         (WebInspector.BasicBlockAnnotator.prototype._clearRangeForBasicBlockMarker):
146         * UserInterface/Main.html:
147         * UserInterface/Views/SourceCodeTextEditor.css:
148         (.basic-block-has-not-executed):
149         (.basic-block-has-not-executed-prepend::before):
150         * UserInterface/Views/SourceCodeTextEditor.js:
151         (WebInspector.SourceCodeTextEditor):
152         (WebInspector.SourceCodeTextEditor.prototype.shown):
153         (WebInspector.SourceCodeTextEditor.prototype.hidden):
154         (WebInspector.SourceCodeTextEditor.prototype.canShowTypeAnnotations):
155         (WebInspector.SourceCodeTextEditor.prototype.contentDidChange):
156         (WebInspector.SourceCodeTextEditor.prototype.gainedFocus):
157         (WebInspector.SourceCodeTextEditor.prototype.lostFocus):
158         (WebInspector.SourceCodeTextEditor.prototype.toggleTypeAnnotations):
159         (WebInspector.SourceCodeTextEditor.prototype.prettyPrint):
160         (WebInspector.SourceCodeTextEditor.prototype._populateWithContent):
161         (WebInspector.SourceCodeTextEditor.prototype._debuggerDidPause):
162         (WebInspector.SourceCodeTextEditor.prototype._debuggerDidResume):
163         (WebInspector.SourceCodeTextEditor.prototype._updateTokenTrackingControllerState):
164         (WebInspector.SourceCodeTextEditor.prototype._makeTypeTokenAnnotator):
165         (WebInspector.SourceCodeTextEditor.prototype._makeBasicBlockAnnotator):
166         (WebInspector.SourceCodeTextEditor.prototype._makeTypeTokenScrollEventHandler.scrollHandler):
167         (WebInspector.SourceCodeTextEditor.prototype._makeTypeTokenScrollEventHandler):
168         * UserInterface/Views/TextEditor.js:
169         (WebInspector.TextEditor):
170         (WebInspector.TextEditor.prototype.getTextInRange):
171         (WebInspector.TextEditor.prototype.addStyleToTextRange):
172         (WebInspector.TextEditor.prototype.gainedFocus):
173         (WebInspector.TextEditor.prototype.lostFocus):
174
175 2015-01-16  Nikita Vasilyev  <nvasilyev@apple.com>
176
177         Web Inspector: Make message selection in the console more readable
178         https://bugs.webkit.org/show_bug.cgi?id=140385
179
180         Reviewed by Timothy Hatcher.
181
182         * UserInterface/Views/LogContentView.css:
183         (.console-item.selected):
184         (.console-messages:focus .console-item.selected):
185         (.console-item.selected .console-message::after):
186         (.console-messages:focus .console-item.selected .console-message::after):
187         (.console-messages:focus .console-item.selected .go-to-link):
188         * UserInterface/Views/Main.css:
189         (.go-to-link):
190         !important statements seem to be unnecessary, remove them.
191
192 2015-01-16  Joseph Pecoraro  <pecoraro@apple.com>
193
194         Web Inspector: Remove unused WebInspector.LocalJSONObject
195         https://bugs.webkit.org/show_bug.cgi?id=140570
196
197         Reviewed by Timothy Hatcher.
198
199         * UserInterface/Protocol/RemoteObject.js:
200         (WebInspector.RemoteObject.fromLocalObject): Deleted.
201         (WebInspector.LocalJSONObject): Deleted.
202         (WebInspector.LocalJSONObject.prototype.get description.switch.case.string_appeared_here): Deleted.
203         (WebInspector.LocalJSONObject.prototype.get description.switch.default): Deleted.
204         (WebInspector.LocalJSONObject.prototype.get description): Deleted.
205         (WebInspector.LocalJSONObject.prototype._concatenate): Deleted.
206         (WebInspector.LocalJSONObject.prototype.get type): Deleted.
207         (WebInspector.LocalJSONObject.prototype.get subtype): Deleted.
208         (WebInspector.LocalJSONObject.prototype.get hasChildren): Deleted.
209         (WebInspector.LocalJSONObject.prototype.getOwnProperties): Deleted.
210         (WebInspector.LocalJSONObject.prototype.getAllProperties): Deleted.
211         (WebInspector.LocalJSONObject.prototype._children.buildProperty): Deleted.
212         (WebInspector.LocalJSONObject.prototype._children): Deleted.
213         (WebInspector.LocalJSONObject.prototype.isError): Deleted.
214
215 2015-01-15  Joseph Pecoraro  <pecoraro@apple.com>
216
217         Web Inspector: Uncaught exceptions, attempting to dispatch unimplemented Network WebSocket methods
218         https://bugs.webkit.org/show_bug.cgi?id=140532
219
220         Reviewed by Timothy Hatcher.
221
222         * UserInterface/Protocol/NetworkObserver.js:
223         (WebInspector.NetworkObserver.prototype.webSocketFrameReceived):
224         (WebInspector.NetworkObserver.prototype.webSocketFrameError):
225         (WebInspector.NetworkObserver.prototype.webSocketFrameSent):
226         Add stubs to prevent an exception when trying to dispatch the event.
227
228 2015-01-15  Joseph Pecoraro  <pecoraro@apple.com>
229
230         Web Inspector: Reopening the inspector can selects a sub-frame instead of the Main Frame's DOM
231         https://bugs.webkit.org/show_bug.cgi?id=140513
232
233         Reviewed by Timothy Hatcher.
234
235         * UserInterface/Models/Frame.js:
236         (WebInspector.Frame.prototype.saveIdentityToCookie):
237         Specifically identify the main frame, so that any sub-frames with the same
238         URL, don't get choosen over the main frame when restoring state from cookie.
239
240 2015-01-15  Joseph Pecoraro  <pecoraro@apple.com>
241
242         Web Inspector: selecting Paint timeline records from sidebar does not trigger preview of paint quad
243         https://bugs.webkit.org/show_bug.cgi?id=139151
244
245         Reviewed by Brian Burg.
246
247         * UserInterface/Views/LayoutTimelineDataGrid.js:
248         (WebInspector.LayoutTimelineDataGrid):
249         (WebInspector.LayoutTimelineDataGrid.prototype.callFramePopoverAnchorElement):
250         (WebInspector.LayoutTimelineDataGrid.prototype.reset): Deleted.
251         (WebInspector.LayoutTimelineDataGrid.prototype.hidden): Deleted.
252         (WebInspector.LayoutTimelineDataGrid.prototype._layoutDataGridSelectedNodeChanged): Deleted.
253         (WebInspector.LayoutTimelineDataGrid.prototype._hideHighlightIfNeeded): Deleted.
254         Move the node highlight from the datagrid to the timeline view because
255         we want this to happen on both the Navigation sidebar and the datagrid.
256
257         * UserInterface/Views/LayoutTimelineView.js:
258         (WebInspector.LayoutTimelineView.prototype.shown):
259         (WebInspector.LayoutTimelineView.prototype.hidden):
260         (WebInspector.LayoutTimelineView.prototype.filterDidChange):
261         (WebInspector.LayoutTimelineView.prototype.reset):
262         (WebInspector.LayoutTimelineView.prototype._treeElementDeselected):
263         (WebInspector.LayoutTimelineView.prototype._treeElementSelected):
264         Update the highlight for major view updates.
265
266         (WebInspector.LayoutTimelineView.prototype._updateHighlight):
267         (WebInspector.LayoutTimelineView.prototype._showHighlightForRecord):
268         (WebInspector.LayoutTimelineView.prototype._hideHighlightIfNeeded):
269         (WebInspector.LayoutTimelineView.prototype._hoveredOrSelectedRecord):
270         Show a highlight for what we are hovering, or what is selected.
271         Note the selected node may not be visible due to filtering.
272
273         (WebInspector.LayoutTimelineView.prototype._mouseOverDataGrid):
274         (WebInspector.LayoutTimelineView.prototype._mouseLeaveDataGrid):
275         (WebInspector.LayoutTimelineView.prototype._mouseOverTreeOutline):
276         (WebInspector.LayoutTimelineView.prototype._mouseLeaveTreeOutline):
277         Update hovered information mousing over the datagrid and tree outline.
278
279         * UserInterface/Views/TimelineContentView.js:
280         (WebInspector.TimelineContentView.prototype.filterDidChange):
281         * UserInterface/Views/TimelineSidebarPanel.js:
282         (WebInspector.TimelineSidebarPanel.prototype.updateFilter):
283         * UserInterface/Views/TimelineView.js:
284         (WebInspector.TimelineView.prototype.filterDidChange):
285         Include a "filterDidChange" TimelineView method that gets called after
286         updateFilter (things like the filter bar or timeline range changes).
287
288         * UserInterface/Views/TreeOutline.js:
289         (TreeOutline.prototype.treeElementFromNode):
290         (TreeOutline.prototype.treeElementFromPoint):
291         Provide a helper to get a tree element from an event target.
292
293 2015-01-13  Joseph Pecoraro  <pecoraro@apple.com>
294
295         Web Inspector: TextEditor doesn't update when resizing console, white space instead of content
296         https://bugs.webkit.org/show_bug.cgi?id=140240
297
298         Reviewed by Timothy Hatcher.
299
300         * UserInterface/Base/Main.js:
301         (WebInspector._consoleResizerMouseDown.dockedResizerDrag):
302         Dispatch the event that signals the console has changed size.
303
304 2015-01-13  Joseph Pecoraro  <pecoraro@apple.com>
305
306         Web Inspector: I do not expect to see the same rule multiple times in styles sidebar
307         https://bugs.webkit.org/show_bug.cgi?id=138185
308
309         Reviewed by Timothy Hatcher.
310
311         In the styles sidebar, don't show a duplicate, lesser-specificity rule even
312         if it matches the selected element multiple times with different selectors
313         in the list.
314
315         * UserInterface/Models/CSSRule.js:
316         (WebInspector.CSSRule.prototype.isEqualTo):
317         CSSRule identifiers are objects.
318
319         * UserInterface/Views/RulesStyleDetailsPanel.js:
320         (WebInspector.RulesStyleDetailsPanel.prototype.refresh):
321         Remove duplicates from the ordered list of style declarations.
322
323 2015-01-12  Jonathan Wells  <jonowells@apple.com>
324
325         Web Inspector: Timeline: when Network Requests view is selected, in progress requests are absent.
326         https://bugs.webkit.org/show_bug.cgi?id=140090
327
328         Reviewed by Timothy Hatcher.
329
330         TimelineContentView#_updateTimes() changed to call WebInspector.timelineSidebarPanel.updateFilter() in addition
331         to updating the layout of the current timeline view. TimelineSidebarPanel.updateFilter() now responsible for
332         updating filtered resources in a TimelineView.
333
334         * UserInterface/Views/NavigationSidebarPanel.js:
335         (WebInspector.NavigationSidebarPanel.prototype._updateFilter):
336         Now handles updating the UI associated with filtering of navigation sidebar tree elements.
337
338         * UserInterface/Views/OverviewTimelineView.js:
339         (WebInspector.OverviewTimelineView.prototype.updateLayout):
340         No longer handles updating other UI along with the navigation sidebar tree elements. That is now handled by
341         WebInspector.TimelineView.prototype.filterUpdated.
342         (WebInspector.OverviewTimelineView.prototype._compareTreeElementsByDetails): Drive-by fix. Missing vars.
343
344         * UserInterface/Views/TimelineContentView.js:
345         (WebInspector.TimelineContentView.prototype._updateTimes): Add call to updateFilter().
346
347         * UserInterface/Views/TimelineView.js:
348         (WebInspector.TimelineView.prototype.filterUpdated):
349         Function added to dispatch a SelectionPathComponentsDidChange event.
350
351 2015-01-09  Enrica Casucci  <enrica@apple.com>
352
353         [iOS] Support additional text styles.
354         https://bugs.webkit.org/show_bug.cgi?id=140310
355         rdar://problem/18568864
356
357         Reviewed by Joseph Pecoraro.
358
359         Add support for three new text styles.
360
361         * UserInterface/Models/CSSKeywordCompletions.js:
362
363 2015-01-09  Timothy Hatcher  <timothy@apple.com>
364
365         Web Inspector: REGRESSION: Navigation sidebar can show blank next to the Console view
366         https://bugs.webkit.org/show_bug.cgi?id=140291
367
368         Reviewed by Joseph Pecoraro.
369
370         * UserInterface/Base/Main.js:
371         (WebInspector.contentLoaded): Don't restore collapsed false if selectedSidebarPanel is null.
372         (WebInspector._sidebarCollapsedStateDidChange): Support a _ignoreNavigationSidebarPanelCollapsedEvent flag
373         to avoid setting _navigationSidebarCollapsedSetting.
374         (WebInspector._navigationSidebarPanelSelected): Force collapsed if selectedSidebarPanel is null.
375         (WebInspector._contentBrowserCurrentContentViewDidChange): Set _ignoreNavigationSidebarPanelCollapsedEvent
376         when forcing the collapsed state to avoid setting _navigationSidebarCollapsedSetting and calling
377         _updateContentViewForCurrentNavigationSidebar.
378
379 2015-01-08  Nikita Vasilyev  <nvasilyev@apple.com>
380
381         Web Inspector: REGRESSION Showing debugger sidebar shouldn't change selected JS file
382         https://bugs.webkit.org/show_bug.cgi?id=139526
383
384         Reviewed by Timothy Hatcher.
385
386         * UserInterface/Base/Main.js:
387         (WebInspector._revealAndSelectRepresentedObjectInNavigationSidebar):
388         When switching to Debugger, show last selected JS or HTML resource.
389
390         (WebInspector.showSplitConsole):
391         (WebInspector.showFullHeightConsole):
392         (WebInspector.toggleConsoleView):
393         (WebInspector._sidebarCollapsedStateDidChange):
394         (WebInspector._updateContentViewForCurrentNavigationSidebar):
395         (WebInspector._navigationSidebarPanelSelected):
396         (WebInspector._contentBrowserCurrentContentViewDidChange):
397         (WebInspector._updateNavigationSidebarForCurrentContentView): Deleted.
398         * UserInterface/Views/ApplicationCacheFrameContentView.js:
399         (WebInspector.ApplicationCacheFrameContentView.prototype.get allowedNavigationSidebarPanels):
400         * UserInterface/Views/CookieStorageContentView.js:
401         (WebInspector.CookieStorageContentView.prototype.get allowedNavigationSidebarPanels):
402         * UserInterface/Views/DOMStorageContentView.js:
403         (WebInspector.DOMStorageContentView.prototype.get allowedNavigationSidebarPanels):
404         * UserInterface/Views/DOMTreeContentView.js:
405         (WebInspector.DOMTreeContentView.prototype.get allowedNavigationSidebarPanels):
406         * UserInterface/Views/DatabaseContentView.js:
407         (WebInspector.DatabaseContentView.prototype.get allowedNavigationSidebarPanels):
408         * UserInterface/Views/DatabaseTableContentView.js:
409         (WebInspector.DatabaseTableContentView.prototype.get allowedNavigationSidebarPanels):
410         * UserInterface/Views/FontResourceContentView.js:
411         (WebInspector.FontResourceContentView.prototype.get allowedNavigationSidebarPanels):
412         * UserInterface/Views/FrameDOMTreeContentView.js:
413         (WebInspector.FrameDOMTreeContentView.prototype.get allowedNavigationSidebarPanels):
414         * UserInterface/Views/LogContentView.js:
415         (WebInspector.LogContentView.prototype.get allowedNavigationSidebarPanels):
416         * UserInterface/Views/ResourceClusterContentView.js:
417         (WebInspector.ResourceClusterContentView.prototype.get allowedNavigationSidebarPanels):
418         * UserInterface/Views/ResourceSidebarPanel.js:
419         (WebInspector.ResourceSidebarPanel.prototype.showDefaultContentView):
420         (WebInspector.ResourceSidebarPanel.prototype.showMainFrame):
421         * UserInterface/Views/Sidebar.js:
422         (WebInspector.Sidebar.prototype.removeSidebarPanel):
423         * UserInterface/Views/TimelineContentView.js:
424         (WebInspector.TimelineContentView.prototype.get allowedNavigationSidebarPanels):
425
426 2015-01-08  Joseph Pecoraro  <pecoraro@apple.com>
427
428         Web Inspector: Phantom breakpoint appears on empty line after reload of minified file with a breakpoint
429         https://bugs.webkit.org/show_bug.cgi?id=140276
430
431         Reviewed by Timothy Hatcher.
432
433         Styles being set on lines (e.g. breakpoint styles) before content loaded can
434         carry forward with the empty line. It is safe for us to just remove all
435         the styles from the intial empty line before we load the initial content.
436
437         * UserInterface/Views/TextEditor.js:
438         (WebInspector.TextEditor.prototype.set string.update):
439         (WebInspector.TextEditor.prototype.set string):
440
441 2015-01-08  Joseph Pecoraro  <pecoraro@apple.com>
442
443         Web Inspector: Pause Reason Improvements (Breakpoint, Debugger Statement, Pause on Next Statement)
444         https://bugs.webkit.org/show_bug.cgi?id=138991
445
446         Reviewed by Timothy Hatcher.
447
448         * Localizations/en.lproj/localizedStrings.js:
449         New UI strings for Pause Reasons.
450
451         * UserInterface/Controllers/DebuggerManager.js:
452         (WebInspector.DebuggerManager.prototype.breakpointForIdentifier):
453         Provide a way to get the breakpoint with an identifier.
454
455         * UserInterface/Images/PausedBreakpoint.svg: Added.
456         * UserInterface/Images/gtk/PausedBreakpoint.svg: Added.
457         Copy PseudoElement.svg icon and give it a new name.
458
459         * UserInterface/Views/BreakpointTreeElement.css:
460         (.breakpoint-paused-icon .icon):
461         New icon for a breakpoint causing a pause.
462
463         * UserInterface/Views/BreakpointTreeElement.js:
464         (WebInspector.BreakpointTreeElement.prototype.removeStatusImage):
465         (WebInspector.BreakpointTreeElement.prototype._updateStatus):
466         Give API to remove the breakpoint status icon from a BreakpointTreeElement.
467
468         * UserInterface/Views/DebuggerSidebarPanel.js:
469         (WebInspector.DebuggerSidebarPanel):
470         (WebInspector.DebuggerSidebarPanel.prototype.get hasSelectedElement):
471         (WebInspector.DebuggerSidebarPanel.prototype.deselectBreakpointContentTreeElements):
472         (WebInspector.DebuggerSidebarPanel.prototype.deselectPauseReasonContentTreeElements):
473         (WebInspector.DebuggerSidebarPanel.prototype._treeElementSelected):
474         Give DebuggerSidebarPanel an optional pause reason tree outline. When available
475         include it in the pattern of ensuring a single exclusive selection.
476
477         (WebInspector.DebuggerSidebarPanel.prototype._breakpointRemoved):
478         When a breakpoint is removed, check if we should update the pause reason tree outline.
479
480         (WebInspector.DebuggerSidebarPanel.prototype._updatePauseReason):
481         (WebInspector.DebuggerSidebarPanel.prototype._updatePauseReasonSection):
482         Update Pause Reason section contents depending on the reason.
483
484         (WebInspector.DebuggerSidebarPanel.prototype._updatePauseReasonGotoArrow):
485         Always try to include a goto arrow to jump to the original pause location
486         if it is available at the time of pausing.
487
488 2015-01-08  Joseph Pecoraro  <pecoraro@apple.com>
489
490         Web Inspector: Expected UserAgent styles to be crossed-out if overridden
491         https://bugs.webkit.org/show_bug.cgi?id=140154
492
493         Reviewed by Timothy Hatcher.
494
495         * UserInterface/Models/DOMNodeStyles.js:
496         (WebInspector.DOMNodeStyles.prototype._parseStylePropertyPayload):
497         Add a comment about anonymous styles. The getter is no longer used, and it is not
498         clear if we really care about this state, or if "anonymous" is an appropriate name.
499
500         (WebInspector.DOMNodeStyles.prototype._markOverriddenProperties):
501         Allow browser styles (user agent / html attributes) to be overridden.
502
503         (WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload):
504         When refreshing styles after changes, the Style object backing HTML attributes
505         was being completely replaced. Allow it to be remembered by a unique key.
506
507 2015-01-07  Joseph Pecoraro  <pecoraro@apple.com>
508
509         Web Inspector: Do not create rulesMap entries for rules without identifiers
510         https://bugs.webkit.org/show_bug.cgi?id=140237
511
512         Reviewed by Timothy Hatcher.
513
514         * UserInterface/Models/DOMNodeStyles.js:
515         (WebInspector.DOMNodeStyles.prototype._parseRulePayload):
516         We were accidentally converting a null into a string with a loose string
517         concatenation. Only do this if the mapKey is not-null.
518
519 2015-01-07  Saam Barati  <saambarati1@gmail.com>
520
521         Web Inspector: Abstract common functions from TypeTokenAnnotator into a parent class and introduce an AnnotatorManager
522         https://bugs.webkit.org/show_bug.cgi?id=139426
523
524         Reviewed by Timothy Hatcher.
525
526         This patch creates a parent class, Annotator, that TypeTokenAnnotator
527         inherits from. Annotator defines a common set of functionality
528         that a text editor annotator can use to mark up UI. This 
529         is in preparation other classes that will inherit from Annotator.
530         
531         This patch also introduces AnnotatorManager which controls a
532         set of Annotators and provides a single interface for
533         controlling them.
534
535         * UserInterface/Controllers/Annotator.js: Added.
536         (WebInspector.Annotator):
537         (WebInspector.Annotator.prototype.get sourceCodeTextEditor):
538         (WebInspector.Annotator.prototype.get isActive):
539         (WebInspector.Annotator.prototype.pause):
540         (WebInspector.Annotator.prototype.resume):
541         (WebInspector.Annotator.prototype.refresh):
542         (WebInspector.Annotator.prototype.reset):
543         (WebInspector.Annotator.prototype.clear):
544         (WebInspector.Annotator.prototype.insertAnnotations):
545         (WebInspector.Annotator.prototype.clearAnnotations):
546         (WebInspector.Annotator.prototype._clearTimeoutIfNeeded):
547         * UserInterface/Controllers/AnnotatorManager.js: Added.
548         (WebInspector.AnnotatorManager):
549         (WebInspector.AnnotatorManager.prototype.addAnnotator):
550         (WebInspector.AnnotatorManager.prototype.isAnnotatorActive):
551         (WebInspector.AnnotatorManager.prototype.pauseAll):
552         (WebInspector.AnnotatorManager.prototype.resumeAll):
553         (WebInspector.AnnotatorManager.prototype.refreshAllIfActive):
554         (WebInspector.AnnotatorManager.prototype.resetAllIfActive):
555         (WebInspector.AnnotatorManager.prototype.clearAll):
556         (WebInspector.AnnotatorManager.prototype.removeAllAnnotators):
557         (WebInspector.AnnotatorManager.prototype._getAnnotators):
558         * UserInterface/Controllers/TypeTokenAnnotator.js:
559         (WebInspector.TypeTokenAnnotator):
560         (WebInspector.TypeTokenAnnotator.prototype.insertAnnotations.):
561         (WebInspector.TypeTokenAnnotator.prototype.clearAnnotations):
562         (WebInspector.TypeTokenAnnotator.prototype._insertToken):
563         (WebInspector.TypeTokenAnnotator.prototype.get isActive): Deleted.
564         (WebInspector.TypeTokenAnnotator.prototype.get sourceCodeTextEditor): Deleted.
565         (WebInspector.TypeTokenAnnotator.prototype.pause): Deleted.
566         (WebInspector.TypeTokenAnnotator.prototype.resume): Deleted.
567         (WebInspector.TypeTokenAnnotator.prototype.refresh): Deleted.
568         (WebInspector.TypeTokenAnnotator.prototype.reset): Deleted.
569         (WebInspector.TypeTokenAnnotator.prototype._insertAnnotations.): Deleted.
570         (WebInspector.TypeTokenAnnotator.prototype._clearTimeoutIfNeeded): Deleted.
571         * UserInterface/Main.html:
572         * UserInterface/Views/SourceCodeTextEditor.js:
573         (WebInspector.SourceCodeTextEditor):
574         (WebInspector.SourceCodeTextEditor.prototype.shown):
575         (WebInspector.SourceCodeTextEditor.prototype.hidden):
576         (WebInspector.SourceCodeTextEditor.prototype.canShowTypeAnnotations):
577         (WebInspector.SourceCodeTextEditor.prototype.contentDidChange):
578         (WebInspector.SourceCodeTextEditor.prototype.toggleTypeAnnotations):
579         (WebInspector.SourceCodeTextEditor.prototype.prettyPrint):
580         (WebInspector.SourceCodeTextEditor.prototype._debuggerDidPause):
581         (WebInspector.SourceCodeTextEditor.prototype._debuggerDidResume):
582         (WebInspector.SourceCodeTextEditor.prototype._updateTokenTrackingControllerState):
583         (WebInspector.SourceCodeTextEditor.prototype._getAssociatedScript):
584         (WebInspector.SourceCodeTextEditor.prototype._makeTypeTokenAnnotator):
585         (WebInspector.SourceCodeTextEditor.prototype._makeTypeTokenScrollEventHandler.scrollHandler):
586         (WebInspector.SourceCodeTextEditor.prototype._makeTypeTokenScrollEventHandler):
587
588 2015-01-06  Joseph Pecoraro  <pecoraro@apple.com>
589
590         Web Inspector: Do not style implicit CSS properties in the Style Rules section
591         https://bugs.webkit.org/show_bug.cgi?id=140161
592
593         Reviewed by Timothy Hatcher.
594
595         Previously, implicit properties being transparent in the Rules section
596         was confusing and not useful. Lets simplify what transparency means:
597
598             - Rules:  transparency means a non-inheritable property in an inherited rule
599             - Computed: transparency means an implicit value
600
601         * UserInterface/Views/CSSStyleDeclarationTextEditor.css:
602         (.css-style-text-editor > .CodeMirror .CodeMirror-lines .css-style-declaration-property.not-inherited):
603         (.css-style-text-editor > .CodeMirror .CodeMirror-lines .css-style-declaration-property:matches(.implicit, .not-inherited)): Deleted.
604
605 2015-01-06  Joseph Pecoraro  <pecoraro@apple.com>
606
607         Web Inspector: Uncaught Exception when dismissing Go To Line dialog
608         https://bugs.webkit.org/show_bug.cgi?id=139663
609
610         Reviewed by Timothy Hatcher.
611
612         Calling removeChild would trigger the blur event handler and do a
613         nested call of dismiss(), re-entering and removing while in the middle
614         of removing. Avoid re-entrancy to avoid the exception.
615
616         * UserInterface/Views/GoToLineDialog.js:
617         (WebInspector.GoToLineDialog):
618         (WebInspector.GoToLineDialog.prototype.dismiss):
619
620 2015-01-01  Darin Adler  <darin@apple.com>
621
622         We often misspell identifier as "identifer"
623         https://bugs.webkit.org/show_bug.cgi?id=140025
624
625         Reviewed by Michael Saboff.
626
627         * UserInterface/Base/Main.js:
628         (WebInspector._updateNavigationSidebarForCurrentContentView):
629         (WebInspector._contentBrowserCurrentContentViewDidChange):
630         Fix misspellings.
631
632 2014-12-29  Jonathan Wells  <jonowells@apple.com>
633
634         Web Inspector: SourceCode.requestContent should return a promise
635         https://bugs.webkit.org/show_bug.cgi?id=135777
636
637         Reviewed by Brian Burg.
638
639         Change SourceCode.js to request content from the backend using Promises. Change Resource.js to use this new
640         approach when determining whether a resource load has finished. Change all calls to the older
641         SourceCode#requestContentFromBackendIfNeeded to simply use requestContent and use a catch function
642         if a content request error needs to be handled. Fix a bug where the appropriate error message for an
643         invalid resource wasn't showing in the resource content view.
644
645         * UserInterface/Controllers/AnalyzerManager.js:
646         (set WebInspector.AnalyzerManager.prototype.getAnalyzerMessagesForSourceCode.):
647         (set WebInspector.AnalyzerManager.prototype.getAnalyzerMessagesForSourceCode):
648         * UserInterface/Controllers/CSSStyleManager.js:
649         (WebInspector.CSSStyleManager.prototype._updateResourceContent.fetchedStyleSheetContent):
650         (WebInspector.CSSStyleManager.prototype._updateResourceContent.styleSheetReady):
651         * UserInterface/Models/CSSStyleSheet.js:
652         (WebInspector.CSSStyleSheet.prototype.requestContentFromBackend):
653         (WebInspector.CSSStyleSheet.prototype.canRequestContentFromBackend): Deleted.
654         * UserInterface/Models/DOMNodeStyles.js:
655         (WebInspector.DOMNodeStyles.prototype.changeStyleText):
656         * UserInterface/Models/Resource.js:
657         (WebInspector.Resource.prototype.canRequestContent):
658         (WebInspector.Resource.prototype.requestContentFromBackend):
659         (WebInspector.Resource.prototype.markAsFinished):
660         (WebInspector.Resource.prototype.markAsFailed):
661         (WebInspector.Resource.prototype.getImageSize):
662         (WebInspector.Resource.prototype.canRequestContentFromBackend): Deleted.
663         * UserInterface/Models/Script.js:
664         (WebInspector.Script.prototype.requestContentFromBackend):
665         (WebInspector.Script.prototype.requestScriptSyntaxTree.catch):
666         (WebInspector.Script.prototype.canRequestContentFromBackend): Deleted.
667         * UserInterface/Models/SourceCode.js:
668         (WebInspector.SourceCode):
669         (WebInspector.SourceCode.prototype.requestContent):
670         (WebInspector.SourceCode.prototype.requestContentFromBackend):
671         (WebInspector.SourceCode.prototype._processContent):
672         (WebInspector.SourceCode.prototype.canRequestContentFromBackend): Deleted.
673         (WebInspector.SourceCode.prototype.requestContentFromBackendIfNeeded): Deleted.
674         (WebInspector.SourceCode.prototype.servicePendingContentRequests): Deleted.
675         * UserInterface/Models/SourceMapResource.js:
676         (WebInspector.SourceMapResource):
677         (WebInspector.SourceMapResource.prototype.requestContentFromBackend.sourceMapResourceLoadError):
678         (WebInspector.SourceMapResource.prototype.requestContentFromBackend):
679         (WebInspector.SourceMapResource.prototype.canRequestContentFromBackend): Deleted.
680         (WebInspector.SourceMapResource.prototype.requestContentFromBackend.sourceMapResourceLoaded): Deleted.
681         * UserInterface/Views/ResourceContentView.js:
682         (WebInspector.ResourceContentView):
683         (WebInspector.ResourceContentView.prototype._contentAvailable):
684         (WebInspector.ResourceContentView.prototype._contentError):
685         * UserInterface/Views/SourceCodeTextEditor.js:
686         (WebInspector.SourceCodeTextEditor):
687         (WebInspector.SourceCodeTextEditor.prototype._contentAvailable):
688         (WebInspector.SourceCodeTextEditor.prototype._populateWithInlineScriptContent.scriptContentAvailable):
689         (WebInspector.SourceCodeTextEditor.prototype._populateWithInlineScriptContent):
690         (WebInspector.SourceCodeTextEditor.prototype._populateWithScriptContent):
691
692 2014-12-26  Dan Bernstein  <mitz@apple.com>
693
694         <rdar://problem/19348208> REGRESSION (r177027): iOS builds use the wrong toolchain
695         https://bugs.webkit.org/show_bug.cgi?id=139950
696
697         Reviewed by David Kilzer.
698
699         * Configurations/Base.xcconfig: Only define TOOLCHAINS when building for OS X, doing so
700         in a manner that works with Xcode 5.1.1.
701
702 2014-12-20  David Kilzer  <ddkilzer@apple.com>
703
704         Switch from using PLATFORM_NAME to SDK selectors in WebCore, WebInspectorUI, WebKit, WebKit2
705         <http://webkit.org/b/139463>
706
707         Reviewed by Mark Rowe.
708
709         * Configurations/Base.xcconfig:
710         - Only set TOOLCHAINS on OS X.
711         * Configurations/DebugRelease.xcconfig:
712         - Only set MACOSX_DEPLOYMENT_TARGET and SDKROOT on OS X.
713         * Configurations/Version.xcconfig:
714         - Set SYSTEM_VERSION_PREFIX separately for iOS and OS X.
715         * Configurations/WebInspectorUIFramework.xcconfig:
716         - Set NORMAL_PRODUCTION_FRAMEWORKS_DIR,
717           PRODUCTION_FRAMEWORKS_DIR and
718           JAVASCRIPTCORE_PRIVATE_HEADERS_DIR_Production by SDK.
719
720 2014-12-19  Commit Queue  <commit-queue@webkit.org>
721
722         Unreviewed, rolling out r177574.
723         https://bugs.webkit.org/show_bug.cgi?id=139821
724
725         "Broke Production builds by installing
726         libWebCoreTestSupport.dylib in the wrong directory" (Requested
727         by ddkilzer on #webkit).
728
729         Reverted changeset:
730
731         "Switch from using PLATFORM_NAME to SDK selectors in WebCore,
732         WebInspectorUI, WebKit, WebKit2"
733         https://bugs.webkit.org/show_bug.cgi?id=139463
734         http://trac.webkit.org/changeset/177574
735
736 2014-12-19  David Kilzer  <ddkilzer@apple.com>
737
738         Switch from using PLATFORM_NAME to SDK selectors in WebCore, WebInspectorUI, WebKit, WebKit2
739         <http://webkit.org/b/139463>
740
741         Reviewed by Mark Rowe.
742
743         * Configurations/Base.xcconfig:
744         - Only set TOOLCHAINS on OS X.
745         * Configurations/DebugRelease.xcconfig:
746         - Only set MACOSX_DEPLOYMENT_TARGET and SDKROOT on OS X.
747         * Configurations/Version.xcconfig:
748         - Set SYSTEM_VERSION_PREFIX separately for iOS and OS X.
749         * Configurations/WebInspectorUIFramework.xcconfig:
750         - Set NORMAL_PRODUCTION_FRAMEWORKS_DIR,
751           PRODUCTION_FRAMEWORKS_DIR and
752           JAVASCRIPTCORE_PRIVATE_HEADERS_DIR_Production by SDK.
753
754 2014-12-16  Matt Baker  <mattbaker@apple.com>
755
756         Web Inspector: REGRESSION: Dragging undocked web inspector causes mouse to change from pointer to i-bar cursor over window title
757         https://bugs.webkit.org/show_bug.cgi?id=139720
758
759         Reviewed by Timothy Hatcher.
760
761         * UserInterface/Base/Main.js:
762         Prevent default handling of the mouse event when clicking in the titlebar area. WebCore won't continue handling the event,
763         but docking buttons/context menu still function.
764
765 2014-12-15  Nikita Vasilyev  <nvasilyev@apple.com>
766
767         Web Inspector: Clicking on the expand object arrow should always expand an object
768         https://bugs.webkit.org/show_bug.cgi?id=139382
769
770         Reviewed by Joseph Pecoraro.
771
772         * UserInterface/Views/LogContentView.js:
773         (WebInspector.LogContentView):
774         (WebInspector.LogContentView.prototype._click): Deleted.
775         stopPropagation was preventing the object expansion from happening as expecting.
776
777 2014-12-15  Joseph Pecoraro  <pecoraro@apple.com>
778
779         Web Inspector: CSSStyleDeclarationTextEditor fails to update if computed properties changed from empty to non-empty
780         https://bugs.webkit.org/show_bug.cgi?id=139610
781
782         Reviewed by Timothy Hatcher.
783
784         The CSSStyleDeclarationTextEditor for Computed Style Properties always has
785         empty DOMNodeStyles text. However we would not reset contents if properties
786         changed and the actualy content was empty. So once empty, we could never
787         recover. In fact, we should always refresh for Computed Styles.
788
789         * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
790         (WebInspector.CSSStyleDeclarationTextEditor.prototype._propertiesChanged):
791
792 2014-12-08  Joseph Pecoraro  <pecoraro@apple.com>
793
794         Web Inspector: Hide Compositing Borders Button if backend returns an error that it is unsupported
795         https://bugs.webkit.org/show_bug.cgi?id=139307
796
797         Reviewed by Darin Adler.
798
799         * UserInterface/Views/DOMTreeContentView.js:
800         (WebInspector.DOMTreeContentView.prototype._updateCompositingBordersButtonToMatchPageSettings):
801
802 2014-12-05  Joseph Pecoraro  <pecoraro@apple.com>
803
804         Web Inspector: Uncaught Exceptions when attempting to show Content Flow
805         https://bugs.webkit.org/show_bug.cgi?id=139276
806
807         Reviewed by Brian Burg.
808
809         * UserInterface/Views/ContentView.js:
810         (WebInspector.ContentView):
811         (WebInspector.ContentView.isViewable):
812         LegacyJavaScriptProfileObject no longer exists, these references should be removed.
813
814         * UserInterface/Views/FolderizedTreeElement.js:
815         (WebInspector.FolderizedTreeElement.prototype._insertChildTreeElement):
816         This sort function references "this" and needed to be bound.
817
818 2014-12-04  Joseph Pecoraro  <pecoraro@apple.com>
819
820         Web Inspector: Network Timeline Filter Bar only has "All", missing Resource Type filters
821         https://bugs.webkit.org/show_bug.cgi?id=139268
822
823         Reviewed by Brian Burg.
824
825         * UserInterface/Views/TimelineDataGrid.js:
826         (WebInspector.TimelineDataGrid.createColumnScopeBar):
827         Users of createColumnScopeBar pass a Map object now instead of a dictionary.
828         Iterate over the map appropriately.
829
830 2014-12-04  Joseph Pecoraro  <pecoraro@apple.com>
831
832         Web Inspector: LayoutTests/inspector tests fail in Production builds due to missing test resources
833         https://bugs.webkit.org/show_bug.cgi?id=138898
834
835         Reviewed by Mark Rowe.
836
837         In Production builds, if FORCE_TOOL_INSTALL=YES is in the environment
838         we will copy all resources (for Tests) and still do the combine and
839         optimize phase for normal Production inspection resources.
840
841         * Scripts/copy-user-interface-resources.pl:
842
843 2014-12-03  Joseph Pecoraro  <pecoraro@apple.com>
844
845         Web Inspector: Missing getter, clients never see DragToAdjustController is enabled
846         https://bugs.webkit.org/show_bug.cgi?id=139228
847
848         Reviewed by Simon Fraser.
849
850         * UserInterface/Controllers/DragToAdjustController.js:
851         (WebInspector.DragToAdjustController.prototype.get enabled):
852
853 2014-12-02  Joseph Pecoraro  <pecoraro@apple.com>
854
855         Web Inspector: CSS Minification breaks some selectors with colons
856         https://bugs.webkit.org/show_bug.cgi?id=139206
857
858         Reviewed by Simon Fraser.
859
860         Do not remove spaces preceeding colons, as they may change the semantics
861         of selectors with colon prefixes (e.g. "a :not(b)").
862
863         At the same time, we can strip spaces around "!" characters, for example
864         a space is not required before "!important" priority.
865
866         * Scripts/cssmin.py:
867         (cssminify):
868
869 2014-12-01  Benjamin Poulain  <benjamin@webkit.org>
870
871         Web Inspector: add more :not() and :matches() awesomeness
872         https://bugs.webkit.org/show_bug.cgi?id=138997
873
874         Reviewed by Joseph Pecoraro.
875
876         Simplify the Inspector's CSS when possible.
877
878         * UserInterface/Views/DatabaseContentView.css:
879         (:matches(.database-user-query, .database-query-prompt, .database-query-result)::before):
880         (.database-user-query::before, .database-query-prompt::before, .database-query-result::before): Deleted.
881         * UserInterface/Views/GradientSlider.css:
882         (.gradient-slider-knob > :matches(img, div)):
883         (.gradient-slider-knob > div): Deleted.
884         * UserInterface/Views/HoverMenu.css:
885         (.hover-menu > svg > :matches(path, rect)):
886         (.hover-menu > svg > rect): Deleted.
887         * UserInterface/Views/LayerTreeDetailsSidebarPanel.css:
888         (.panel.details.layer-tree .name-column :matches(.pseudo-element, .reflection)):
889         (.panel.details.layer-tree tr.selected .name-column :matches(.pseudo-element, .reflection)):
890         (.panel.details.layer-tree .name-column .reflection): Deleted.
891         (.panel.details.layer-tree tr.selected .name-column .reflection): Deleted.
892         * UserInterface/Views/ProbeDetailsSidebarPanel.css:
893         (.details-section.probe-set .options > :matches(.probe-remove, .probe-clear-samples, .probe-add)):
894         (.details-section.probe-set .options > .probe-add): Deleted.
895         * UserInterface/Views/ResourceSidebarPanel.css:
896         (.sidebar > .panel.navigation.resource > :matches(.content, .empty-content-placeholder)):
897         (body.mac-platform.legacy .sidebar > .panel.navigation.resource > :matches(.content, .empty-content-placeholder)):
898         (.sidebar > .panel.navigation.resource > .empty-content-placeholder): Deleted.
899         (body.mac-platform.legacy .sidebar > .panel.navigation.resource > .empty-content-placeholder): Deleted.
900         * UserInterface/Views/ScopeBar.css:
901         (.scope-bar > li:matches(.selected, :active)):
902         (.scope-bar > li:active): Deleted.
903         * UserInterface/Views/SyntaxHighlightingDefaultTheme.css:
904         (.syntax-highlighted :matches(.css-comment, .javascript-comment, .html-comment)):
905         (.syntax-highlighted :matches(.css-keyword, .css-tag, .css-at-rule, .css-important, .javascript-keyword, .html-tag)):
906         (.syntax-highlighted :matches(.css-number, .javascript-number)):
907         (.syntax-highlighted :matches(.css-property, .css-selector, .javascript-ident)):
908         (.syntax-highlighted :matches(.css-string, .javascript-string, .javascript-regexp, .html-attribute-value)):
909         (.syntax-highlighted :matches(.html-doctype, .html-processing-instruction)):
910         (.syntax-highlighted .html-comment): Deleted.
911         (.syntax-highlighted .html-tag): Deleted.
912         (.syntax-highlighted .javascript-number): Deleted.
913         (.syntax-highlighted .javascript-ident): Deleted.
914         (.syntax-highlighted .html-attribute-value): Deleted.
915         (.syntax-highlighted .html-processing-instruction): Deleted.
916         It looks like ".cm-tag.cm-bracket" was there only to override the rule below.
917         From basic testing, it looks like "cm-tag" and "cm-bracket" always appear together. I removed the "cm-bracket" rule
918         from the second rule, and simplified the first rule.
919
920         * UserInterface/Views/TimelineSidebarPanel.css:
921         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > :matches(.content, .empty-content-placeholder)):
922         (body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .empty-content-placeholder): Deleted.
923         * UserInterface/Views/Toolbar.css:
924         (body.mac-platform:not(.legacy, .docked) .toolbar):
925         (body.mac-platform:not(.legacy, .docked) .toolbar.icon-and-label-vertical):
926         (body.mac-platform:not(.legacy, .docked) .toolbar.icon-and-label-vertical.small-size):
927         (body.mac-platform:not(.legacy, .docked) .toolbar:matches(.icon-and-label-horizontal, .icon-only)):
928         (body.mac-platform:not(.legacy, .docked) .toolbar:matches(.icon-and-label-horizontal.small-size, .icon-only.small-size, .label-only)):
929         (.toolbar:matches(.icon-and-label-horizontal.small-size, .icon-only.small-size, .label-only) .control-section):
930         (body.mac-platform:not(.legacy):not(.docked) .toolbar): Deleted.
931         (body.mac-platform:not(.legacy):not(.docked) .toolbar.icon-and-label-vertical): Deleted.
932         (body.mac-platform:not(.legacy):not(.docked) .toolbar.icon-and-label-vertical.small-size): Deleted.
933         (body.mac-platform:not(.legacy):not(.docked) .toolbar.icon-only): Deleted.
934         (body.mac-platform:not(.legacy):not(.docked) .toolbar.label-only): Deleted.
935         (.toolbar.label-only .control-section): Deleted.
936
937 2014-11-27  Andres Gomez  <agomez@igalia.com>
938
939         Web Inspector: Update NavigationItemProbes icon for the GTK+ port
940         https://bugs.webkit.org/show_bug.cgi?id=139074
941
942         Reviewed by Carlos Garcia Campos.
943
944         NavigationItemProbes was updated for the Mac port and we are now
945         having a similar ideogram in GTK+.
946
947         * UserInterface/Images/gtk/NavigationItemProbes.svg: Updated.
948
949 2014-11-21  Benjamin Poulain  <bpoulain@apple.com>
950
951         Start using the new :not() and :matches() in the Web Inspector
952         https://bugs.webkit.org/show_bug.cgi?id=138978
953
954         Reviewed by Joseph Pecoraro.
955
956         Start simpifying some definitions by using modern CSS.
957
958         * UserInterface/Views/CSSStyleDeclarationSection.css:
959         (body.mac-platform.legacy .style-declaration-section.last-in-group + .style-declaration-section:matches(.last-in-group, :last-child)):
960         (.style-declaration-section:matches(.locked, .selector-locked) > .header > .selector):
961         (body.mac-platform.legacy .style-declaration-section.last-in-group + .style-declaration-section:last-child): Deleted.
962         (.style-declaration-section.selector-locked > .header > .selector): Deleted.
963         * UserInterface/Views/CSSStyleDeclarationTextEditor.css:
964         (.css-style-text-editor > .CodeMirror .CodeMirror-lines .css-style-declaration-property:matches(.disabled, .invalid, .other-vendor, .not-inherited, .overridden)):
965         (.css-style-text-editor > .CodeMirror .CodeMirror-lines .css-style-declaration-property:matches(.implicit, .not-inherited)):
966         (.css-style-text-editor > .CodeMirror .CodeMirror-lines .editing-line .css-style-declaration-property:matches(.disabled, .other-vendor, .not-inherited, .overridden)):
967         (.css-style-text-editor > .CodeMirror .CodeMirror-lines .css-style-declaration-property.overridden): Deleted.
968         (.css-style-text-editor > .CodeMirror .CodeMirror-lines .css-style-declaration-property.not-inherited): Deleted.
969         (.css-style-text-editor > .CodeMirror .CodeMirror-lines .editing-line .css-style-declaration-property.overridden): Deleted.
970         * UserInterface/Views/ControlToolbarItem.css:
971         (.toolbar:matches(.icon-and-label-horizontal, .toolbar.icon-only) .item.control):
972         (.toolbar.icon-only .item.control): Deleted.
973         * UserInterface/Views/DOMStorageContentView.css:
974         * UserInterface/Views/DashboardContainerView.css:
975         (.toolbar.icon-and-label-vertical:matches(.small-size, .normal-size) .dashboard-container):
976         (.toolbar:matches(.label-only, .small-size:matches(.icon-only, .icon-and-label-vertical, .icon-and-label-horizontal)) .dashboard-container):
977         (.toolbar.normal-size:matches(.icon-only, .icon-and-label-vertical, .icon-and-label-horizontal) .dashboard-container):
978         (.toolbar.normal-size.icon-and-label-vertical .dashboard-container): Deleted.
979         (.toolbar.small-size.icon-and-label-horizontal .dashboard-container): Deleted.
980         (.toolbar.normal-size.icon-and-label-horizontal .dashboard-container): Deleted.
981         * UserInterface/Views/DataGrid.css:
982         (.data-grid :matches(th, td):not(:last-child)):
983         (.data-grid th:matches(.sort-ascending, .sort-descending)):
984         (.data-grid :matches(th, td) > div):
985         (.data-grid th:matches(.sort-ascending, .sort-descending) > div:first-child):
986         (.data-grid tr:matches(.selected, :hover) .go-to-arrow):
987         (.data-grid :-webkit-any(th, td):not(:last-child)): Deleted.
988         (.data-grid th:-webkit-any(.sort-ascending, .sort-descending)): Deleted.
989         (.data-grid :-webkit-any(th, td) > div): Deleted.
990         (.data-grid th:-webkit-any(.sort-ascending, .sort-descending) > div:first-child): Deleted.
991         (.data-grid tr:-webkit-any(.selected, :hover) .go-to-arrow): Deleted.
992         * UserInterface/Views/DebuggerDashboardView.css:
993         (.toolbar.collapsed .dashboard.debugger > :not(.message, .navigation-bar )):
994         (.toolbar.collapsed .dashboard.debugger > :not(.message):not(.navigation-bar )): Deleted.
995         * UserInterface/Views/DefaultDashboardView.css:
996         (body.web .toolbar.collapsed .dashboard.default > :matches(.time, .resourcesSize, .logs)):
997         (body.javascript .toolbar .dashboard.default > :matches(.time, .resourcesSize, .resourcesCount)):
998         (.toolbar:matches(.label-only, .small-size:matches(.icon-only, .icon-and-label-vertical, .icon-and-label-horizontal)) .dashboard.default > .item):
999         (.toolbar.normal-size:matches(.icon-only, .icon-and-label-vertical, .icon-and-label-horizontal) .dashboard.default > .item):
1000         (body.web .toolbar.collapsed .dashboard.default > .logs): Deleted.
1001         (body.javascript .toolbar .dashboard.default > .resourcesCount): Deleted.
1002         (.toolbar.small-size.icon-and-label-horizontal .dashboard.default > .item): Deleted.
1003         (.toolbar.normal-size.icon-and-label-horizontal .dashboard.default > .item): Deleted.
1004         * UserInterface/Views/DetailsSection.css:
1005         (.details-section > .header > :matches(.node-link, .go-to-arrow)):
1006         (.details-section > .content > .group:nth-child(even) > .row:matches(.simple:first-child > *, :not(.simple):first-child)):
1007         (body.mac-platform.legacy .details-section > .content > .group:matches(:nth-child(even), :last-child) > .row.simple:last-child > *):
1008         (.details-section > .content > .group > .row:matches(.empty, .text)):
1009         (body.mac-platform.legacy .details-section > .content > .group > .row:matches(.empty, .text)):
1010         (.details-section > .header > .go-to-arrow): Deleted.
1011         (.details-section > .content > .group:nth-child(even) > .row.simple:first-child > *): Deleted.
1012         (body.mac-platform.legacy .details-section > .content > .group:last-child > .row.simple:last-child > *): Deleted.
1013         (.details-section > .content > .group > .row.text): Deleted.
1014         (body.mac-platform.legacy .details-section > .content > .group > .row.text): Deleted.
1015         * UserInterface/Views/FindBanner.css:
1016         (:matches(.find-banner, .supports-find-banner).no-find-banner-transition):
1017         (.supports-find-banner.no-find-banner-transition): Deleted.
1018         * UserInterface/Views/FlexibleSpaceNavigationItem.css:
1019         (:matches(.navigation-bar, .toolbar) .item.flexible-space):
1020         (.toolbar .item.flexible-space): Deleted.
1021
1022 2014-11-19  Joseph Pecoraro  <pecoraro@apple.com>
1023
1024         Web Inspector: LayoutTests/inspector should not have localStorage side effects
1025         https://bugs.webkit.org/show_bug.cgi?id=138895
1026
1027         Reviewed by Brian Burg.
1028
1029         When running inspector tests, do not restore/save WebInspector.Settings
1030         to localStorage, as that will cause side effects. Instead each Setting
1031         will be initialized with its default value and can be modified during
1032         the run of the test.
1033
1034         * UserInterface/Base/Test.js:
1035         (WebInspector.loaded):
1036         Name the setting to match the normal setting name now that persistence
1037         is not an issue.
1038
1039         * UserInterface/Models/Setting.js:
1040         (WebInspector.Setting.prototype.get value):
1041         (WebInspector.Setting.prototype.set value):
1042         Do not restore/save when in tests.
1043
1044 2014-11-19  Joseph Pecoraro  <pecoraro@apple.com>
1045
1046         Web Inspector: JSContext inspection Resource search does not work
1047         https://bugs.webkit.org/show_bug.cgi?id=131252
1048
1049         Reviewed by Timothy Hatcher.
1050
1051         * UserInterface/Views/ResourceSidebarPanel.js:
1052         (WebInspector.ResourceSidebarPanel.prototype.performSearch.resourceCallback):
1053         (WebInspector.ResourceSidebarPanel.prototype.performSearch.resourcesCallback):
1054         Cleanup by reordering things a bit.
1055
1056         (WebInspector.ResourceSidebarPanel.prototype.performSearch.searchScripts.scriptCallback):
1057         (WebInspector.ResourceSidebarPanel.prototype.performSearch.searchScripts):
1058         (WebInspector.ResourceSidebarPanel.prototype.performSearch):
1059         Search non-resource scripts individually.
1060
1061         (WebInspector.ResourceSidebarPanel.prototype._searchTreeElementForScript):
1062         Lazily create a ScriptTreeElement for the search tree outline as needed.
1063
1064         (WebInspector.ResourceSidebarPanel.prototype._scriptsToSearch):
1065         When searching scripts, just perform a shallow walk of the tree outline to find
1066         Script resources that are not also Resources. Scripts are always guarenteed to
1067         be in a folder when inspecting a web resource. For JSContext inspection, scripts
1068         are promoted to the top level.
1069
1070         * UserInterface/Main.html:
1071         * UserInterface/Models/SourceCodeSearchMatchObject.js: Renamed from Source/WebInspectorUI/UserInterface/Models/ResourceSearchMatchObject.js.
1072         (WebInspector.SourceCodeSearchMatchObject):
1073         * UserInterface/Views/SearchIcons.css:
1074         (.source-code-match-icon .icon):
1075         (.resource-match-icon .icon): Deleted.
1076         * UserInterface/Views/SearchResultTreeElement.js:
1077         (WebInspector.SearchResultTreeElement):
1078         Rename ResourceSearchMatchObject to SourceCodeSearchMatchObject.
1079
1080 2014-11-19  Joseph Pecoraro  <pecoraro@apple.com>
1081
1082         Web Inspector: Provide $exception in the console for the thrown exception value
1083         https://bugs.webkit.org/show_bug.cgi?id=138726
1084
1085         Reviewed by Timothy Hatcher.
1086
1087         * UserInterface/Base/Test.js:
1088         (WebInspector.loaded):
1089         In order to use RuntimeManager to execute in the global context or on the
1090         active debugger call frame, we need to expose the quickConsole controller.
1091
1092         * UserInterface/Controllers/JavaScriptRuntimeCompletionProvider.js:
1093         Expose $exception to completion when we paused because of an exception.
1094
1095 2014-11-19  Joseph Pecoraro  <pecoraro@apple.com>
1096
1097         Web Inspector: Debugger should not mutate variable when hovering mouse over ++n expression
1098         https://bugs.webkit.org/show_bug.cgi?id=138839
1099
1100         Reviewed by Timothy Hatcher.
1101
1102         * UserInterface/Controllers/CodeMirrorTokenTrackingController.js:
1103         (WebInspector.CodeMirrorTokenTrackingController.prototype._processJavaScriptExpression):
1104
1105 2014-11-19  Joseph Pecoraro  <pecoraro@apple.com>
1106
1107         Web Inspector: Improve basic JavaScript completion in inline <script>s
1108         https://bugs.webkit.org/show_bug.cgi?id=138845
1109
1110         Reviewed by Timothy Hatcher.
1111
1112         * UserInterface/Controllers/CodeMirrorCompletionController.js:
1113         (WebInspector.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions):
1114         Fix up CodeMirror mode handling for JavaScript completion when inside of mixed mode
1115         input (html). Also add completion for CodeMirror's localVars list.
1116
1117 == Rolled over to ChangeLog-2014-11-19 ==